Remove steno includes, add placeholder STEN layer, clean up README

This commit is contained in:
afiqzudinhadi 2026-06-24 19:22:35 +08:00 committed by github-actions[bot]
parent 9d377bca7d
commit 3378de5539
5 changed files with 105 additions and 232 deletions

View file

@ -1,6 +1,6 @@
# Corne Keyboard Custom Keymaps (ZMK)
Custom keymaps for a Corne 42-key split keyboard running ZMK firmware with on-board stenography.
Custom keymaps for a Corne 42-key split keyboard running ZMK firmware.
# Table of Contents
@ -42,81 +42,14 @@ Custom keymaps for a Corne 42-key split keyboard running ZMK firmware with on-bo
| LEDs | WS2812 underglow (6/half) + per-key (21/half) — 54 total |
| BT Profiles | 5 (BT0-BT4) |
| ZMK Studio | Disabled (see [Enabling ZMK Studio](#enabling-zmk-studio)) |
| Steno Engine | Javelin (Lapwing dictionary) |
| Vendor | KeebMaker |
| Vendor Config | [KeebMaker/zmk-config](https://github.com/KeebMaker/zmk-config) |
# Current Keymap
Key positions reference:
```
0 1 2 3 4 5 | 6 7 8 9 10 11
12 13 14 15 16 17 | 18 19 20 21 22 23
24 25 26 27 28 29 | 30 31 32 33 34 35
36 37 38 | 39 40 41
```
![Corne Keymap](keymap-drawer/corne.svg)
### Layer 0: CARP (Carpalx QGMLWY)
```
` Q G M L W | Y F U B ; ->HUB
[HUB] D S T N R | I A E O H '
LSHFT Z X C V J | K P , . / RSHFT
[RGB] CTRL GUI | SPC ALT MUTE/PP
Combos (layers 0+1):
top+home row same col = 1-0, shift+combo = ! @ # $ % ^ & * ( )
G+M (W+E on QWRT) = ESC
S+T (S+D on QWRT) = TAB
U+B (I+O on QWRT) = BSPC
E+O (K+L on QWRT) = ENTER
[HUB] = hold opens HUB layer, release goes back
[RGB] = tap-dance: 1×=toggle, 2×=effect fwd, 3×=effect rev
MUTE/PP = tap mute, hold play/pause
```
### Layer 1: QWRT (QWERTY)
```
` Q W E R T | Y U I O P ->HUB
[HUB] A S D F G | H J K L ; '
LSHFT Z X C V B | N M , . / RSHFT
[RGB] CTRL GUI | SPC ALT MUTE/PP
Combos: same as CARP (top+home = 1-0, W+E = ESC, S+D = TAB, I+O = BSPC, K+L = ENTER)
```
### Layer 2: STEN (Javelin Steno — Lapwing)
```
_ # # # # # | # # # # # ->HUB
[HUB] S T P H * | * F P L T D
_ S K W R * | * R B G S Z
_ A O | E U _
```
### Layer 3: FPS (WASD shifted right for ortho)
```
1/ESC 2 Q [W] E/3 R/4 | 5 6 7 8 9 ->HUB
TAB SHFT [A] [S] [D] F | _ _ _ _ _ _
M/ALT Z X C V G | _ _ _ _ _ _
T CTRL SPC | _ _ _
Hold-taps: 1=tap/ESC=hold, E=tap/3=hold, R=tap/4=hold, M=tap/ALT=hold
```
### Layer 4: HUB (Utility — BT, RGB, Media, Nav)
```
BT_CLR BT0 BT1 BT2 BT3 BT4 | + [ UP ] * =
OUT_TOG HUE+ SAT+ BRT+ SCRN+ VOL+ | - LEFT DOWN RIGHT / \
LSHFT HUE- SAT- BRT- SCRN- VOL- | ->CARP ->QWRT ->STEN ->FPS [CLR] RSHFT
[RGB] CTRL GUI | SPC ALT MUTE/PP
OUT_TOG = toggle USB/BLE output
HUE/SAT/BRT = RGB underglow hue, saturation, brightness
SCRN = display brightness (C_BRI_UP/DN)
VOL = volume up/down
[RGB] = tap-dance: 1×=toggle, 2×=effect fwd, 3×=effect rev
[CLR] = tap-dance color presets: 1×=purple, 2×=white, 3×=red, 4×=blue, 5×=green
MUTE/PP = tap mute, hold play/pause
```
See [keymap-drawer/](keymap-drawer/) for text reference and keymap-drawer source files.
# Related Resources
@ -124,7 +57,6 @@ MUTE/PP = tap mute, hold play/pause
- [ZMK Keycodes Reference](https://zmk.dev/docs/codes)
- [ZMK Studio](https://zmk.studio/) - Live keymap editor (no flashing needed)
- [Keymap Editor](https://nickcoutsos.github.io/keymap-editor/) - Visual keymap editor for GitHub repos
- [Javelin Steno Engine](https://github.com/jthlim/javelin-steno) - On-board steno engine
- [Vendor Config (KeebMaker)](https://github.com/KeebMaker/zmk-config)
# Pre-requisites
@ -256,7 +188,7 @@ The BLE name is cached in device settings. Do a [Settings Reset](#settings-reset
### Hardware
54 WS2812 LEDs total — 6 underglow + 21 per-key per half. Chain length set in `boards/shields/corne/boards/nice_nano_v2.overlay`.
54 WS2812 LEDs total — 6 underglow + 21 per-key per half. Chain length set in `config/nice_nano_v2.overlay`.
### Config
@ -327,16 +259,7 @@ ZMK Studio is disabled by default in this config. To enable live keymap editing:
snippet: rgb-config studio-rpc-usb-uart
```
3. In `boards/shields/corne/corne.zmk.yml`, add `studio` to features:
```yaml
features:
- keys
- display
- underglow
- studio
```
4. Push and flash.
3. Push and flash.
5. Go to [zmk.studio](https://zmk.studio/) in Chrome → connect via USB or BLE → edit layers visually.

View file

@ -13,8 +13,6 @@
#include <dt-bindings/zmk/backlight.h>
#include <dt-bindings/zmk/rgb.h>
#include <dt-bindings/zmk/reset.h>
#include <dt-bindings/zmk/javelin_steno.h>
#include <behaviors/javelin_steno.dtsi>
&led_strip {
chain-length = <27>;
@ -95,10 +93,10 @@
steno_layer {
display-name = "STEN";
bindings = <
&none &javsteno STENO_NUM1 &javsteno STENO_NUM2 &javsteno STENO_NUM3 &javsteno STENO_NUM4 &javsteno STENO_NUM5 &javsteno STENO_NUM6 &javsteno STENO_NUM7 &javsteno STENO_NUM8 &javsteno STENO_NUM9 &javsteno STENO_NUM10 &to 4
&mo 4 &javsteno STENO_S1 &javsteno STENO_TL &javsteno STENO_PL &javsteno STENO_HL &javsteno STENO_STAR1 &javsteno STENO_STAR3 &javsteno STENO_FR &javsteno STENO_PR &javsteno STENO_LR &javsteno STENO_TR &javsteno STENO_DR
&none &javsteno STENO_S2 &javsteno STENO_KL &javsteno STENO_WL &javsteno STENO_RL &javsteno STENO_STAR2 &javsteno STENO_STAR4 &javsteno STENO_RR &javsteno STENO_BR &javsteno STENO_GR &javsteno STENO_SR &javsteno STENO_ZR
&none &javsteno STENO_A &javsteno STENO_O &javsteno STENO_E &javsteno STENO_U &none
&none &none &none &none &none &none &none &none &none &none &none &to 4
&mo 4 &none &none &none &none &none &none &none &none &none &none &none
&none &none &none &none &none &none &none &none &none &none &none &none
&none &none &none &none &none &none
>;
};

View file

@ -752,63 +752,33 @@ rect.held, rect.combo.held {
</g>
<g transform="translate(84, 49)" class="key keypos-1">
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key"/>
<text x="0" y="0" class="key tap">
<tspan x="0" dy="-0.6em" style="font-size: 60%">&amp;javsteno</tspan><tspan x="0" dy="1.2em" style="font-size: 60%">STENO_NUM1</tspan>
</text>
</g>
<g transform="translate(140, 35)" class="key keypos-2">
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key"/>
<text x="0" y="0" class="key tap">
<tspan x="0" dy="-0.6em" style="font-size: 60%">&amp;javsteno</tspan><tspan x="0" dy="1.2em" style="font-size: 60%">STENO_NUM2</tspan>
</text>
</g>
<g transform="translate(196, 28)" class="key keypos-3">
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key"/>
<text x="0" y="0" class="key tap">
<tspan x="0" dy="-0.6em" style="font-size: 60%">&amp;javsteno</tspan><tspan x="0" dy="1.2em" style="font-size: 60%">STENO_NUM3</tspan>
</text>
</g>
<g transform="translate(252, 35)" class="key keypos-4">
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key"/>
<text x="0" y="0" class="key tap">
<tspan x="0" dy="-0.6em" style="font-size: 60%">&amp;javsteno</tspan><tspan x="0" dy="1.2em" style="font-size: 60%">STENO_NUM4</tspan>
</text>
</g>
<g transform="translate(308, 42)" class="key keypos-5">
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key"/>
<text x="0" y="0" class="key tap">
<tspan x="0" dy="-0.6em" style="font-size: 60%">&amp;javsteno</tspan><tspan x="0" dy="1.2em" style="font-size: 60%">STENO_NUM5</tspan>
</text>
</g>
<g transform="translate(532, 42)" class="key keypos-6">
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key"/>
<text x="0" y="0" class="key tap">
<tspan x="0" dy="-0.6em" style="font-size: 60%">&amp;javsteno</tspan><tspan x="0" dy="1.2em" style="font-size: 60%">STENO_NUM6</tspan>
</text>
</g>
<g transform="translate(588, 35)" class="key keypos-7">
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key"/>
<text x="0" y="0" class="key tap">
<tspan x="0" dy="-0.6em" style="font-size: 60%">&amp;javsteno</tspan><tspan x="0" dy="1.2em" style="font-size: 60%">STENO_NUM7</tspan>
</text>
</g>
<g transform="translate(644, 28)" class="key keypos-8">
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key"/>
<text x="0" y="0" class="key tap">
<tspan x="0" dy="-0.6em" style="font-size: 60%">&amp;javsteno</tspan><tspan x="0" dy="1.2em" style="font-size: 60%">STENO_NUM8</tspan>
</text>
</g>
<g transform="translate(700, 35)" class="key keypos-9">
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key"/>
<text x="0" y="0" class="key tap">
<tspan x="0" dy="-0.6em" style="font-size: 60%">&amp;javsteno</tspan><tspan x="0" dy="1.2em" style="font-size: 60%">STENO_NUM9</tspan>
</text>
</g>
<g transform="translate(756, 49)" class="key keypos-10">
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key"/>
<text x="0" y="0" class="key tap">
<tspan x="0" dy="-0.6em" style="font-size: 60%">&amp;javsteno</tspan><tspan x="0" dy="1.2em" style="font-size: 60%">STENO_NUM…</tspan>
</text>
</g>
<g transform="translate(812, 49)" class="key keypos-11">
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key"/>
@ -823,165 +793,87 @@ rect.held, rect.combo.held {
</a></g>
<g transform="translate(84, 105)" class="key keypos-13">
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key"/>
<text x="0" y="0" class="key tap">
<tspan x="0" dy="-0.6em" style="font-size: 67%">&amp;javsteno</tspan><tspan x="0" dy="1.2em" style="font-size: 67%">STENO_S1</tspan>
</text>
</g>
<g transform="translate(140, 91)" class="key keypos-14">
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key"/>
<text x="0" y="0" class="key tap">
<tspan x="0" dy="-0.6em" style="font-size: 67%">&amp;javsteno</tspan><tspan x="0" dy="1.2em" style="font-size: 67%">STENO_TL</tspan>
</text>
</g>
<g transform="translate(196, 84)" class="key keypos-15">
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key"/>
<text x="0" y="0" class="key tap">
<tspan x="0" dy="-0.6em" style="font-size: 67%">&amp;javsteno</tspan><tspan x="0" dy="1.2em" style="font-size: 67%">STENO_PL</tspan>
</text>
</g>
<g transform="translate(252, 91)" class="key keypos-16">
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key"/>
<text x="0" y="0" class="key tap">
<tspan x="0" dy="-0.6em" style="font-size: 67%">&amp;javsteno</tspan><tspan x="0" dy="1.2em" style="font-size: 67%">STENO_HL</tspan>
</text>
</g>
<g transform="translate(308, 98)" class="key keypos-17">
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key"/>
<text x="0" y="0" class="key tap">
<tspan x="0" dy="-0.6em" style="font-size: 60%">&amp;javsteno</tspan><tspan x="0" dy="1.2em" style="font-size: 60%">STENO_STA…</tspan>
</text>
</g>
<g transform="translate(532, 98)" class="key keypos-18">
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key"/>
<text x="0" y="0" class="key tap">
<tspan x="0" dy="-0.6em" style="font-size: 60%">&amp;javsteno</tspan><tspan x="0" dy="1.2em" style="font-size: 60%">STENO_STA…</tspan>
</text>
</g>
<g transform="translate(588, 91)" class="key keypos-19">
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key"/>
<text x="0" y="0" class="key tap">
<tspan x="0" dy="-0.6em" style="font-size: 67%">&amp;javsteno</tspan><tspan x="0" dy="1.2em" style="font-size: 67%">STENO_FR</tspan>
</text>
</g>
<g transform="translate(644, 84)" class="key keypos-20">
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key"/>
<text x="0" y="0" class="key tap">
<tspan x="0" dy="-0.6em" style="font-size: 67%">&amp;javsteno</tspan><tspan x="0" dy="1.2em" style="font-size: 67%">STENO_PR</tspan>
</text>
</g>
<g transform="translate(700, 91)" class="key keypos-21">
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key"/>
<text x="0" y="0" class="key tap">
<tspan x="0" dy="-0.6em" style="font-size: 67%">&amp;javsteno</tspan><tspan x="0" dy="1.2em" style="font-size: 67%">STENO_LR</tspan>
</text>
</g>
<g transform="translate(756, 105)" class="key keypos-22">
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key"/>
<text x="0" y="0" class="key tap">
<tspan x="0" dy="-0.6em" style="font-size: 67%">&amp;javsteno</tspan><tspan x="0" dy="1.2em" style="font-size: 67%">STENO_TR</tspan>
</text>
</g>
<g transform="translate(812, 105)" class="key keypos-23">
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key"/>
<text x="0" y="0" class="key tap">
<tspan x="0" dy="-0.6em" style="font-size: 67%">&amp;javsteno</tspan><tspan x="0" dy="1.2em" style="font-size: 67%">STENO_DR</tspan>
</text>
</g>
<g transform="translate(28, 161)" class="key keypos-24">
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key"/>
</g>
<g transform="translate(84, 161)" class="key keypos-25">
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key"/>
<text x="0" y="0" class="key tap">
<tspan x="0" dy="-0.6em" style="font-size: 67%">&amp;javsteno</tspan><tspan x="0" dy="1.2em" style="font-size: 67%">STENO_S2</tspan>
</text>
</g>
<g transform="translate(140, 147)" class="key keypos-26">
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key"/>
<text x="0" y="0" class="key tap">
<tspan x="0" dy="-0.6em" style="font-size: 67%">&amp;javsteno</tspan><tspan x="0" dy="1.2em" style="font-size: 67%">STENO_KL</tspan>
</text>
</g>
<g transform="translate(196, 140)" class="key keypos-27">
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key"/>
<text x="0" y="0" class="key tap">
<tspan x="0" dy="-0.6em" style="font-size: 67%">&amp;javsteno</tspan><tspan x="0" dy="1.2em" style="font-size: 67%">STENO_WL</tspan>
</text>
</g>
<g transform="translate(252, 147)" class="key keypos-28">
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key"/>
<text x="0" y="0" class="key tap">
<tspan x="0" dy="-0.6em" style="font-size: 67%">&amp;javsteno</tspan><tspan x="0" dy="1.2em" style="font-size: 67%">STENO_RL</tspan>
</text>
</g>
<g transform="translate(308, 154)" class="key keypos-29">
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key"/>
<text x="0" y="0" class="key tap">
<tspan x="0" dy="-0.6em" style="font-size: 60%">&amp;javsteno</tspan><tspan x="0" dy="1.2em" style="font-size: 60%">STENO_STA…</tspan>
</text>
</g>
<g transform="translate(532, 154)" class="key keypos-30">
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key"/>
<text x="0" y="0" class="key tap">
<tspan x="0" dy="-0.6em" style="font-size: 60%">&amp;javsteno</tspan><tspan x="0" dy="1.2em" style="font-size: 60%">STENO_STA…</tspan>
</text>
</g>
<g transform="translate(588, 147)" class="key keypos-31">
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key"/>
<text x="0" y="0" class="key tap">
<tspan x="0" dy="-0.6em" style="font-size: 67%">&amp;javsteno</tspan><tspan x="0" dy="1.2em" style="font-size: 67%">STENO_RR</tspan>
</text>
</g>
<g transform="translate(644, 140)" class="key keypos-32">
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key"/>
<text x="0" y="0" class="key tap">
<tspan x="0" dy="-0.6em" style="font-size: 67%">&amp;javsteno</tspan><tspan x="0" dy="1.2em" style="font-size: 67%">STENO_BR</tspan>
</text>
</g>
<g transform="translate(700, 147)" class="key keypos-33">
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key"/>
<text x="0" y="0" class="key tap">
<tspan x="0" dy="-0.6em" style="font-size: 67%">&amp;javsteno</tspan><tspan x="0" dy="1.2em" style="font-size: 67%">STENO_GR</tspan>
</text>
</g>
<g transform="translate(756, 161)" class="key keypos-34">
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key"/>
<text x="0" y="0" class="key tap">
<tspan x="0" dy="-0.6em" style="font-size: 67%">&amp;javsteno</tspan><tspan x="0" dy="1.2em" style="font-size: 67%">STENO_SR</tspan>
</text>
</g>
<g transform="translate(812, 161)" class="key keypos-35">
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key"/>
<text x="0" y="0" class="key tap">
<tspan x="0" dy="-0.6em" style="font-size: 67%">&amp;javsteno</tspan><tspan x="0" dy="1.2em" style="font-size: 67%">STENO_ZR</tspan>
</text>
</g>
<g transform="translate(224, 205)" class="key keypos-36">
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key"/>
</g>
<g transform="translate(286, 213) rotate(15.0)" class="key keypos-37">
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key"/>
<text x="0" y="0" class="key tap">
<tspan x="0" dy="-0.6em" style="font-size: 67%">&amp;javsteno</tspan><tspan x="0" dy="1.2em" style="font-size: 67%">STENO_A</tspan>
</text>
</g>
<g transform="translate(351, 224) rotate(30.0)" class="key keypos-38">
<rect rx="6" ry="6" x="-26" y="-40" width="52" height="80" class="key"/>
<text x="0" y="0" class="key tap">
<tspan x="0" dy="-0.6em" style="font-size: 67%">&amp;javsteno</tspan><tspan x="0" dy="1.2em" style="font-size: 67%">STENO_O</tspan>
</text>
</g>
<g transform="translate(489, 224) rotate(-30.0)" class="key keypos-39">
<rect rx="6" ry="6" x="-26" y="-40" width="52" height="80" class="key"/>
<text x="0" y="0" class="key tap">
<tspan x="0" dy="-0.6em" style="font-size: 67%">&amp;javsteno</tspan><tspan x="0" dy="1.2em" style="font-size: 67%">STENO_E</tspan>
</text>
</g>
<g transform="translate(554, 213) rotate(-15.0)" class="key keypos-40">
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key"/>
<text x="0" y="0" class="key tap">
<tspan x="0" dy="-0.6em" style="font-size: 67%">&amp;javsteno</tspan><tspan x="0" dy="1.2em" style="font-size: 67%">STENO_U</tspan>
</text>
</g>
<g transform="translate(616, 205)" class="key keypos-41">
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key"/>

Before

Width:  |  Height:  |  Size: 72 KiB

After

Width:  |  Height:  |  Size: 66 KiB

Before After
Before After

View file

@ -88,46 +88,46 @@ layers:
- {t: MUTE, h: PLAY PAUSE}
STEN:
- ''
- '&javsteno STENO_NUM1'
- '&javsteno STENO_NUM2'
- '&javsteno STENO_NUM3'
- '&javsteno STENO_NUM4'
- '&javsteno STENO_NUM5'
- '&javsteno STENO_NUM6'
- '&javsteno STENO_NUM7'
- '&javsteno STENO_NUM8'
- '&javsteno STENO_NUM9'
- '&javsteno STENO_NUM10'
- ''
- ''
- ''
- ''
- ''
- ''
- ''
- ''
- ''
- ''
- {t: HUB, h: toggle}
- HUB
- '&javsteno STENO_S1'
- '&javsteno STENO_TL'
- '&javsteno STENO_PL'
- '&javsteno STENO_HL'
- '&javsteno STENO_STAR1'
- '&javsteno STENO_STAR3'
- '&javsteno STENO_FR'
- '&javsteno STENO_PR'
- '&javsteno STENO_LR'
- '&javsteno STENO_TR'
- '&javsteno STENO_DR'
- ''
- '&javsteno STENO_S2'
- '&javsteno STENO_KL'
- '&javsteno STENO_WL'
- '&javsteno STENO_RL'
- '&javsteno STENO_STAR2'
- '&javsteno STENO_STAR4'
- '&javsteno STENO_RR'
- '&javsteno STENO_BR'
- '&javsteno STENO_GR'
- '&javsteno STENO_SR'
- '&javsteno STENO_ZR'
- ''
- '&javsteno STENO_A'
- '&javsteno STENO_O'
- '&javsteno STENO_E'
- '&javsteno STENO_U'
- ''
- ''
- ''
- ''
- ''
- ''
- ''
- ''
- ''
- ''
- ''
- ''
- ''
- ''
- ''
- ''
- ''
- ''
- ''
- ''
- ''
- ''
- ''
- ''
- ''
- ''
- ''
FPS:
- {t: '1', h: Esc}

View file

@ -0,0 +1,60 @@
Key positions reference:
0 1 2 3 4 5 | 6 7 8 9 10 11
12 13 14 15 16 17 | 18 19 20 21 22 23
24 25 26 27 28 29 | 30 31 32 33 34 35
36 37 38 | 39 40 41
Layer 0: CARP (Carpalx QGMLWY)
` Q G M L W | Y F U B ; ->HUB
[HUB] D S T N R | I A E O H '
LSHFT Z X C V J | K P , . / RSHFT
[RGB] CTRL GUI | SPC ALT MUTE/PP
Combos (layers 0+1):
top+home row same col = 1-0, shift+combo = ! @ # $ % ^ & * ( )
G+M (W+E on QWRT) = ESC
S+T (S+D on QWRT) = TAB
U+B (I+O on QWRT) = BSPC
E+O (K+L on QWRT) = ENTER
[HUB] = hold opens HUB layer, release goes back
[RGB] = tap-dance: 1x=toggle, 2x=effect fwd, 3x=effect rev
MUTE/PP = tap mute, hold play/pause
Layer 1: QWRT (QWERTY)
` Q W E R T | Y U I O P ->HUB
[HUB] A S D F G | H J K L ; '
LSHFT Z X C V B | N M , . / RSHFT
[RGB] CTRL GUI | SPC ALT MUTE/PP
Combos: same as CARP (top+home = 1-0, W+E = ESC, S+D = TAB, I+O = BSPC, K+L = ENTER)
Layer 2: FPS (WASD shifted right for ortho)
1/ESC 2 Q [W] E/3 R/4 | 5 6 7 8 9 ->HUB
TAB SHFT [A] [S] [D] F | _ _ _ _ _ _
M/ALT Z X C V G | _ _ _ _ _ _
T CTRL SPC | _ _ _
Hold-taps: 1=tap/ESC=hold, E=tap/3=hold, R=tap/4=hold, M=tap/ALT=hold
Layer 3: HUB (Utility — BT, RGB, Media, Nav)
BT_CLR BT0 BT1 BT2 BT3 BT4 | + [ UP ] * =
OUT_TOG HUE+ SAT+ BRT+ SCRN+ VOL+ | - LEFT DOWN RIGHT / \
LSHFT HUE- SAT- BRT- SCRN- VOL- | ->CARP ->QWRT ->FPS _ [CLR] RSHFT
[RGB] CTRL GUI | SPC ALT MUTE/PP
OUT_TOG = toggle USB/BLE output
HUE/SAT/BRT = RGB underglow hue, saturation, brightness
SCRN = display brightness (C_BRI_UP/DN)
VOL = volume up/down
[RGB] = tap-dance: 1x=toggle, 2x=effect fwd, 3x=effect rev
[CLR] = tap-dance color presets: 1x=purple, 2x=white, 3x=red, 4x=blue, 5x=green
MUTE/PP = tap mute, hold play/pause