index: release v1.18 with only altgr index linked
[sheet.git] / keyboard / altgr / eurkey.eng.inc.pl
1 use utf8;
2 use strict;
3 use warnings;
4 use Shiar_Sheet::KeyboardChars 'kbmodes';
5
6 my $V = v1.3;
7
8 my $presymbol = $V ge v1.3 ? '\\' : '-';
9 my %rows = (
10         '' => {
11         '1' => '¡',
12         '!' => '¹',
13         '2' => 'ª',
14         '@' => '²',
15         '3' => 'º',
16         '#' => '³',
17         '4' => $V ge v1.1 ? '£' : '€',
18         '$' => '¥',
19         '5' => $V ge v1.1 ? '€' : '£',
20         '%' => '¢',
21         '6' => "\N{COMBINING CIRCUMFLEX ACCENT}",
22         '^' => "\N{COMBINING CARON}",
23         '7' => "\N{COMBINING RING ABOVE}",
24         '&' => "\N{COMBINING MACRON}",
25         '8' => "\N{DOUBLE LOW-9 QUOTATION MARK}",
26         '*' => "\N{SINGLE LOW-9 QUOTATION MARK}",
27         '9' => "\N{LEFT DOUBLE QUOTATION MARK}",
28         '(' => "\N{LEFT SINGLE QUOTATION MARK}",
29         '0' => "\N{RIGHT DOUBLE QUOTATION MARK}",
30         ')' => "\N{RIGHT SINGLE QUOTATION MARK}",
31         '-' => $V ge v1.3 ? '✓' : '©',
32         '_' => $V ge v1.3 ? '✗' : '№',
33         '=' => '×',
34         '+' => '÷',
35         'q' => 'æ',
36         'Q' => 'Æ',
37         'w' => 'å',
38         'W' => 'Å',
39         'e' => 'ë',
40         'E' => 'Ë',
41         'r' => 'ý',
42         'R' => 'Ý',
43         't' => 'þ',
44         'T' => 'Þ',
45         'y' => 'ÿ',
46         'Y' => 'Ÿ',
47         'u' => 'ü',
48         'U' => 'Ü',
49         'i' => 'ï',
50         'I' => 'Ï',
51         'o' => 'ö',
52         'O' => 'Ö',
53         'p' => 'œ',
54         'P' => 'Œ',
55         '[' => '«',
56         '{' => '‹',
57         ']' => '»',
58         '}' => '›',
59
60         'a' => 'ä',
61         'A' => 'Ä',
62         's' => 'ß',
63         'S' => $V ge v1.3 ? 'ẞ' : '¶',
64         'd' => $V ge v1.2 ? 'đ' : 'ð',
65         'D' => $V ge v1.2 ? 'Đ' : 'Ð',
66         'f' => 'è',
67         'F' => 'È',
68         'g' => 'é',
69         'G' => 'É',
70         'h' => 'ù',
71         'H' => 'Ù',
72         'j' => 'ú',
73         'J' => 'Ú',
74         'k' => 'ij',
75         'K' => 'IJ',
76         'l' => 'ø',
77         'L' => 'Ø',
78         ';' => $V ge v1.2 ? '°' : "\N{COMBINING DIAERESIS}",
79         ':' => '·',
80         "'" => "\N{COMBINING ACUTE ACCENT}",
81         '"' => $V ge v1.2 ? "\N{COMBINING DIAERESIS}" : '†',
82         '`' => "\N{COMBINING GRAVE ACCENT}",
83         '~' => "\N{COMBINING TILDE}",
84
85         '\\'=> '¬',
86         '|' => '¦',
87         'z' => 'à',
88         'Z' => 'À',
89         'x' => 'á',
90         'X' => 'Á',
91         'c' => 'ç',
92         'C' => 'Ç',
93         'v' => 'ì',
94         'V' => 'Ì',
95         'b' => 'í',
96         'B' => 'Í',
97         'n' => 'ñ',
98         'N' => 'Ñ',
99         'm' => 'Ω',
100         'M' => '√', # ±
101         ',' => 'ò',
102         '<' => 'Ò',
103         '.' => 'ó',
104         '>' => 'Ó',
105         '/' => '¿',
106         '?' => '…',
107         },
108
109         # greek
110         'm' => {
111                 'a' => 'α',
112                 'b' => 'β', # v
113                 'g' => 'γ',
114                 'd' => 'δ',
115                 'e' => 'ε',
116                 'z' => 'ζ',
117                 'i' => 'η',
118                 'h' => 'θ',
119                 'j' => 'ι',
120                 'k' => 'κ',
121                 'l' => 'λ',
122                 'm' => 'μ',
123                 'n' => 'ν',
124                 'x' => 'ξ',
125                 'o' => 'ο',
126                 'p' => 'π',
127                 'r' => 'ρ',
128                 's' => 'σ',
129                 't' => 'τ',
130                 'y' => 'υ',
131                 'f' => 'φ',
132                 'c' => 'χ',
133                 'w' => 'ψ',
134                 'q' => 'ω', # u
135
136                 # suþscript
137                 '1' => '¹',
138                 '2' => '²',
139                 '3' => '³',
140                 '4' => '⁴',
141                 '5' => '⁵',
142                 '6' => '⁶',
143                 '7' => '⁷',
144                 '8' => '⁸',
145                 '9' => '⁹',
146                 '0' => '⁰',
147                 '!' => '₁',
148                 '@' => '₂',
149                 '#' => '₃',
150                 '$' => '₄',
151                 '%' => '₅',
152                 '^' => '₆',
153                 '&' => '₇',
154                 '*' => '₈',
155                 '(' => '₉',
156                 ')' => '₀',
157         },
158
159         # maths
160         'M' => {
161                 '!' => '≠',
162                 '~' => '≈',
163                 '=' => '≝',
164                 '>' => '≥',
165                 '<' => '≤',
166                 '-' => '±',
167                 'i' => '∞',
168                 'n' => 'ⁿ',
169                 'r' => '√',
170                 '3' => '∛',
171                 '4' => '∜',
172                 '%' => '‰',
173
174                 'f' => 'ƒ',
175                 'S' => '∫',
176                 "'" => '′',
177                 '"' => '″',
178                 'p' => '∂',
179                 'd' => 'Δ',
180                 'D' => '∇',
181                 '+' => '⊕',
182                 '*' => '⊗',
183                 '^' => '℘',
184
185                 's' => '∩',
186                 'u' => '∪',
187                 'U' => '∖',
188                 'O' => '∅',
189                 'g' => '⊂',
190                 'G' => '⊃',
191                 'h' => '⊄',
192                 'H' => '⊅',
193                 'b' => '⊆',
194                 'B' => '⊇',
195                 'm' => '∈',
196                 'M' => '∉',
197                 'k' => '∋',
198                 'K' => '∌',
199
200                 'A' => '∀',
201                 'E' => '∃',
202                 'X' => '∄',
203                 '&' => '∧',
204                 '|' => '∨',
205                 'c' => '∝',
206                 '.' => '⋅',
207                 'o' => '∘',
208                 ':' => '∴',
209                 ';' => '∵',
210                 'z' => '↯',
211                 'F' => '∎',
212
213                 'R' => 'ℝ',
214                 'C' => 'ℂ',
215                 'N' => 'ℕ',
216                 'P' => 'ℙ',
217                 'Q' => 'ℚ',
218                 'Z' => 'ℤ',
219                 '9' => '∟',
220                 '8' => '∠',
221                 '7' => '∡',
222                 'l' => '∥',
223                 'L' => '∦',
224         },
225
226         # symbols
227         $presymbol => {
228                 't' => '™',
229                 'c' => '©',
230                 'p' => '℗',
231                 'r' => '®',
232                         $V lt v1.3 ? (
233                 '1' => '¼',
234                 '2' => '½',
235                 '3' => '¾',
236                 '4' => '⅓',
237                 '5' => '⅔',
238                 's' => '℠',
239                         ) : (
240                 's' => '§',
241                 '1' => '№',
242                 '2' => '½',
243                 '3' => '⅓',
244                 '4' => '¼',
245                 '5' => '⅔',
246                 '6' => '¾',
247                 'T' => '℠',
248                         ),
249
250                 # arrows
251                 'h' => '←',
252                 'H' => '⇐',
253                 'j' => '↓',
254                 'J' => '⇓',
255                 'k' => '↑',
256                 'K' => '⇑',
257                 'l' => '→',
258                 'L' => '⇒',
259                 'u' => '↖',
260                 'U' => '⇖',
261                 'i' => '↗',
262                 'I' => '⇗',
263                 'n' => '↙',
264                 'N' => '⇙',
265                 'm' => '↘',
266                 'M' => '⇘',
267                 '=' => '↔',
268                 '+' => '⇔',
269         },
270 );
271
272 +{
273         %{ kbmodes(\%rows) },
274         mode => {
275                 ''  => 'option-shifted ⌥',
276                 'm' => 'Ω greek prefix ⌥m',
277                 'M' => '√ maths prefix ⌥M',
278                 $presymbol => "$rows{''}{$presymbol} symbol prefix ⌥$presymbol",
279         },
280         version => '1.1',
281         title => 'EurKEY',
282         category => 'latin/thirdparty',
283         intro => join("\n",
284                 'Third-party proposal <a href="https://eurkey.steffen.bruentjen.eu/">EurKEY</a>',
285                 '<abbr title="last updated 2017-05-15">v1.3</abbr> by Steffen Brüntjen',
286                 'supporting most European languages while pressing AltGr or ⌥ Option.',
287                 'Selectable in <abbr title="distributed with X since 2014">Linux</abbr>',
288                 'and available for <a href="/keyboard/altgr/windows">Windows</a>',
289                 'or <a href="/keyboard/altgr/macos">macOS</a>.',
290         ),
291         description => [
292                 "An interactive map of EurKEY, the European Keyboard Layout.",
293         ],
294         image => 'data/keyboard/thumb/eurkeyboard.jpg',
295         imagealt => 'Right alt on the EurKEYboard created by Psy-Q',
296 }