keyboard/altgr: legacy space cadet layout
authorMischa POSLAWSKY <perl@shiar.org>
Sat, 30 Dec 2023 04:04:50 +0000 (05:04 +0100)
committerMischa POSLAWSKY <perl@shiar.org>
Mon, 1 Jan 2024 08:32:50 +0000 (09:32 +0100)
Best effort transcription from online pictures.

keyboard/altgr.css
keyboard/altgr/spacecadet.eng.inc.pl [new file with mode: 0644]
keyboard/altgr/spacecadet.jpg [new file with mode: 0644]
tools/mksitemap

index 841411059b84d0e6f98df6b152e3fb1bffb9ab15..92a4393ef6e76652940c32097f40ccea71810ca3 100644 (file)
@@ -32,6 +32,7 @@
        color: #FFF;
        line-height: 2.25ex;
 }
+.keys .meta td b,
 .keys .shift td b {
        display: none;
 }
diff --git a/keyboard/altgr/spacecadet.eng.inc.pl b/keyboard/altgr/spacecadet.eng.inc.pl
new file mode 100644 (file)
index 0000000..cc6915d
--- /dev/null
@@ -0,0 +1,108 @@
+use utf8;
+use strict;
+use warnings;
+our %rows = (
+       'q' => '∧',
+       'w' => '∨',
+       'e' => '∩',
+       'r' => '∪',
+       't' => '⊂',
+       'y' => '⊃',
+       'u' => '∀',
+       'i' => '∞',
+       'o' => '∃',
+       'p' => '∂',
+
+       'a' => '⊥',
+       's' => '⊤',
+       'd' => '⊢',
+       'f' => '⊣',
+       'g' => '↑',
+       'h' => '↓',
+       'j' => '←',
+       'k' => '→',
+       'l' => '↔',
+
+       'z' => '⌊',
+       'x' => '⌈',
+       'c' => '≠',
+       'v' => '≃',
+       'b' => '≡',
+       'n' => '≤',
+       'm' => '≥',
+       #',' => '<', # just shifted
+       #'.' => '>',
+       #'/' => '?',
+
+       '+:' => '⋄', # positioned left of 1, also drawn as §-ish
+       '+1' => '†',
+       '+2' => '‡',
+       '+3' => '∇',
+       '+4' => '¢',
+       '+5' => '∘',
+       '+6' => '⎕', # or ⌷
+       '+7' => '÷',
+       '+8' => '×',
+       '+9' => '¶',
+       '+0' => '○',
+       '+-' => '¯',
+       '+=' => '≈',
+
+       '+q' => 'θ',
+       '+w' => 'ω',
+       '+e' => 'ε',
+       '+r' => 'ρ',
+       '+t' => 'τ',
+       '+y' => 'ψ',
+       '+u' => 'υ',
+       '+i' => 'ι',
+       '+o' => 'ο',
+       '+p' => 'π',
+       '+[' => '⟦', # separate keys ([ and {<
+       '+]' => '⟧', # )] and }> ⟨⟩
+       '+`' => '¬', # positioned between ] and \
+       '+\\'=> '∥',
+
+       '+a' => 'α',
+       '+s' => 'σ',
+       '+d' => 'δ',
+       '+f' => 'φ', # drawn like ø
+       '+g' => 'γ',
+       '+h' => 'η',
+       '+j' => 'ϑ', # probably
+       '+k' => 'κ',
+       '+l' => 'λ',
+       '+;' => '¨',
+       "+'" => '·', # ambiguous dot (visually raised •)
+
+       '+z' => 'ζ',
+       '+x' => 'ξ',
+       '+c' => 'χ',
+       '+v' => 'ς', # likely
+       '+b' => 'β',
+       '+n' => 'ν',
+       '+m' => 'μ',
+       '+,' => '≪',
+       '+.' => '≫',
+       '+/' => '∫',
+);
+
++{
+       %{ do 'keyboard/altgr/groups.inc.pl' },
+       version => '1.0',
+       title => 'Space Cadet',
+       intro => join("\n",
+               'Apparent <a href="/charset">glyphs</a> available',
+               'on the 1978 Symbolics Space Cadet keyboard',
+               'by pressing either the <em>Greek/Front</em> or <em>Top</em> key.',
+               'Distinct from the modern <a href="/keyboard/altgr/apl">IBM standard</a>',
+               'for <a href="/apl">APL</a> programming.',
+       ),
+       description => [
+               'A map of the legendary Space Cadet keyboard',
+               'with Unicode characters of all greek and APL options.',
+       ],
+       rows => [3, 0], # greek/front and top
+       moderows => '41-4',
+       image => 'keyboard/altgr/spacecadet.jpg',
+}
diff --git a/keyboard/altgr/spacecadet.jpg b/keyboard/altgr/spacecadet.jpg
new file mode 100644 (file)
index 0000000..a5a1ff7
Binary files /dev/null and b/keyboard/altgr/spacecadet.jpg differ
index abfd8d09f549a8648506507b4b162e2c206108ef..8d1dfb7168de28ef6ccdf0397222dc7798253e13 100755 (executable)
@@ -19,7 +19,7 @@ my @pages = (
        [qw(
                apl less screen digits sc/bw sc/hots termcol/legacy mplayer
                keyboard/altgr/macos-abc keyboard/altgr/msx keyboard/altgr/ukext
-               keyboard/altgr/eurkey keyboard/altgr/apl
+               keyboard/altgr/eurkey keyboard/altgr/apl keyboard/altgr/spacecadet
        )],
        [qw( chars/table/html sample source plan )],
 );