index: release v1.18 with only altgr index linked
[sheet.git] / keyboard / altgr / symbolics.eng.inc.pl
1 use utf8;
2 use strict;
3 use warnings;
4 use Shiar_Sheet::KeyboardChars 'kbchars';
5
6 my %rows = (
7   '!' => "\xAC",
8   '"' => "\x{2190}",
9   '#' => "\xA3",
10   '$' => "\x{20AC}",
11   '%' => "\x{2030}",
12   '&' => "\xA7",
13   "'" => "\x{2192}",
14   '(' => "\xB7",
15   ')' => "\xB0",
16   '*' => "\x{221E}",
17   '+' => "\xF7",
18   ',' => "\x{2264}",
19   '-' => "\x{2260}",
20   '.' => "\x{2265}",
21   '/' => "\x{203D}",
22   '0' => "\x{2070}",
23   '1' => "\xB9",
24   '2' => "\xB2",
25   '3' => "\xB3",
26   '4' => "\x{2074}",
27   '5' => "\x{2075}",
28   '6' => "\x{2076}",
29   '7' => "\x{2077}",
30   '8' => "\x{2078}",
31   '9' => "\x{2079}",
32   ':' => "\x{2191}",
33   ';' => "\x{2193}",
34   '<' => "\xAB",
35   '=' => "\xD7",
36   '>' => "\xBB",
37   '?' => "\x{2766}",
38   '@' => "\x{2234}",
39   '[' => "\x{222A}",
40   '\\'=> "`",
41   '|' => "~",
42   '`' => "\\",
43   '~' => "|",
44   ']' => "\x{2282}",
45   '^' => "\x{221A}",
46   '_' => "\xB1",
47   'A' => "\x{391}",
48   'a' => "\x{3B1}",
49   'B' => "\x{392}",
50   'b' => "\x{3B2}",
51   'c' => "\x{3C8}",
52   'C' => "\x{3A8}",
53   'D' => "\x{394}",
54   'd' => "\x{3B4}",
55   'E' => "\x{395}",
56   'e' => "\x{3B5}",
57   'F' => "\x{3A6}",
58   'f' => "\x{3C6}",
59   'g' => "\x{3B3}",
60   'G' => "\x{393}",
61   'H' => "\x{397}",
62   'h' => "\x{3B7}",
63   'i' => "\x{3B9}",
64   'I' => "\x{399}",
65   'j' => "\x{3BE}",
66   'J' => "\x{39E}",
67   'k' => "\x{3BA}",
68   'K' => "\x{39A}",
69   'l' => "\x{3BB}",
70   'L' => "\x{39B}",
71   'M' => "\x{39C}",
72   'm' => "\x{3BC}",
73   'n' => "\x{3BD}",
74   'N' => "\x{39D}",
75   'O' => "\x{39F}",
76   'o' => "\x{3BF}",
77   'p' => "\x{3C0}",
78   'P' => "\x{3A0}",
79   'Q' => "\x{2203}",
80   'q' => "\x{2200}",
81   'R' => "\x{3A1}",
82   'r' => "\x{3C1}",
83   'S' => "\x{3A3}",
84   's' => "\x{3C3}",
85   'T' => "\x{3A4}",
86   't' => "\x{3C4}",
87   'u' => "\x{3B8}",
88   'U' => "\x{398}",
89   'v' => "\x{3C9}",
90   'V' => "\x{3A9}",
91   'w' => "\x{2208}",
92   'W' => "\x{2209}",
93   'x' => "\x{3C7}",
94   'X' => "\x{3A7}",
95   'Y' => "\x{3A5}",
96   'y' => "\x{3C5}",
97   'z' => "\x{3B6}",
98   'Z' => "\x{396}",
99   '{' => "\x{2229}",
100   '}' => "\x{2283}",
101
102   # LSGT (iso key) brackets at TLDE/BKSL inversions
103   '`' => "\x{230A}",
104   '~' => "\x{230B}",
105   '\\'=> "\x{2308}",
106   '|' => "\x{2309}",
107 );
108
109 my $groups = kbchars(\%rows);
110 $groups->{flag}->{g5} = [greek =>
111         "a different greek letter not corresponding with latin transcription"
112 ];
113 while (my ($key, $chr) = each %rows) {
114         $groups->{def}->{''}->{$key} =~ s/g6/g5/ if $chr =~ /\A\p{Greek}/;
115 }
116
117 +{
118         %{$groups},
119         version => '1.1',
120         title => 'US Symbolics',
121         category => 'specialised/greek/xorg',
122         intro => join("\n",
123                 "A US English extension providing scientific",
124                 '<a href="/unicode">Unicode</a> characters while pressing AltGr,',
125                 'developed by Daniele Baisero',
126                 'for <abbr title="distributed with X since 2020">Linux</abbr>.',
127         ),
128         description => [
129                 "US Symbolics keyboard layout table",
130                 "with the AltGr modifier key: provides Greek letters",
131                 "and symbols for scientific English literature.",
132         ],
133 }