my %cat = (
default => [qw( euro latin science graph )],
euro => [qw( windows ukext macos macos-abc weur eurkey msx )],
- ipa => [qw( ipa-ucl xipa )],
+ ipa => [qw( ipa-ucl supipa ipa-rc xipa )],
latin => [qw( ipa-ucl olpc boyeg drix )],
science => [qw( symbolics apl spacecadet )],
graph => [qw( unigraph emojiworks )],
- extra => [qw( msx-graph c64 atari p8scii zoo )],
+ extra => [qw( msx-graph c64 atari epson p8scii zoo )],
);
for my $name (map {@{$_}} values %cat) {
$row{mode} //= {'' => undef};
- if (($keys->{moderows} // '') =~ /^\d* [45] \d{2,}/x) {
- # move root +meta keys to distinct mode
+ if (($keys->{moderows} // '') =~ /^\d* [3-9] \d{2,}/x) {
+ # move root ^ctrl or +meta keys to distinct mode
$row{mode}{"\e"} = '+';
- /^\+./ and $keys->{def}{"\e"}{$_} = delete $keys->{def}{''}{$_}
+ /^[+^]./ and $keys->{def}{"\e"}{$_} = delete $keys->{def}{''}{$_}
for keys %{ $keys->{def}{''} };
}