Make diagrams self-contained and lead the README with them

The SVGs relied on stylesheet classes supplied by the tool that rendered them
- outside it they were black boxes with invisible text. Each now carries its
own <style> block with light and dark palettes.

Also regenerates the overview, which still showed the old row-staggered 36/39
halves, and adds a licence section: nothing is chosen yet, so default
copyright applies.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
William Rickert
2026-08-27 15:12:17 -05:00
co-authored by Claude Opus 5
parent 5e527bb7b9
commit fd1ae511ca
8 changed files with 561 additions and 408 deletions
+31 -4
View File
@@ -1,10 +1,35 @@
# tertiary
A three-piece keyboard: two mirrored halves plus a numpad/nav/media board that
also carries the USB hub. One cable reaches the computer.
A three-piece keyboard: two column-staggered halves plus a numpad/nav/media
board that also carries the USB hub. One cable reaches the computer.
Status: **design**. No boards ordered, no firmware written.
![All three boards to scale](docs/three-board-overview.svg)
<table>
<tr>
<td><img src="docs/half-left-staggered.svg" alt="Left half, 34 keys"></td>
<td><img src="docs/half-right-staggered.svg" alt="Right half, 41 keys"></td>
</tr>
</table>
![Numpad layout](docs/numpad-layout.svg)
Derived from a full 104 rather than a compact ergo core — see
[`docs/104-key-split.svg`](docs/104-key-split.svg) for how the original layout
maps across the three boards.
## Licence
Not yet chosen. Until one is added, default copyright applies: you may read
this, but not build, fork or reuse it. If that isn't the intent, add
CERN-OHL-S or TAPR OHL for the hardware, and GPL-2.0 for anything derived from
QMK.
The PDFs under `Documents/` are vendor datasheets (WCH, ST) redistributed for
convenience and are **not** covered by whatever licence this repo adopts.
---
## The three boards
@@ -311,5 +336,7 @@ Per house convention. This one is unusually clean:
- [ ] Nothing here touches LAN topology, credentials, or personal data — no
scrubbing needed, unlike most repos here.
- [ ] Confirm no JLC/LCSC account identifiers end up in fab exports.
- [ ] Decide on a licence before publishing hardware files (CERN-OHL-S or
TAPR OHL for hardware; GPL2 for anything derived from QMK).
- [x] Scanned: no LAN topology, credentials or personal data in files or history.
- [ ] **Licence still unchosen** — see the Licence section above.
- [ ] Vendor datasheets in `Documents/` are redistributed third-party PDFs.
Consider linking instead of vendoring if that matters to you.
+127 -109
View File
@@ -1,119 +1,137 @@
<svg width="100%" viewBox="0 0 680 330" role="img" xmlns="http://www.w3.org/2000/svg">
<style>
text{font-family:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;fill:#1f2328}
.t{font-size:14px;font-weight:400}.ts{font-size:12px;font-weight:400}.th{font-size:14px;font-weight:500}
rect,circle{stroke-width:.6}
.c-teal rect,.c-teal circle{fill:#DFF3F0;stroke:#0F857B}.c-teal text{fill:#0A5750}
.c-purple rect,.c-purple circle{fill:#EDE7FA;stroke:#6D4FC4}.c-purple text{fill:#3A2775}
.c-coral rect,.c-coral circle{fill:#FCEAE4;stroke:#D8613F}.c-coral text{fill:#83321C}
.c-amber rect,.c-amber circle{fill:#FDF1DC;stroke:#C08A21}.c-amber text{fill:#6E4C08}
.c-gray rect,.c-gray circle{fill:#EFEFEF;stroke:#8A8A8A}.c-gray text{fill:#3A3A3A}
@media (prefers-color-scheme:dark){
text{fill:#e6edf3}
.c-teal rect,.c-teal circle{fill:#0C4F49;stroke:#5FC9BF}.c-teal text{fill:#CFF0EC}
.c-purple rect,.c-purple circle{fill:#33246B;stroke:#A992EE}.c-purple text{fill:#E2D9FA}
.c-coral rect,.c-coral circle{fill:#6E2B18;stroke:#F0906F}.c-coral text{fill:#FBDDD2}
.c-amber rect,.c-amber circle{fill:#5C3F06;stroke:#E0AE4A}.c-amber text{fill:#F8E7C4}
.c-gray rect,.c-gray circle{fill:#3A3A3A;stroke:#9A9A9A}.c-gray text{fill:#E0E0E0}
}
</style>
<title>Full 104-key keyboard split across three pieces</title>
<desc>An ANSI 104-key layout colour-coded by which of three boards each key lands on: left half 36 keys, right half 39 keys, numpad piece 26 keys, and four keys not on any piece.</desc>
<text class="th" x="18" y="24">A 104-key layout, divided across the three boards</text>
<g class="c-teal"><rect x="18.0" y="40.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="29.5" y="55.5" text-anchor="middle">Esc</text></g>
<g class="c-teal"><rect x="70.0" y="40.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="81.5" y="55.5" text-anchor="middle">F1</text></g>
<g class="c-teal"><rect x="96.0" y="40.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="107.5" y="55.5" text-anchor="middle">F2</text></g>
<g class="c-teal"><rect x="122.0" y="40.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="133.5" y="55.5" text-anchor="middle">F3</text></g>
<g class="c-teal"><rect x="148.0" y="40.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="159.5" y="55.5" text-anchor="middle">F4</text></g>
<g class="c-teal"><rect x="187.0" y="40.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="198.5" y="55.5" text-anchor="middle">F5</text></g>
<g class="c-teal"><rect x="213.0" y="40.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="224.5" y="55.5" text-anchor="middle">F6</text></g>
<g class="c-purple"><rect x="255.0" y="40.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="266.5" y="55.5" text-anchor="middle">F7</text></g>
<g class="c-purple"><rect x="281.0" y="40.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="292.5" y="55.5" text-anchor="middle">F8</text></g>
<g class="c-purple"><rect x="320.0" y="40.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="331.5" y="55.5" text-anchor="middle">F9</text></g>
<g class="c-purple"><rect x="346.0" y="40.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="357.5" y="55.5" text-anchor="middle">F10</text></g>
<g class="c-purple"><rect x="372.0" y="40.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="383.5" y="55.5" text-anchor="middle">F11</text></g>
<g class="c-purple"><rect x="398.0" y="40.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="409.5" y="55.5" text-anchor="middle">F12</text></g>
<g class="c-gray"><rect x="446.5" y="40.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="458.0" y="55.5" text-anchor="middle">PrS</text></g>
<g class="c-gray"><rect x="472.5" y="40.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="484.0" y="55.5" text-anchor="middle">ScL</text></g>
<g class="c-gray"><rect x="498.5" y="40.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="510.0" y="55.5" text-anchor="middle">Pau</text></g>
<g class="c-teal"><rect x="18.0" y="79.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="29.5" y="94.5" text-anchor="middle">`</text></g>
<g class="c-teal"><rect x="44.0" y="79.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="55.5" y="94.5" text-anchor="middle">1</text></g>
<g class="c-teal"><rect x="70.0" y="79.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="81.5" y="94.5" text-anchor="middle">2</text></g>
<g class="c-teal"><rect x="96.0" y="79.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="107.5" y="94.5" text-anchor="middle">3</text></g>
<g class="c-teal"><rect x="122.0" y="79.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="133.5" y="94.5" text-anchor="middle">4</text></g>
<g class="c-teal"><rect x="148.0" y="79.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="159.5" y="94.5" text-anchor="middle">5</text></g>
<g class="c-teal"><rect x="174.0" y="79.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="185.5" y="94.5" text-anchor="middle">6</text></g>
<g class="c-purple"><rect x="216.0" y="79.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="227.5" y="94.5" text-anchor="middle">7</text></g>
<g class="c-purple"><rect x="242.0" y="79.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="253.5" y="94.5" text-anchor="middle">8</text></g>
<g class="c-purple"><rect x="268.0" y="79.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="279.5" y="94.5" text-anchor="middle">9</text></g>
<g class="c-purple"><rect x="294.0" y="79.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="305.5" y="94.5" text-anchor="middle">0</text></g>
<g class="c-purple"><rect x="320.0" y="79.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="331.5" y="94.5" text-anchor="middle">-</text></g>
<g class="c-purple"><rect x="346.0" y="79.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="357.5" y="94.5" text-anchor="middle">=</text></g>
<g class="c-purple"><rect x="372.0" y="79.0" width="49.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="396.5" y="94.5" text-anchor="middle">Bksp</text></g>
<g class="c-gray"><rect x="446.5" y="79.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="458.0" y="94.5" text-anchor="middle">Ins</text></g>
<g class="c-coral"><rect x="472.5" y="79.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="484.0" y="94.5" text-anchor="middle">Hom</text></g>
<g class="c-coral"><rect x="498.5" y="79.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="510.0" y="94.5" text-anchor="middle">PgU</text></g>
<g class="c-coral"><rect x="531.0" y="79.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="542.5" y="94.5" text-anchor="middle">Num</text></g>
<g class="c-coral"><rect x="557.0" y="79.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="568.5" y="94.5" text-anchor="middle">/</text></g>
<g class="c-coral"><rect x="583.0" y="79.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="594.5" y="94.5" text-anchor="middle">*</text></g>
<g class="c-coral"><rect x="609.0" y="79.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="620.5" y="94.5" text-anchor="middle">-</text></g>
<g class="c-teal"><rect x="18.0" y="105.0" width="36.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="36.0" y="120.5" text-anchor="middle">Tab</text></g>
<g class="c-teal"><rect x="57.0" y="105.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="68.5" y="120.5" text-anchor="middle">Q</text></g>
<g class="c-teal"><rect x="83.0" y="105.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="94.5" y="120.5" text-anchor="middle">W</text></g>
<g class="c-teal"><rect x="109.0" y="105.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="120.5" y="120.5" text-anchor="middle">E</text></g>
<g class="c-teal"><rect x="135.0" y="105.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="146.5" y="120.5" text-anchor="middle">R</text></g>
<g class="c-teal"><rect x="161.0" y="105.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="172.5" y="120.5" text-anchor="middle">T</text></g>
<g class="c-purple"><rect x="203.0" y="105.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="214.5" y="120.5" text-anchor="middle">Y</text></g>
<g class="c-purple"><rect x="229.0" y="105.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="240.5" y="120.5" text-anchor="middle">U</text></g>
<g class="c-purple"><rect x="255.0" y="105.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="266.5" y="120.5" text-anchor="middle">I</text></g>
<g class="c-purple"><rect x="281.0" y="105.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="292.5" y="120.5" text-anchor="middle">O</text></g>
<g class="c-purple"><rect x="307.0" y="105.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="318.5" y="120.5" text-anchor="middle">P</text></g>
<g class="c-purple"><rect x="333.0" y="105.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="344.5" y="120.5" text-anchor="middle">[</text></g>
<g class="c-purple"><rect x="359.0" y="105.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="370.5" y="120.5" text-anchor="middle">]</text></g>
<g class="c-purple"><rect x="385.0" y="105.0" width="36.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="403.0" y="120.5" text-anchor="middle">\</text></g>
<g class="c-coral"><rect x="446.5" y="105.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="458.0" y="120.5" text-anchor="middle">Del</text></g>
<g class="c-coral"><rect x="472.5" y="105.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="484.0" y="120.5" text-anchor="middle">End</text></g>
<g class="c-coral"><rect x="498.5" y="105.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="510.0" y="120.5" text-anchor="middle">PgD</text></g>
<g class="c-coral"><rect x="531.0" y="105.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="542.5" y="120.5" text-anchor="middle">7</text></g>
<g class="c-coral"><rect x="557.0" y="105.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="568.5" y="120.5" text-anchor="middle">8</text></g>
<g class="c-coral"><rect x="583.0" y="105.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="594.5" y="120.5" text-anchor="middle">9</text></g>
<g class="c-coral"><rect x="609.0" y="105.0" width="23.0" height="49.0" rx="4" stroke-width="0.5"/><text class="ts" x="620.5" y="133.5" text-anchor="middle">+</text></g>
<g class="c-teal"><rect x="18.0" y="131.0" width="42.5" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="39.2" y="146.5" text-anchor="middle">Caps</text></g>
<g class="c-teal"><rect x="63.5" y="131.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="75.0" y="146.5" text-anchor="middle">A</text></g>
<g class="c-teal"><rect x="89.5" y="131.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="101.0" y="146.5" text-anchor="middle">S</text></g>
<g class="c-teal"><rect x="115.5" y="131.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="127.0" y="146.5" text-anchor="middle">D</text></g>
<g class="c-teal"><rect x="141.5" y="131.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="153.0" y="146.5" text-anchor="middle">F</text></g>
<g class="c-teal"><rect x="167.5" y="131.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="179.0" y="146.5" text-anchor="middle">G</text></g>
<g class="c-purple"><rect x="209.5" y="131.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="221.0" y="146.5" text-anchor="middle">H</text></g>
<g class="c-purple"><rect x="235.5" y="131.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="247.0" y="146.5" text-anchor="middle">J</text></g>
<g class="c-purple"><rect x="261.5" y="131.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="273.0" y="146.5" text-anchor="middle">K</text></g>
<g class="c-purple"><rect x="287.5" y="131.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="299.0" y="146.5" text-anchor="middle">L</text></g>
<g class="c-purple"><rect x="313.5" y="131.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="325.0" y="146.5" text-anchor="middle">;</text></g>
<g class="c-purple"><rect x="339.5" y="131.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="351.0" y="146.5" text-anchor="middle">'</text></g>
<g class="c-purple"><rect x="365.5" y="131.0" width="55.5" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="393.2" y="146.5" text-anchor="middle">Enter</text></g>
<g class="c-coral"><rect x="531.0" y="131.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="542.5" y="146.5" text-anchor="middle">4</text></g>
<g class="c-coral"><rect x="557.0" y="131.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="568.5" y="146.5" text-anchor="middle">5</text></g>
<g class="c-coral"><rect x="583.0" y="131.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="594.5" y="146.5" text-anchor="middle">6</text></g>
<g class="c-teal"><rect x="18.0" y="157.0" width="55.5" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="45.8" y="172.5" text-anchor="middle">Shift</text></g>
<g class="c-teal"><rect x="76.5" y="157.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="88.0" y="172.5" text-anchor="middle">Z</text></g>
<g class="c-teal"><rect x="102.5" y="157.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="114.0" y="172.5" text-anchor="middle">X</text></g>
<g class="c-teal"><rect x="128.5" y="157.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="140.0" y="172.5" text-anchor="middle">C</text></g>
<g class="c-teal"><rect x="154.5" y="157.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="166.0" y="172.5" text-anchor="middle">V</text></g>
<g class="c-teal"><rect x="180.5" y="157.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="192.0" y="172.5" text-anchor="middle">B</text></g>
<g class="c-purple"><rect x="222.5" y="157.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="234.0" y="172.5" text-anchor="middle">N</text></g>
<g class="c-purple"><rect x="248.5" y="157.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="260.0" y="172.5" text-anchor="middle">M</text></g>
<g class="c-purple"><rect x="274.5" y="157.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="286.0" y="172.5" text-anchor="middle">,</text></g>
<g class="c-purple"><rect x="300.5" y="157.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="312.0" y="172.5" text-anchor="middle">.</text></g>
<g class="c-purple"><rect x="326.5" y="157.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="338.0" y="172.5" text-anchor="middle">/</text></g>
<g class="c-purple"><rect x="352.5" y="157.0" width="68.5" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="386.8" y="172.5" text-anchor="middle">Shift</text></g>
<g class="c-coral"><rect x="472.5" y="157.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="484.0" y="172.5" text-anchor="middle"></text></g>
<g class="c-coral"><rect x="531.0" y="157.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="542.5" y="172.5" text-anchor="middle">1</text></g>
<g class="c-coral"><rect x="557.0" y="157.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="568.5" y="172.5" text-anchor="middle">2</text></g>
<g class="c-coral"><rect x="583.0" y="157.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="594.5" y="172.5" text-anchor="middle">3</text></g>
<g class="c-coral"><rect x="609.0" y="157.0" width="23.0" height="49.0" rx="4" stroke-width="0.5"/><text class="ts" x="620.5" y="185.5" text-anchor="middle">Ent</text></g>
<g class="c-teal"><rect x="18.0" y="183.0" width="29.5" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="32.8" y="198.5" text-anchor="middle">Ctrl</text></g>
<g class="c-teal"><rect x="50.5" y="183.0" width="29.5" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="65.2" y="198.5" text-anchor="middle">Win</text></g>
<g class="c-teal"><rect x="83.0" y="183.0" width="29.5" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="97.8" y="198.5" text-anchor="middle">Alt</text></g>
<g class="c-teal"><rect x="115.5" y="183.0" width="62.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="146.5" y="198.5" text-anchor="middle">Spc</text></g>
<g class="c-purple"><rect x="196.5" y="183.0" width="94.5" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="243.8" y="198.5" text-anchor="middle">Spc</text></g>
<g class="c-purple"><rect x="294.0" y="183.0" width="29.5" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="308.8" y="198.5" text-anchor="middle">Alt</text></g>
<g class="c-purple"><rect x="326.5" y="183.0" width="29.5" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="341.2" y="198.5" text-anchor="middle">Win</text></g>
<g class="c-purple"><rect x="359.0" y="183.0" width="29.5" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="373.8" y="198.5" text-anchor="middle">Mnu</text></g>
<g class="c-purple"><rect x="391.5" y="183.0" width="29.5" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="406.2" y="198.5" text-anchor="middle">Ctrl</text></g>
<g class="c-coral"><rect x="446.5" y="183.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="458.0" y="198.5" text-anchor="middle"></text></g>
<g class="c-coral"><rect x="472.5" y="183.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="484.0" y="198.5" text-anchor="middle"></text></g>
<g class="c-coral"><rect x="498.5" y="183.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="510.0" y="198.5" text-anchor="middle"></text></g>
<g class="c-coral"><rect x="531.0" y="183.0" width="49.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="555.5" y="198.5" text-anchor="middle">0</text></g>
<g class="c-coral"><rect x="583.0" y="183.0" width="23.0" height="23.0" rx="4" stroke-width="0.5"/><text class="ts" x="594.5" y="198.5" text-anchor="middle">.</text></g>
<g class="c-teal"><rect x="18" y="254" width="13" height="13" rx="3" stroke-width="0.5"/></g>
<g class="c-teal"><rect x="18.0" y="40.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="29.5" y="55.5" text-anchor="middle">Esc</text></g>
<g class="c-teal"><rect x="70.0" y="40.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="81.5" y="55.5" text-anchor="middle">F1</text></g>
<g class="c-teal"><rect x="96.0" y="40.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="107.5" y="55.5" text-anchor="middle">F2</text></g>
<g class="c-teal"><rect x="122.0" y="40.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="133.5" y="55.5" text-anchor="middle">F3</text></g>
<g class="c-teal"><rect x="148.0" y="40.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="159.5" y="55.5" text-anchor="middle">F4</text></g>
<g class="c-teal"><rect x="187.0" y="40.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="198.5" y="55.5" text-anchor="middle">F5</text></g>
<g class="c-teal"><rect x="213.0" y="40.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="224.5" y="55.5" text-anchor="middle">F6</text></g>
<g class="c-purple"><rect x="255.0" y="40.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="266.5" y="55.5" text-anchor="middle">F7</text></g>
<g class="c-purple"><rect x="281.0" y="40.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="292.5" y="55.5" text-anchor="middle">F8</text></g>
<g class="c-purple"><rect x="320.0" y="40.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="331.5" y="55.5" text-anchor="middle">F9</text></g>
<g class="c-purple"><rect x="346.0" y="40.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="357.5" y="55.5" text-anchor="middle">F10</text></g>
<g class="c-purple"><rect x="372.0" y="40.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="383.5" y="55.5" text-anchor="middle">F11</text></g>
<g class="c-purple"><rect x="398.0" y="40.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="409.5" y="55.5" text-anchor="middle">F12</text></g>
<g class="c-gray"><rect x="446.5" y="40.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="458.0" y="55.5" text-anchor="middle">PrS</text></g>
<g class="c-gray"><rect x="472.5" y="40.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="484.0" y="55.5" text-anchor="middle">ScL</text></g>
<g class="c-gray"><rect x="498.5" y="40.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="510.0" y="55.5" text-anchor="middle">Pau</text></g>
<g class="c-teal"><rect x="18.0" y="79.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="29.5" y="94.5" text-anchor="middle">`</text></g>
<g class="c-teal"><rect x="44.0" y="79.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="55.5" y="94.5" text-anchor="middle">1</text></g>
<g class="c-teal"><rect x="70.0" y="79.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="81.5" y="94.5" text-anchor="middle">2</text></g>
<g class="c-teal"><rect x="96.0" y="79.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="107.5" y="94.5" text-anchor="middle">3</text></g>
<g class="c-teal"><rect x="122.0" y="79.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="133.5" y="94.5" text-anchor="middle">4</text></g>
<g class="c-teal"><rect x="148.0" y="79.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="159.5" y="94.5" text-anchor="middle">5</text></g>
<g class="c-teal"><rect x="174.0" y="79.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="185.5" y="94.5" text-anchor="middle">6</text></g>
<g class="c-purple"><rect x="216.0" y="79.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="227.5" y="94.5" text-anchor="middle">7</text></g>
<g class="c-purple"><rect x="242.0" y="79.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="253.5" y="94.5" text-anchor="middle">8</text></g>
<g class="c-purple"><rect x="268.0" y="79.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="279.5" y="94.5" text-anchor="middle">9</text></g>
<g class="c-purple"><rect x="294.0" y="79.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="305.5" y="94.5" text-anchor="middle">0</text></g>
<g class="c-purple"><rect x="320.0" y="79.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="331.5" y="94.5" text-anchor="middle">-</text></g>
<g class="c-purple"><rect x="346.0" y="79.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="357.5" y="94.5" text-anchor="middle">=</text></g>
<g class="c-purple"><rect x="372.0" y="79.0" width="49.0" height="23.0" rx="4"/><text class="ts" x="396.5" y="94.5" text-anchor="middle">Bksp</text></g>
<g class="c-gray"><rect x="446.5" y="79.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="458.0" y="94.5" text-anchor="middle">Ins</text></g>
<g class="c-coral"><rect x="472.5" y="79.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="484.0" y="94.5" text-anchor="middle">Hom</text></g>
<g class="c-coral"><rect x="498.5" y="79.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="510.0" y="94.5" text-anchor="middle">PgU</text></g>
<g class="c-coral"><rect x="531.0" y="79.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="542.5" y="94.5" text-anchor="middle">Num</text></g>
<g class="c-coral"><rect x="557.0" y="79.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="568.5" y="94.5" text-anchor="middle">/</text></g>
<g class="c-coral"><rect x="583.0" y="79.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="594.5" y="94.5" text-anchor="middle">*</text></g>
<g class="c-coral"><rect x="609.0" y="79.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="620.5" y="94.5" text-anchor="middle">-</text></g>
<g class="c-teal"><rect x="18.0" y="105.0" width="36.0" height="23.0" rx="4"/><text class="ts" x="36.0" y="120.5" text-anchor="middle">Tab</text></g>
<g class="c-teal"><rect x="57.0" y="105.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="68.5" y="120.5" text-anchor="middle">Q</text></g>
<g class="c-teal"><rect x="83.0" y="105.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="94.5" y="120.5" text-anchor="middle">W</text></g>
<g class="c-teal"><rect x="109.0" y="105.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="120.5" y="120.5" text-anchor="middle">E</text></g>
<g class="c-teal"><rect x="135.0" y="105.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="146.5" y="120.5" text-anchor="middle">R</text></g>
<g class="c-teal"><rect x="161.0" y="105.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="172.5" y="120.5" text-anchor="middle">T</text></g>
<g class="c-purple"><rect x="203.0" y="105.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="214.5" y="120.5" text-anchor="middle">Y</text></g>
<g class="c-purple"><rect x="229.0" y="105.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="240.5" y="120.5" text-anchor="middle">U</text></g>
<g class="c-purple"><rect x="255.0" y="105.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="266.5" y="120.5" text-anchor="middle">I</text></g>
<g class="c-purple"><rect x="281.0" y="105.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="292.5" y="120.5" text-anchor="middle">O</text></g>
<g class="c-purple"><rect x="307.0" y="105.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="318.5" y="120.5" text-anchor="middle">P</text></g>
<g class="c-purple"><rect x="333.0" y="105.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="344.5" y="120.5" text-anchor="middle">[</text></g>
<g class="c-purple"><rect x="359.0" y="105.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="370.5" y="120.5" text-anchor="middle">]</text></g>
<g class="c-purple"><rect x="385.0" y="105.0" width="36.0" height="23.0" rx="4"/><text class="ts" x="403.0" y="120.5" text-anchor="middle">\</text></g>
<g class="c-coral"><rect x="446.5" y="105.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="458.0" y="120.5" text-anchor="middle">Del</text></g>
<g class="c-coral"><rect x="472.5" y="105.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="484.0" y="120.5" text-anchor="middle">End</text></g>
<g class="c-coral"><rect x="498.5" y="105.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="510.0" y="120.5" text-anchor="middle">PgD</text></g>
<g class="c-coral"><rect x="531.0" y="105.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="542.5" y="120.5" text-anchor="middle">7</text></g>
<g class="c-coral"><rect x="557.0" y="105.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="568.5" y="120.5" text-anchor="middle">8</text></g>
<g class="c-coral"><rect x="583.0" y="105.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="594.5" y="120.5" text-anchor="middle">9</text></g>
<g class="c-coral"><rect x="609.0" y="105.0" width="23.0" height="49.0" rx="4"/><text class="ts" x="620.5" y="133.5" text-anchor="middle">+</text></g>
<g class="c-teal"><rect x="18.0" y="131.0" width="42.5" height="23.0" rx="4"/><text class="ts" x="39.2" y="146.5" text-anchor="middle">Caps</text></g>
<g class="c-teal"><rect x="63.5" y="131.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="75.0" y="146.5" text-anchor="middle">A</text></g>
<g class="c-teal"><rect x="89.5" y="131.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="101.0" y="146.5" text-anchor="middle">S</text></g>
<g class="c-teal"><rect x="115.5" y="131.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="127.0" y="146.5" text-anchor="middle">D</text></g>
<g class="c-teal"><rect x="141.5" y="131.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="153.0" y="146.5" text-anchor="middle">F</text></g>
<g class="c-teal"><rect x="167.5" y="131.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="179.0" y="146.5" text-anchor="middle">G</text></g>
<g class="c-purple"><rect x="209.5" y="131.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="221.0" y="146.5" text-anchor="middle">H</text></g>
<g class="c-purple"><rect x="235.5" y="131.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="247.0" y="146.5" text-anchor="middle">J</text></g>
<g class="c-purple"><rect x="261.5" y="131.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="273.0" y="146.5" text-anchor="middle">K</text></g>
<g class="c-purple"><rect x="287.5" y="131.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="299.0" y="146.5" text-anchor="middle">L</text></g>
<g class="c-purple"><rect x="313.5" y="131.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="325.0" y="146.5" text-anchor="middle">;</text></g>
<g class="c-purple"><rect x="339.5" y="131.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="351.0" y="146.5" text-anchor="middle">'</text></g>
<g class="c-purple"><rect x="365.5" y="131.0" width="55.5" height="23.0" rx="4"/><text class="ts" x="393.2" y="146.5" text-anchor="middle">Enter</text></g>
<g class="c-coral"><rect x="531.0" y="131.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="542.5" y="146.5" text-anchor="middle">4</text></g>
<g class="c-coral"><rect x="557.0" y="131.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="568.5" y="146.5" text-anchor="middle">5</text></g>
<g class="c-coral"><rect x="583.0" y="131.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="594.5" y="146.5" text-anchor="middle">6</text></g>
<g class="c-teal"><rect x="18.0" y="157.0" width="55.5" height="23.0" rx="4"/><text class="ts" x="45.8" y="172.5" text-anchor="middle">Shift</text></g>
<g class="c-teal"><rect x="76.5" y="157.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="88.0" y="172.5" text-anchor="middle">Z</text></g>
<g class="c-teal"><rect x="102.5" y="157.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="114.0" y="172.5" text-anchor="middle">X</text></g>
<g class="c-teal"><rect x="128.5" y="157.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="140.0" y="172.5" text-anchor="middle">C</text></g>
<g class="c-teal"><rect x="154.5" y="157.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="166.0" y="172.5" text-anchor="middle">V</text></g>
<g class="c-teal"><rect x="180.5" y="157.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="192.0" y="172.5" text-anchor="middle">B</text></g>
<g class="c-purple"><rect x="222.5" y="157.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="234.0" y="172.5" text-anchor="middle">N</text></g>
<g class="c-purple"><rect x="248.5" y="157.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="260.0" y="172.5" text-anchor="middle">M</text></g>
<g class="c-purple"><rect x="274.5" y="157.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="286.0" y="172.5" text-anchor="middle">,</text></g>
<g class="c-purple"><rect x="300.5" y="157.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="312.0" y="172.5" text-anchor="middle">.</text></g>
<g class="c-purple"><rect x="326.5" y="157.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="338.0" y="172.5" text-anchor="middle">/</text></g>
<g class="c-purple"><rect x="352.5" y="157.0" width="68.5" height="23.0" rx="4"/><text class="ts" x="386.8" y="172.5" text-anchor="middle">Shift</text></g>
<g class="c-coral"><rect x="472.5" y="157.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="484.0" y="172.5" text-anchor="middle"></text></g>
<g class="c-coral"><rect x="531.0" y="157.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="542.5" y="172.5" text-anchor="middle">1</text></g>
<g class="c-coral"><rect x="557.0" y="157.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="568.5" y="172.5" text-anchor="middle">2</text></g>
<g class="c-coral"><rect x="583.0" y="157.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="594.5" y="172.5" text-anchor="middle">3</text></g>
<g class="c-coral"><rect x="609.0" y="157.0" width="23.0" height="49.0" rx="4"/><text class="ts" x="620.5" y="185.5" text-anchor="middle">Ent</text></g>
<g class="c-teal"><rect x="18.0" y="183.0" width="29.5" height="23.0" rx="4"/><text class="ts" x="32.8" y="198.5" text-anchor="middle">Ctrl</text></g>
<g class="c-teal"><rect x="50.5" y="183.0" width="29.5" height="23.0" rx="4"/><text class="ts" x="65.2" y="198.5" text-anchor="middle">Win</text></g>
<g class="c-teal"><rect x="83.0" y="183.0" width="29.5" height="23.0" rx="4"/><text class="ts" x="97.8" y="198.5" text-anchor="middle">Alt</text></g>
<g class="c-teal"><rect x="115.5" y="183.0" width="62.0" height="23.0" rx="4"/><text class="ts" x="146.5" y="198.5" text-anchor="middle">Spc</text></g>
<g class="c-purple"><rect x="196.5" y="183.0" width="94.5" height="23.0" rx="4"/><text class="ts" x="243.8" y="198.5" text-anchor="middle">Spc</text></g>
<g class="c-purple"><rect x="294.0" y="183.0" width="29.5" height="23.0" rx="4"/><text class="ts" x="308.8" y="198.5" text-anchor="middle">Alt</text></g>
<g class="c-purple"><rect x="326.5" y="183.0" width="29.5" height="23.0" rx="4"/><text class="ts" x="341.2" y="198.5" text-anchor="middle">Win</text></g>
<g class="c-purple"><rect x="359.0" y="183.0" width="29.5" height="23.0" rx="4"/><text class="ts" x="373.8" y="198.5" text-anchor="middle">Mnu</text></g>
<g class="c-purple"><rect x="391.5" y="183.0" width="29.5" height="23.0" rx="4"/><text class="ts" x="406.2" y="198.5" text-anchor="middle">Ctrl</text></g>
<g class="c-coral"><rect x="446.5" y="183.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="458.0" y="198.5" text-anchor="middle"></text></g>
<g class="c-coral"><rect x="472.5" y="183.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="484.0" y="198.5" text-anchor="middle"></text></g>
<g class="c-coral"><rect x="498.5" y="183.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="510.0" y="198.5" text-anchor="middle"></text></g>
<g class="c-coral"><rect x="531.0" y="183.0" width="49.0" height="23.0" rx="4"/><text class="ts" x="555.5" y="198.5" text-anchor="middle">0</text></g>
<g class="c-coral"><rect x="583.0" y="183.0" width="23.0" height="23.0" rx="4"/><text class="ts" x="594.5" y="198.5" text-anchor="middle">.</text></g>
<g class="c-teal"><rect x="18" y="254" width="13" height="13" rx="3"/></g>
<text class="ts" x="37" y="264">Left half &#183; 36 keys</text>
<g class="c-purple"><rect x="170" y="254" width="13" height="13" rx="3" stroke-width="0.5"/></g>
<g class="c-purple"><rect x="170" y="254" width="13" height="13" rx="3"/></g>
<text class="ts" x="189" y="264">Right half &#183; 39 keys</text>
<g class="c-coral"><rect x="322" y="254" width="13" height="13" rx="3" stroke-width="0.5"/></g>
<g class="c-coral"><rect x="322" y="254" width="13" height="13" rx="3"/></g>
<text class="ts" x="341" y="264">Numpad piece &#183; 26 keys</text>
<g class="c-gray"><rect x="474" y="254" width="13" height="13" rx="3" stroke-width="0.5"/></g>
<g class="c-gray"><rect x="474" y="254" width="13" height="13" rx="3"/></g>
<text class="ts" x="493" y="264">No board &#183; layer only</text>
<text class="ts" x="18" y="290">A straight chop gives 36 vs 39 keys &#8212; but mirrored boards need matching counts.<tspan x="18" dy="1.35em">A real split trims to a symmetric core and reaches the rest by layer.</tspan></text>
</svg>

Before

Width:  |  Height:  |  Size: 19 KiB

After

Width:  |  Height:  |  Size: 18 KiB

+54 -36
View File
@@ -1,44 +1,62 @@
<svg width="100%" viewBox="0 0 680 706" role="img" xmlns="http://www.w3.org/2000/svg">
<style>
text{font-family:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;fill:#1f2328}
.t{font-size:14px;font-weight:400}.ts{font-size:12px;font-weight:400}.th{font-size:14px;font-weight:500}
rect,circle{stroke-width:.6}
.c-teal rect,.c-teal circle{fill:#DFF3F0;stroke:#0F857B}.c-teal text{fill:#0A5750}
.c-purple rect,.c-purple circle{fill:#EDE7FA;stroke:#6D4FC4}.c-purple text{fill:#3A2775}
.c-coral rect,.c-coral circle{fill:#FCEAE4;stroke:#D8613F}.c-coral text{fill:#83321C}
.c-amber rect,.c-amber circle{fill:#FDF1DC;stroke:#C08A21}.c-amber text{fill:#6E4C08}
.c-gray rect,.c-gray circle{fill:#EFEFEF;stroke:#8A8A8A}.c-gray text{fill:#3A3A3A}
@media (prefers-color-scheme:dark){
text{fill:#e6edf3}
.c-teal rect,.c-teal circle{fill:#0C4F49;stroke:#5FC9BF}.c-teal text{fill:#CFF0EC}
.c-purple rect,.c-purple circle{fill:#33246B;stroke:#A992EE}.c-purple text{fill:#E2D9FA}
.c-coral rect,.c-coral circle{fill:#6E2B18;stroke:#F0906F}.c-coral text{fill:#FBDDD2}
.c-amber rect,.c-amber circle{fill:#5C3F06;stroke:#E0AE4A}.c-amber text{fill:#F8E7C4}
.c-gray rect,.c-gray circle{fill:#3A3A3A;stroke:#9A9A9A}.c-gray text{fill:#E0E0E0}
}
</style>
<title>Left half &#8212; 34 keys, six clean columns</title><desc>6 and F6 moved to the right half. Every column is now five keys deep.</desc>
<text class="th" x="18" y="24">Left half &#8212; 34 keys, six clean columns</text>
<text class="ts" x="18" y="44">6 and F6 moved to the right half. Every column is now five keys deep.</text>
<g class="c-teal"><rect x="130" y="107" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="162" y="142" text-anchor="middle">Esc</text></g>
<g class="c-teal"><rect x="130" y="201" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="162" y="236" text-anchor="middle">`</text></g>
<g class="c-teal"><rect x="130" y="271" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="162" y="306" text-anchor="middle">Tab</text></g>
<g class="c-teal"><rect x="130" y="341" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="162" y="376" text-anchor="middle">Caps</text></g>
<g class="c-teal"><rect x="130" y="411" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="162" y="446" text-anchor="middle">Shift</text></g>
<g class="c-teal"><rect x="200" y="103" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="232" y="138" text-anchor="middle">F1</text></g>
<g class="c-teal"><rect x="200" y="197" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="232" y="232" text-anchor="middle">1</text></g>
<g class="c-teal"><rect x="200" y="267" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="232" y="302" text-anchor="middle">Q</text></g>
<g class="c-teal"><rect x="200" y="337" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="232" y="372" text-anchor="middle">A</text></g>
<g class="c-teal"><rect x="200" y="407" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="232" y="442" text-anchor="middle">Z</text></g>
<g class="c-teal"><rect x="270" y="88" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="302" y="123" text-anchor="middle">F2</text></g>
<g class="c-teal"><rect x="270" y="182" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="302" y="217" text-anchor="middle">2</text></g>
<g class="c-teal"><rect x="270" y="252" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="302" y="287" text-anchor="middle">W</text></g>
<g class="c-teal"><rect x="270" y="322" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="302" y="357" text-anchor="middle">S</text></g>
<g class="c-teal"><rect x="270" y="392" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="302" y="427" text-anchor="middle">X</text></g>
<g class="c-teal"><rect x="340" y="78" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="372" y="113" text-anchor="middle">F3</text></g>
<g class="c-teal"><rect x="340" y="172" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="372" y="207" text-anchor="middle">3</text></g>
<g class="c-teal"><rect x="340" y="242" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="372" y="277" text-anchor="middle">E</text></g>
<g class="c-teal"><rect x="340" y="312" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="372" y="347" text-anchor="middle">D</text></g>
<g class="c-teal"><rect x="340" y="382" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="372" y="417" text-anchor="middle">C</text></g>
<g class="c-teal"><rect x="410" y="85" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="442" y="120" text-anchor="middle">F4</text></g>
<g class="c-teal"><rect x="410" y="179" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="442" y="214" text-anchor="middle">4</text></g>
<g class="c-teal"><rect x="410" y="249" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="442" y="284" text-anchor="middle">R</text></g>
<g class="c-teal"><rect x="410" y="319" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="442" y="354" text-anchor="middle">F</text></g>
<g class="c-teal"><rect x="410" y="389" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="442" y="424" text-anchor="middle">V</text></g>
<g class="c-teal"><rect x="480" y="96" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="512" y="131" text-anchor="middle">F5</text></g>
<g class="c-teal"><rect x="480" y="190" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="512" y="225" text-anchor="middle">5</text></g>
<g class="c-teal"><rect x="480" y="260" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="512" y="295" text-anchor="middle">T</text></g>
<g class="c-teal"><rect x="480" y="330" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="512" y="365" text-anchor="middle">G</text></g>
<g class="c-teal"><rect x="480" y="400" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="512" y="435" text-anchor="middle">B</text></g>
<g class="c-coral"><rect x="238" y="502" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="270" y="537" text-anchor="middle">Ctrl</text></g>
<g class="c-coral"><rect x="308" y="512" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="340" y="547" text-anchor="middle">Win</text></g>
<g class="c-coral"><rect x="378" y="525" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="410" y="560" text-anchor="middle">Alt</text></g>
<g class="c-coral"><rect x="448" y="540" width="99" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="498" y="575" text-anchor="middle">Space</text></g>
<g class="c-teal"><rect x="18" y="644" width="13" height="13" rx="3" stroke-width="0.5"/></g>
<g class="c-teal"><rect x="130" y="107" width="64" height="64" rx="4"/><text class="ts" x="162" y="142" text-anchor="middle">Esc</text></g>
<g class="c-teal"><rect x="130" y="201" width="64" height="64" rx="4"/><text class="ts" x="162" y="236" text-anchor="middle">`</text></g>
<g class="c-teal"><rect x="130" y="271" width="64" height="64" rx="4"/><text class="ts" x="162" y="306" text-anchor="middle">Tab</text></g>
<g class="c-teal"><rect x="130" y="341" width="64" height="64" rx="4"/><text class="ts" x="162" y="376" text-anchor="middle">Caps</text></g>
<g class="c-teal"><rect x="130" y="411" width="64" height="64" rx="4"/><text class="ts" x="162" y="446" text-anchor="middle">Shift</text></g>
<g class="c-teal"><rect x="200" y="103" width="64" height="64" rx="4"/><text class="ts" x="232" y="138" text-anchor="middle">F1</text></g>
<g class="c-teal"><rect x="200" y="197" width="64" height="64" rx="4"/><text class="ts" x="232" y="232" text-anchor="middle">1</text></g>
<g class="c-teal"><rect x="200" y="267" width="64" height="64" rx="4"/><text class="ts" x="232" y="302" text-anchor="middle">Q</text></g>
<g class="c-teal"><rect x="200" y="337" width="64" height="64" rx="4"/><text class="ts" x="232" y="372" text-anchor="middle">A</text></g>
<g class="c-teal"><rect x="200" y="407" width="64" height="64" rx="4"/><text class="ts" x="232" y="442" text-anchor="middle">Z</text></g>
<g class="c-teal"><rect x="270" y="88" width="64" height="64" rx="4"/><text class="ts" x="302" y="123" text-anchor="middle">F2</text></g>
<g class="c-teal"><rect x="270" y="182" width="64" height="64" rx="4"/><text class="ts" x="302" y="217" text-anchor="middle">2</text></g>
<g class="c-teal"><rect x="270" y="252" width="64" height="64" rx="4"/><text class="ts" x="302" y="287" text-anchor="middle">W</text></g>
<g class="c-teal"><rect x="270" y="322" width="64" height="64" rx="4"/><text class="ts" x="302" y="357" text-anchor="middle">S</text></g>
<g class="c-teal"><rect x="270" y="392" width="64" height="64" rx="4"/><text class="ts" x="302" y="427" text-anchor="middle">X</text></g>
<g class="c-teal"><rect x="340" y="78" width="64" height="64" rx="4"/><text class="ts" x="372" y="113" text-anchor="middle">F3</text></g>
<g class="c-teal"><rect x="340" y="172" width="64" height="64" rx="4"/><text class="ts" x="372" y="207" text-anchor="middle">3</text></g>
<g class="c-teal"><rect x="340" y="242" width="64" height="64" rx="4"/><text class="ts" x="372" y="277" text-anchor="middle">E</text></g>
<g class="c-teal"><rect x="340" y="312" width="64" height="64" rx="4"/><text class="ts" x="372" y="347" text-anchor="middle">D</text></g>
<g class="c-teal"><rect x="340" y="382" width="64" height="64" rx="4"/><text class="ts" x="372" y="417" text-anchor="middle">C</text></g>
<g class="c-teal"><rect x="410" y="85" width="64" height="64" rx="4"/><text class="ts" x="442" y="120" text-anchor="middle">F4</text></g>
<g class="c-teal"><rect x="410" y="179" width="64" height="64" rx="4"/><text class="ts" x="442" y="214" text-anchor="middle">4</text></g>
<g class="c-teal"><rect x="410" y="249" width="64" height="64" rx="4"/><text class="ts" x="442" y="284" text-anchor="middle">R</text></g>
<g class="c-teal"><rect x="410" y="319" width="64" height="64" rx="4"/><text class="ts" x="442" y="354" text-anchor="middle">F</text></g>
<g class="c-teal"><rect x="410" y="389" width="64" height="64" rx="4"/><text class="ts" x="442" y="424" text-anchor="middle">V</text></g>
<g class="c-teal"><rect x="480" y="96" width="64" height="64" rx="4"/><text class="ts" x="512" y="131" text-anchor="middle">F5</text></g>
<g class="c-teal"><rect x="480" y="190" width="64" height="64" rx="4"/><text class="ts" x="512" y="225" text-anchor="middle">5</text></g>
<g class="c-teal"><rect x="480" y="260" width="64" height="64" rx="4"/><text class="ts" x="512" y="295" text-anchor="middle">T</text></g>
<g class="c-teal"><rect x="480" y="330" width="64" height="64" rx="4"/><text class="ts" x="512" y="365" text-anchor="middle">G</text></g>
<g class="c-teal"><rect x="480" y="400" width="64" height="64" rx="4"/><text class="ts" x="512" y="435" text-anchor="middle">B</text></g>
<g class="c-coral"><rect x="238" y="502" width="64" height="64" rx="4"/><text class="ts" x="270" y="537" text-anchor="middle">Ctrl</text></g>
<g class="c-coral"><rect x="308" y="512" width="64" height="64" rx="4"/><text class="ts" x="340" y="547" text-anchor="middle">Win</text></g>
<g class="c-coral"><rect x="378" y="525" width="64" height="64" rx="4"/><text class="ts" x="410" y="560" text-anchor="middle">Alt</text></g>
<g class="c-coral"><rect x="448" y="540" width="99" height="64" rx="4"/><text class="ts" x="498" y="575" text-anchor="middle">Space</text></g>
<g class="c-teal"><rect x="18" y="644" width="13" height="13" rx="3"/></g>
<text class="ts" x="37" y="654">Alphas &#183; 30</text>
<g class="c-coral"><rect x="268" y="644" width="13" height="13" rx="3" stroke-width="0.5"/></g>
<g class="c-coral"><rect x="268" y="644" width="13" height="13" rx="3"/></g>
<text class="ts" x="287" y="654">Thumb cluster &#183; 4</text>
<text class="ts" x="18" y="684">Six columns, no orphans. ~6u wide, about 114 mm.</text>
</svg>

Before

Width:  |  Height:  |  Size: 6.0 KiB

After

Width:  |  Height:  |  Size: 6.6 KiB

+54 -36
View File
@@ -1,42 +1,60 @@
<svg width="100%" viewBox="0 0 680 614" role="img" xmlns="http://www.w3.org/2000/svg">
<style>
text{font-family:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;fill:#1f2328}
.t{font-size:14px;font-weight:400}.ts{font-size:12px;font-weight:400}.th{font-size:14px;font-weight:500}
rect,circle{stroke-width:.6}
.c-teal rect,.c-teal circle{fill:#DFF3F0;stroke:#0F857B}.c-teal text{fill:#0A5750}
.c-purple rect,.c-purple circle{fill:#EDE7FA;stroke:#6D4FC4}.c-purple text{fill:#3A2775}
.c-coral rect,.c-coral circle{fill:#FCEAE4;stroke:#D8613F}.c-coral text{fill:#83321C}
.c-amber rect,.c-amber circle{fill:#FDF1DC;stroke:#C08A21}.c-amber text{fill:#6E4C08}
.c-gray rect,.c-gray circle{fill:#EFEFEF;stroke:#8A8A8A}.c-gray text{fill:#3A3A3A}
@media (prefers-color-scheme:dark){
text{fill:#e6edf3}
.c-teal rect,.c-teal circle{fill:#0C4F49;stroke:#5FC9BF}.c-teal text{fill:#CFF0EC}
.c-purple rect,.c-purple circle{fill:#33246B;stroke:#A992EE}.c-purple text{fill:#E2D9FA}
.c-coral rect,.c-coral circle{fill:#6E2B18;stroke:#F0906F}.c-coral text{fill:#FBDDD2}
.c-amber rect,.c-amber circle{fill:#5C3F06;stroke:#E0AE4A}.c-amber text{fill:#F8E7C4}
.c-gray rect,.c-gray circle{fill:#3A3A3A;stroke:#9A9A9A}.c-gray text{fill:#E0E0E0}
}
</style>
<title>Left half — 36 keys</title><desc>The left side of a 104 layout, split at the 6 / T / G / B boundary.</desc>
<text class="th" x="18" y="24">Left half — 36 keys</text>
<text class="ts" x="18" y="44">The left side of a 104 layout, split at the 6 / T / G / B boundary.</text>
<g class="c-teal"><rect x="51" y="76" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="82" y="112" text-anchor="middle">Esc</text></g>
<g class="c-teal"><rect x="187" y="76" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="218" y="112" text-anchor="middle">F1</text></g>
<g class="c-teal"><rect x="255" y="76" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="286" y="112" text-anchor="middle">F2</text></g>
<g class="c-teal"><rect x="323" y="76" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="354" y="112" text-anchor="middle">F3</text></g>
<g class="c-teal"><rect x="391" y="76" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="422" y="112" text-anchor="middle">F4</text></g>
<g class="c-teal"><rect x="493" y="76" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="524" y="112" text-anchor="middle">F5</text></g>
<g class="c-teal"><rect x="561" y="76" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="592" y="112" text-anchor="middle">F6</text></g>
<g class="c-teal"><rect x="51" y="178" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="82" y="214" text-anchor="middle">`</text></g>
<g class="c-teal"><rect x="119" y="178" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="150" y="214" text-anchor="middle">1</text></g>
<g class="c-teal"><rect x="187" y="178" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="218" y="214" text-anchor="middle">2</text></g>
<g class="c-teal"><rect x="255" y="178" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="286" y="214" text-anchor="middle">3</text></g>
<g class="c-teal"><rect x="323" y="178" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="354" y="214" text-anchor="middle">4</text></g>
<g class="c-teal"><rect x="391" y="178" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="422" y="214" text-anchor="middle">5</text></g>
<g class="c-teal"><rect x="459" y="178" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="490" y="214" text-anchor="middle">6</text></g>
<g class="c-teal"><rect x="51" y="246" width="97" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="100" y="282" text-anchor="middle">Tab</text></g>
<g class="c-teal"><rect x="153" y="246" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="184" y="282" text-anchor="middle">Q</text></g>
<g class="c-teal"><rect x="221" y="246" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="252" y="282" text-anchor="middle">W</text></g>
<g class="c-teal"><rect x="289" y="246" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="320" y="282" text-anchor="middle">E</text></g>
<g class="c-teal"><rect x="357" y="246" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="388" y="282" text-anchor="middle">R</text></g>
<g class="c-teal"><rect x="425" y="246" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="456" y="282" text-anchor="middle">T</text></g>
<g class="c-teal"><rect x="51" y="314" width="114" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="108" y="350" text-anchor="middle">Caps</text></g>
<g class="c-teal"><rect x="170" y="314" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="202" y="350" text-anchor="middle">A</text></g>
<g class="c-teal"><rect x="238" y="314" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="270" y="350" text-anchor="middle">S</text></g>
<g class="c-teal"><rect x="306" y="314" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="338" y="350" text-anchor="middle">D</text></g>
<g class="c-teal"><rect x="374" y="314" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="406" y="350" text-anchor="middle">F</text></g>
<g class="c-teal"><rect x="442" y="314" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="474" y="350" text-anchor="middle">G</text></g>
<g class="c-teal"><rect x="51" y="382" width="148" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="125" y="418" text-anchor="middle">Shift</text></g>
<g class="c-teal"><rect x="204" y="382" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="236" y="418" text-anchor="middle">Z</text></g>
<g class="c-teal"><rect x="272" y="382" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="304" y="418" text-anchor="middle">X</text></g>
<g class="c-teal"><rect x="340" y="382" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="372" y="418" text-anchor="middle">C</text></g>
<g class="c-teal"><rect x="408" y="382" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="440" y="418" text-anchor="middle">V</text></g>
<g class="c-teal"><rect x="476" y="382" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="508" y="418" text-anchor="middle">B</text></g>
<g class="c-teal"><rect x="51" y="450" width="80" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="91" y="486" text-anchor="middle">Ctrl</text></g>
<g class="c-teal"><rect x="136" y="450" width="80" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="176" y="486" text-anchor="middle">Win</text></g>
<g class="c-teal"><rect x="221" y="450" width="80" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="261" y="486" text-anchor="middle">Alt</text></g>
<g class="c-teal"><rect x="306" y="450" width="165" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="388" y="486" text-anchor="middle">Space</text></g>
<g class="c-teal"><rect x="51" y="76" width="63" height="63" rx="4"/><text class="ts" x="82" y="112" text-anchor="middle">Esc</text></g>
<g class="c-teal"><rect x="187" y="76" width="63" height="63" rx="4"/><text class="ts" x="218" y="112" text-anchor="middle">F1</text></g>
<g class="c-teal"><rect x="255" y="76" width="63" height="63" rx="4"/><text class="ts" x="286" y="112" text-anchor="middle">F2</text></g>
<g class="c-teal"><rect x="323" y="76" width="63" height="63" rx="4"/><text class="ts" x="354" y="112" text-anchor="middle">F3</text></g>
<g class="c-teal"><rect x="391" y="76" width="63" height="63" rx="4"/><text class="ts" x="422" y="112" text-anchor="middle">F4</text></g>
<g class="c-teal"><rect x="493" y="76" width="63" height="63" rx="4"/><text class="ts" x="524" y="112" text-anchor="middle">F5</text></g>
<g class="c-teal"><rect x="561" y="76" width="63" height="63" rx="4"/><text class="ts" x="592" y="112" text-anchor="middle">F6</text></g>
<g class="c-teal"><rect x="51" y="178" width="63" height="63" rx="4"/><text class="ts" x="82" y="214" text-anchor="middle">`</text></g>
<g class="c-teal"><rect x="119" y="178" width="63" height="63" rx="4"/><text class="ts" x="150" y="214" text-anchor="middle">1</text></g>
<g class="c-teal"><rect x="187" y="178" width="63" height="63" rx="4"/><text class="ts" x="218" y="214" text-anchor="middle">2</text></g>
<g class="c-teal"><rect x="255" y="178" width="63" height="63" rx="4"/><text class="ts" x="286" y="214" text-anchor="middle">3</text></g>
<g class="c-teal"><rect x="323" y="178" width="63" height="63" rx="4"/><text class="ts" x="354" y="214" text-anchor="middle">4</text></g>
<g class="c-teal"><rect x="391" y="178" width="63" height="63" rx="4"/><text class="ts" x="422" y="214" text-anchor="middle">5</text></g>
<g class="c-teal"><rect x="459" y="178" width="63" height="63" rx="4"/><text class="ts" x="490" y="214" text-anchor="middle">6</text></g>
<g class="c-teal"><rect x="51" y="246" width="97" height="63" rx="4"/><text class="ts" x="100" y="282" text-anchor="middle">Tab</text></g>
<g class="c-teal"><rect x="153" y="246" width="63" height="63" rx="4"/><text class="ts" x="184" y="282" text-anchor="middle">Q</text></g>
<g class="c-teal"><rect x="221" y="246" width="63" height="63" rx="4"/><text class="ts" x="252" y="282" text-anchor="middle">W</text></g>
<g class="c-teal"><rect x="289" y="246" width="63" height="63" rx="4"/><text class="ts" x="320" y="282" text-anchor="middle">E</text></g>
<g class="c-teal"><rect x="357" y="246" width="63" height="63" rx="4"/><text class="ts" x="388" y="282" text-anchor="middle">R</text></g>
<g class="c-teal"><rect x="425" y="246" width="63" height="63" rx="4"/><text class="ts" x="456" y="282" text-anchor="middle">T</text></g>
<g class="c-teal"><rect x="51" y="314" width="114" height="63" rx="4"/><text class="ts" x="108" y="350" text-anchor="middle">Caps</text></g>
<g class="c-teal"><rect x="170" y="314" width="63" height="63" rx="4"/><text class="ts" x="202" y="350" text-anchor="middle">A</text></g>
<g class="c-teal"><rect x="238" y="314" width="63" height="63" rx="4"/><text class="ts" x="270" y="350" text-anchor="middle">S</text></g>
<g class="c-teal"><rect x="306" y="314" width="63" height="63" rx="4"/><text class="ts" x="338" y="350" text-anchor="middle">D</text></g>
<g class="c-teal"><rect x="374" y="314" width="63" height="63" rx="4"/><text class="ts" x="406" y="350" text-anchor="middle">F</text></g>
<g class="c-teal"><rect x="442" y="314" width="63" height="63" rx="4"/><text class="ts" x="474" y="350" text-anchor="middle">G</text></g>
<g class="c-teal"><rect x="51" y="382" width="148" height="63" rx="4"/><text class="ts" x="125" y="418" text-anchor="middle">Shift</text></g>
<g class="c-teal"><rect x="204" y="382" width="63" height="63" rx="4"/><text class="ts" x="236" y="418" text-anchor="middle">Z</text></g>
<g class="c-teal"><rect x="272" y="382" width="63" height="63" rx="4"/><text class="ts" x="304" y="418" text-anchor="middle">X</text></g>
<g class="c-teal"><rect x="340" y="382" width="63" height="63" rx="4"/><text class="ts" x="372" y="418" text-anchor="middle">C</text></g>
<g class="c-teal"><rect x="408" y="382" width="63" height="63" rx="4"/><text class="ts" x="440" y="418" text-anchor="middle">V</text></g>
<g class="c-teal"><rect x="476" y="382" width="63" height="63" rx="4"/><text class="ts" x="508" y="418" text-anchor="middle">B</text></g>
<g class="c-teal"><rect x="51" y="450" width="80" height="63" rx="4"/><text class="ts" x="91" y="486" text-anchor="middle">Ctrl</text></g>
<g class="c-teal"><rect x="136" y="450" width="80" height="63" rx="4"/><text class="ts" x="176" y="486" text-anchor="middle">Win</text></g>
<g class="c-teal"><rect x="221" y="450" width="80" height="63" rx="4"/><text class="ts" x="261" y="486" text-anchor="middle">Alt</text></g>
<g class="c-teal"><rect x="306" y="450" width="165" height="63" rx="4"/><text class="ts" x="388" y="486" text-anchor="middle">Space</text></g>
<text class="ts" x="18" y="558">Widest row is the function row at 8.5u — about 162 mm. Thumb key is a 2.5u space.</text>
</svg>

Before

Width:  |  Height:  |  Size: 6.0 KiB

After

Width:  |  Height:  |  Size: 6.6 KiB

+61 -43
View File
@@ -1,51 +1,69 @@
<svg width="100%" viewBox="0 0 680 706" role="img" xmlns="http://www.w3.org/2000/svg">
<style>
text{font-family:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;fill:#1f2328}
.t{font-size:14px;font-weight:400}.ts{font-size:12px;font-weight:400}.th{font-size:14px;font-weight:500}
rect,circle{stroke-width:.6}
.c-teal rect,.c-teal circle{fill:#DFF3F0;stroke:#0F857B}.c-teal text{fill:#0A5750}
.c-purple rect,.c-purple circle{fill:#EDE7FA;stroke:#6D4FC4}.c-purple text{fill:#3A2775}
.c-coral rect,.c-coral circle{fill:#FCEAE4;stroke:#D8613F}.c-coral text{fill:#83321C}
.c-amber rect,.c-amber circle{fill:#FDF1DC;stroke:#C08A21}.c-amber text{fill:#6E4C08}
.c-gray rect,.c-gray circle{fill:#EFEFEF;stroke:#8A8A8A}.c-gray text{fill:#3A3A3A}
@media (prefers-color-scheme:dark){
text{fill:#e6edf3}
.c-teal rect,.c-teal circle{fill:#0C4F49;stroke:#5FC9BF}.c-teal text{fill:#CFF0EC}
.c-purple rect,.c-purple circle{fill:#33246B;stroke:#A992EE}.c-purple text{fill:#E2D9FA}
.c-coral rect,.c-coral circle{fill:#6E2B18;stroke:#F0906F}.c-coral text{fill:#FBDDD2}
.c-amber rect,.c-amber circle{fill:#5C3F06;stroke:#E0AE4A}.c-amber text{fill:#F8E7C4}
.c-gray rect,.c-gray circle{fill:#3A3A3A;stroke:#9A9A9A}.c-gray text{fill:#E0E0E0}
}
</style>
<title>Right half &#8212; 41 keys</title><desc>Top two rows shifted over: 6 and F6 now lead the right hand, above Y.</desc>
<text class="th" x="18" y="24">Right half &#8212; 41 keys</text>
<text class="ts" x="18" y="44">Top two rows shifted over: 6 and F6 now lead the right hand, above Y.</text>
<g class="c-purple"><rect x="60" y="96" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="92" y="131" text-anchor="middle">F6</text></g>
<g class="c-purple"><rect x="60" y="190" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="92" y="225" text-anchor="middle">6</text></g>
<g class="c-purple"><rect x="60" y="260" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="92" y="295" text-anchor="middle">Y</text></g>
<g class="c-purple"><rect x="60" y="330" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="92" y="365" text-anchor="middle">H</text></g>
<g class="c-purple"><rect x="60" y="400" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="92" y="435" text-anchor="middle">N</text></g>
<g class="c-purple"><rect x="130" y="85" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="162" y="120" text-anchor="middle">F7</text></g>
<g class="c-purple"><rect x="130" y="179" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="162" y="214" text-anchor="middle">7</text></g>
<g class="c-purple"><rect x="130" y="249" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="162" y="284" text-anchor="middle">U</text></g>
<g class="c-purple"><rect x="130" y="319" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="162" y="354" text-anchor="middle">J</text></g>
<g class="c-purple"><rect x="130" y="389" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="162" y="424" text-anchor="middle">M</text></g>
<g class="c-purple"><rect x="200" y="78" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="232" y="113" text-anchor="middle">F8</text></g>
<g class="c-purple"><rect x="200" y="172" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="232" y="207" text-anchor="middle">8</text></g>
<g class="c-purple"><rect x="200" y="242" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="232" y="277" text-anchor="middle">I</text></g>
<g class="c-purple"><rect x="200" y="312" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="232" y="347" text-anchor="middle">K</text></g>
<g class="c-purple"><rect x="200" y="382" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="232" y="417" text-anchor="middle">,</text></g>
<g class="c-purple"><rect x="270" y="88" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="302" y="123" text-anchor="middle">F9</text></g>
<g class="c-purple"><rect x="270" y="182" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="302" y="217" text-anchor="middle">9</text></g>
<g class="c-purple"><rect x="270" y="252" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="302" y="287" text-anchor="middle">O</text></g>
<g class="c-purple"><rect x="270" y="322" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="302" y="357" text-anchor="middle">L</text></g>
<g class="c-purple"><rect x="270" y="392" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="302" y="427" text-anchor="middle">.</text></g>
<g class="c-purple"><rect x="340" y="103" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="372" y="138" text-anchor="middle">F10</text></g>
<g class="c-purple"><rect x="340" y="197" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="372" y="232" text-anchor="middle">0</text></g>
<g class="c-purple"><rect x="340" y="267" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="372" y="302" text-anchor="middle">P</text></g>
<g class="c-purple"><rect x="340" y="337" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="372" y="372" text-anchor="middle">;</text></g>
<g class="c-purple"><rect x="340" y="407" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="372" y="442" text-anchor="middle">/</text></g>
<g class="c-purple"><rect x="410" y="107" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="442" y="142" text-anchor="middle">F11</text></g>
<g class="c-purple"><rect x="410" y="201" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="442" y="236" text-anchor="middle">-</text></g>
<g class="c-purple"><rect x="410" y="271" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="442" y="306" text-anchor="middle">[</text></g>
<g class="c-purple"><rect x="410" y="341" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="442" y="376" text-anchor="middle">'</text></g>
<g class="c-purple"><rect x="410" y="411" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="442" y="446" text-anchor="middle">Shift</text></g>
<g class="c-purple"><rect x="480" y="107" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="512" y="142" text-anchor="middle">F12</text></g>
<g class="c-purple"><rect x="480" y="201" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="512" y="236" text-anchor="middle">=</text></g>
<g class="c-purple"><rect x="480" y="271" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="512" y="306" text-anchor="middle">]</text></g>
<g class="c-purple"><rect x="480" y="341" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="512" y="376" text-anchor="middle">Enter</text></g>
<g class="c-purple"><rect x="550" y="201" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="582" y="236" text-anchor="middle">Bksp</text></g>
<g class="c-purple"><rect x="550" y="271" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="582" y="306" text-anchor="middle">\</text></g>
<g class="c-coral"><rect x="162" y="540" width="99" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="211" y="575" text-anchor="middle">Space</text></g>
<g class="c-coral"><rect x="266" y="525" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="298" y="560" text-anchor="middle">Alt</text></g>
<g class="c-coral"><rect x="336" y="512" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="368" y="547" text-anchor="middle">Win</text></g>
<g class="c-coral"><rect x="406" y="502" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="438" y="537" text-anchor="middle">Menu</text></g>
<g class="c-coral"><rect x="476" y="495" width="64" height="64" rx="4" stroke-width="0.5"/><text class="ts" x="508" y="530" text-anchor="middle">Ctrl</text></g>
<g class="c-purple"><rect x="18" y="644" width="13" height="13" rx="3" stroke-width="0.5"/></g>
<g class="c-purple"><rect x="60" y="96" width="64" height="64" rx="4"/><text class="ts" x="92" y="131" text-anchor="middle">F6</text></g>
<g class="c-purple"><rect x="60" y="190" width="64" height="64" rx="4"/><text class="ts" x="92" y="225" text-anchor="middle">6</text></g>
<g class="c-purple"><rect x="60" y="260" width="64" height="64" rx="4"/><text class="ts" x="92" y="295" text-anchor="middle">Y</text></g>
<g class="c-purple"><rect x="60" y="330" width="64" height="64" rx="4"/><text class="ts" x="92" y="365" text-anchor="middle">H</text></g>
<g class="c-purple"><rect x="60" y="400" width="64" height="64" rx="4"/><text class="ts" x="92" y="435" text-anchor="middle">N</text></g>
<g class="c-purple"><rect x="130" y="85" width="64" height="64" rx="4"/><text class="ts" x="162" y="120" text-anchor="middle">F7</text></g>
<g class="c-purple"><rect x="130" y="179" width="64" height="64" rx="4"/><text class="ts" x="162" y="214" text-anchor="middle">7</text></g>
<g class="c-purple"><rect x="130" y="249" width="64" height="64" rx="4"/><text class="ts" x="162" y="284" text-anchor="middle">U</text></g>
<g class="c-purple"><rect x="130" y="319" width="64" height="64" rx="4"/><text class="ts" x="162" y="354" text-anchor="middle">J</text></g>
<g class="c-purple"><rect x="130" y="389" width="64" height="64" rx="4"/><text class="ts" x="162" y="424" text-anchor="middle">M</text></g>
<g class="c-purple"><rect x="200" y="78" width="64" height="64" rx="4"/><text class="ts" x="232" y="113" text-anchor="middle">F8</text></g>
<g class="c-purple"><rect x="200" y="172" width="64" height="64" rx="4"/><text class="ts" x="232" y="207" text-anchor="middle">8</text></g>
<g class="c-purple"><rect x="200" y="242" width="64" height="64" rx="4"/><text class="ts" x="232" y="277" text-anchor="middle">I</text></g>
<g class="c-purple"><rect x="200" y="312" width="64" height="64" rx="4"/><text class="ts" x="232" y="347" text-anchor="middle">K</text></g>
<g class="c-purple"><rect x="200" y="382" width="64" height="64" rx="4"/><text class="ts" x="232" y="417" text-anchor="middle">,</text></g>
<g class="c-purple"><rect x="270" y="88" width="64" height="64" rx="4"/><text class="ts" x="302" y="123" text-anchor="middle">F9</text></g>
<g class="c-purple"><rect x="270" y="182" width="64" height="64" rx="4"/><text class="ts" x="302" y="217" text-anchor="middle">9</text></g>
<g class="c-purple"><rect x="270" y="252" width="64" height="64" rx="4"/><text class="ts" x="302" y="287" text-anchor="middle">O</text></g>
<g class="c-purple"><rect x="270" y="322" width="64" height="64" rx="4"/><text class="ts" x="302" y="357" text-anchor="middle">L</text></g>
<g class="c-purple"><rect x="270" y="392" width="64" height="64" rx="4"/><text class="ts" x="302" y="427" text-anchor="middle">.</text></g>
<g class="c-purple"><rect x="340" y="103" width="64" height="64" rx="4"/><text class="ts" x="372" y="138" text-anchor="middle">F10</text></g>
<g class="c-purple"><rect x="340" y="197" width="64" height="64" rx="4"/><text class="ts" x="372" y="232" text-anchor="middle">0</text></g>
<g class="c-purple"><rect x="340" y="267" width="64" height="64" rx="4"/><text class="ts" x="372" y="302" text-anchor="middle">P</text></g>
<g class="c-purple"><rect x="340" y="337" width="64" height="64" rx="4"/><text class="ts" x="372" y="372" text-anchor="middle">;</text></g>
<g class="c-purple"><rect x="340" y="407" width="64" height="64" rx="4"/><text class="ts" x="372" y="442" text-anchor="middle">/</text></g>
<g class="c-purple"><rect x="410" y="107" width="64" height="64" rx="4"/><text class="ts" x="442" y="142" text-anchor="middle">F11</text></g>
<g class="c-purple"><rect x="410" y="201" width="64" height="64" rx="4"/><text class="ts" x="442" y="236" text-anchor="middle">-</text></g>
<g class="c-purple"><rect x="410" y="271" width="64" height="64" rx="4"/><text class="ts" x="442" y="306" text-anchor="middle">[</text></g>
<g class="c-purple"><rect x="410" y="341" width="64" height="64" rx="4"/><text class="ts" x="442" y="376" text-anchor="middle">'</text></g>
<g class="c-purple"><rect x="410" y="411" width="64" height="64" rx="4"/><text class="ts" x="442" y="446" text-anchor="middle">Shift</text></g>
<g class="c-purple"><rect x="480" y="107" width="64" height="64" rx="4"/><text class="ts" x="512" y="142" text-anchor="middle">F12</text></g>
<g class="c-purple"><rect x="480" y="201" width="64" height="64" rx="4"/><text class="ts" x="512" y="236" text-anchor="middle">=</text></g>
<g class="c-purple"><rect x="480" y="271" width="64" height="64" rx="4"/><text class="ts" x="512" y="306" text-anchor="middle">]</text></g>
<g class="c-purple"><rect x="480" y="341" width="64" height="64" rx="4"/><text class="ts" x="512" y="376" text-anchor="middle">Enter</text></g>
<g class="c-purple"><rect x="550" y="201" width="64" height="64" rx="4"/><text class="ts" x="582" y="236" text-anchor="middle">Bksp</text></g>
<g class="c-purple"><rect x="550" y="271" width="64" height="64" rx="4"/><text class="ts" x="582" y="306" text-anchor="middle">\</text></g>
<g class="c-coral"><rect x="162" y="540" width="99" height="64" rx="4"/><text class="ts" x="211" y="575" text-anchor="middle">Space</text></g>
<g class="c-coral"><rect x="266" y="525" width="64" height="64" rx="4"/><text class="ts" x="298" y="560" text-anchor="middle">Alt</text></g>
<g class="c-coral"><rect x="336" y="512" width="64" height="64" rx="4"/><text class="ts" x="368" y="547" text-anchor="middle">Win</text></g>
<g class="c-coral"><rect x="406" y="502" width="64" height="64" rx="4"/><text class="ts" x="438" y="537" text-anchor="middle">Menu</text></g>
<g class="c-coral"><rect x="476" y="495" width="64" height="64" rx="4"/><text class="ts" x="508" y="530" text-anchor="middle">Ctrl</text></g>
<g class="c-purple"><rect x="18" y="644" width="13" height="13" rx="3"/></g>
<text class="ts" x="37" y="654">Alphas &#183; 36</text>
<g class="c-coral"><rect x="268" y="644" width="13" height="13" rx="3" stroke-width="0.5"/></g>
<g class="c-coral"><rect x="268" y="644" width="13" height="13" rx="3"/></g>
<text class="ts" x="287" y="654">Thumb cluster &#183; 5</text>
<text class="ts" x="18" y="684">Six full columns, then F12/=/]/Enter, then Bksp and backslash sharing the outer column.</text>
</svg>

Before

Width:  |  Height:  |  Size: 7.2 KiB

After

Width:  |  Height:  |  Size: 7.6 KiB

+57 -39
View File
@@ -1,45 +1,63 @@
<svg width="100%" viewBox="0 0 680 614" role="img" xmlns="http://www.w3.org/2000/svg">
<style>
text{font-family:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;fill:#1f2328}
.t{font-size:14px;font-weight:400}.ts{font-size:12px;font-weight:400}.th{font-size:14px;font-weight:500}
rect,circle{stroke-width:.6}
.c-teal rect,.c-teal circle{fill:#DFF3F0;stroke:#0F857B}.c-teal text{fill:#0A5750}
.c-purple rect,.c-purple circle{fill:#EDE7FA;stroke:#6D4FC4}.c-purple text{fill:#3A2775}
.c-coral rect,.c-coral circle{fill:#FCEAE4;stroke:#D8613F}.c-coral text{fill:#83321C}
.c-amber rect,.c-amber circle{fill:#FDF1DC;stroke:#C08A21}.c-amber text{fill:#6E4C08}
.c-gray rect,.c-gray circle{fill:#EFEFEF;stroke:#8A8A8A}.c-gray text{fill:#3A3A3A}
@media (prefers-color-scheme:dark){
text{fill:#e6edf3}
.c-teal rect,.c-teal circle{fill:#0C4F49;stroke:#5FC9BF}.c-teal text{fill:#CFF0EC}
.c-purple rect,.c-purple circle{fill:#33246B;stroke:#A992EE}.c-purple text{fill:#E2D9FA}
.c-coral rect,.c-coral circle{fill:#6E2B18;stroke:#F0906F}.c-coral text{fill:#FBDDD2}
.c-amber rect,.c-amber circle{fill:#5C3F06;stroke:#E0AE4A}.c-amber text{fill:#F8E7C4}
.c-gray rect,.c-gray circle{fill:#3A3A3A;stroke:#9A9A9A}.c-gray text{fill:#E0E0E0}
}
</style>
<title>Right half — 39 keys</title><desc>The right side of the same 104. PrtSc, ScrLk, Pause and Insert are not on any board.</desc>
<text class="th" x="18" y="24">Right half — 39 keys</text>
<text class="ts" x="18" y="44">The right side of the same 104. PrtSc, ScrLk, Pause and Insert are not on any board.</text>
<g class="c-purple"><rect x="196" y="76" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="227" y="112" text-anchor="middle">F7</text></g>
<g class="c-purple"><rect x="264" y="76" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="295" y="112" text-anchor="middle">F8</text></g>
<g class="c-purple"><rect x="366" y="76" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="397" y="112" text-anchor="middle">F9</text></g>
<g class="c-purple"><rect x="434" y="76" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="465" y="112" text-anchor="middle">F10</text></g>
<g class="c-purple"><rect x="502" y="76" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="533" y="112" text-anchor="middle">F11</text></g>
<g class="c-purple"><rect x="570" y="76" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="601" y="112" text-anchor="middle">F12</text></g>
<g class="c-purple"><rect x="94" y="178" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="125" y="214" text-anchor="middle">7</text></g>
<g class="c-purple"><rect x="162" y="178" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="193" y="214" text-anchor="middle">8</text></g>
<g class="c-purple"><rect x="230" y="178" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="261" y="214" text-anchor="middle">9</text></g>
<g class="c-purple"><rect x="298" y="178" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="329" y="214" text-anchor="middle">0</text></g>
<g class="c-purple"><rect x="366" y="178" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="397" y="214" text-anchor="middle">-</text></g>
<g class="c-purple"><rect x="434" y="178" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="465" y="214" text-anchor="middle">=</text></g>
<g class="c-purple"><rect x="502" y="178" width="131" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="567" y="214" text-anchor="middle">Bksp</text></g>
<g class="c-purple"><rect x="60" y="246" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="91" y="282" text-anchor="middle">Y</text></g>
<g class="c-purple"><rect x="128" y="246" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="159" y="282" text-anchor="middle">U</text></g>
<g class="c-purple"><rect x="196" y="246" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="227" y="282" text-anchor="middle">I</text></g>
<g class="c-purple"><rect x="264" y="246" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="295" y="282" text-anchor="middle">O</text></g>
<g class="c-purple"><rect x="332" y="246" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="363" y="282" text-anchor="middle">P</text></g>
<g class="c-purple"><rect x="400" y="246" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="431" y="282" text-anchor="middle">[</text></g>
<g class="c-purple"><rect x="468" y="246" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="499" y="282" text-anchor="middle">]</text></g>
<g class="c-purple"><rect x="536" y="246" width="97" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="584" y="282" text-anchor="middle">\</text></g>
<g class="c-purple"><rect x="76" y="314" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="108" y="350" text-anchor="middle">H</text></g>
<g class="c-purple"><rect x="144" y="314" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="176" y="350" text-anchor="middle">J</text></g>
<g class="c-purple"><rect x="212" y="314" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="244" y="350" text-anchor="middle">K</text></g>
<g class="c-purple"><rect x="280" y="314" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="312" y="350" text-anchor="middle">L</text></g>
<g class="c-purple"><rect x="348" y="314" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="380" y="350" text-anchor="middle">;</text></g>
<g class="c-purple"><rect x="416" y="314" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="448" y="350" text-anchor="middle">'</text></g>
<g class="c-purple"><rect x="484" y="314" width="148" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="558" y="350" text-anchor="middle">Enter</text></g>
<g class="c-purple"><rect x="110" y="382" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="142" y="418" text-anchor="middle">N</text></g>
<g class="c-purple"><rect x="178" y="382" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="210" y="418" text-anchor="middle">M</text></g>
<g class="c-purple"><rect x="246" y="382" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="278" y="418" text-anchor="middle">,</text></g>
<g class="c-purple"><rect x="314" y="382" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="346" y="418" text-anchor="middle">.</text></g>
<g class="c-purple"><rect x="382" y="382" width="63" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="414" y="418" text-anchor="middle">/</text></g>
<g class="c-purple"><rect x="450" y="382" width="182" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="542" y="418" text-anchor="middle">Shift</text></g>
<g class="c-purple"><rect x="42" y="450" width="250" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="168" y="486" text-anchor="middle">Space</text></g>
<g class="c-purple"><rect x="298" y="450" width="80" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="338" y="486" text-anchor="middle">Alt</text></g>
<g class="c-purple"><rect x="382" y="450" width="80" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="422" y="486" text-anchor="middle">Win</text></g>
<g class="c-purple"><rect x="468" y="450" width="80" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="508" y="486" text-anchor="middle">Menu</text></g>
<g class="c-purple"><rect x="552" y="450" width="80" height="63" rx="4" stroke-width="0.5"/><text class="ts" x="592" y="486" text-anchor="middle">Ctrl</text></g>
<g class="c-purple"><rect x="196" y="76" width="63" height="63" rx="4"/><text class="ts" x="227" y="112" text-anchor="middle">F7</text></g>
<g class="c-purple"><rect x="264" y="76" width="63" height="63" rx="4"/><text class="ts" x="295" y="112" text-anchor="middle">F8</text></g>
<g class="c-purple"><rect x="366" y="76" width="63" height="63" rx="4"/><text class="ts" x="397" y="112" text-anchor="middle">F9</text></g>
<g class="c-purple"><rect x="434" y="76" width="63" height="63" rx="4"/><text class="ts" x="465" y="112" text-anchor="middle">F10</text></g>
<g class="c-purple"><rect x="502" y="76" width="63" height="63" rx="4"/><text class="ts" x="533" y="112" text-anchor="middle">F11</text></g>
<g class="c-purple"><rect x="570" y="76" width="63" height="63" rx="4"/><text class="ts" x="601" y="112" text-anchor="middle">F12</text></g>
<g class="c-purple"><rect x="94" y="178" width="63" height="63" rx="4"/><text class="ts" x="125" y="214" text-anchor="middle">7</text></g>
<g class="c-purple"><rect x="162" y="178" width="63" height="63" rx="4"/><text class="ts" x="193" y="214" text-anchor="middle">8</text></g>
<g class="c-purple"><rect x="230" y="178" width="63" height="63" rx="4"/><text class="ts" x="261" y="214" text-anchor="middle">9</text></g>
<g class="c-purple"><rect x="298" y="178" width="63" height="63" rx="4"/><text class="ts" x="329" y="214" text-anchor="middle">0</text></g>
<g class="c-purple"><rect x="366" y="178" width="63" height="63" rx="4"/><text class="ts" x="397" y="214" text-anchor="middle">-</text></g>
<g class="c-purple"><rect x="434" y="178" width="63" height="63" rx="4"/><text class="ts" x="465" y="214" text-anchor="middle">=</text></g>
<g class="c-purple"><rect x="502" y="178" width="131" height="63" rx="4"/><text class="ts" x="567" y="214" text-anchor="middle">Bksp</text></g>
<g class="c-purple"><rect x="60" y="246" width="63" height="63" rx="4"/><text class="ts" x="91" y="282" text-anchor="middle">Y</text></g>
<g class="c-purple"><rect x="128" y="246" width="63" height="63" rx="4"/><text class="ts" x="159" y="282" text-anchor="middle">U</text></g>
<g class="c-purple"><rect x="196" y="246" width="63" height="63" rx="4"/><text class="ts" x="227" y="282" text-anchor="middle">I</text></g>
<g class="c-purple"><rect x="264" y="246" width="63" height="63" rx="4"/><text class="ts" x="295" y="282" text-anchor="middle">O</text></g>
<g class="c-purple"><rect x="332" y="246" width="63" height="63" rx="4"/><text class="ts" x="363" y="282" text-anchor="middle">P</text></g>
<g class="c-purple"><rect x="400" y="246" width="63" height="63" rx="4"/><text class="ts" x="431" y="282" text-anchor="middle">[</text></g>
<g class="c-purple"><rect x="468" y="246" width="63" height="63" rx="4"/><text class="ts" x="499" y="282" text-anchor="middle">]</text></g>
<g class="c-purple"><rect x="536" y="246" width="97" height="63" rx="4"/><text class="ts" x="584" y="282" text-anchor="middle">\</text></g>
<g class="c-purple"><rect x="76" y="314" width="63" height="63" rx="4"/><text class="ts" x="108" y="350" text-anchor="middle">H</text></g>
<g class="c-purple"><rect x="144" y="314" width="63" height="63" rx="4"/><text class="ts" x="176" y="350" text-anchor="middle">J</text></g>
<g class="c-purple"><rect x="212" y="314" width="63" height="63" rx="4"/><text class="ts" x="244" y="350" text-anchor="middle">K</text></g>
<g class="c-purple"><rect x="280" y="314" width="63" height="63" rx="4"/><text class="ts" x="312" y="350" text-anchor="middle">L</text></g>
<g class="c-purple"><rect x="348" y="314" width="63" height="63" rx="4"/><text class="ts" x="380" y="350" text-anchor="middle">;</text></g>
<g class="c-purple"><rect x="416" y="314" width="63" height="63" rx="4"/><text class="ts" x="448" y="350" text-anchor="middle">'</text></g>
<g class="c-purple"><rect x="484" y="314" width="148" height="63" rx="4"/><text class="ts" x="558" y="350" text-anchor="middle">Enter</text></g>
<g class="c-purple"><rect x="110" y="382" width="63" height="63" rx="4"/><text class="ts" x="142" y="418" text-anchor="middle">N</text></g>
<g class="c-purple"><rect x="178" y="382" width="63" height="63" rx="4"/><text class="ts" x="210" y="418" text-anchor="middle">M</text></g>
<g class="c-purple"><rect x="246" y="382" width="63" height="63" rx="4"/><text class="ts" x="278" y="418" text-anchor="middle">,</text></g>
<g class="c-purple"><rect x="314" y="382" width="63" height="63" rx="4"/><text class="ts" x="346" y="418" text-anchor="middle">.</text></g>
<g class="c-purple"><rect x="382" y="382" width="63" height="63" rx="4"/><text class="ts" x="414" y="418" text-anchor="middle">/</text></g>
<g class="c-purple"><rect x="450" y="382" width="182" height="63" rx="4"/><text class="ts" x="542" y="418" text-anchor="middle">Shift</text></g>
<g class="c-purple"><rect x="42" y="450" width="250" height="63" rx="4"/><text class="ts" x="168" y="486" text-anchor="middle">Space</text></g>
<g class="c-purple"><rect x="298" y="450" width="80" height="63" rx="4"/><text class="ts" x="338" y="486" text-anchor="middle">Alt</text></g>
<g class="c-purple"><rect x="382" y="450" width="80" height="63" rx="4"/><text class="ts" x="422" y="486" text-anchor="middle">Win</text></g>
<g class="c-purple"><rect x="468" y="450" width="80" height="63" rx="4"/><text class="ts" x="508" y="486" text-anchor="middle">Menu</text></g>
<g class="c-purple"><rect x="552" y="450" width="80" height="63" rx="4"/><text class="ts" x="592" y="486" text-anchor="middle">Ctrl</text></g>
<text class="ts" x="18" y="558">8.75u wide — about 167 mm. Three more keys than the left, so the two boards are not mirrors.</text>
</svg>

Before

Width:  |  Height:  |  Size: 6.6 KiB

After

Width:  |  Height:  |  Size: 7.1 KiB

+48 -30
View File
@@ -1,41 +1,59 @@
<svg width="100%" viewBox="0 0 680 470" role="img" xmlns="http://www.w3.org/2000/svg">
<style>
text{font-family:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;fill:#1f2328}
.t{font-size:14px;font-weight:400}.ts{font-size:12px;font-weight:400}.th{font-size:14px;font-weight:500}
rect,circle{stroke-width:.6}
.c-teal rect,.c-teal circle{fill:#DFF3F0;stroke:#0F857B}.c-teal text{fill:#0A5750}
.c-purple rect,.c-purple circle{fill:#EDE7FA;stroke:#6D4FC4}.c-purple text{fill:#3A2775}
.c-coral rect,.c-coral circle{fill:#FCEAE4;stroke:#D8613F}.c-coral text{fill:#83321C}
.c-amber rect,.c-amber circle{fill:#FDF1DC;stroke:#C08A21}.c-amber text{fill:#6E4C08}
.c-gray rect,.c-gray circle{fill:#EFEFEF;stroke:#8A8A8A}.c-gray text{fill:#3A3A3A}
@media (prefers-color-scheme:dark){
text{fill:#e6edf3}
.c-teal rect,.c-teal circle{fill:#0C4F49;stroke:#5FC9BF}.c-teal text{fill:#CFF0EC}
.c-purple rect,.c-purple circle{fill:#33246B;stroke:#A992EE}.c-purple text{fill:#E2D9FA}
.c-coral rect,.c-coral circle{fill:#6E2B18;stroke:#F0906F}.c-coral text{fill:#FBDDD2}
.c-amber rect,.c-amber circle{fill:#5C3F06;stroke:#E0AE4A}.c-amber text{fill:#F8E7C4}
.c-gray rect,.c-gray circle{fill:#3A3A3A;stroke:#9A9A9A}.c-gray text{fill:#E0E0E0}
}
</style>
<title>Numpad board, settled layout</title>
<desc>Six columns by five rows. Arrows on the outer left column, page up and down beside them, the numpad on the right without a Num key, and a single volume encoder spanning two cells at the top.</desc>
<text class="th" x="18" y="24">Numpad board &#8212; settled</text>
<text class="ts" x="18" y="44">25 keys and one encoder. Arrows on the outside, no Num key, no scroll wheel.</text>
<g class="c-purple"><rect x="212" y="70" width="123" height="59" rx="4" stroke-width="0.5"/></g>
<g class="c-purple"><circle cx="274" cy="100" r="25" stroke-width="0.5"/></g>
<g class="c-purple"><rect x="212" y="70" width="123" height="59" rx="4"/></g>
<g class="c-purple"><circle cx="274" cy="100" r="25"/></g>
<text class="ts" x="274" y="104" text-anchor="middle">Volume</text>
<g class="c-teal"><rect x="148" y="70" width="59" height="59" rx="4" stroke-width="0.5"/><text class="ts" x="178" y="104" text-anchor="middle">Del</text></g>
<g class="c-teal"><rect x="148" y="134" width="59" height="59" rx="4" stroke-width="0.5"/><text class="ts" x="178" y="168" text-anchor="middle">Home</text></g>
<g class="c-teal"><rect x="148" y="198" width="59" height="59" rx="4" stroke-width="0.5"/><text class="ts" x="178" y="232" text-anchor="middle"></text></g>
<g class="c-teal"><rect x="148" y="262" width="59" height="59" rx="4" stroke-width="0.5"/><text class="ts" x="178" y="296" text-anchor="middle"></text></g>
<g class="c-teal"><rect x="148" y="326" width="59" height="59" rx="4" stroke-width="0.5"/><text class="ts" x="178" y="360" text-anchor="middle"></text></g>
<g class="c-teal"><rect x="212" y="134" width="59" height="59" rx="4" stroke-width="0.5"/><text class="ts" x="242" y="168" text-anchor="middle">End</text></g>
<g class="c-teal"><rect x="212" y="198" width="59" height="59" rx="4" stroke-width="0.5"/><text class="ts" x="242" y="232" text-anchor="middle">PgUp</text></g>
<g class="c-teal"><rect x="212" y="262" width="59" height="59" rx="4" stroke-width="0.5"/><text class="ts" x="242" y="296" text-anchor="middle">PgDn</text></g>
<g class="c-teal"><rect x="212" y="326" width="59" height="59" rx="4" stroke-width="0.5"/><text class="ts" x="242" y="360" text-anchor="middle"></text></g>
<g class="c-coral"><rect x="276" y="134" width="59" height="59" rx="4" stroke-width="0.5"/><text class="ts" x="306" y="168" text-anchor="middle">7</text></g>
<g class="c-coral"><rect x="276" y="198" width="59" height="59" rx="4" stroke-width="0.5"/><text class="ts" x="306" y="232" text-anchor="middle">4</text></g>
<g class="c-coral"><rect x="276" y="262" width="59" height="59" rx="4" stroke-width="0.5"/><text class="ts" x="306" y="296" text-anchor="middle">1</text></g>
<g class="c-coral"><rect x="276" y="326" width="123" height="59" rx="4" stroke-width="0.5"/><text class="ts" x="338" y="360" text-anchor="middle">0</text></g>
<g class="c-coral"><rect x="340" y="70" width="59" height="59" rx="4" stroke-width="0.5"/><text class="ts" x="370" y="104" text-anchor="middle">/</text></g>
<g class="c-coral"><rect x="340" y="134" width="59" height="59" rx="4" stroke-width="0.5"/><text class="ts" x="370" y="168" text-anchor="middle">8</text></g>
<g class="c-coral"><rect x="340" y="198" width="59" height="59" rx="4" stroke-width="0.5"/><text class="ts" x="370" y="232" text-anchor="middle">5</text></g>
<g class="c-coral"><rect x="340" y="262" width="59" height="59" rx="4" stroke-width="0.5"/><text class="ts" x="370" y="296" text-anchor="middle">2</text></g>
<g class="c-coral"><rect x="404" y="70" width="59" height="59" rx="4" stroke-width="0.5"/><text class="ts" x="434" y="104" text-anchor="middle">*</text></g>
<g class="c-coral"><rect x="404" y="134" width="59" height="59" rx="4" stroke-width="0.5"/><text class="ts" x="434" y="168" text-anchor="middle">9</text></g>
<g class="c-coral"><rect x="404" y="198" width="59" height="59" rx="4" stroke-width="0.5"/><text class="ts" x="434" y="232" text-anchor="middle">6</text></g>
<g class="c-coral"><rect x="404" y="262" width="59" height="59" rx="4" stroke-width="0.5"/><text class="ts" x="434" y="296" text-anchor="middle">3</text></g>
<g class="c-coral"><rect x="404" y="326" width="59" height="59" rx="4" stroke-width="0.5"/><text class="ts" x="434" y="360" text-anchor="middle">.</text></g>
<g class="c-coral"><rect x="468" y="70" width="59" height="59" rx="4" stroke-width="0.5"/><text class="ts" x="498" y="104" text-anchor="middle">-</text></g>
<g class="c-coral"><rect x="468" y="134" width="59" height="123" rx="4" stroke-width="0.5"/><text class="ts" x="498" y="200" text-anchor="middle">+</text></g>
<g class="c-coral"><rect x="468" y="262" width="59" height="123" rx="4" stroke-width="0.5"/><text class="ts" x="498" y="328" text-anchor="middle">Ent</text></g>
<g class="c-teal"><rect x="18" y="414" width="13" height="13" rx="3" stroke-width="0.5"/></g>
<g class="c-teal"><rect x="148" y="70" width="59" height="59" rx="4"/><text class="ts" x="178" y="104" text-anchor="middle">Del</text></g>
<g class="c-teal"><rect x="148" y="134" width="59" height="59" rx="4"/><text class="ts" x="178" y="168" text-anchor="middle">Home</text></g>
<g class="c-teal"><rect x="148" y="198" width="59" height="59" rx="4"/><text class="ts" x="178" y="232" text-anchor="middle"></text></g>
<g class="c-teal"><rect x="148" y="262" width="59" height="59" rx="4"/><text class="ts" x="178" y="296" text-anchor="middle"></text></g>
<g class="c-teal"><rect x="148" y="326" width="59" height="59" rx="4"/><text class="ts" x="178" y="360" text-anchor="middle"></text></g>
<g class="c-teal"><rect x="212" y="134" width="59" height="59" rx="4"/><text class="ts" x="242" y="168" text-anchor="middle">End</text></g>
<g class="c-teal"><rect x="212" y="198" width="59" height="59" rx="4"/><text class="ts" x="242" y="232" text-anchor="middle">PgUp</text></g>
<g class="c-teal"><rect x="212" y="262" width="59" height="59" rx="4"/><text class="ts" x="242" y="296" text-anchor="middle">PgDn</text></g>
<g class="c-teal"><rect x="212" y="326" width="59" height="59" rx="4"/><text class="ts" x="242" y="360" text-anchor="middle"></text></g>
<g class="c-coral"><rect x="276" y="134" width="59" height="59" rx="4"/><text class="ts" x="306" y="168" text-anchor="middle">7</text></g>
<g class="c-coral"><rect x="276" y="198" width="59" height="59" rx="4"/><text class="ts" x="306" y="232" text-anchor="middle">4</text></g>
<g class="c-coral"><rect x="276" y="262" width="59" height="59" rx="4"/><text class="ts" x="306" y="296" text-anchor="middle">1</text></g>
<g class="c-coral"><rect x="276" y="326" width="123" height="59" rx="4"/><text class="ts" x="338" y="360" text-anchor="middle">0</text></g>
<g class="c-coral"><rect x="340" y="70" width="59" height="59" rx="4"/><text class="ts" x="370" y="104" text-anchor="middle">/</text></g>
<g class="c-coral"><rect x="340" y="134" width="59" height="59" rx="4"/><text class="ts" x="370" y="168" text-anchor="middle">8</text></g>
<g class="c-coral"><rect x="340" y="198" width="59" height="59" rx="4"/><text class="ts" x="370" y="232" text-anchor="middle">5</text></g>
<g class="c-coral"><rect x="340" y="262" width="59" height="59" rx="4"/><text class="ts" x="370" y="296" text-anchor="middle">2</text></g>
<g class="c-coral"><rect x="404" y="70" width="59" height="59" rx="4"/><text class="ts" x="434" y="104" text-anchor="middle">*</text></g>
<g class="c-coral"><rect x="404" y="134" width="59" height="59" rx="4"/><text class="ts" x="434" y="168" text-anchor="middle">9</text></g>
<g class="c-coral"><rect x="404" y="198" width="59" height="59" rx="4"/><text class="ts" x="434" y="232" text-anchor="middle">6</text></g>
<g class="c-coral"><rect x="404" y="262" width="59" height="59" rx="4"/><text class="ts" x="434" y="296" text-anchor="middle">3</text></g>
<g class="c-coral"><rect x="404" y="326" width="59" height="59" rx="4"/><text class="ts" x="434" y="360" text-anchor="middle">.</text></g>
<g class="c-coral"><rect x="468" y="70" width="59" height="59" rx="4"/><text class="ts" x="498" y="104" text-anchor="middle">-</text></g>
<g class="c-coral"><rect x="468" y="134" width="59" height="123" rx="4"/><text class="ts" x="498" y="200" text-anchor="middle">+</text></g>
<g class="c-coral"><rect x="468" y="262" width="59" height="123" rx="4"/><text class="ts" x="498" y="328" text-anchor="middle">Ent</text></g>
<g class="c-teal"><rect x="18" y="414" width="13" height="13" rx="3"/></g>
<text class="ts" x="37" y="424">Nav · 9 keys</text>
<g class="c-coral"><rect x="223" y="414" width="13" height="13" rx="3" stroke-width="0.5"/></g>
<g class="c-coral"><rect x="223" y="414" width="13" height="13" rx="3"/></g>
<text class="ts" x="242" y="424">Numpad · 16 keys</text>
<g class="c-purple"><rect x="428" y="414" width="13" height="13" rx="3" stroke-width="0.5"/></g>
<g class="c-purple"><rect x="428" y="414" width="13" height="13" rx="3"/></g>
<text class="ts" x="447" y="424">Encoder · 2u, fits a real knob</text>
<text class="ts" x="18" y="452">Six by five units &#8212; about 114 by 95 mm on 19.05 mm spacing.</text>
</svg>

Before

Width:  |  Height:  |  Size: 5.2 KiB

After

Width:  |  Height:  |  Size: 5.8 KiB

+129 -111
View File
@@ -1,115 +1,133 @@
<svg width="100%" viewBox="0 0 680 330" role="img" xmlns="http://www.w3.org/2000/svg">
<title>All three boards to scale, split from a 104</title>
<desc>Left half thirty-six keys, right half thirty-nine, numpad twenty-five, all drawn at the same key spacing.</desc>
<style>
text{font-family:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;fill:#1f2328}
.t{font-size:14px;font-weight:400}.ts{font-size:12px;font-weight:400}.th{font-size:14px;font-weight:500}
rect,circle{stroke-width:.6}
.c-teal rect,.c-teal circle{fill:#DFF3F0;stroke:#0F857B}.c-teal text{fill:#0A5750}
.c-purple rect,.c-purple circle{fill:#EDE7FA;stroke:#6D4FC4}.c-purple text{fill:#3A2775}
.c-coral rect,.c-coral circle{fill:#FCEAE4;stroke:#D8613F}.c-coral text{fill:#83321C}
.c-amber rect,.c-amber circle{fill:#FDF1DC;stroke:#C08A21}.c-amber text{fill:#6E4C08}
.c-gray rect,.c-gray circle{fill:#EFEFEF;stroke:#8A8A8A}.c-gray text{fill:#3A3A3A}
@media (prefers-color-scheme:dark){
text{fill:#e6edf3}
.c-teal rect,.c-teal circle{fill:#0C4F49;stroke:#5FC9BF}.c-teal text{fill:#CFF0EC}
.c-purple rect,.c-purple circle{fill:#33246B;stroke:#A992EE}.c-purple text{fill:#E2D9FA}
.c-coral rect,.c-coral circle{fill:#6E2B18;stroke:#F0906F}.c-coral text{fill:#FBDDD2}
.c-amber rect,.c-amber circle{fill:#5C3F06;stroke:#E0AE4A}.c-amber text{fill:#F8E7C4}
.c-gray rect,.c-gray circle{fill:#3A3A3A;stroke:#9A9A9A}.c-gray text{fill:#E0E0E0}
}
</style>
<title>All three boards to scale</title>
<desc>Left half 34 keys, right half 41, numpad 25, all column-staggered and drawn at the same key spacing.</desc>
<text class="th" x="18" y="24">All three boards, same scale</text>
<text class="ts" x="18" y="44">100 of a 104 layout&#8217;s keys have a physical home. Only Insert, PrtSc, ScrLk and Pause need a layer.</text>
<g class="c-teal"><rect x="20" y="84" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-teal"><rect x="70" y="84" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-teal"><rect x="95" y="84" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-teal"><rect x="120" y="84" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-teal"><rect x="145" y="84" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-teal"><rect x="182" y="84" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-teal"><rect x="208" y="84" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-teal"><rect x="20" y="122" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-teal"><rect x="45" y="122" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-teal"><rect x="70" y="122" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-teal"><rect x="95" y="122" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-teal"><rect x="120" y="122" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-teal"><rect x="145" y="122" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-teal"><rect x="170" y="122" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-teal"><rect x="20" y="146" width="34" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-teal"><rect x="58" y="146" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-teal"><rect x="82" y="146" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-teal"><rect x="108" y="146" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-teal"><rect x="132" y="146" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-teal"><rect x="158" y="146" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-teal"><rect x="20" y="172" width="41" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-teal"><rect x="64" y="172" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-teal"><rect x="89" y="172" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-teal"><rect x="114" y="172" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-teal"><rect x="139" y="172" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-teal"><rect x="164" y="172" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-teal"><rect x="20" y="196" width="53" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-teal"><rect x="76" y="196" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-teal"><rect x="101" y="196" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-teal"><rect x="126" y="196" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-teal"><rect x="151" y="196" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-teal"><rect x="176" y="196" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-teal"><rect x="20" y="222" width="28" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-teal"><rect x="51" y="222" width="28" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-teal"><rect x="82" y="222" width="28" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-teal"><rect x="114" y="222" width="60" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-purple"><rect x="315" y="84" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-purple"><rect x="340" y="84" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-purple"><rect x="377" y="84" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-purple"><rect x="402" y="84" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-purple"><rect x="427" y="84" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-purple"><rect x="452" y="84" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-purple"><rect x="277" y="122" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-purple"><rect x="302" y="122" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-purple"><rect x="327" y="122" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-purple"><rect x="352" y="122" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-purple"><rect x="377" y="122" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-purple"><rect x="402" y="122" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-purple"><rect x="427" y="122" width="47" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-purple"><rect x="265" y="146" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-purple"><rect x="290" y="146" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-purple"><rect x="315" y="146" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-purple"><rect x="340" y="146" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-purple"><rect x="365" y="146" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-purple"><rect x="390" y="146" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-purple"><rect x="415" y="146" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-purple"><rect x="440" y="146" width="34" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-purple"><rect x="271" y="172" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-purple"><rect x="296" y="172" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-purple"><rect x="321" y="172" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-purple"><rect x="346" y="172" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-purple"><rect x="371" y="172" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-purple"><rect x="396" y="172" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-purple"><rect x="421" y="172" width="53" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-purple"><rect x="284" y="196" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-purple"><rect x="308" y="196" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-purple"><rect x="334" y="196" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-purple"><rect x="358" y="196" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-purple"><rect x="384" y="196" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-purple"><rect x="408" y="196" width="66" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-purple"><rect x="258" y="222" width="91" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-purple"><rect x="352" y="222" width="28" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-purple"><rect x="384" y="222" width="28" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-purple"><rect x="415" y="222" width="28" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-purple"><rect x="446" y="222" width="28" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-coral"><rect x="503" y="84" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-coral"><rect x="503" y="109" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-coral"><rect x="503" y="134" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-coral"><rect x="503" y="159" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-coral"><rect x="503" y="184" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-coral"><rect x="528" y="109" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-coral"><rect x="528" y="134" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-coral"><rect x="528" y="159" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-coral"><rect x="528" y="184" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-coral"><rect x="553" y="109" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-coral"><rect x="553" y="134" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-coral"><rect x="553" y="159" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-coral"><rect x="578" y="84" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-coral"><rect x="578" y="109" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-coral"><rect x="578" y="134" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-coral"><rect x="578" y="159" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-coral"><rect x="603" y="84" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-coral"><rect x="603" y="109" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-coral"><rect x="603" y="134" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-coral"><rect x="603" y="159" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-coral"><rect x="603" y="184" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-coral"><rect x="553" y="184" width="47" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-coral"><rect x="628" y="84" width="22" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-coral"><rect x="628" y="109" width="22" height="47" rx="3" stroke-width="0.5"/></g>
<g class="c-coral"><rect x="628" y="159" width="22" height="47" rx="3" stroke-width="0.5"/></g>
<g class="c-gray"><rect x="528" y="84" width="47" height="22" rx="3" stroke-width="0.5"/></g>
<g class="c-gray"><circle cx="552" cy="96" r="9" stroke-width="0.5"/></g>
<text class="th" x="126" y="280" text-anchor="middle">Left half</text>
<text class="ts" x="126" y="298" text-anchor="middle">36 keys</text>
<text class="th" x="368" y="280" text-anchor="middle">Right half</text>
<text class="ts" x="368" y="298" text-anchor="middle">39 keys</text>
<text class="th" x="578" y="280" text-anchor="middle">Numpad</text>
<text class="ts" x="578" y="298" text-anchor="middle">25 + knob</text>
<text class="ts" x="18" y="322">The halves are not mirrors &#8212; 36 vs 39 keys means two separate board designs, not one file flipped.</text>
<g class="c-teal"><rect x="22" y="86" width="20" height="20" rx="3"/></g>
<g class="c-teal"><rect x="22" y="116" width="20" height="20" rx="3"/></g>
<g class="c-teal"><rect x="22" y="139" width="20" height="20" rx="3"/></g>
<g class="c-teal"><rect x="22" y="162" width="20" height="20" rx="3"/></g>
<g class="c-teal"><rect x="22" y="185" width="20" height="20" rx="3"/></g>
<g class="c-teal"><rect x="45" y="84" width="20" height="20" rx="3"/></g>
<g class="c-teal"><rect x="45" y="115" width="20" height="20" rx="3"/></g>
<g class="c-teal"><rect x="45" y="138" width="20" height="20" rx="3"/></g>
<g class="c-teal"><rect x="45" y="161" width="20" height="20" rx="3"/></g>
<g class="c-teal"><rect x="45" y="184" width="20" height="20" rx="3"/></g>
<g class="c-teal"><rect x="68" y="79" width="20" height="20" rx="3"/></g>
<g class="c-teal"><rect x="68" y="110" width="20" height="20" rx="3"/></g>
<g class="c-teal"><rect x="68" y="133" width="20" height="20" rx="3"/></g>
<g class="c-teal"><rect x="68" y="156" width="20" height="20" rx="3"/></g>
<g class="c-teal"><rect x="68" y="179" width="20" height="20" rx="3"/></g>
<g class="c-teal"><rect x="91" y="76" width="20" height="20" rx="3"/></g>
<g class="c-teal"><rect x="91" y="107" width="20" height="20" rx="3"/></g>
<g class="c-teal"><rect x="91" y="130" width="20" height="20" rx="3"/></g>
<g class="c-teal"><rect x="91" y="153" width="20" height="20" rx="3"/></g>
<g class="c-teal"><rect x="91" y="176" width="20" height="20" rx="3"/></g>
<g class="c-teal"><rect x="114" y="78" width="20" height="20" rx="3"/></g>
<g class="c-teal"><rect x="114" y="109" width="20" height="20" rx="3"/></g>
<g class="c-teal"><rect x="114" y="132" width="20" height="20" rx="3"/></g>
<g class="c-teal"><rect x="114" y="155" width="20" height="20" rx="3"/></g>
<g class="c-teal"><rect x="114" y="178" width="20" height="20" rx="3"/></g>
<g class="c-teal"><rect x="137" y="82" width="20" height="20" rx="3"/></g>
<g class="c-teal"><rect x="137" y="113" width="20" height="20" rx="3"/></g>
<g class="c-teal"><rect x="137" y="136" width="20" height="20" rx="3"/></g>
<g class="c-teal"><rect x="137" y="159" width="20" height="20" rx="3"/></g>
<g class="c-teal"><rect x="137" y="182" width="20" height="20" rx="3"/></g>
<g class="c-coral"><rect x="58" y="215" width="20" height="20" rx="3"/></g>
<g class="c-coral"><rect x="81" y="219" width="20" height="20" rx="3"/></g>
<g class="c-coral"><rect x="104" y="223" width="20" height="20" rx="3"/></g>
<g class="c-coral"><rect x="127" y="228" width="32" height="20" rx="3"/></g>
<g class="c-purple"><rect x="186" y="82" width="20" height="20" rx="3"/></g>
<g class="c-purple"><rect x="186" y="113" width="20" height="20" rx="3"/></g>
<g class="c-purple"><rect x="186" y="136" width="20" height="20" rx="3"/></g>
<g class="c-purple"><rect x="186" y="159" width="20" height="20" rx="3"/></g>
<g class="c-purple"><rect x="186" y="182" width="20" height="20" rx="3"/></g>
<g class="c-purple"><rect x="209" y="78" width="20" height="20" rx="3"/></g>
<g class="c-purple"><rect x="209" y="109" width="20" height="20" rx="3"/></g>
<g class="c-purple"><rect x="209" y="132" width="20" height="20" rx="3"/></g>
<g class="c-purple"><rect x="209" y="155" width="20" height="20" rx="3"/></g>
<g class="c-purple"><rect x="209" y="178" width="20" height="20" rx="3"/></g>
<g class="c-purple"><rect x="232" y="76" width="20" height="20" rx="3"/></g>
<g class="c-purple"><rect x="232" y="107" width="20" height="20" rx="3"/></g>
<g class="c-purple"><rect x="232" y="130" width="20" height="20" rx="3"/></g>
<g class="c-purple"><rect x="232" y="153" width="20" height="20" rx="3"/></g>
<g class="c-purple"><rect x="232" y="176" width="20" height="20" rx="3"/></g>
<g class="c-purple"><rect x="255" y="79" width="20" height="20" rx="3"/></g>
<g class="c-purple"><rect x="255" y="110" width="20" height="20" rx="3"/></g>
<g class="c-purple"><rect x="255" y="133" width="20" height="20" rx="3"/></g>
<g class="c-purple"><rect x="255" y="156" width="20" height="20" rx="3"/></g>
<g class="c-purple"><rect x="255" y="179" width="20" height="20" rx="3"/></g>
<g class="c-purple"><rect x="278" y="84" width="20" height="20" rx="3"/></g>
<g class="c-purple"><rect x="278" y="115" width="20" height="20" rx="3"/></g>
<g class="c-purple"><rect x="278" y="138" width="20" height="20" rx="3"/></g>
<g class="c-purple"><rect x="278" y="161" width="20" height="20" rx="3"/></g>
<g class="c-purple"><rect x="278" y="184" width="20" height="20" rx="3"/></g>
<g class="c-purple"><rect x="301" y="86" width="20" height="20" rx="3"/></g>
<g class="c-purple"><rect x="301" y="116" width="20" height="20" rx="3"/></g>
<g class="c-purple"><rect x="301" y="139" width="20" height="20" rx="3"/></g>
<g class="c-purple"><rect x="301" y="162" width="20" height="20" rx="3"/></g>
<g class="c-purple"><rect x="301" y="185" width="20" height="20" rx="3"/></g>
<g class="c-purple"><rect x="324" y="86" width="20" height="20" rx="3"/></g>
<g class="c-purple"><rect x="324" y="116" width="20" height="20" rx="3"/></g>
<g class="c-purple"><rect x="324" y="139" width="20" height="20" rx="3"/></g>
<g class="c-purple"><rect x="324" y="162" width="20" height="20" rx="3"/></g>
<g class="c-purple"><rect x="347" y="116" width="20" height="20" rx="3"/></g>
<g class="c-purple"><rect x="347" y="139" width="20" height="20" rx="3"/></g>
<g class="c-coral"><rect x="219" y="228" width="32" height="20" rx="3"/></g>
<g class="c-coral"><rect x="254" y="223" width="20" height="20" rx="3"/></g>
<g class="c-coral"><rect x="277" y="219" width="20" height="20" rx="3"/></g>
<g class="c-coral"><rect x="300" y="215" width="20" height="20" rx="3"/></g>
<g class="c-coral"><rect x="323" y="213" width="20" height="20" rx="3"/></g>
<g class="c-coral"><rect x="396" y="76" width="20" height="20" rx="3"/></g>
<g class="c-coral"><rect x="396" y="99" width="20" height="20" rx="3"/></g>
<g class="c-coral"><rect x="396" y="122" width="20" height="20" rx="3"/></g>
<g class="c-coral"><rect x="396" y="145" width="20" height="20" rx="3"/></g>
<g class="c-coral"><rect x="396" y="168" width="20" height="20" rx="3"/></g>
<g class="c-coral"><rect x="419" y="99" width="20" height="20" rx="3"/></g>
<g class="c-coral"><rect x="419" y="122" width="20" height="20" rx="3"/></g>
<g class="c-coral"><rect x="419" y="145" width="20" height="20" rx="3"/></g>
<g class="c-coral"><rect x="419" y="168" width="20" height="20" rx="3"/></g>
<g class="c-coral"><rect x="442" y="99" width="20" height="20" rx="3"/></g>
<g class="c-coral"><rect x="442" y="122" width="20" height="20" rx="3"/></g>
<g class="c-coral"><rect x="442" y="145" width="20" height="20" rx="3"/></g>
<g class="c-coral"><rect x="465" y="76" width="20" height="20" rx="3"/></g>
<g class="c-coral"><rect x="465" y="99" width="20" height="20" rx="3"/></g>
<g class="c-coral"><rect x="465" y="122" width="20" height="20" rx="3"/></g>
<g class="c-coral"><rect x="465" y="145" width="20" height="20" rx="3"/></g>
<g class="c-coral"><rect x="488" y="76" width="20" height="20" rx="3"/></g>
<g class="c-coral"><rect x="488" y="99" width="20" height="20" rx="3"/></g>
<g class="c-coral"><rect x="488" y="122" width="20" height="20" rx="3"/></g>
<g class="c-coral"><rect x="488" y="145" width="20" height="20" rx="3"/></g>
<g class="c-coral"><rect x="488" y="168" width="20" height="20" rx="3"/></g>
<g class="c-coral"><rect x="442" y="168" width="43" height="20" rx="3"/></g>
<g class="c-coral"><rect x="511" y="76" width="20" height="20" rx="3"/></g>
<g class="c-coral"><rect x="511" y="99" width="20" height="43" rx="3"/></g>
<g class="c-coral"><rect x="511" y="145" width="20" height="43" rx="3"/></g>
<g class="c-gray"><rect x="419" y="76" width="43" height="20" rx="3"/></g>
<g class="c-gray"><circle cx="440" cy="88" r="8"/></g>
<text class="th" x="91" y="284" text-anchor="middle">Left half</text>
<text class="ts" x="91" y="302" text-anchor="middle">34 keys</text>
<text class="th" x="278" y="284" text-anchor="middle">Right half</text>
<text class="ts" x="278" y="302" text-anchor="middle">41 keys</text>
<text class="th" x="465" y="284" text-anchor="middle">Numpad</text>
<text class="ts" x="465" y="302" text-anchor="middle">25 + knob</text>
<text class="ts" x="18" y="322">Column-staggered: each column offset for finger length. The halves are separate designs, not mirrors.</text>
</svg>

Before

Width:  |  Height:  |  Size: 10 KiB

After

Width:  |  Height:  |  Size: 9.8 KiB