X-Git-Url: http://git.shiar.net/sheet.git/blobdiff_plain/015b61ff202c1aadc5123850059aa14be0120637..20883523f524360de2c7758b02d15be980ed08c3:/keyboard/altgr/weur.eng.inc.pl diff --git a/keyboard/altgr/weur.eng.inc.pl b/keyboard/altgr/weur.eng.inc.pl index c3b3516..9315bf6 100644 --- a/keyboard/altgr/weur.eng.inc.pl +++ b/keyboard/altgr/weur.eng.inc.pl @@ -4,6 +4,25 @@ use warnings; no warnings 'qw'; use Shiar_Sheet::KeyboardChars 'kbmodes'; +my $greekc = '*'; +my %info = ( + mode => { + '' => 'altgr-shifted ⌥', + }, + version => '1.0', # upstream v2.0 2021/04/12 + title => 'Western European', + map => 'qwerty', # specific positioning + category => 'latin/thirdparty/xorg', + intro => join("\n", + 'Layout (available for major OSes)', + 'to provide all accented characters commonly used', + 'in 10 Western European languages available through one AltGr keystroke.', + ), + description => [ + "QWERTY for Western European languages", + ], +); + my %rows = ( '' => { '!' => "\N{COMBINING DOT ABOVE}", @@ -103,61 +122,29 @@ my %rows = ( }, '*' => { # dead_greek digraphs from data/xorg-compose - 'A' => 'Α', - 'a' => 'α', - 'B' => 'Β', - 'b' => 'β', - 'D' => 'Δ', - 'd' => 'δ', - 'E' => 'Ε', - 'e' => 'ε', - 'F' => 'Φ', - 'f' => 'φ', - 'G' => 'Γ', - 'g' => 'γ', - 'H' => 'Η', - 'h' => 'η', - 'I' => 'Ι', - 'i' => 'ι', - 'J' => 'Θ', - 'j' => 'θ', - 'K' => 'Κ', - 'k' => 'κ', - 'L' => 'Λ', - 'l' => 'λ', - 'M' => 'Μ', - 'm' => 'μ', - 'N' => 'Ν', - 'n' => 'ν', - 'O' => 'Ο', - 'o' => 'ο', - 'P' => 'Π', - 'p' => 'π', - 'Q' => 'Χ', - 'q' => 'χ', - 'R' => 'Ρ', - 'r' => 'ρ', - 'S' => 'Σ', - 's' => 'σ', - 'T' => 'Τ', - 't' => 'τ', - 'U' => 'Υ', - 'u' => 'υ', - 'W' => 'Ω', - 'w' => 'ω', - 'X' => 'Ξ', - 'x' => 'ξ', - 'Y' => 'Ψ', - 'y' => 'ψ', - 'Z' => 'Ζ', - 'z' => 'ζ', + qw( + a α b β d δ e ε f φ g γ h η i ι j θ k κ l λ m μ + n ν o ο p π q χ r ρ s σ t τ u υ w ω x ξ y ψ z ζ + ), '*' => 'µ', # MICRO SIGN at space and double mode }, ); our %get; -my $dweur = $get{map} && $get{map} eq 'dvorak'; -if ($dweur) { +if ($get{map} and $get{map} eq 'dvorak') { + %info = (%info, + map => 'dvorak', + title => 'dWEURak', + intro => join("\n", + 'Layout for Western European languages', + 'repositioned for Dvorak letters instead of original Qwerty.', + ), + description => [ + "Dvorak for Western European languages", + ], + ); + $info{version} .= '.1'; + my $dq = q{ 'z ,l .d pj yk fq gt r, l' dv hb s8 tw 8. @@ -169,24 +156,13 @@ if ($dweur) { $dq{ $uc{$_} } = $uc{ $dq{$_} } for keys %dq; # same shifted @{ $rows{''} }{keys %dq} = map { $rows{''}{$_} } values %dq; - $rows{S} = delete $rows{'*'}; + %{ $rows{S} } = (%{ delete $rows{$greekc} }, + qw( q θ c χ j ϑ J ϴ v ϖ V ∇ ), + ); + $greekc = 'S'; } -+{ - %{ kbmodes(\%rows) }, - mode => { - '' => 'altgr-shifted ⌥', - '*' => 'greek mode ⌥*', - }, - version => '1.0', # upstream v2.0 2021/04/12 - title => $dweur ? 'dWEURak' : 'Western European', - category => 'latin/thirdparty/xorg', - intro => join("\n", - 'Layout (available for major OSes)', - 'to provide all accented characters commonly used', - 'in 10 Western European languages available through one AltGr keystroke.', - ), - description => [ - "QWERTY for Western European languages", - ], -} +$info{mode}{$greekc} = "$rows{''}{$greekc} greek prefix ⌥$greekc"; +$_ = { (map {uc} %{$_}), %{$_} } for $rows{$greekc}; # uppercase greek + ++{ %{ kbmodes(\%rows) }, %info }