X-Git-Url: http://git.shiar.net/sheet.git/blobdiff_plain/c72d9fce2dae5b7d1e443f30b1abfddb352eabde..973451ff27debd3dcc2ccd4c9c26a08aceb39e4c:/keyboard/altgr/msx-graph.eng.inc.pl
diff --git a/keyboard/altgr/msx-graph.eng.inc.pl b/keyboard/altgr/msx-graph.eng.inc.pl
new file mode 100644
index 0000000..3bcf5d1
--- /dev/null
+++ b/keyboard/altgr/msx-graph.eng.inc.pl
@@ -0,0 +1,158 @@
+use utf8;
+use strict;
+use warnings;
+use Shiar_Sheet::KeyboardChars 'kbchars';
+our %get;
+
+my %rows = (
+ '1' => '¼',
+ '@' => '²',
+ '2' => '½',
+ '#' => 'â¿',
+ '3' => '¾',
+ '4' => 'â©',
+ '5' => 'â°',
+ '^' => 'â¡',
+ '6' => 'â ',
+ '7' => 'â',
+ '8' => 'â',
+ '(' => 'â', # inverted ·
+ '9' => '·', # smaller than â¢
+ ')' => 'â',
+ '0' => 'â',
+ '_' => 'ð®¯',
+ '-' => 'â',
+ '+' => 'â¡',
+ '=' => '±',
+ '~' => 'â',
+ '`' => 'â½',
+
+ 'Q' => 'ð®',
+ 'q' => 'ð®',
+ 'W' => 'ð®',
+ 'w' => 'ð¬',
+ 'E' => 'ð¯',
+ 'e' => 'ð',
+ 'R' => 'â',
+ 'r' => 'â',
+ 't' => 'â¬',
+ 'Y' => '¬',
+ 'y' => 'â',
+ 'U' => 'ð®
',
+ 'u' => 'â',
+ 'I' => 'â',
+ 'i' => 'â',
+ 'O' => 'ð®',
+ 'o' => 'â',
+ 'P' => 'ð®',
+ 'p' => 'â',
+ '[' => 'âº',
+ '{' => 'â»',
+ ']' => 'âª',
+ '}' => 'â«',
+
+ 'A' => 'â®',
+ 'a' => 'â¬',
+ 'S' => 'ð®',
+ 's' => 'ð®',
+ 'D' => 'â',
+ 'd' => 'â',
+ 'F' => 'â',
+ 'f' => 'â',
+ 'G' => 'â', # â¼ without connecting right
+ 'g' => 'â¼',
+ 'H' => 'â',
+ 'h' => 'â¤',
+ 'J' => 'ð®',
+ 'j' => 'â',
+ 'K' => 'â',
+ 'k' => 'â',
+ 'L' => 'ð®',
+ 'l' => 'â',
+ '"' => 'â¥',
+ "'" => 'â£',
+ ':' => 'â¦',
+ ';' => 'â ',
+ '|' => 'â',
+ '\\'=> 'â²',
+
+ 'Z' => 'â¦', # small white circle
+ 'z' => 'â¼',
+ 'X' => 'â¢', # small black circle
+ 'x' => 'â³',
+ 'C' => 'â',
+ 'c' => 'â', # â
+ 'V' => 'â',
+ 'v' => 'â',
+ 'B' => 'â¬',
+ 'b' => 'â´',
+ 'N' => 'â',
+ 'n' => 'â',
+ 'M' => 'â',
+ 'm' => 'â',
+ '<' => '«',
+ ',' => 'â¤',
+ '>' => '»',
+ '.' => 'â¥',
+ '?' => '÷',
+ '/' => 'â±',
+
+);
+
+my %compat = (
+ 'Q' => 'â¨',
+ 'q' => 'â§',
+ 'W' => 'â', #
+ 'w' => 'â¶',
+ 'E' => 'â²',
+ 'e' => 'â¼', #
+ 'U' => 'â',
+ 'J' => 'â',
+ 'O' => 'â',
+ 'P' => 'â',
+ 'S' => 'â§',
+ 's' => 'â§',
+ 'G' => 'â',
+ '_' => 'â¿',
+ 'L' => 'â',
+);
+
+if (exists $get{compat}) {
+ %rows = (%rows, %compat);
+}
+
+my $groups = kbchars(\%rows);
+
+# replace rare punctuation distinctions by symbols
+$groups->{def}{''}{$_} =~ s/g[78]/g6/ for keys %rows;
+
+$groups->{def}{''}{$_} = 'g7'
+ for grep { $rows{$_} =~ /[\x{2500}-\x{259F}]/ } keys %rows;
+$groups->{flag}{g7} = ['drawing', 'box drawing or block elements'];
+
+$groups->{def}{''}{$_} = 'g8' for keys %compat; # mostly U+1FBxx
+$groups->{flag}{g8} = ['legacy',
+ 'drawing symbols best represented by Unicode 13.0'
+ . (exists $get{compat} && ', converted to compatible equivalents')
+];
+
++{
+ %{ $groups },
+ version => '1.0',
+ title => 'MSX graph',
+ category => 'legacy/msx',
+ intro => join("\n",
+ 'Resulting selection',
+ 'of equivalent Unicode characters',
+ "when the graph key is pressed on an MSX home computer",
+ "(International model such as Toshiba HX10 or Phillips NMS 8245).",
+ 'See also letters and symbols',
+ "from pressing code.",
+ ),
+ description => [
+ "MSX keyboard layout table",
+ "with the graph modifier key.",
+ ],
+ image => 'data/keyboard/thumb/msxgraph.jpg',
+ imagealt => 'Graph key on a Toshiba HX10 with graph labels',
+}