2 my @num = qw(^0 ^0 ^@ ^0 ^0 ^0 ^^ ^0 ^0 ^0 ^0);
5 [qw/ ` 1 2 3 4 5 6 7 8 9 0 [ ] /],
6 [qw/ ~ ! @ # $ % ^ & * ( ) { } /],
9 [qw( ' , . p y f g c r l / = )],
10 [qw/ " < > P Y F G C R L ? + /],
11 [qw/^0 ^0 ^0 ^p ^y ^f ^g ^c ^r ^l ^? ^0 /],
13 [qw/ a o e u i d h t n s - \\ /],
14 [qw/ A O E U I D H T N S _ | /],
15 [qw/^a ^o ^e ^u ^i ^d ^h ^t ^n ^s ^_ ^\\ /],
17 [qw/ ; q j k x b m w v z /],
18 [qw/ : Q J K X B M W V Z /],
19 [qw/^0 ^q ^j ^k ^x ^b ^m ^w ^v ^z /],
23 [qw/ ` 1 2 3 4 5 6 7 8 9 0 - = /],
24 [qw/ ~ ! @ # $ % ^ & * ( ) _ + /],
27 [qw/ q w e r t y u i o p [ ] /],
28 [qw/ Q W E R T Y U I O P { } /],
29 [qw/^q ^w ^e ^r ^t ^y ^u ^i ^o ^p ^[ ^] /],
31 [qw/ a s d f g h j k l ; ' \\ /],
32 [qw/ A S D F G H J K L : " | /],
33 [qw/^a ^s ^d ^f ^g ^h ^j ^k ^l ^0 ^0 ^\\ /],
35 [qw( z x c v b n m , . / )],
36 [qw( Z X C V B N M < > ? )],
37 [qw(^z ^x ^c ^v ^b ^n ^m ^0 ^0 ^? )],
41 [qw/ ^ 1 2 3 4 5 6 7 8 9 0 /, $ascii ? ('ss', '^0') : ('ß', '´') ],
42 [$ascii ? '^0' : '°', qw{ ! " }, $ascii ? '^0' : '§', qw{ $ % & / ( ) = ? ` }],
43 [qw/^^ ^0 ^0 ^0 ^0 ^0 ^0 { [ ] } \\ ^0 /],
44 # [qw{ ° ! " § $ % & / ( ) = ? ` }],
46 [qw/ q w e r t z u i o p /, $ascii ? 'ue' : 'ü', '+' ],
47 [qw/ Q W E R T Z U I O P /, $ascii ? 'UE' : 'Ü', '*' ],
48 [qw/ @ ^w ^e ^r ^t ^z ^u ^i ^o ^p ^0 ~ /],
49 # ^ show altgr-Q instead
51 [qw/ a s d f g h j k l /, $ascii ? ('oe', 'ae') : ('ö', 'ä'), '#' ],
52 [qw/ A S D F G H J K L /, $ascii ? ('OE', 'AE') : ('Ö', 'Ä'), "'" ],
53 [qw/^a ^s ^d ^f ^g ^h ^j ^k ^l ^0 ^0 ^0 /],
55 [qw/ y x c v b n m , . - < /],
56 [qw/ Y X C V B N M ; : _ > /],
57 [qw/^y ^x ^c ^v ^b ^n ^m ^0 ^0 ^_ | /],
61 [qw/ < & /, $ascii ? 'e\'' : 'é', qw/ " ' ( - ^_ _ /, $ascii ? 'c,' : 'ç', qw/ @ ) = /],
62 [qw/ > 1 2 3 4 ^[ 6 7 8 9 0 ^] + /], # 5 unused atm
63 # [qw/ < & é " ' ( - ^_ _ ç @ ) = /], # à→@→^@, è→^_
64 [qw/^\\ ^0 ~ # { [ | ` \\ ^0 ^@ ] } /], # °→^]
66 [qw/ a z e r t y u i o p ^ $ /],
67 [qw/ A Z E R T Y U I O P /, $ascii ? (":'", 'Pd') : ('¨', '£')],
68 [qw/^a ^z ^e ^r ^t ^y ^u ^i ^o ^p ^^ /, $ascii ? 'Cu' : '¤'],
70 [qw/ q s d f g h j k l m /, $ascii ? 'u!' : 'ù', '*'],
71 [qw/ Q S D F G H J K L M /, '%', $ascii ? 'My' : 'µ'],
72 [qw/^q ^s ^d ^f ^g ^h ^j ^k ^l ^m ^0 ^0 /],
74 [qw( w x c v b n , ; : ! )],
75 [qw( W X C V B N ? . / ), $ascii ? 'SE' : '§' ],
76 [qw(^w ^x ^c ^v ^b ^n ^? ^0 ^0 ^0 )],
80 [qw/ ` 1 2 3 4 5 6 7 8 9 0 [ ] /],
81 [qw/ ~ ! @ # $ % ^ & * ( ) { } /],
84 [qw( q l ' p , . f u d k / = )],
85 [qw( Q L " P < > F U D K ? + )],
86 [qw(^q ^l ^0 ^p ^0 ^0 ^f ^u ^d ^k ^? ^0 )],
88 [qw/ a r e n b g s i t o - \\ /],
89 [qw/ A R E N B G S I T O _ | /],
90 [qw/^a ^r ^e ^n ^b ^g ^s ^i ^t ^o ^_ ^\\ /],
92 [qw/ z w ; h j v c y m x /],
93 [qw/ Z W : H J V C Y M X /],
94 [qw/^z ^w ^0 ^h ^j ^v ^c ^y ^m ^x /],
98 [qw/ ` 1 2 3 4 5 6 7 8 9 0 - = /],
99 [qw/ ~ ! @ # $ % ^ & * ( ) _ + /],
102 [qw/ a b c d e f g h i j [ ] /],
103 [qw/ A B C D E F G H I J { } /],
104 [qw/^a ^b ^c ^d ^e ^f ^g ^h ^i ^j ^[ ^] /],
106 [qw/ k l m n o p q r s ; ' \\ /],
107 [qw/ K L M N O P Q R S : " | /],
108 [qw/^k ^l ^m ^n ^o ^p ^q ^r ^s ^0 ^0 ^\\ /],
110 [qw' t u v w x y z , . / '],
111 [qw' T U V W X Y Z < > ? '],
112 [qw'^t ^u ^v ^w ^x ^y ^z ^0 ^0 ^? '],