index: release v1.18 with only altgr index linked
[sheet.git] / keyboard / altgr / msx-graph.eng.inc.pl
1 use utf8;
2 use strict;
3 use warnings;
4 use Shiar_Sheet::KeyboardChars 'kbchars';
5 our %get;
6
7 my %rows = (
8         '1' => '¼',
9         '@' => '²',
10         '2' => '½',
11         '#' => 'ⁿ',
12         '3' => '¾',
13         '4' => '∩',
14         '5' => '‰',
15         '^' => '⌡',
16         '6' => '⌠',
17         '7' => '√',
18         '8' => '∞',
19         '(' => '◘', # inverted ·
20         '9' => '·', # smaller than •
21         ')' => '◙',
22         '0' => '○',
23         '_' => '🮯',
24         '-' => '─',
25         '+' => '≡',
26         '=' => '±',
27         '~' => '≈',
28         '`' => '∽',
29
30         'Q' => '🮙',
31         'q' => '🮘',
32         'W' => '🭮',
33         'w' => '🭬',
34         'E' => '🭯',
35         'e' => '🭭',
36         'R' => '⌐',
37         'r' => '┌',
38         't' => '┬',
39         'Y' => '¬',
40         'y' => '┐',
41         'U' => '🮅',
42         'u' => '▂',
43         'I' => '▀',
44         'i' => '▄',
45         'O' => '🮂',
46         'o' => '▆',
47         'P' => '🮖',
48         'p' => '█',
49         '[' => '☺',
50         '{' => '☻',
51         ']' => '♪',
52         '}' => '♫',
53
54         'A' => '▮',
55         'a' => '▬',
56         'S' => '🮚',
57         's' => '🮛',
58         'D' => '▚',
59         'd' => '▞',
60         'F' => '▗',
61         'f' => '├',
62         'G' => '⟊', # ┼ without connecting right
63         'g' => '┼',
64         'H' => '▖',
65         'h' => '┤',
66         'J' => '🮊',
67         'j' => '▎',
68         'K' => '▐',
69         'k' => '▌',
70         'L' => '🮇',
71         'l' => '▊',
72         '"' => '♥',
73         "'" => '♣',
74         ':' => '♦',
75         ';' => '♠',
76         '|' => '│',
77         '\\'=> '╲',
78
79         'Z' => '◦', # small white circle
80         'z' => '☼',
81         'X' => '•', # small black circle
82         'x' => '╳',
83         'C' => '⁃',
84         'c' => '◇', # ◊
85         'V' => '▝',
86         'v' => '└',
87         'B' => '▬',
88         'b' => '┴',
89         'N' => '▘',
90         'n' => '┘',
91         'M' => '♀',
92         'm' => '♂',
93         '<' => '«',
94         ',' => '≤',
95         '>' => '»',
96         '.' => '≥',
97         '?' => '÷',
98         '/' => '╱',
99
100 );
101
102 my %compat = (
103         'Q' => '▨',
104         'q' => '▧',
105         'W' => '◀', #
106         'w' => '▶',
107         'E' => '▲',
108         'e' => '▼', #
109         'U' => '▓',
110         'J' => '░',
111         'O' => '▔',
112         'P' => '▒',
113         'S' => '⧗',
114         's' => '⧓',
115         'G' => '╂',
116         '_' => '┿',
117         'L' => '▕',
118 );
119
120 if (exists $get{compat}) {
121         %rows = (%rows, %compat);
122 }
123
124 my $groups = kbchars(\%rows);
125
126 # replace rare punctuation distinctions by symbols
127 $groups->{def}{''}{$_} =~ s/g[78]/g6/ for keys %rows;
128
129 $groups->{def}{''}{$_} = 'g7'
130         for grep { $rows{$_} =~ /[\x{2500}-\x{259F}]/ } keys %rows;
131 $groups->{flag}{g7} = ['drawing', 'box drawing or block elements'];
132
133 $groups->{def}{''}{$_} = 'g8' for keys %compat; # mostly U+1FBxx
134 $groups->{flag}{g8} = ['legacy',
135         'drawing symbols best represented by Unicode 13.0'
136         . (exists $get{compat} && ', converted to compatible equivalents')
137 ];
138
139 +{
140         %{ $groups },
141         version => '1.0',
142         title => 'MSX graph',
143         category => 'legacy/msx',
144         intro => join("\n",
145                 'Resulting <a href="/unicode">selection</a>',
146                 'of equivalent <a href="/charset">Unicode</a> characters',
147                 "when the <em>graph</em> key is pressed on an MSX home computer",
148                 "(International model such as Toshiba HX10 or Phillips NMS 8245).",
149                 'See also <a href="/keyboard/altgr/msx">letters and symbols</a>',
150                 "from pressing <em>code</em>.",
151         ),
152         description => [
153                 "MSX keyboard layout table",
154                 "with the graph modifier key.",
155         ],
156         image => 'data/keyboard/thumb/msxgraph.jpg',
157         imagealt => 'Graph key on a Toshiba HX10 with graph labels',
158 }