diff --git a/README.md b/README.md index 92e6415..5598d3c 100644 --- a/README.md +++ b/README.md @@ -77,7 +77,7 @@ git clone git@github.com:afiqzudinhadi/zmk-config.git ### Edit Config Files -For full customization (layers, behaviors): +For full customization (combos, steno layer, behaviors): ``` config/ @@ -188,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 = <27>` set in both `config/nice_nano_v2.overlay` and `corne.keymap` (the [ZMK fork](https://github.com/afiqzudinhadi/zmk/tree/rgb-modular-v1.1)'s shield overlay defaults to 10, so keymap override is required). +54 WS2812 LEDs total — 6 underglow + 21 per-key per half. `chain-length = <27>` set in both `config/nice_nano_v2.overlay` and `corne.keymap` (the [ZMK fork](https://github.com/afiqzudinhadi/zmk/tree/rgb-layer)'s shield overlay defaults to 10, so keymap override is required). ### LED Chain Order (Foostan Corne v1.1) @@ -211,13 +211,13 @@ RGB settings are in `config/corne.conf`: | Setting | Value | Description | |---------|-------|-------------| | `CONFIG_ZMK_RGB_UNDERGLOW` | `y` | Enable RGB | -| `CONFIG_ZMK_RGB_UNDERGLOW_ON_START` | `n` | Off at boot (toggle on via HUB layer) | +| `CONFIG_ZMK_RGB_UNDERGLOW_ON_START` | `y` | On at boot | | `CONFIG_WS2812_STRIP` | `y` | WS2812 LED driver | | `CONFIG_ZMK_RGB_UNDERGLOW_EFF_START` | `4` | Default effect (see effects table) | | `CONFIG_ZMK_RGB_UNDERGLOW_BRT_STEP` | `1` | Brightness step (%) | | `CONFIG_ZMK_RGB_UNDERGLOW_AUTO_OFF_IDLE` | `n` | Stay on when idle | | `CONFIG_ZMK_RGB_UNDERGLOW_EXT_POWER` | `n` | Don't toggle external power with RGB | -| `CONFIG_ZMK_RGB_EFFECT_LAYER` | `y` | Enable per-key layer indicators ([zmk-rgb-effects](https://github.com/afiqzudinhadi/zmk-rgb-effects) module) | +| `CONFIG_EXPERIMENTAL_RGB_LAYER` | `y` | Enable per-key layer indicators | Optional tuning (commented out in config): - `HUE_STEP` / `SAT_STEP` — hue and saturation adjustment step @@ -237,7 +237,7 @@ Cycle at runtime with `RGB_EFF` (next) / `RGB_EFR` (previous). ### Per-Key Layer Indicators (Effect #4) -Provided by the [zmk-rgb-effects](https://github.com/afiqzudinhadi/zmk-rgb-effects) module, using the modular effect API in the [ZMK fork](https://github.com/afiqzudinhadi/zmk/tree/rgb-modular-v1.1). Based on [darknao's per-key RGB patches](https://github.com/darknao/zmk), refactored into a standalone ZMK module. +Uses [darknao's per-key RGB patches](https://github.com/darknao/zmk) cherry-picked onto ZMK v0.3.0 at [afiqzudinhadi/zmk@rgb-layer](https://github.com/afiqzudinhadi/zmk/tree/rgb-layer). Shows different per-key colors based on active keymap layer. Colors are defined as hex RGB values in `corne.keymap` under the `underglow-layer` node. @@ -257,8 +257,7 @@ Custom colors: `#define CYAN 0x00ffff` then `&ug CYAN` **Notes:** - Underglow LEDs turn off on effect #4 (mapped to `255` in pixel-lookup). To give them layer colors, map to key positions instead of `255`. - Brightness/hue/saturation controls don't affect layer indicator colors ([#1](https://github.com/afiqzudinhadi/zmk/issues/1), [#4](https://github.com/afiqzudinhadi/zmk/issues/4)). -- **Right half** uses the same pixel-lookup as left half — colors are mirrored, not independently mapped. Looks correct on symmetric layers (CARP/QWRT) but shows wrong colors on asymmetric layers (HUB). Per-half pixel-lookup not yet implemented. -- Custom RGB effects can be added as ZMK modules using `ZMK_RGB_EFFECT_DEFINE` — see [zmk-rgb-effects README](https://github.com/afiqzudinhadi/zmk-rgb-effects#adding-custom-effects). +- Custom RGB effects can be added in the [ZMK fork](https://github.com/afiqzudinhadi/zmk/tree/rgb-layer) (`app/src/rgb_underglow.c`). ### Keycodes @@ -277,12 +276,9 @@ Docs: [zmk.dev/docs/keymaps/behaviors/underglow](https://zmk.dev/docs/keymaps/be ### Runtime Controls (HUB Layer) -Access: hold NAVI key (pos 12) → press HUB (pos 0), or from FPS layer (pos 11). - | Key | Action | |-----|--------| -| `TOG` | RGB on/off toggle | -| `EFF` / `EFR` | Next/previous effect | +| `[RGB]` | Tap-dance: 1×=toggle, 2×=effect fwd, 3×=effect rev | | `[CLR]` | Tap-dance color presets: purple → white → red → blue → green | | `HUE+` / `HUE-` | Adjust hue | | `SAT+` / `SAT-` | Adjust saturation | diff --git a/build.yaml b/build.yaml index ff9965c..dde032f 100644 --- a/build.yaml +++ b/build.yaml @@ -4,11 +4,12 @@ include: ### CORNE START ### - board: nice_nano_v2 shield: corne_left nice_oled - cmake-args: -DCONFIG_NICE_OLED_WIDGET_WPM_BONGO_CAT=n + snippet: studio-rpc-usb-uart zmk-usb-logging + cmake-args: -DCONFIG_ZMK_USB_LOGGING=y -DCONFIG_LOG_PROCESS_THREAD_STARTUP_DELAY_MS=8000 artifact-name: nice_corne_left_oled_rgb - board: nice_nano_v2 shield: corne_right nice_oled - cmake-args: -DCONFIG_NICE_OLED_WIDGET_WPM_BONGO_CAT=n -DCONFIG_NICE_OLED_WIDGET_ANIMATION_PERIPHERAL_CAT=n -DCONFIG_NICE_OLED_WIDGET_ANIMATION_PERIPHERAL_SPACEMAN=y + cmake-args: -DCONFIG_NICE_OLED_WIDGET_ANIMATION_PERIPHERAL_CAT=n -DCONFIG_NICE_OLED_WIDGET_ANIMATION_PERIPHERAL_KM=y artifact-name: nice_corne_right_oled_rgb ### CORNE END ### diff --git a/config/config_keymap-drawer.yaml b/config/config_keymap-drawer.yaml index 68e738f..a3b562f 100644 --- a/config/config_keymap-drawer.yaml +++ b/config/config_keymap-drawer.yaml @@ -143,17 +143,6 @@ parse_config: '&out OUT_USB': Out USB '&out OUT_BLE': Out BLE - '&out OUT_TOG': Out Tog - - '&td_esc_grave': {t: '`', s: Esc, type: tap_dance} - '&kp C_MUTE': Mute - '&kp C_PP': ⏯ - '&kp C_PREV': ⏮ - '&kp C_NEXT': ⏭ - '&kp C_BRI_UP': Scrn+ - '&kp C_BRI_DN': Scrn- - '&kp C_VOL_UP': Vol+ - '&kp C_VOL_DN': Vol- '&bt BT_SEL 0': BT 1 '&bt BT_SEL 1': BT 2 @@ -328,6 +317,10 @@ parse_config: combo_rpar: {draw_separate: true} combo_lbkt: {draw_separate: true} combo_rbkt: {draw_separate: true} + combo_tab: {draw_separate: true} + combo_del: {draw_separate: true} + combo_esc: {draw_separate: true} + combo_ret: {draw_separate: true} combo_lock: {draw_separate: true} combo_bslh: {draw_separate: true} combo_slsh: {draw_separate: true} diff --git a/config/corne.conf b/config/corne.conf index 97f139d..756099e 100644 --- a/config/corne.conf +++ b/config/corne.conf @@ -33,7 +33,7 @@ CONFIG_ZMK_BLE_EXPERIMENTAL_SEC=n CONFIG_ZMK_BLE_EXPERIMENTAL_FEATURES=n ### Keyboard name -CONFIG_ZMK_KEYBOARD_NAME="Afiq Zudin Hadi Corne 42 MX" +CONFIG_ZMK_KEYBOARD_NAME="Afiq Zudin Corne42" CONFIG_BT_DEVICE_NAME_MAX=28 ### Boost Bluetooth TX power, also make Bluetooth stronger @@ -72,7 +72,7 @@ CONFIG_ZMK_EXT_POWER=y ### RGB UNDERGLOW CONFIG_ZMK_RGB_UNDERGLOW=y -CONFIG_ZMK_RGB_UNDERGLOW_ON_START=n +CONFIG_ZMK_RGB_UNDERGLOW_ON_START=y CONFIG_WS2812_STRIP=y # 0=Solid 1=Breathe 2=Spectrum 3=Swirl CONFIG_ZMK_RGB_UNDERGLOW_EFF_START=4 @@ -80,8 +80,8 @@ CONFIG_ZMK_RGB_UNDERGLOW_BRT_STEP=1 CONFIG_ZMK_RGB_UNDERGLOW_AUTO_OFF_IDLE=n CONFIG_ZMK_RGB_UNDERGLOW_EXT_POWER=n -### PER-KEY RGB LAYER (zmk-rgb-effects module) -CONFIG_ZMK_RGB_EFFECT_LAYER=y +### PER-KEY RGB LAYER (darknao fork) +CONFIG_EXPERIMENTAL_RGB_LAYER=y CONFIG_ZMK_HID_INDICATORS=y CONFIG_ZMK_SPLIT_PERIPHERAL_HID_INDICATORS=y # CONFIG_ZMK_RGB_UNDERGLOW_HUE_STEP=30 @@ -98,8 +98,13 @@ CONFIG_ZMK_DISPLAY_STATUS_SCREEN_CUSTOM=y # CONFIG_ZMK_DISPLAY_STATUS_SCREEN_BUILT_IN=y ### WIDGET SETTINGS -CONFIG_NICE_OLED_WIDGET_WPM=y -CONFIG_NICE_OLED_WIDGET_WPM_LUNA=y +# No Widget configurations added since nice!view has its own custom widgets +# activar solo estos dos widgets +# CONFIG_ZMK_WIDGET_WPM_STATUS=n +# CONFIG_ZMK_WIDGET_BATTERY_STATUS_SHOW_PERCENTAGE=y +# CONFIG_ZMK_WIDGET_LAYER_STATUS=y +# CONFIG_ZMK_WIDGET_BATTERY_STATUS=y +# CONFIG_ZMK_WIDGET_OUTPUT_STATUS=y ### HID para nice!view ePaperDisplay # Enable eager debouncing diff --git a/config/corne.keymap b/config/corne.keymap index 4844759..8da5a66 100644 --- a/config/corne.keymap +++ b/config/corne.keymap @@ -27,12 +27,6 @@ tapping-term-ms = <200>; bindings = <&kp>, <&kp>; }; - td_esc_grave: td_esc_grave { - compatible = "zmk,behavior-tap-dance"; - #binding-cells = <0>; - tapping-term-ms = <200>; - bindings = <&kp GRAVE>, <&kp ESC>; - }; td_rgb: td_rgb { compatible = "zmk,behavior-tap-dance"; #binding-cells = <0>; @@ -64,6 +58,14 @@ combo_8 { key-positions = <8 20>; bindings = <&kp N8>; layers = <0 1>; }; combo_9 { key-positions = <9 21>; bindings = <&kp N9>; layers = <0 1>; }; combo_0 { key-positions = <10 22>; bindings = <&kp N0>; layers = <0 1>; }; + // I+O (QWRT) / U+B (CARP) = BSPC + combo_bspc { key-positions = <8 9>; bindings = <&kp BSPC>; layers = <0 1>; }; + // K+L (QWRT) / E+O (CARP) = ENTER + combo_enter { key-positions = <20 21>; bindings = <&kp RET>; layers = <0 1>; }; + // W+E (QWRT) / G+M (CARP) = ESC + combo_esc { key-positions = <2 3>; bindings = <&kp ESC>; layers = <0 1>; }; + // S+D (QWRT) / S+T (CARP) = TAB + combo_tab { key-positions = <14 15>; bindings = <&kp TAB>; layers = <0 1>; }; }; /* @@ -155,31 +157,17 @@ >; }; - navi_rgb { + hub_rgb { layer-id = <4>; bindings = < - &ug PURPLE &ug YELLOW &ug YELLOW &ug YELLOW &ug YELLOW &ug YELLOW - &ug BLUE &ug BLUE &ug BLUE &ug BLUE &ug BLUE &ug BLUE - &ug ___ &ug YELLOW &ug YELLOW &ug YELLOW &ug YELLOW &ug YELLOW - &ug BLUE &ug BLUE &ug BLUE &ug BLUE &ug BLUE &ug BLUE - &ug WHITE &ug ___ &ug ___ &ug ___ &ug ___ &ug ___ - &ug ___ &ug ___ &ug ___ &ug ___ &ug ___ &ug WHITE - &ug WHITE &ug WHITE &ug WHITE - &ug WHITE &ug WHITE &ug WHITE - >; - }; - - hub_rgb { - layer-id = <5>; - bindings = < - &ug GREEN &ug GREEN &ug GREEN &ug GREEN &ug ___ &ug ORANGE - &ug PURPLE &ug PURPLE &ug PURPLE &ug PURPLE &ug PURPLE &ug RED - &ug ___ &ug ___ &ug ___ &ug ___ &ug TEAL &ug TEAL - &ug PURPLE &ug PURPLE &ug PURPLE &ug ORANGE &ug ___ &ug WHITE - &ug ___ &ug ___ &ug ___ &ug ___ &ug TEAL &ug TEAL - &ug PURPLE &ug PURPLE &ug PURPLE &ug ___ &ug ___ &ug ___ - &ug ORANGE &ug ORANGE &ug ORANGE - &ug BLUE &ug BLUE &ug BLUE + &ug RED &ug PURPLE &ug PURPLE &ug PURPLE &ug PURPLE &ug PURPLE + &ug BLUE &ug YELLOW &ug YELLOW &ug YELLOW &ug BLUE &ug BLUE + &ug ORANGE &ug ORANGE &ug ORANGE &ug ORANGE &ug TEAL &ug TEAL + &ug BLUE &ug YELLOW &ug YELLOW &ug YELLOW &ug BLUE &ug BLUE + &ug WHITE &ug ORANGE &ug ORANGE &ug ORANGE &ug TEAL &ug TEAL + &ug GREEN &ug GREEN &ug GREEN &ug GREEN &ug GOLD &ug WHITE + &ug PURPLE &ug WHITE &ug WHITE + &ug WHITE &ug WHITE &ug PURPLE >; fade-delay = <15>; }; @@ -191,27 +179,27 @@ carpalx_layer { display-name = "CARP"; bindings = < -&td_esc_grave &kp Q &kp G &kp M &kp L &kp W &kp Y &kp F &kp U &kp B &kp SEMI &kp TAB +&kp GRAVE &kp Q &kp G &kp M &kp L &kp W &kp Y &kp F &kp U &kp B &kp SEMI &to 4 &mo 4 &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 LCTRL &kp RET &kp LGUI &kp SPACE &kp BSPC &kp RALT + &td_rgb &kp LCTRL &kp LGUI &kp SPACE &kp RALT &ht_mute_pp C_PLAY_PAUSE C_MUTE >; }; qwerty_layer { display-name = "QWRT"; bindings = < -&td_esc_grave &kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P &kp TAB +&kp GRAVE &kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P &to 4 &mo 4 &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 LCTRL &kp RET &kp LGUI &kp SPACE &kp BSPC &kp RALT + &td_rgb &kp LCTRL &kp LGUI &kp SPACE &kp RALT &ht_mute_pp C_PLAY_PAUSE C_MUTE >; }; steno_layer { display-name = "STEN"; bindings = < -&none &none &none &none &none &none &none &none &none &none &none &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 @@ -221,30 +209,20 @@ 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 F &none &none &none &none &none &none &mt LALT M &kp Z &kp X &kp C &kp V &kp G &none &none &none &none &none &none &kp T &kp LCTRL &kp SPACE &none &none &none >; }; - navi_layer { - display-name = "NAVI"; - bindings = < -&to 5 &kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &kp PLUS &kp LBKT &kp UP &kp RBKT &kp ASTRK &kp EQUAL -&none &kp N6 &kp N7 &kp N8 &kp N9 &kp N0 &kp MINUS &kp LEFT &kp DOWN &kp RIGHT &kp FSLH &kp BSLH -&kp LSHFT &none &none &none &none &none &none &none &none &none &none &kp RSHFT - &kp LCTRL &kp RET &kp LGUI &kp SPACE &kp BSPC &kp RALT - >; - }; - hub_layer { display-name = "HUB"; bindings = < -&to 0 &to 1 &to 2 &to 3 &none &kp C_PP &bt BT_SEL 0 &bt BT_SEL 1 &bt BT_SEL 2 &bt BT_SEL 3 &bt BT_SEL 4 &bt BT_CLR -&none &none &none &none &kp C_BRI_UP &kp C_VOL_UP &rgb_ug RGB_HUI &rgb_ug RGB_SAI &rgb_ug RGB_BRD &td_colors &none &out OUT_TOG -&none &none &none &none &kp C_BRI_DN &kp C_VOL_DN &rgb_ug RGB_HUD &rgb_ug RGB_SAD &rgb_ug RGB_BRI &none &none &none - &kp C_PREV &kp C_NEXT &kp C_MUTE &rgb_ug RGB_TOG &rgb_ug RGB_EFR &rgb_ug RGB_EFF +&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 &rgb_ug RGB_HUI &rgb_ug RGB_SAI &rgb_ug RGB_BRI &kp C_BRI_UP &kp C_VOL_UP &kp MINUS &kp LEFT &kp DOWN &kp RIGHT &kp FSLH &kp BSLH +&kp LSHFT &rgb_ug RGB_HUD &rgb_ug RGB_SAD &rgb_ug RGB_BRD &kp C_BRI_DN &kp C_VOL_DN &to 0 &to 1 &to 2 &to 3 &td_colors &kp RSHFT + &td_rgb &kp LCTRL &kp LGUI &kp SPACE &kp RALT &ht_mute_pp C_PLAY_PAUSE C_MUTE >; }; diff --git a/config/west.yml b/config/west.yml index 8fb66e8..6f1aeb3 100644 --- a/config/west.yml +++ b/config/west.yml @@ -5,21 +5,36 @@ manifest: # ZMK fork with per-key RGB layer support (darknao's patches on v0.3.0) - name: afiqzudinhadi-zmk url-base: https://github.com/afiqzudinhadi - # nice_oled widgets (battery, luna, animations) + # dongle_display + - name: englmaxi + url-base: https://github.com/englmaxi + # nice_oled - nice_epaper - dongle_display!view - oled Adapter - name: mctechnology17 url-base: https://github.com/mctechnology17 + # fork of zmk-nice-oled with custom KM medal animation + - name: KeebMaker + url-base: https://github.com/KeebMaker projects: - # Personal fork of ZMK v0.3.0 + modular RGB effect API. + # Personal fork of ZMK v0.3.0 + darknao's per-key RGB layer patches. + # Base is v0.3.0 (not main) — see commit history for patch attribution. - name: zmk remote: afiqzudinhadi-zmk - revision: rgb-modular-v1.1 + revision: rgb-layer import: app/west.yml - # Modular RGB effects module (per-key layer, behaviors, DTS bindings) - - name: zmk-rgb-effects - remote: afiqzudinhadi-zmk - revision: v1.1.1 - # nice_oled widgets (battery, luna, animations) + # dongle_display + - name: zmk-dongle-display + remote: englmaxi + revision: v0.3 + # nice_oled - nice_epaper (fork with custom KM medal animation) - name: zmk-nice-oled + remote: KeebMaker + revision: km-medal-animation + # dongle_display!view + - name: zmk-dongle-display-view + remote: mctechnology17 + revision: main + # oled Adapter + - name: zmk-oled-adapter remote: mctechnology17 revision: main self: diff --git a/keymap-drawer/README.md b/keymap-drawer/README.md index 92a5810..545bbde 100644 --- a/keymap-drawer/README.md +++ b/keymap-drawer/README.md @@ -12,30 +12,35 @@ ## Layer 0: CARP (Carpalx QGMLWY) ``` -`/ESC Q G M L W | Y F U B ; TAB -[NAVI] D S T N R | I A E O H ' +` 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 - CTRL RET GUI | SPC BSPC ALT + [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 | Key | Behavior | |-----|----------| -| `` ` ``/ESC | Tap = grave, hold = ESC | -| `[NAVI]` | Hold opens NAVI layer, release goes back | +| `[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) ``` -`/ESC Q W E R T | Y U I O P TAB -[NAVI] A S D F G | H J K L ; ' +` 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 - CTRL RET GUI | SPC BSPC ALT + [RGB] CTRL GUI | SPC ALT MUTE/PP ``` -Combos: same as CARP (top+home = 1-0) +Combos: same as CARP (top+home = 1-0, W+E = ESC, S+D = TAB, I+O = BSPC, K+L = ENTER) ## Layer 2: STEN (Placeholder) @@ -56,28 +61,14 @@ M/ALT Z X C V G | _ _ _ _ _ _ | `E` | Tap = E, hold = 3 | | `R` | Tap = R, hold = 4 | | `M` | Tap = M, hold = ALT | -| `->HUB` | Press to go to HUB layer | -## Layer 4: NAVI (Numbers, Nav, Symbols) +## Layer 4: HUB (Utility — BT, RGB, Media, Nav) ``` -->HUB 1 2 3 4 5 | + [ UP ] * = - _ 6 7 8 9 0 | - LEFT DOWN RIGHT / \ -LSHFT _ _ _ _ _ | _ _ _ _ _ RSHFT - CTRL RET GUI | SPC BSPC ALT -``` - -| Key | Action | -|-----|--------| -| `->HUB` | Press to go to HUB layer | - -## Layer 5: HUB (Media, BT, RGB, Layer Switch) - -``` -->CARP ->QWRT ->STEN ->FPS _ PP | BT0 BT1 BT2 BT3 BT4 BT_CLR - _ _ _ _ SCRN+ VOL+ | HUE+ SAT+ BRT- [CLR] _ OUT_TOG - _ _ _ _ SCRN- VOL- | HUE- SAT- BRT+ _ _ _ - PREV NEXT MUTE | TOG EFR EFF +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 ``` | Key | Action | @@ -86,9 +77,6 @@ LSHFT _ _ _ _ _ | _ _ _ _ _ RSHFT | `HUE/SAT/BRT` | RGB underglow hue, saturation, brightness | | `SCRN` | Display brightness (C_BRI_UP/DN) | | `VOL` | Volume up/down | -| `PREV/NEXT` | Track previous/next | -| `PP` | Play/pause | -| `MUTE` | Mute toggle | -| `TOG` | RGB on/off | -| `EFF/EFR` | RGB effect next/previous | +| `[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 | diff --git a/keymap-drawer/corne.svg b/keymap-drawer/corne.svg index 5565996..887c9d8 100644 --- a/keymap-drawer/corne.svg +++ b/keymap-drawer/corne.svg @@ -1,4 +1,4 @@ - + /* start glyphs */ @@ -24,18 +24,9 @@ - - - - - - - - - CARP: - - -` -Esc + + +` @@ -353,12 +343,14 @@ rect.held, rect.combo.held { - + +HUB +toggle - -NAVI + +HUB @@ -454,11 +446,11 @@ rect.held, rect.combo.held { - +&td_rgb - + @@ -470,11 +462,12 @@ rect.held, rect.combo.held { - + - +MUTE +PLAY PAUSE @@ -516,15 +509,22 @@ rect.held, rect.combo.held { 0 + + + + + + + + QWRT: - - -` -Esc + + +` @@ -568,12 +568,14 @@ rect.held, rect.combo.held { - + +HUB +toggle - -NAVI + +HUB @@ -669,11 +671,11 @@ rect.held, rect.combo.held { - +&td_rgb - + @@ -685,11 +687,12 @@ rect.held, rect.combo.held { - + - +MUTE +PLAY PAUSE @@ -731,6 +734,14 @@ rect.held, rect.combo.held { 0 + + + + + + + + @@ -771,11 +782,14 @@ rect.held, rect.combo.held { + +HUB +toggle - -NAVI + +HUB @@ -1030,34 +1044,44 @@ rect.held, rect.combo.held { - -NAVI: + +HUB: - -HUB -toggle + +BTCLR + -1 + +BT1 + -2 + +BT2 + -3 + +BT3 + -4 + +BT4 + -5 + +BT5 + @@ -1085,26 +1109,36 @@ rect.held, rect.combo.held { + +OUTTOG + - - -6 + + + + - - -7 + + + + - - -8 + + + + -9 + +BRIUP + -0 + +VolUp + @@ -1134,35 +1168,60 @@ rect.held, rect.combo.held { - - + + + + - - + + + + - - + + + + + +BRIDN + + +VolDown + + +CARP +toggle + +QWRT +toggle + +STEN +toggle + +FPS +toggle +&td_colors @@ -1170,11 +1229,11 @@ rect.held, rect.combo.held { - +&td_rgb - + @@ -1186,204 +1245,282 @@ rect.held, rect.combo.held { - + - +MUTE +PLAY PAUSE - -HUB: +Combos: + - - - -CARP -toggle + + +Esc - - - -QWRT -toggle + + - - - -STEN -toggle + + - - - -FPS -toggle + + - - + + - - - + + - - - -BT1 - + + - - - -BT2 - + + - - - -BT3 - + + - - - -BT4 - + + - - - -BT5 - + + - - - -BTCLR - + + - - + + - - + + - - + + - - + + - - -Scrn+ + + - - -Vol+ + + - - - - + + - - - - + + - - - - + + - - -&td_colors + + - - + + - - - -OutTog - + + - - + + - - + + - - + + - - + + - - -Scrn- + + - - -Vol- + + - - - - + + - - - - + + - - - - + + - - + + - - + + - - + + - - - + + - - - + + - - -Mute + + - - - - - + + - - - - + + - - - - + + + + + -Keymap View: keymap-drawer + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Keymap View: keymap-drawer diff --git a/keymap-drawer/corne.yaml b/keymap-drawer/corne.yaml index adc7932..9dffbde 100644 --- a/keymap-drawer/corne.yaml +++ b/keymap-drawer/corne.yaml @@ -1,7 +1,7 @@ layout: {zmk_keyboard: corne} layers: CARP: - - {t: '`', s: Esc, type: tap_dance} + - '`' - Q - G - M @@ -12,8 +12,8 @@ layers: - U - B - ; - - ↹ - - NAVI + - {t: HUB, h: toggle} + - HUB - D - S - T @@ -37,14 +37,14 @@ layers: - . - / - $$mdi:apple-keyboard-shift$$ + - '&td_rgb' - $$mdi:apple-keyboard-control$$ - - ⏎ - $$mdi:apple-keyboard-command$$ - ␣ - - $$mdi:backspace-outline$$ - $$mdi:apple-keyboard-option$$ + - {t: MUTE, h: PLAY PAUSE} QWRT: - - {t: '`', s: Esc, type: tap_dance} + - '`' - Q - W - E @@ -55,8 +55,8 @@ layers: - I - O - P - - ↹ - - NAVI + - {t: HUB, h: toggle} + - HUB - A - S - D @@ -80,14 +80,55 @@ layers: - . - / - $$mdi:apple-keyboard-shift$$ + - '&td_rgb' - $$mdi:apple-keyboard-control$$ - - ⏎ - $$mdi:apple-keyboard-command$$ - ␣ - - $$mdi:backspace-outline$$ - $$mdi:apple-keyboard-option$$ - STEN: ['', '', '', '', '', '', '', '', '', '', '', '', NAVI, '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', - '', '', '', ''] + - {t: MUTE, h: PLAY PAUSE} + STEN: + - '' + - '' + - '' + - '' + - '' + - '' + - '' + - '' + - '' + - '' + - '' + - {t: HUB, h: toggle} + - HUB + - '' + - '' + - '' + - '' + - '' + - '' + - '' + - '' + - '' + - '' + - '' + - '' + - '' + - '' + - '' + - '' + - '' + - '' + - '' + - '' + - '' + - '' + - '' + - '' + - '' + - '' + - '' + - '' + - '' FPS: - {t: '1', h: Esc} - '2' @@ -131,25 +172,25 @@ layers: - '' - '' - '' - NAVI: - - {t: HUB, h: toggle} - - '1' - - '2' - - '3' - - '4' - - '5' + HUB: + - BT CLR + - BT 1 + - BT 2 + - BT 3 + - BT 4 + - BT 5 - + - '[' - ↑ - ']' - '*' - '=' - - {type: held} - - '6' - - '7' - - '8' - - '9' - - '0' + - {t: OUT TOG, type: held} + - {t: '$$mdi:led-on$$', s: '$$mdi:palette$$', type: sym_by_sym} + - {t: '$$mdi:led-outline$$', s: '$$mdi:eyedropper$$', type: sym_by_sym} + - {t: '$$mdi:led-outline$$', s: '$$tabler:brightness-down$$', type: sym_by_sym} + - BRI UP + - Vol Up - '-' - ← - ↓ @@ -157,66 +198,23 @@ layers: - / - \ - $$mdi:apple-keyboard-shift$$ - - '' - - '' - - '' - - '' - - '' - - '' - - '' - - '' - - '' - - '' - - $$mdi:apple-keyboard-shift$$ - - $$mdi:apple-keyboard-control$$ - - ⏎ - - $$mdi:apple-keyboard-command$$ - - ␣ - - $$mdi:backspace-outline$$ - - $$mdi:apple-keyboard-option$$ - HUB: + - {t: '$$mdi:led-outline$$', s: '$$mdi:palette$$', type: sym_by_sym} + - {t: '$$mdi:led-on$$', s: '$$mdi:eyedropper$$', type: sym_by_sym} + - {t: '$$mdi:led-on$$', s: '$$tabler:brightness-up$$', type: sym_by_sym} + - BRI DN + - Vol Down - {t: CARP, h: toggle} - {t: QWRT, h: toggle} - {t: STEN, h: toggle} - {t: FPS, h: toggle} - - '' - - ⏯ - - BT 1 - - BT 2 - - BT 3 - - BT 4 - - BT 5 - - BT CLR - - '' - - '' - - '' - - '' - - Scrn+ - - Vol+ - - {t: '$$mdi:led-on$$', s: '$$mdi:palette$$', type: sym_by_sym} - - {t: '$$mdi:led-outline$$', s: '$$mdi:eyedropper$$', type: sym_by_sym} - - {t: '$$mdi:led-on$$', s: '$$tabler:brightness-up$$', type: sym_by_sym} - '&td_colors' - - '' - - Out Tog - - '' - - '' - - '' - - '' - - Scrn- - - Vol- - - {t: '$$mdi:led-outline$$', s: '$$mdi:palette$$', type: sym_by_sym} - - {t: '$$mdi:led-on$$', s: '$$mdi:eyedropper$$', type: sym_by_sym} - - {t: '$$mdi:led-outline$$', s: '$$tabler:brightness-down$$', type: sym_by_sym} - - '' - - '' - - '' - - ⏮ - - ⏭ - - Mute - - {t: '$$mdi:led-on$$', h: '$$mdi:toggle-switch$$', s: '$$mdi:led-outline$$', type: toggle} - - {t: '$$mdi:led-on$$', h: '$$mdi:page-next-outline$$', type: tap_dance} - - {t: '$$mdi:led-on$$', h: '$$mdi:page-previous-outline$$', type: tap_dance} + - $$mdi:apple-keyboard-shift$$ + - '&td_rgb' + - $$mdi:apple-keyboard-control$$ + - $$mdi:apple-keyboard-command$$ + - ␣ + - $$mdi:apple-keyboard-option$$ + - {t: MUTE, h: PLAY PAUSE} combos: - p: [1, 13] k: '1' @@ -248,3 +246,17 @@ combos: - p: [10, 22] k: '0' l: [CARP, QWRT] +- p: [8, 9] + k: $$mdi:backspace-outline$$ + l: [CARP, QWRT] +- p: [20, 21] + k: ⏎ + l: [CARP, QWRT] +- p: [2, 3] + k: Esc + l: [CARP, QWRT] + draw_separate: true +- p: [14, 15] + k: ↹ + l: [CARP, QWRT] + draw_separate: true