|
@@ -0,0 +1,289 @@
|
|
|
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="90 60 720 240">
|
|
|
+
|
|
|
+ <style>
|
|
|
+ rect {
|
|
|
+ fill: #f8f8f8;
|
|
|
+ stroke: #666;
|
|
|
+ stroke-width: .5px;
|
|
|
+ }
|
|
|
+ text {
|
|
|
+ fill: #999;
|
|
|
+ font: normal 20px sans-serif;
|
|
|
+ text-align: center;
|
|
|
+ text-anchor: middle;
|
|
|
+ }
|
|
|
+ .dualKey { fill: #ddd; transform: translateY(26px); }
|
|
|
+
|
|
|
+ #row_AD { transform: translate(64px, 64px); }
|
|
|
+ #row_AC { transform: translate(64px, 124px); }
|
|
|
+ #row_AB { transform: translate(64px, 184px); }
|
|
|
+ #row_AA { transform: translate(64px, 244px); }
|
|
|
+ .left { transform: translate(-15px, 0); }
|
|
|
+ .right { transform: translate(+15px, 0); }
|
|
|
+
|
|
|
+ .shortcut { font-size: smaller; }
|
|
|
+ .layerSym { font-weight: normal; }
|
|
|
+ .layerMod { font-weight: bold; font-size: 14px; }
|
|
|
+ .layerNav { font-weight: bold; }
|
|
|
+
|
|
|
+ .layerMod, .colorMod { fill: #333; }
|
|
|
+ .layerSym, .colorSym { fill: blue; }
|
|
|
+ .layerNav, .colorNav { fill: #e83; }
|
|
|
+
|
|
|
+ @media (prefers-color-scheme: dark) {
|
|
|
+ text { fill: #888; }
|
|
|
+ rect { fill: #444; }
|
|
|
+ .dualKey { fill: #666; }
|
|
|
+ .layerMod, .colorMod { fill: #eee; }
|
|
|
+ .layerSym, .colorSym { fill: #99f; }
|
|
|
+ .layerNav, .colorNav { fill: #e83; }
|
|
|
+ }
|
|
|
+ </style>
|
|
|
+
|
|
|
+ <g id="row_AD">
|
|
|
+ <g class="left">
|
|
|
+ <g transform="translate(90)">
|
|
|
+ <rect width="52" height="52" rx="5" ry="5"/>
|
|
|
+ <text x="12.8" y="20.6" class="level2">Q</text>
|
|
|
+ <text x="38.0" y="43.4" class="layerSym">@</text>
|
|
|
+ </g>
|
|
|
+ <g transform="translate(150)">
|
|
|
+ <rect width="52" height="52" rx="5" ry="5"/>
|
|
|
+ <text x="12.8" y="20.6" class="level2">W</text>
|
|
|
+ <text x="38.0" y="20.6" class="layerNav shortcut">^w</text>
|
|
|
+ <text x="38.0" y="43.4" class="layerSym"><</text>
|
|
|
+ </g>
|
|
|
+ <g transform="translate(210)">
|
|
|
+ <rect width="52" height="52" rx="5" ry="5"/>
|
|
|
+ <text x="12.8" y="20.6" class="level2">E</text>
|
|
|
+ <text x="38.0" y="20.6" class="layerNav">⎗</text>
|
|
|
+ <text x="38.0" y="43.4" class="layerSym">></text>
|
|
|
+ </g>
|
|
|
+ <g transform="translate(270)">
|
|
|
+ <rect width="52" height="52" rx="5" ry="5"/>
|
|
|
+ <text x="12.8" y="20.6" class="level2">R</text>
|
|
|
+ <text x="38.0" y="20.6" class="layerNav">⎘</text>
|
|
|
+ <text x="38.0" y="43.4" class="layerSym">$</text>
|
|
|
+ </g>
|
|
|
+ <g transform="translate(330)">
|
|
|
+ <rect width="52" height="52" rx="5" ry="5"/>
|
|
|
+ <text x="12.8" y="20.6" class="level2">T</text>
|
|
|
+ <text x="38.0" y="43.4" class="layerSym">%</text>
|
|
|
+ </g>
|
|
|
+ </g>
|
|
|
+ <g class="right">
|
|
|
+ <g transform="translate(390)">
|
|
|
+ <rect width="52" height="52" rx="5" ry="5"/>
|
|
|
+ <text x="12.8" y="20.6" class="level2">Y</text>
|
|
|
+ <text x="38.0" y="20.6" class="layerNav">⇱</text>
|
|
|
+ <text x="38.0" y="43.4" class="layerSym">^</text>
|
|
|
+ </g>
|
|
|
+ <g transform="translate(450)">
|
|
|
+ <rect width="52" height="52" rx="5" ry="5"/>
|
|
|
+ <text x="12.8" y="20.6" class="level2">U</text>
|
|
|
+ <text x="38.0" y="20.6" class="layerNav">⇟</text>
|
|
|
+ <text x="38.0" y="43.4" class="layerSym">&</text>
|
|
|
+ </g>
|
|
|
+ <g transform="translate(510)">
|
|
|
+ <rect width="52" height="52" rx="5" ry="5"/>
|
|
|
+ <text x="12.8" y="20.6" class="level2">I</text>
|
|
|
+ <text x="38.0" y="20.6" class="layerNav">⇞</text>
|
|
|
+ <text x="38.0" y="43.4" class="layerSym">*</text>
|
|
|
+ </g>
|
|
|
+ <g transform="translate(570)">
|
|
|
+ <rect width="52" height="52" rx="5" ry="5"/>
|
|
|
+ <text x="12.8" y="20.6" class="level2">O</text>
|
|
|
+ <text x="38.0" y="20.6" class="layerNav">⇲</text>
|
|
|
+ <text x="38.0" y="43.4" class="layerSym">'</text>
|
|
|
+ </g>
|
|
|
+ <g transform="translate(630)">
|
|
|
+ <rect width="52" height="52" rx="5" ry="5"/>
|
|
|
+ <text x="12.8" y="20.6" class="level2">P</text>
|
|
|
+ <text x="38.0" y="43.4" class="layerSym">`</text>
|
|
|
+ </g>
|
|
|
+ </g>
|
|
|
+ </g>
|
|
|
+
|
|
|
+ <g id="row_AC">
|
|
|
+ <g class="left">
|
|
|
+ <g transform="translate(90)">
|
|
|
+ <rect width="52" height="52" rx="5" ry="5"/>
|
|
|
+ <text x="12.8" y="20.6" class="level2">A</text>
|
|
|
+ <text x="38.0" y="20.6" class="layerNav shortcut">^a</text>
|
|
|
+ <text x="38.0" y="43.4" class="layerSym">{</text>
|
|
|
+ </g>
|
|
|
+ <g transform="translate(150)">
|
|
|
+ <rect width="52" height="52" rx="5" ry="5"/>
|
|
|
+ <rect width="26" height="26" rx="2" ry="2" class="dualKey"/>
|
|
|
+ <text x="12.8" y="20.6" class="level2">S</text>
|
|
|
+ <text x="12.8" y="43.4" class="layerMod">⌘</text>
|
|
|
+ <text x="38.0" y="20.6" class="layerNav shortcut">^s</text>
|
|
|
+ <text x="38.0" y="43.4" class="layerSym">(</text>
|
|
|
+ </g>
|
|
|
+ <g transform="translate(210)">
|
|
|
+ <rect width="52" height="52" rx="5" ry="5"/>
|
|
|
+ <rect width="26" height="26" rx="2" ry="2" class="dualKey"/>
|
|
|
+ <text x="12.8" y="20.6" class="level2">D</text>
|
|
|
+ <text x="12.8" y="43.4" class="layerMod">⌥</text>
|
|
|
+ <text x="38.0" y="20.6" class="layerNav">⇤</text>
|
|
|
+ <text x="38.0" y="43.4" class="layerSym">)</text>
|
|
|
+ </g>
|
|
|
+ <g transform="translate(270)">
|
|
|
+ <rect width="52" height="52" rx="5" ry="5"/>
|
|
|
+ <rect width="26" height="26" rx="2" ry="2" class="dualKey"/>
|
|
|
+ <text x="12.8" y="20.6" class="level2">F</text>
|
|
|
+ <text x="12.8" y="43.4" class="layerMod">⌃</text>
|
|
|
+ <text x="38.0" y="20.6" class="layerNav">⇥</text>
|
|
|
+ <text x="38.0" y="43.4" class="layerSym">}</text>
|
|
|
+ </g>
|
|
|
+ <g transform="translate(330)">
|
|
|
+ <rect width="52" height="52" rx="5" ry="5"/>
|
|
|
+ <text x="12.8" y="20.6" class="level2">G</text>
|
|
|
+ <text x="38.0" y="43.4" class="layerSym"> = </text>
|
|
|
+ </g>
|
|
|
+ </g>
|
|
|
+ <g class="right">
|
|
|
+ <g transform="translate(390)">
|
|
|
+ <rect width="52" height="52" rx="5" ry="5"/>
|
|
|
+ <text x="12.8" y="20.6" class="level2">H</text>
|
|
|
+ <text x="38.0" y="20.6" class="layerNav">←</text>
|
|
|
+ <text x="38.0" y="43.4" class="layerSym">\</text>
|
|
|
+ </g>
|
|
|
+ <g transform="translate(450)">
|
|
|
+ <rect width="52" height="52" rx="5" ry="5"/>
|
|
|
+ <rect width="26" height="26" rx="2" ry="2" class="dualKey"/>
|
|
|
+ <text x="12.8" y="20.6" class="level2">J</text>
|
|
|
+ <text x="12.8" y="43.4" class="layerMod">⌃</text>
|
|
|
+ <text x="38.0" y="20.6" class="layerNav">↓</text>
|
|
|
+ <text x="38.0" y="43.4" class="layerSym">+</text>
|
|
|
+ </g>
|
|
|
+ <g transform="translate(510)">
|
|
|
+ <rect width="52" height="52" rx="5" ry="5"/>
|
|
|
+ <rect width="26" height="26" rx="2" ry="2" class="dualKey"/>
|
|
|
+ <text x="12.8" y="20.6" class="level2">K</text>
|
|
|
+ <text x="12.8" y="43.4" class="layerMod">⌥</text>
|
|
|
+ <text x="38.0" y="20.6" class="layerNav">↑</text>
|
|
|
+ <text x="38.0" y="43.4" class="layerSym">-</text>
|
|
|
+ </g>
|
|
|
+ <g transform="translate(570)">
|
|
|
+ <rect width="52" height="52" rx="5" ry="5"/>
|
|
|
+ <rect width="26" height="26" rx="2" ry="2" class="dualKey"/>
|
|
|
+ <text x="12.8" y="20.6" class="level2">L</text>
|
|
|
+ <text x="12.8" y="43.4" class="layerMod">⌘</text>
|
|
|
+ <text x="38.0" y="20.6" class="layerNav">→</text>
|
|
|
+ <text x="38.0" y="43.4" class="layerSym">/</text>
|
|
|
+ </g>
|
|
|
+ <g transform="translate(630)">
|
|
|
+ <rect width="52" height="52" rx="5" ry="5"/>
|
|
|
+ <text x="12.8" y="43.4" class="level1">;</text>
|
|
|
+ <text x="12.8" y="20.6" class="level2">:</text>
|
|
|
+ <text x="38.0" y="43.4" class="layerSym">"</text>
|
|
|
+ </g>
|
|
|
+ </g>
|
|
|
+ </g>
|
|
|
+
|
|
|
+ <g id="row_AB">
|
|
|
+ <g class="left">
|
|
|
+ <g transform="translate(90)">
|
|
|
+ <rect width="52" height="52" rx="5" ry="5"/>
|
|
|
+ <g>
|
|
|
+ <text x="12.8" y="20.6" class="level2">Z</text>
|
|
|
+ <text x="38.0" y="20.6" class="layerNav shortcut">^z</text>
|
|
|
+ <text x="38.0" y="43.4" class="layerSym">~</text>
|
|
|
+ </g>
|
|
|
+ </g>
|
|
|
+ <g transform="translate(150)">
|
|
|
+ <rect width="52" height="52" rx="5" ry="5"/>
|
|
|
+ <g>
|
|
|
+ <text x="12.8" y="20.6" class="level2">X</text>
|
|
|
+ <text x="38.0" y="20.6" class="layerNav shortcut">^x</text>
|
|
|
+ <text x="38.0" y="43.4" class="layerSym">[</text>
|
|
|
+ </g>
|
|
|
+ </g>
|
|
|
+ <g transform="translate(210)">
|
|
|
+ <rect width="52" height="52" rx="5" ry="5"/>
|
|
|
+ <g>
|
|
|
+ <text x="12.8" y="20.6" class="level2">C</text>
|
|
|
+ <text x="38.0" y="20.6" class="layerNav shortcut">^c</text>
|
|
|
+ <text x="38.0" y="43.4" class="layerSym">]</text>
|
|
|
+ </g>
|
|
|
+ </g>
|
|
|
+ <g transform="translate(270)">
|
|
|
+ <rect width="52" height="52" rx="5" ry="5"/>
|
|
|
+ <g>
|
|
|
+ <text x="12.8" y="20.6" class="level2">V</text>
|
|
|
+ <text x="38.0" y="20.6" class="layerNav shortcut">^v</text>
|
|
|
+ <text x="38.0" y="43.4" class="layerSym">_</text>
|
|
|
+ </g>
|
|
|
+ </g>
|
|
|
+ <g transform="translate(330)">
|
|
|
+ <rect width="52" height="52" rx="5" ry="5"/>
|
|
|
+ <g>
|
|
|
+ <text x="12.8" y="20.6" class="level2">B</text>
|
|
|
+ <text x="38.0" y="43.4" class="layerSym">#</text>
|
|
|
+ </g>
|
|
|
+ </g>
|
|
|
+ </g>
|
|
|
+ <g class="right">
|
|
|
+ <g transform="translate(390)">
|
|
|
+ <rect width="52" height="52" rx="5" ry="5"/>
|
|
|
+ <text x="12.8" y="20.6" class="level2">N</text>
|
|
|
+ <text x="30.0" y="20.6" class="layerNav">🖰</text>
|
|
|
+ <text x="38.0" y="20.6" class="layerNav">←</text>
|
|
|
+ <text x="38.0" y="43.4" class="layerSym">|</text>
|
|
|
+ </g>
|
|
|
+ <g transform="translate(450)">
|
|
|
+ <rect width="52" height="52" rx="5" ry="5"/>
|
|
|
+ <text x="12.8" y="20.6" class="level2">M</text>
|
|
|
+ <text x="30.0" y="20.6" class="layerNav">🖰</text>
|
|
|
+ <text x="42.0" y="20.6" class="layerNav">↓</text>
|
|
|
+ <text x="38.0" y="43.4" class="layerSym">!</text>
|
|
|
+ </g>
|
|
|
+ <g transform="translate(510)">
|
|
|
+ <rect width="52" height="52" rx="5" ry="5"/>
|
|
|
+ <text x="12.8" y="43.4" class="level1">,</text>
|
|
|
+ <text x="12.8" y="20.6" class="level2"><</text>
|
|
|
+ <text x="30.0" y="20.6" class="layerNav">🖰</text>
|
|
|
+ <text x="42.0" y="20.6" class="layerNav">↑</text>
|
|
|
+ <text x="38.0" y="43.4" class="layerSym">;</text>
|
|
|
+ </g>
|
|
|
+ <g transform="translate(570)">
|
|
|
+ <rect width="52" height="52" rx="5" ry="5"/>
|
|
|
+ <text x="12.8" y="43.4" class="level1">.</text>
|
|
|
+ <text x="12.8" y="20.6" class="level2">></text>
|
|
|
+ <text x="30.0" y="20.6" class="layerNav">🖰</text>
|
|
|
+ <text x="38.0" y="20.6" class="layerNav">→</text>
|
|
|
+ <text x="38.0" y="43.4" class="layerSym">:</text>
|
|
|
+ </g>
|
|
|
+ <g transform="translate(630)">
|
|
|
+ <rect width="52" height="52" rx="5" ry="5"/>
|
|
|
+ <text x="12.8" y="20.6" class="level2">?</text>
|
|
|
+ <text x="38.0" y="43.4" class="layerSym">?</text>
|
|
|
+ </g>
|
|
|
+ </g>
|
|
|
+ </g>
|
|
|
+
|
|
|
+ <g id="row_AA">
|
|
|
+ <g transform="translate(180)">
|
|
|
+ <rect width="82" height="52" rx="5" ry="5"/>
|
|
|
+ <rect width="41" height="26" rx="2" ry="2" class="dualKey"/>
|
|
|
+ <text x="20.5" y="42.8" class="layerMod shortcut">shift</text>
|
|
|
+ <text x="61.5" y="42.8" class="layerMod shortcut colorSym">num</text>
|
|
|
+ <text x="61.5" y="20.6" class="layerNav" style="font-size: 14px;">⌦</text>
|
|
|
+ <text x="20.5" y="20.6" class="level2" style="font-size: 14px;">⌫</text>
|
|
|
+ </g>
|
|
|
+ <g transform="translate(270)">
|
|
|
+ <rect width="232" height="52" rx="5" ry="5"/>
|
|
|
+ <rect width="116" height="26" rx="2" ry="2" class="dualKey"/>
|
|
|
+ <text x="58.0" y="42.8" class="layerMod colorNav shortcut">navigation</text>
|
|
|
+ </g>
|
|
|
+ <g transform="translate(510)">
|
|
|
+ <rect width="82" height="52" rx="5" ry="5"/>
|
|
|
+ <rect width="41" height="26" rx="2" ry="2" class="dualKey"/>
|
|
|
+ <text x="20.5" y="42.8" class="layerMod colorSym shortcut">sym</text>
|
|
|
+ <text x="61.5" y="20.6" class="layerNav">⎋</text>
|
|
|
+ <text x="20.5" y="22.6" class="level2">⏎</text>
|
|
|
+ </g>
|
|
|
+ </g>
|
|
|
+
|
|
|
+</svg>
|