Compare commits

..

5 commits
v4.6.0 ... main

5 changed files with 64 additions and 61 deletions

11
README.md Normal file
View file

@ -0,0 +1,11 @@
# ACP Keyboard
This is my custom keyboard layout. For the full spec, rationale, and images,
please see the `spec.html` file in the repo or at the URL below:
https://acperkins.com/acp/keyboard/src/branch/main/spec.html
To download the Windows AutoHotKey build, see the GitHub Releases page at the
URL below:
https://acperkins.com/acp/keyboard/releases/latest

View file

@ -1,12 +0,0 @@
ACP Keyboard
============
This is my custom keyboard layout. For the full spec, rationale, and images,
please see the spec file at the URL below:
https://acperkins.github.io/keyboard/spec.html
To download the Windows AutoHotKey build, see the GitHub Releases page at the
URL below:
https://github.com/acperkins/keyboard/releases

View file

@ -97,18 +97,18 @@ dead_macron := Map.Call(
; E00 - SC029 ; E00 - SC029
; ⁻
>!SC029::Send "{U+207B}"
<^>!SC029::Send "{U+207B}"
; ≈ ; ≈
>!SC029::Send "{U+2248}" >!+SC029::Send "{U+2248}"
<^>!SC029::Send "{U+2248}" <^>!+SC029::Send "{U+2248}"
; ±
>!+SC029::Send "{U+00B1}"
<^>!+SC029::Send "{U+00B1}"
; E01 - SC002 ; E01 - SC002
; ! ; ¹
>!SC002::Send "{U+0021}" >!SC002::Send "{U+00B9}"
<^>!SC002::Send "{U+0021}" <^>!SC002::Send "{U+00B9}"
; ¡ ; ¡
>!+SC002::Send "{U+00A1}" >!+SC002::Send "{U+00A1}"
<^>!+SC002::Send "{U+00A1}" <^>!+SC002::Send "{U+00A1}"
@ -583,9 +583,9 @@ dead_macron := Map.Call(
; ;
>!SC030::Send "{U+2013}" >!SC030::Send "{U+2013}"
<^>!SC030::Send "{U+2013}" <^>!SC030::Send "{U+2013}"
; ;
>!+SC030::Send "" >!+SC030::Send "{U+2011}"
<^>!+SC030::Send "" <^>!+SC030::Send "{U+2011}"
; B06 - SC031 ; B06 - SC031
@ -625,9 +625,9 @@ dead_macron := Map.Call(
; B10 - SC035 ; B10 - SC035
; ? ; ±
>!SC035::Send "{U+003F}" >!SC035::Send "{U+00B1}"
<^>!SC035::Send "{U+003F}" <^>!SC035::Send "{U+00B1}"
; ¿ ; ¿
>!+SC035::Send "{U+00BF}" >!+SC035::Send "{U+00BF}"
<^>!+SC035::Send "{U+00BF}" <^>!+SC035::Send "{U+00BF}"
@ -636,9 +636,9 @@ dead_macron := Map.Call(
; SPC - SC039 ; SPC - SC039
; NNBSP ; THSP
>!SC039::Send "{U+202F}" >!SC039::Send "{U+2009}"
<^>!SC039::Send "{U+202F}" <^>!SC039::Send "{U+2009}"
; NBSP ; NBSP
>!+SC039::Send "{U+00A0}" >!+SC039::Send "{U+00A0}"
<^>!+SC039::Send "{U+00A0}" <^>!+SC039::Send "{U+00A0}"

View file

@ -42,7 +42,7 @@
</style> </style>
</head> </head>
<body> <body>
<h1>ACP Keyboard v4.6.0</h1> <h1>ACP Keyboard v4.9.0</h1>
<ol> <ol>
<li><a href="#rationale">Rationale</a></li> <li><a href="#rationale">Rationale</a></li>
<li><a href="#images">Images</a></li> <li><a href="#images">Images</a></li>
@ -61,21 +61,22 @@
<h2 id="rationale">Rationale</h2> <h2 id="rationale">Rationale</h2>
<p>There are thousands of keyboard layouts around. Why make a new one? <p>There are thousands of keyboard layouts around. Why make a new one?
Simply: none of them worked for me. They either had too many symbols, Simply: none of them worked for me. They either had too many symbols, not
not enough symbols, or the layout was wrong. <a enough symbols, or the layout was wrong. <a
href="https://bepo.fr/wiki/Accueil">BÉPO</a> came the closest to having the href="https://bepo.fr/wiki/Accueil">BÉPO</a> came the closest to having the
main symbols I wanted, but I couldnt get over the non-QWERTY layout; and main symbols I wanted, but I couldn&#x2019;t get over the non-QWERTY
the <a href="https://kbdlayout.info/kbdcan">Canadian Multilingual layout; and the <a href="https://kbdlayout.info/kbdcan">Canadian
Standard</a> layout had the symbols I wanted, but they were spread across Multilingual Standard</a> layout had the symbols I wanted, but they were
six levels (AltGr and Right Ctrl both act as level selectors). spread across six levels (AltGr and Right Ctrl both act as level
selectors).
<p>So I made my own. There were a number of requirements for me:</p> <p>So I made my own. There were a number of requirements for me:</p>
<ol> <ol>
<li>The most common English symbols I need should be available.</li> <li>The most common English symbols I need should be available.</li>
<li>No more than four levels (normal; Shift; AltGr; and Shift+AltGr).</li> <li>No more than four levels (normal; Shift; AltGr; and Shift+AltGr).</li>
<li>Keys should be grouped sensibly: the degree sign in °C is preceded by <li>Keys should be grouped sensibly: the guillemets in French are paired
a narrow non-breaking space, so they should be on the same level.</li> with a non-breaking space, so they should be on the same level.</li>
<li>The main layout should be based on the US ANSI layout, but it should <li>The main layout should be based on the US ANSI layout, but it should
also support an ISO layout with one key extra.</li> also support an ISO layout with one key extra.</li>
<li>It should be able to be used without Administrative permissions. This <li>It should be able to be used without Administrative permissions. This
@ -140,14 +141,14 @@
<rect x="0" y="0" width="80" height="80" /> <rect x="0" y="0" width="80" height="80" />
<text x="10" y="70" class="layer1">&#x0060;</text> <text x="10" y="70" class="layer1">&#x0060;</text>
<text x="10" y="10" class="layer2">&#x007e;</text> <text x="10" y="10" class="layer2">&#x007e;</text>
<text x="70" y="70" class="layer3">&#x2248;</text> <text x="70" y="70" class="layer3">&#x207b;</text>
<text x="70" y="10" class="layer4">&#x00b1;</text> <text x="70" y="10" class="layer4">&#x2248;</text>
<!-- E01 --> <!-- E01 -->
<rect x="80" y="0" width="80" height="80" /> <rect x="80" y="0" width="80" height="80" />
<text x="90" y="70" class="layer1">&#x0031;</text> <text x="90" y="70" class="layer1">&#x0031;</text>
<text x="90" y="10" class="layer2">&#x0021;</text> <text x="90" y="10" class="layer2">&#x0021;</text>
<text x="150" y="70" class="layer3">&#x0021;</text> <text x="150" y="70" class="layer3">&#x00b9;</text>
<text x="150" y="10" class="layer4">&#x00a1;</text> <text x="150" y="10" class="layer4">&#x00a1;</text>
<!-- E02 --> <!-- E02 -->
@ -457,7 +458,7 @@
<text x="510" y="310" class="layer1">&#x0062;</text> <text x="510" y="310" class="layer1">&#x0062;</text>
<text x="510" y="250" class="layer2">&#x0042;</text> <text x="510" y="250" class="layer2">&#x0042;</text>
<text x="570" y="310" class="layer3">&#x2013;</text> <text x="570" y="310" class="layer3">&#x2013;</text>
<text x="570" y="250" class="layer4"></text> <text x="570" y="250" class="layer4">&#x2011;</text>
<!-- B06 --> <!-- B06 -->
<rect x="580" y="240" width="80" height="80" /> <rect x="580" y="240" width="80" height="80" />
@ -491,7 +492,7 @@
<rect x="900" y="240" width="80" height="80" /> <rect x="900" y="240" width="80" height="80" />
<text x="910" y="310" class="layer1">&#x002f;</text> <text x="910" y="310" class="layer1">&#x002f;</text>
<text x="910" y="250" class="layer2">&#x003f;</text> <text x="910" y="250" class="layer2">&#x003f;</text>
<text x="970" y="310" class="layer3">&#x003f;</text> <text x="970" y="310" class="layer3">&#x00b1;</text>
<text x="970" y="250" class="layer4">&#x00bf;</text> <text x="970" y="250" class="layer4">&#x00bf;</text>
<!-- Right Shift --> <!-- Right Shift -->
@ -516,7 +517,7 @@
<rect x="320" y="320" width="460" height="80" /> <rect x="320" y="320" width="460" height="80" />
<text x="330" y="390" class="layer1 function">Space</text> <text x="330" y="390" class="layer1 function">Space</text>
<text x="330" y="330" class="layer2 function">Space</text> <text x="330" y="330" class="layer2 function">Space</text>
<text x="770" y="390" class="layer3 function">Narrow non-breaking space</text> <text x="770" y="390" class="layer3 function">Thin space</text>
<text x="770" y="330" class="layer4 function">Non-breaking space</text> <text x="770" y="330" class="layer4 function">Non-breaking space</text>
<!-- AltGr --> <!-- AltGr -->
@ -594,14 +595,14 @@
<rect x="0" y="0" width="80" height="80" /> <rect x="0" y="0" width="80" height="80" />
<text x="10" y="70" class="layer1">&#x0060;</text> <text x="10" y="70" class="layer1">&#x0060;</text>
<text x="10" y="10" class="layer2">&#x007e;</text> <text x="10" y="10" class="layer2">&#x007e;</text>
<text x="70" y="70" class="layer3">&#x2248;</text> <text x="70" y="70" class="layer3">&#x207b;</text>
<text x="70" y="10" class="layer4">&#x00b1;</text> <text x="70" y="10" class="layer4">&#x2248;</text>
<!-- E01 --> <!-- E01 -->
<rect x="80" y="0" width="80" height="80" /> <rect x="80" y="0" width="80" height="80" />
<text x="90" y="70" class="layer1">&#x0031;</text> <text x="90" y="70" class="layer1">&#x0031;</text>
<text x="90" y="10" class="layer2">&#x0021;</text> <text x="90" y="10" class="layer2">&#x0021;</text>
<text x="150" y="70" class="layer3">&#x0021;</text> <text x="150" y="70" class="layer3">&#x00b9;</text>
<text x="150" y="10" class="layer4">&#x00a1;</text> <text x="150" y="10" class="layer4">&#x00a1;</text>
<!-- E02 --> <!-- E02 -->
@ -908,7 +909,7 @@
<text x="510" y="310" class="layer1">&#x0062;</text> <text x="510" y="310" class="layer1">&#x0062;</text>
<text x="510" y="250" class="layer2">&#x0042;</text> <text x="510" y="250" class="layer2">&#x0042;</text>
<text x="570" y="310" class="layer3">&#x2013;</text> <text x="570" y="310" class="layer3">&#x2013;</text>
<text x="570" y="250" class="layer4"></text> <text x="570" y="250" class="layer4">&#x2011;</text>
<!-- B06 --> <!-- B06 -->
<rect x="580" y="240" width="80" height="80" /> <rect x="580" y="240" width="80" height="80" />
@ -942,7 +943,7 @@
<rect x="900" y="240" width="80" height="80" /> <rect x="900" y="240" width="80" height="80" />
<text x="910" y="310" class="layer1">&#x002f;</text> <text x="910" y="310" class="layer1">&#x002f;</text>
<text x="910" y="250" class="layer2">&#x003f;</text> <text x="910" y="250" class="layer2">&#x003f;</text>
<text x="970" y="310" class="layer3">&#x003f;</text> <text x="970" y="310" class="layer3">&#x00b1;</text>
<text x="970" y="250" class="layer4">&#x00bf;</text> <text x="970" y="250" class="layer4">&#x00bf;</text>
<!-- Right Shift --> <!-- Right Shift -->
@ -967,7 +968,7 @@
<rect x="320" y="320" width="460" height="80" /> <rect x="320" y="320" width="460" height="80" />
<text x="330" y="390" class="layer1 function">Space</text> <text x="330" y="390" class="layer1 function">Space</text>
<text x="330" y="330" class="layer2 function">Space</text> <text x="330" y="330" class="layer2 function">Space</text>
<text x="770" y="390" class="layer3 function">Narrow non-breaking space</text> <text x="770" y="390" class="layer3 function">Thin space</text>
<text x="770" y="330" class="layer4 function">Non-breaking space</text> <text x="770" y="330" class="layer4 function">Non-breaking space</text>
<!-- Right Alt --> <!-- Right Alt -->
@ -1020,8 +1021,8 @@
<td>SC029</td> <td>SC029</td>
<td><span class="codepoint">U+0060</span> <span class="key-character">&#x0060;</span></td> <td><span class="codepoint">U+0060</span> <span class="key-character">&#x0060;</span></td>
<td><span class="codepoint">U+007E</span> <span class="key-character">&#x007e;</span></td> <td><span class="codepoint">U+007E</span> <span class="key-character">&#x007e;</span></td>
<td><span class="codepoint">U+207B</span> <span class="key-character">&#x207b;</span></td>
<td><span class="codepoint">U+2248</span> <span class="key-character">&#x2248;</span></td> <td><span class="codepoint">U+2248</span> <span class="key-character">&#x2248;</span></td>
<td><span class="codepoint">U+00B1</span> <span class="key-character">&#x00b1;</span></td>
</tr> </tr>
<tr> <tr>
<td>E01</td> <td>E01</td>
@ -1029,7 +1030,7 @@
<td>SC002</td> <td>SC002</td>
<td><span class="codepoint">U+0031</span> <span class="key-character">&#x0031;</span></td> <td><span class="codepoint">U+0031</span> <span class="key-character">&#x0031;</span></td>
<td><span class="codepoint">U+0021</span> <span class="key-character">&#x0021;</span></td> <td><span class="codepoint">U+0021</span> <span class="key-character">&#x0021;</span></td>
<td><span class="codepoint">U+0021</span> <span class="key-character">&#x0021;</span></td> <td><span class="codepoint">U+00B9</span> <span class="key-character">&#x00b9;</span></td>
<td><span class="codepoint">U+00A1</span> <span class="key-character">&#x00a1;</span></td> <td><span class="codepoint">U+00A1</span> <span class="key-character">&#x00a1;</span></td>
</tr> </tr>
<tr> <tr>
@ -1405,7 +1406,7 @@
<td><span class="codepoint">U+0062</span> <span class="key-character">&#x0062;</span></td> <td><span class="codepoint">U+0062</span> <span class="key-character">&#x0062;</span></td>
<td><span class="codepoint">U+0042</span> <span class="key-character">&#x0042;</span></td> <td><span class="codepoint">U+0042</span> <span class="key-character">&#x0042;</span></td>
<td><span class="codepoint">U+2013</span> <span class="key-character">&#x2013;</span></td> <td><span class="codepoint">U+2013</span> <span class="key-character">&#x2013;</span></td>
<td></td> <td><span class="codepoint">U+2011</span> <span class="key-character">&#x2011;</span></td>
</tr> </tr>
<tr> <tr>
<td>B06</td> <td>B06</td>
@ -1449,7 +1450,7 @@
<td>SC035</td> <td>SC035</td>
<td><span class="codepoint">U+002F</span> <span class="key-character">&#x002f;</span></td> <td><span class="codepoint">U+002F</span> <span class="key-character">&#x002f;</span></td>
<td><span class="codepoint">U+003F</span> <span class="key-character">&#x003f;</span></td> <td><span class="codepoint">U+003F</span> <span class="key-character">&#x003f;</span></td>
<td><span class="codepoint">U+003F</span> <span class="key-character">&#x003f;</span></td> <td><span class="codepoint">U+00B1</span> <span class="key-character">&#x00b1;</span></td>
<td><span class="codepoint">U+00BF</span> <span class="key-character">&#x00bf;</span></td> <td><span class="codepoint">U+00BF</span> <span class="key-character">&#x00bf;</span></td>
</tr> </tr>
</tbody> </tbody>
@ -1460,7 +1461,7 @@
<td>SC039</td> <td>SC039</td>
<td><span class="codepoint">U+0020</span> <span class="key-character">&#x0020;</span></td> <td><span class="codepoint">U+0020</span> <span class="key-character">&#x0020;</span></td>
<td><span class="codepoint">U+0020</span> <span class="key-character">&#x0020;</span></td> <td><span class="codepoint">U+0020</span> <span class="key-character">&#x0020;</span></td>
<td><span class="codepoint">U+202F</span> <span class="key-character">&#x202f;</span></td> <td><span class="codepoint">U+2009</span> <span class="key-character">&#x2009;</span></td>
<td><span class="codepoint">U+00A0</span> <span class="key-character">&#x00a0;</span></td> <td><span class="codepoint">U+00A0</span> <span class="key-character">&#x00a0;</span></td>
</tr> </tr>
</tbody> </tbody>
@ -2054,6 +2055,7 @@
<li><span class="codepoint">U+0327</span> COMBINING CEDILLA</li> <li><span class="codepoint">U+0327</span> COMBINING CEDILLA</li>
<li><span class="codepoint">U+03A9</span> GREEK CAPITAL LETTER OMEGA</li> <li><span class="codepoint">U+03A9</span> GREEK CAPITAL LETTER OMEGA</li>
<li><span class="codepoint">U+03BC</span> GREEK SMALL LETTER MU</li> <li><span class="codepoint">U+03BC</span> GREEK SMALL LETTER MU</li>
<li><span class="codepoint">U+00B9</span> SUPERSCRIPT ONE</li>
<li><span class="codepoint">U+1E80</span> LATIN CAPITAL LETTER W WITH GRAVE</li> <li><span class="codepoint">U+1E80</span> LATIN CAPITAL LETTER W WITH GRAVE</li>
<li><span class="codepoint">U+1E81</span> LATIN SMALL LETTER W WITH GRAVE</li> <li><span class="codepoint">U+1E81</span> LATIN SMALL LETTER W WITH GRAVE</li>
<li><span class="codepoint">U+1E82</span> LATIN CAPITAL LETTER W WITH ACUTE</li> <li><span class="codepoint">U+1E82</span> LATIN CAPITAL LETTER W WITH ACUTE</li>
@ -2063,6 +2065,8 @@
<li><span class="codepoint">U+1E9E</span> LATIN CAPITAL LETTER SHARP S</li> <li><span class="codepoint">U+1E9E</span> LATIN CAPITAL LETTER SHARP S</li>
<li><span class="codepoint">U+1EF2</span> LATIN CAPITAL LETTER Y WITH GRAVE</li> <li><span class="codepoint">U+1EF2</span> LATIN CAPITAL LETTER Y WITH GRAVE</li>
<li><span class="codepoint">U+1EF3</span> LATIN SMALL LETTER Y WITH GRAVE</li> <li><span class="codepoint">U+1EF3</span> LATIN SMALL LETTER Y WITH GRAVE</li>
<li><span class="codepoint">U+2009</span> THIN SPACE</li>
<li><span class="codepoint">U+2011</span> NON-BREAKING HYPHEN</li>
<li><span class="codepoint">U+2013</span> EN DASH</li> <li><span class="codepoint">U+2013</span> EN DASH</li>
<li><span class="codepoint">U+2014</span> EM DASH</li> <li><span class="codepoint">U+2014</span> EM DASH</li>
<li><span class="codepoint">U+2018</span> LEFT SINGLE QUOTATION MARK</li> <li><span class="codepoint">U+2018</span> LEFT SINGLE QUOTATION MARK</li>
@ -2073,13 +2077,13 @@
<li><span class="codepoint">U+201E</span> DOUBLE LOW-9 QUOTATION MARK</li> <li><span class="codepoint">U+201E</span> DOUBLE LOW-9 QUOTATION MARK</li>
<li><span class="codepoint">U+2022</span> BULLET</li> <li><span class="codepoint">U+2022</span> BULLET</li>
<li><span class="codepoint">U+2026</span> HORIZONTAL ELLIPSIS</li> <li><span class="codepoint">U+2026</span> HORIZONTAL ELLIPSIS</li>
<li><span class="codepoint">U+202F</span> NARROW NO-BREAK SPACE</li>
<li><span class="codepoint">U+2030</span> PER MILLE SIGN</li> <li><span class="codepoint">U+2030</span> PER MILLE SIGN</li>
<li><span class="codepoint">U+2032</span> PRIME</li> <li><span class="codepoint">U+2032</span> PRIME</li>
<li><span class="codepoint">U+2033</span> DOUBLE PRIME</li> <li><span class="codepoint">U+2033</span> DOUBLE PRIME</li>
<li><span class="codepoint">U+2039</span> SINGLE LEFT-POINTING ANGLE QUOTATION MARK</li> <li><span class="codepoint">U+2039</span> SINGLE LEFT-POINTING ANGLE QUOTATION MARK</li>
<li><span class="codepoint">U+203A</span> SINGLE RIGHT-POINTING ANGLE QUOTATION MARK</li> <li><span class="codepoint">U+203A</span> SINGLE RIGHT-POINTING ANGLE QUOTATION MARK</li>
<li><span class="codepoint">U+204A</span> TIRONIAN SIGN ET</li> <li><span class="codepoint">U+204A</span> TIRONIAN SIGN ET</li>
<li><span class="codepoint">U+207B</span> SUPERSCRIPT MINUS</li>
<li><span class="codepoint">U+20AC</span> EURO SIGN</li> <li><span class="codepoint">U+20AC</span> EURO SIGN</li>
<li><span class="codepoint">U+2105</span> CARE OF</li> <li><span class="codepoint">U+2105</span> CARE OF</li>
<li><span class="codepoint">U+2122</span> TRADE MARK SIGN</li> <li><span class="codepoint">U+2122</span> TRADE MARK SIGN</li>

View file

@ -3,8 +3,8 @@ xkb_symbols "basic" {
name[Group1]= "ACP"; name[Group1]= "ACP";
key <TLDE> { [ U0060, U007E, U2248, U00B1 ] }; // ` ~ ≈ ± key <TLDE> { [ U0060, U007E, U207B, U2248 ] }; // ` ~ ⁻ ≈
key <AE01> { [ U0031, U0021, U0021, U00A1 ] }; // 1 ! ! ¡ key <AE01> { [ U0031, U0021, U00B9, U00A1 ] }; // 1 ! ¹ ¡
key <AE02> { [ U0032, U0040, U00B2, U00A9 ] }; // 2 @ ² © key <AE02> { [ U0032, U0040, U00B2, U00A9 ] }; // 2 @ ² ©
key <AE03> { [ U0033, U0023, U00B3, U00A3 ] }; // 3 # ³ £ key <AE03> { [ U0033, U0023, U00B3, U00A3 ] }; // 3 # ³ £
key <AE04> { [ U0034, U0024, U00A2, U2105 ] }; // 4 $ ¢ ℅ key <AE04> { [ U0034, U0024, U00A2, U2105 ] }; // 4 $ ¢ ℅
@ -48,14 +48,14 @@ xkb_symbols "basic" {
key <AB02> { [ U0078, U0058, U0153, U0152 ] }; // x X œ Œ key <AB02> { [ U0078, U0058, U0153, U0152 ] }; // x X œ Œ
key <AB03> { [ U0063, U0043, U00E7, U00C7 ] }; // c C ç Ç key <AB03> { [ U0063, U0043, U00E7, U00C7 ] }; // c C ç Ç
key <AB04> { [ U0076, U0056, U2014, NoSymbol ] }; // v V — key <AB04> { [ U0076, U0056, U2014, NoSymbol ] }; // v V —
key <AB05> { [ U0062, U0042, U2013, NoSymbol ] }; // b B key <AB05> { [ U0062, U0042, U2013, U2011 ] }; // b B
key <AB06> { [ U006E, U004E, U00F1, U00D1 ] }; // n N ñ Ñ key <AB06> { [ U006E, U004E, U00F1, U00D1 ] }; // n N ñ Ñ
key <AB07> { [ U006D, U004D, U03BC, U03A9 ] }; // m M μ Ω key <AB07> { [ U006D, U004D, U03BC, U03A9 ] }; // m M μ Ω
key <AB08> { [ U002C, U003C, U2026, U2264 ] }; // , < … ≤ key <AB08> { [ U002C, U003C, U2026, U2264 ] }; // , < … ≤
key <AB09> { [ U002E, U003E, U22C5, U2265 ] }; // . > ⋅ ≥ key <AB09> { [ U002E, U003E, U22C5, U2265 ] }; // . > ⋅ ≥
key <AB10> { [ U002F, U003F, U003F, U00BF ] }; // / ? ? ¿ key <AB10> { [ U002F, U003F, U00B1, U00BF ] }; // / ? ± ¿
key <SPCE> { [ U0020, U0020, U202F, U00A0 ] }; // [space] [space] [nnbsp] [nbsp] key <SPCE> { [ U0020, U0020, U2009, U00A0 ] }; // [space] [space] [thsp] [nbsp]
include "level3(ralt_switch)" include "level3(ralt_switch)"
}; };