keyboard/altgr/index: label modes by description character.
[sheet.git] / keyboard / altgr / weur.eng.inc.pl
index 6ef09eb6188412c5656cd2e5a1e759df038387e9..8d5a390a7ae3de80f7f5204556369441a40a0ef4 100644 (file)
@@ -1,6 +1,7 @@
 use utf8;
 use strict;
 use warnings;
+no warnings 'qw';
 use Shiar_Sheet::KeyboardChars 'kbmodes';
 
 my %rows = (
@@ -154,14 +155,31 @@ my %rows = (
        },
 );
 
+our %get;
+my $dweur = $get{map} && $get{map} eq 'dvorak';
+if ($dweur) {
+       my $dq = q{
+               'z ,l .d pj yk  fq gt  r, l'
+               dv hb s8  tw 8.
+               ;s qp jr ky xm  bx m; wf vh zg
+       };
+       my %dq = split //, $dq =~ s/\s//gr;  # dvorak => qwerty key
+
+       my %uc = (qw{ ' "  , <  . >  ; :  - _  8 * }, map {lc, uc} 'a'..'z');
+       $dq{ $uc{$_} } = $uc{ $dq{$_} } for keys %dq;  # same shifted
+
+       @{ $rows{''} }{keys %dq} = map { $rows{''}{$_} } values %dq;
+       $rows{S} = delete $rows{'*'};
+}
+
 +{
        %{ kbmodes(\%rows) },
        mode => {
                ''  => 'altgr-shifted ⌥',
-               '*' => 'greek mode ⌥*',
+               '*' => 'μ greek prefix ⌥*',
        },
        version => '1.0', # upstream v2.0 2021/04/12
-       title => 'Western European',
+       title => $dweur ? 'dWEURak' : 'Western European',
        category => 'latin/thirdparty/xorg',
        intro => join("\n",
                'Layout (<a href="https://altgr-weur.eu/" target=_blank>available</a> for major OSes)',