Fix HUB layer index — move before reserved layer

Reserved layer (status=reserved) may not count in ZMK layer indexing.
HUB now at layer 4 (before reserved at 5) so &mo 4 always resolves.
This commit is contained in:
afiqzudinhadi 2026-06-20 23:09:18 +08:00
parent f7377f9f48
commit a9aa38feed
2 changed files with 17 additions and 17 deletions

View file

@ -106,18 +106,18 @@ Combo: SPC+ALT = ENTER (if ALT held via T)
[HUB] = hold opens HUB layer, release goes back
```
### Layer 4: Reserved (ZMK Studio)
### Layer 5: HUB
### Layer 4: HUB
```
BT_CLR BT0 BT1 BT2 BT3 BT4 | + [ UP ] * =
USB/BT _ _ _ _ _ | - LEFT DOWN RIGHT / \
LSHFT Z X C V _ | ->CARP ->QWRT ->STEN ->FPS ->L4 RSHFT
LSHFT Z X C V _ | ->CARP ->QWRT ->STEN ->FPS ->L5 RSHFT
ESC CTRL GUI | SPC ALT _
Combo: SPC+ALT = ENTER
```
### Layer 5: Reserved (ZMK Studio)
# Related Resources
- [ZMK Firmware Documentation](https://zmk.dev/docs)

View file

@ -37,7 +37,7 @@
// J+K (QWRT) / A+E (CARP) = ENTER
combo_enter { key-positions = <19 20>; bindings = <&kp RET>; layers = <0 1>; };
// SPC+ALT = ENTER (all layers except steno)
combo_thumb_enter { key-positions = <39 40>; bindings = <&kp RET>; layers = <0 5 1 3>; };
combo_thumb_enter { key-positions = <39 40>; bindings = <&kp RET>; layers = <0 4 1 3>; };
};
keymap {
@ -46,27 +46,27 @@
carpalx_layer {
display-name = "CARP";
bindings = <
&kp GRAVE &kp Q &kp G &kp M &kp L &kp W &kp Y &kp F &kp U &kp B &kp SEMI &to 5
&kp GRAVE &kp Q &kp G &kp M &kp L &kp W &kp Y &kp F &kp U &kp B &kp SEMI &to 4
&kp TAB &kp D &kp S &kp T &kp N &kp R &kp I &kp A &kp E &kp O &kp H &kp SQT
&kp LSHFT &kp Z &kp X &kp C &kp V &kp J &kp K &kp P &kp COMMA &kp DOT &kp FSLH &kp RSHFT
&kp ESC &kp LCTRL &kp LGUI &kp SPACE &kp RALT &mo 5
&kp ESC &kp LCTRL &kp LGUI &kp SPACE &kp RALT &mo 4
>;
};
qwerty_layer {
display-name = "QWRT";
bindings = <
&kp GRAVE &kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P &to 5
&kp GRAVE &kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P &to 4
&kp TAB &kp A &kp S &kp D &kp F &kp G &kp H &kp J &kp K &kp L &kp SEMI &kp SQT
&kp LSHFT &kp Z &kp X &kp C &kp V &kp B &kp N &kp M &kp COMMA &kp DOT &kp FSLH &kp RSHFT
&kp ESC &kp LCTRL &kp LGUI &kp SPACE &kp RALT &mo 5
&kp ESC &kp LCTRL &kp LGUI &kp SPACE &kp RALT &mo 4
>;
};
steno_layer {
display-name = "STEN";
bindings = <
&none &kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &kp N6 &kp N7 &kp N8 &kp N9 &kp N0 &to 5
&none &kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &kp N6 &kp N7 &kp N8 &kp N9 &kp N0 &to 4
&none &kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P &kp LBKT
&none &kp A &kp S &kp D &kp F &kp G &kp H &kp J &kp K &kp L &kp SEMI &kp SQT
&none &kp C &kp V &kp N &kp M &none
@ -76,25 +76,25 @@
fps_layer {
display-name = "FPS";
bindings = <
&mt ESC N1 &kp N2 &kp Q &kp W &mt N3 E &mt N4 R &kp N5 &kp N6 &kp N7 &kp N8 &kp N9 &to 5
&mt ESC N1 &kp N2 &kp Q &kp W &mt N3 E &mt N4 R &kp N5 &kp N6 &kp N7 &kp N8 &kp N9 &to 4
&kp TAB &kp LSHFT &kp A &kp S &kp D &kp G &none &none &none &none &none &none
&kp M &kp Z &kp X &kp C &kp V &kp F &none &none &none &none &none &none
&mt LALT T &kp LCTRL &kp SPACE &none &none &mo 5
&mt LALT T &kp LCTRL &kp SPACE &none &none &mo 4
>;
};
extra_1 {
status = "reserved";
};
hub_layer {
display-name = "HUB";
bindings = <
&bt BT_CLR &bt BT_SEL 0 &bt BT_SEL 1 &bt BT_SEL 2 &bt BT_SEL 3 &bt BT_SEL 4 &kp PLUS &kp LBKT &kp UP &kp RBKT &kp ASTRK &kp EQUAL
&out OUT_TOG &none &none &none &none &none &kp MINUS &kp LEFT &kp DOWN &kp RIGHT &kp FSLH &kp BSLH
&kp LSHFT &kp Z &kp X &kp C &kp V &none &to 0 &to 1 &to 2 &to 3 &to 4 &kp RSHFT
&kp LSHFT &kp Z &kp X &kp C &kp V &none &to 0 &to 1 &to 2 &to 3 &to 5 &kp RSHFT
&kp ESC &kp LCTRL &kp LGUI &kp SPACE &kp RALT &none
>;
};
extra_1 {
status = "reserved";
};
};
};