use utf8;
use strict;
use warnings;
use Shiar_Sheet::KeyboardChars 'kbchars';

my %rows = (
  '!' => "\xAC",
  '"' => "\x{2190}",
  '#' => "\xA3",
  '$' => "\x{20AC}",
  '%' => "\x{2030}",
  '&' => "\xA7",
  "'" => "\x{2192}",
  '(' => "\xB7",
  ')' => "\xB0",
  '*' => "\x{221E}",
  '+' => "\xF7",
  ',' => "\x{2264}",
  '-' => "\x{2260}",
  '.' => "\x{2265}",
  '/' => "\x{203D}",
  '0' => "\x{2070}",
  '1' => "\xB9",
  '2' => "\xB2",
  '3' => "\xB3",
  '4' => "\x{2074}",
  '5' => "\x{2075}",
  '6' => "\x{2076}",
  '7' => "\x{2077}",
  '8' => "\x{2078}",
  '9' => "\x{2079}",
  ':' => "\x{2191}",
  ';' => "\x{2193}",
  '<' => "\xAB",
  '=' => "\xD7",
  '>' => "\xBB",
  '?' => "\x{2766}",
  '@' => "\x{2234}",
  '[' => "\x{222A}",
  '\\'=> "`",
  '|' => "~",
  '`' => "\\",
  '~' => "|",
  ']' => "\x{2282}",
  '^' => "\x{221A}",
  '_' => "\xB1",
  'A' => "\x{391}",
  'a' => "\x{3B1}",
  'B' => "\x{392}",
  'b' => "\x{3B2}",
  'c' => "\x{3C8}",
  'C' => "\x{3A8}",
  'D' => "\x{394}",
  'd' => "\x{3B4}",
  'E' => "\x{395}",
  'e' => "\x{3B5}",
  'F' => "\x{3A6}",
  'f' => "\x{3C6}",
  'g' => "\x{3B3}",
  'G' => "\x{393}",
  'H' => "\x{397}",
  'h' => "\x{3B7}",
  'i' => "\x{3B9}",
  'I' => "\x{399}",
  'j' => "\x{3BE}",
  'J' => "\x{39E}",
  'k' => "\x{3BA}",
  'K' => "\x{39A}",
  'l' => "\x{3BB}",
  'L' => "\x{39B}",
  'M' => "\x{39C}",
  'm' => "\x{3BC}",
  'n' => "\x{3BD}",
  'N' => "\x{39D}",
  'O' => "\x{39F}",
  'o' => "\x{3BF}",
  'p' => "\x{3C0}",
  'P' => "\x{3A0}",
  'Q' => "\x{2203}",
  'q' => "\x{2200}",
  'R' => "\x{3A1}",
  'r' => "\x{3C1}",
  'S' => "\x{3A3}",
  's' => "\x{3C3}",
  'T' => "\x{3A4}",
  't' => "\x{3C4}",
  'u' => "\x{3B8}",
  'U' => "\x{398}",
  'v' => "\x{3C9}",
  'V' => "\x{3A9}",
  'w' => "\x{2208}",
  'W' => "\x{2209}",
  'x' => "\x{3C7}",
  'X' => "\x{3A7}",
  'Y' => "\x{3A5}",
  'y' => "\x{3C5}",
  'z' => "\x{3B6}",
  'Z' => "\x{396}",
  '{' => "\x{2229}",
  '}' => "\x{2283}",

  # LSGT (iso key) brackets at TLDE/BKSL inversions
  '`' => "\x{230A}",
  '~' => "\x{230B}",
  '\\'=> "\x{2308}",
  '|' => "\x{2309}",
);

+{
	%{ kbchars(\%rows) },
	version => '1.0',
	title => 'US Symbolics',
	category => 'specialised/greek',
	intro => join("\n",
		"A US English extension providing scientific",
		'<a href="/unicode">Unicode</a> characters while pressing AltGr,',
		'developed by Daniele Baisero',
		'for <abbr title="distributed with X since 2020">Linux</abbr>.',
	),
	description => [
		"US Symbolics keyboard layout table",
		"with the AltGr modifier key: provides Greek letters",
		"and symbols for scientific English literature.",
	],
}
