From 015b61ff202c1aadc5123850059aa14be0120637 Mon Sep 17 00:00:00 2001 From: Mischa POSLAWSKY Date: Fri, 15 Mar 2024 23:47:22 +0100 Subject: [PATCH] keyboard/altgr/weur: dweurak reimplementation for dvorak map MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Replace random results from qwerty positioning by a complete reorder where accents can consistently repeat the aoeui vowels, with consonants (including ß) still at base letters, and remaining dead keys clustered neatly at the top right. Seriously wondering if this was the original layout as it all fits so much better. --- keyboard/altgr/weur.eng.inc.pl | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/keyboard/altgr/weur.eng.inc.pl b/keyboard/altgr/weur.eng.inc.pl index 6ef09eb..c3b3516 100644 --- a/keyboard/altgr/weur.eng.inc.pl +++ b/keyboard/altgr/weur.eng.inc.pl @@ -1,6 +1,7 @@ use utf8; use strict; use warnings; +no warnings 'qw'; use Shiar_Sheet::KeyboardChars 'kbmodes'; my %rows = ( @@ -154,6 +155,23 @@ 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 => { @@ -161,7 +179,7 @@ my %rows = ( '*' => 'greek mode ⌥*', }, 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 (available for major OSes)', -- 2.30.0