From 45fb14bd4606c0f7c183fb8ca4d7178d2c161b7d Mon Sep 17 00:00:00 2001 From: Jorge Villalobos Date: Sat, 22 Mar 2025 15:37:31 -0400 Subject: [PATCH] feat(Kb Layer): added Kb layer --- img/corneish_zen.svg | 298 ++++++++++++++++++++++++++++++-------- img/corneish_zen.yaml | 77 ++++++---- keymap-drawer/config.yaml | 41 ++++-- knucklehead/Fn.dtsi | 6 +- knucklehead/Kb.dtsi | 28 ++++ knucklehead/base.dtsi | 2 + knucklehead/combos.dtsi | 12 +- 7 files changed, 358 insertions(+), 106 deletions(-) create mode 100644 knucklehead/Kb.dtsi diff --git a/img/corneish_zen.svg b/img/corneish_zen.svg index 81d9768e..18a1c35c 100644 --- a/img/corneish_zen.svg +++ b/img/corneish_zen.svg @@ -1,4 +1,4 @@ - + /* start glyphs */ @@ -54,6 +54,12 @@ + + + + + + @@ -381,6 +387,23 @@ rect.combo { .hold.mdi\:bluetooth { translate: 26px -26px; } +.shifted.mdi\:bluetooth-connect { + translate: -10px 34px; + scale: 1.4; +} +.tap:has(+ .shifted.mdi\:bluetooth-connect) { + translate: 10px 0px; +} +.mdi\:chevron-left:has(+ .shifted.mdi\:bluetooth-connect) { + translate: -10px 0px; +} +.mdi\:chevron-left + .shifted.mdi\:bluetooth-connect { + translate: 6px 36px; +} +.mdi\:chevron-right + .shifted.mdi\:bluetooth-connect { + translate: -6px 69px; + scale: 1.5; +} /* @@ -1056,12 +1079,10 @@ path.combo { Fn - - - - - - + + + + @@ -1087,13 +1108,13 @@ path.combo { - - - + + + - - - + + + @@ -1107,10 +1128,9 @@ path.combo { - - - - + + + @@ -1156,10 +1176,9 @@ path.combo { - - - - + + + @@ -1213,13 +1232,13 @@ path.combo { Fn - - - + + + - - - + + + @@ -1280,50 +1299,209 @@ path.combo { | - - - - - - + + - -1 - + + - -2 - + + - - -3 - - - -4 - - - -5 - + +Kb + + + + + + - - - + + +1 + - - - + + +2 + - - - + + +3 + + + + +4 + + + + +5 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Fn + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Fn + + + + + +Kb + + + + + + + + + + + + + + + + + + + + + + + +Kb + diff --git a/img/corneish_zen.yaml b/img/corneish_zen.yaml index a3dbb5a1..f917580f 100644 --- a/img/corneish_zen.yaml +++ b/img/corneish_zen.yaml @@ -87,19 +87,19 @@ layers: - {t: '$$mdi:transfer$$', type: trans} - {t: '$$mdi:transfer$$', type: trans} Fn: - - {t: '$$mdi:toggle-switch$$', h: '$$mdi:bluetooth$$', s: '$$mdi:usb$$'} + - {t: '$$mdi:transfer$$', type: trans} - F1 - F2 - F3 - F4 - F5 - {t: '$$mdi:transfer$$', type: trans} - - {t: '$$mdi:transfer$$', type: trans} - - {t: '$$mdi:transfer$$', type: trans} + - $$mdi:brightness-7$$ + - $$mdi:brightness-5$$ - {t: '$$mdi:transfer$$', type: trans} - {t: '$$mdi:transfer$$', type: trans} - $$mdi:power-standby$$ - - {t: '$$mdi:backup-restore$$', h: '$$mdi:progress-download$$', type: bootloader} + - {t: '$$mdi:transfer$$', type: trans} - F6 - {t: F7, h: '$$mdi:apple-keyboard-control$$'} - {t: F8, h: '$$mdi:apple-keyboard-option$$'} @@ -110,7 +110,7 @@ layers: - {t: '$$mdi:transfer$$', type: trans} - {t: '$$mdi:transfer$$', type: trans} - {t: '$$mdi:transfer$$', type: trans} - - {t: '$$mdi:backup-restore$$', h: '$$mdi:progress-download$$', type: bootloader} + - {t: '$$mdi:transfer$$', type: trans} - {t: '$$mdi:close-box$$', h: Fn} - F11 - F12 @@ -123,12 +123,55 @@ layers: - {t: '$$mdi:transfer$$', type: trans} - {t: '$$mdi:transfer$$', type: trans} - {t: '$$mdi:close-box$$', h: Fn} - - $$mdi:brightness-7$$ - - $$mdi:brightness-5$$ + - {t: '$$mdi:transfer$$', type: trans} + - {t: '$$mdi:transfer$$', type: trans} - {t: '$$mdi:close-box$$', h: L2} - {t: '$$mdi:close-box$$', h: L2} - $$mdi:apple-keyboard-caps$$ - {t: '$$mdi:transfer$$', type: trans} + Kb: + - {t: '$$mdi:toggle-switch$$', h: '$$mdi:bluetooth$$', s: '$$mdi:usb$$'} + - {t: '1', s: '$$mdi:bluetooth-connect$$'} + - {t: '2', s: '$$mdi:bluetooth-connect$$'} + - {t: '3', s: '$$mdi:bluetooth-connect$$'} + - {t: '4', s: '$$mdi:bluetooth-connect$$'} + - {t: '5', s: '$$mdi:bluetooth-connect$$'} + - {t: '$$mdi:transfer$$', type: trans} + - {t: '$$mdi:transfer$$', type: trans} + - {t: '$$mdi:transfer$$', type: trans} + - {t: '$$mdi:transfer$$', type: trans} + - {t: '$$mdi:transfer$$', type: trans} + - {t: '$$mdi:transfer$$', type: trans} + - {t: '$$mdi:backup-restore$$', h: '$$mdi:progress-download$$', type: bootloader} + - {t: '$$mdi:transfer$$', type: trans} + - {t: '$$mdi:transfer$$', type: trans} + - {t: '$$mdi:transfer$$', type: trans} + - {t: '$$mdi:transfer$$', type: trans} + - {t: '$$mdi:transfer$$', type: trans} + - {t: '$$mdi:transfer$$', type: trans} + - {t: '$$mdi:transfer$$', type: trans} + - {t: '$$mdi:transfer$$', type: trans} + - {t: '$$mdi:transfer$$', type: trans} + - {t: '$$mdi:transfer$$', type: trans} + - {t: '$$mdi:backup-restore$$', h: '$$mdi:progress-download$$', type: bootloader} + - {t: '$$mdi:close-box$$', h: Fn} + - {t: '$$mdi:transfer$$', type: trans} + - $$mdi:bluetooth-off$$ + - {t: '$$mdi:transfer$$', type: trans} + - {t: '$$mdi:transfer$$', type: trans} + - {t: '$$mdi:transfer$$', type: trans} + - {t: '$$mdi:transfer$$', type: trans} + - {t: '$$mdi:transfer$$', type: trans} + - {t: '$$mdi:transfer$$', type: trans} + - {t: '$$mdi:transfer$$', type: trans} + - {t: '$$mdi:transfer$$', type: trans} + - {t: '$$mdi:close-box$$', h: Fn} + - {t: '$$mdi:close-box$$', h: Kb} + - {t: '$$mdi:chevron-left$$', s: '$$mdi:bluetooth-connect$$'} + - {t: '$$mdi:chevron-right$$', s: '$$mdi:bluetooth-connect$$'} + - {t: '$$mdi:transfer$$', type: trans} + - {t: '$$mdi:transfer$$', type: trans} + - {t: '$$mdi:close-box$$', h: Kb} combos: - p: [1, 13] k: '!' @@ -184,26 +227,6 @@ combos: - p: [21, 33] k: {h: \, s: '|'} l: [L1, L2, Fn] -- p: [1, 2, 3, 4] - k: $$mdi:bluetooth-off$$ - l: [Fn] - a: top - o: 0.03 -- p: [1, 13] - k: {h: '1', s: '$$mdi:bluetooth-connect$$'} - l: [Fn] -- p: [2, 14] - k: {h: '2', s: '$$mdi:bluetooth-connect$$'} - l: [Fn] -- p: [3, 15] - k: {h: '3', s: '$$mdi:bluetooth-connect$$'} - l: [Fn] -- p: [4, 16] - k: {h: '4', s: '$$mdi:bluetooth-connect$$'} - l: [Fn] -- p: [5, 17] - k: {h: '5', s: '$$mdi:bluetooth-connect$$'} - l: [Fn] - p: [6, 7] k: $$mdi:play-pause$$ l: [L1, L2, Fn] diff --git a/keymap-drawer/config.yaml b/keymap-drawer/config.yaml index 8cc35531..67fd456f 100644 --- a/keymap-drawer/config.yaml +++ b/keymap-drawer/config.yaml @@ -20,6 +20,9 @@ parse_config: "&cmo Fn": tap: $$mdi:close-box$$ hold: Fn + "&cmo Kb": + tap: $$mdi:close-box$$ + hold: Kb "&cmo L2": tap: $$mdi:close-box$$ hold: L2 @@ -44,24 +47,25 @@ parse_config: # Bluetooth "&bt BT_SEL 0": shifted: $$mdi:bluetooth-connect$$ - tap: "" - hold: 1 + tap: 1 "&bt BT_SEL 1": shifted: $$mdi:bluetooth-connect$$ - tap: "" - hold: 2 + tap: 2 "&bt BT_SEL 2": shifted: $$mdi:bluetooth-connect$$ - tap: "" - hold: 3 + tap: 3 "&bt BT_SEL 3": shifted: $$mdi:bluetooth-connect$$ - tap: "" - hold: 4 + tap: 4 "&bt BT_SEL 4": shifted: $$mdi:bluetooth-connect$$ - tap: "" - hold: 5 + tap: 5 + "&bt BT_PRV": + shifted: $$mdi:bluetooth-connect$$ + tap: $$mdi:chevron-left$$ + "&bt BT_NXT": + shifted: $$mdi:bluetooth-connect$$ + tap: $$mdi:chevron-right$$ "&out OUT_TOG": shifted: $$mdi:usb$$ tap: $$mdi:toggle-switch$$ @@ -628,6 +632,23 @@ draw_config: .hold.mdi\:bluetooth { translate: 26px -26px; } + .shifted.mdi\:bluetooth-connect { + translate: -10px 34px; + scale: 1.4; + } + .tap:has(+ .shifted.mdi\:bluetooth-connect) { + translate: 10px 0px; + } + .mdi\:chevron-left:has(+ .shifted.mdi\:bluetooth-connect) { + translate: -10px 0px; + } + .mdi\:chevron-left + .shifted.mdi\:bluetooth-connect { + translate: 6px 36px; + } + .mdi\:chevron-right + .shifted.mdi\:bluetooth-connect { + translate: -6px 69px; + scale: 1.5; + } /* diff --git a/knucklehead/Fn.dtsi b/knucklehead/Fn.dtsi index ac49e483..3999315f 100644 --- a/knucklehead/Fn.dtsi +++ b/knucklehead/Fn.dtsi @@ -11,16 +11,16 @@ bindings = < // ╭───────────────┬───────────────┬───────────────┬───────────────┬───────────────┬───────────────╮ ╭───────────────┬───────────────┬───────────────┬───────────────┬───────────────┬───────────────╮ // │0 │1 │2 │3 │4 │5 │ │6 │7 │8 │9 │10 │11 │ - &out OUT_TOG &kp F1 &kp F2 &kp F3 &kp F4 &kp F5 &trans &trans &trans &trans &trans &kp C_POWER + &trans &kp F1 &kp F2 &kp F3 &kp F4 &kp F5 &trans &kp C_BRI_DN &kp C_BRI_UP &trans &trans &kp C_POWER // ├───────────────├───────────────┼───────────────┼───────────────┼───────────────┼───────────────┤ ├───────────────├───────────────┼───────────────┼───────────────┼───────────────┼───────────────┤ // │12 │13 │14 │15 │16 │17 │ │18 │19 │20 │21 │22 │23 │ - &rst_boot 0 0 &kp F6 &hrml LCTRL F7 &hrml LALT F8 &hrml LCMD F9 &hrml MEH F10 &trans &trans &trans &trans &trans &rst_boot 0 0 + &trans &kp F6 &hrml LCTRL F7 &hrml LALT F8 &hrml LCMD F9 &hrml MEH F10 &trans &trans &trans &trans &trans &trans // ├───────────────├───────────────┼───────────────┼───────────────┼───────────────┼───────────────┤ ├───────────────├───────────────┼───────────────┼───────────────┼───────────────┼───────────────┤ // │24 │25 │26 │27 │28 │29 │ │30 │31 │32 │33 │34 │35 │ &cmo Fn &kp F11 &kp F12 &kp F13 &kp F14 &kp F15 &trans &trans &trans &trans &trans &cmo Fn // ╰───────────────┴───────────────┴───────────────┼───────────────┼───────────────┼───────────────┤ ├───────────────├───────────────┼───────────────┼───────────────┴───────────────┴───────────────╯ // │36 │37 │38 │ │39 │40 │41 │ - &kp C_BRI_DN &kp C_BRI_UP &cmo L2 &cmo L2 &kp CAPSLOCK &trans + &trans &trans &cmo L2 &cmo L2 &kp CAPSLOCK &trans // ╰───────────────┴───────────────┴───────────────╯ ╰───────────────┴───────────────┴───────────────╯ >; }; diff --git a/knucklehead/Kb.dtsi b/knucklehead/Kb.dtsi new file mode 100644 index 00000000..10c8804d --- /dev/null +++ b/knucklehead/Kb.dtsi @@ -0,0 +1,28 @@ +/** + * Keyboard Settings Layer + */ + +/ { + keymap { + compatible = "zmk,keymap"; + + kb_layer { + display-name = "Kb"; + bindings = < +// ╭───────────────┬───────────────┬───────────────┬───────────────┬───────────────┬───────────────╮ ╭───────────────┬───────────────┬───────────────┬───────────────┬───────────────┬───────────────╮ +// │0 │1 │2 │3 │4 │5 │ │6 │7 │8 │9 │10 │11 │ + &out OUT_TOG &bt BT_SEL 0 &bt BT_SEL 1 &bt BT_SEL 2 &bt BT_SEL 3 &bt BT_SEL 4 &trans &trans &trans &trans &trans &trans +// ├───────────────├───────────────┼───────────────┼───────────────┼───────────────┼───────────────┤ ├───────────────├───────────────┼───────────────┼───────────────┼───────────────┼───────────────┤ +// │12 │13 │14 │15 │16 │17 │ │18 │19 │20 │21 │22 │23 │ + &rst_boot 0 0 &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &rst_boot 0 0 +// ├───────────────├───────────────┼───────────────┼───────────────┼───────────────┼───────────────┤ ├───────────────├───────────────┼───────────────┼───────────────┼───────────────┼───────────────┤ +// │24 │25 │26 │27 │28 │29 │ │30 │31 │32 │33 │34 │35 │ + &cmo Fn &trans &bt BT_CLR &trans &trans &trans &trans &trans &trans &trans &trans &cmo Fn +// ╰───────────────┴───────────────┴───────────────┼───────────────┼───────────────┼───────────────┤ ├───────────────├───────────────┼───────────────┼───────────────┴───────────────┴───────────────╯ +// │36 │37 │38 │ │39 │40 │41 │ + &cmo Kb &bt BT_PRV &bt BT_NXT &trans &trans &cmo Kb +// ╰───────────────┴───────────────┴───────────────╯ ╰───────────────┴───────────────┴───────────────╯ + >; + }; + }; +}; diff --git a/knucklehead/base.dtsi b/knucklehead/base.dtsi index 9f355ec9..14126ecc 100644 --- a/knucklehead/base.dtsi +++ b/knucklehead/base.dtsi @@ -9,6 +9,7 @@ #define L1 0 #define L2 1 #define Fn 2 +#define Kb 3 // Meh key #define MEH LS(LC(LALT)) @@ -40,4 +41,5 @@ // Other layers #include "L2.dtsi" #include "Fn.dtsi" +#include "Kb.dtsi" diff --git a/knucklehead/combos.dtsi b/knucklehead/combos.dtsi index c8ea4353..4113a83b 100644 --- a/knucklehead/combos.dtsi +++ b/knucklehead/combos.dtsi @@ -44,12 +44,12 @@ COMBO(backslash, &kp BACKSLASH, 21 33, L1 L2 Fn, COMBO_TERM_DEFAULT, COMBO_QUICK_TAP_MS) /* Bluetooth */ - COMBO(bt_clear, &bt BT_CLR, 1 2 3 4, Fn, COMBO_TERM_DEFAULT, COMBO_QUICK_TAP_MS) - COMBO(bt_sel_0, &bt BT_SEL 0, 1 13, Fn, COMBO_TERM_DEFAULT, COMBO_QUICK_TAP_MS) - COMBO(bt_sel_1, &bt BT_SEL 1, 2 14, Fn, COMBO_TERM_DEFAULT, COMBO_QUICK_TAP_MS) - COMBO(bt_sel_2, &bt BT_SEL 2, 3 15, Fn, COMBO_TERM_DEFAULT, COMBO_QUICK_TAP_MS) - COMBO(bt_sel_3, &bt BT_SEL 3, 4 16, Fn, COMBO_TERM_DEFAULT, COMBO_QUICK_TAP_MS) - COMBO(bt_sel_4, &bt BT_SEL 4, 5 17, Fn, COMBO_TERM_DEFAULT, COMBO_QUICK_TAP_MS) + // COMBO(bt_clear, &bt BT_CLR, 1 2 3 4, Fn, COMBO_TERM_DEFAULT, COMBO_QUICK_TAP_MS) + // COMBO(bt_sel_0, &bt BT_SEL 0, 1 13, Fn, COMBO_TERM_DEFAULT, COMBO_QUICK_TAP_MS) + // COMBO(bt_sel_1, &bt BT_SEL 1, 2 14, Fn, COMBO_TERM_DEFAULT, COMBO_QUICK_TAP_MS) + // COMBO(bt_sel_2, &bt BT_SEL 2, 3 15, Fn, COMBO_TERM_DEFAULT, COMBO_QUICK_TAP_MS) + // COMBO(bt_sel_3, &bt BT_SEL 3, 4 16, Fn, COMBO_TERM_DEFAULT, COMBO_QUICK_TAP_MS) + // COMBO(bt_sel_4, &bt BT_SEL 4, 5 17, Fn, COMBO_TERM_DEFAULT, COMBO_QUICK_TAP_MS) /* Media */ COMBO(play, &kp C_PP, 6 7, L1 L2 Fn, COMBO_TERM_DEFAULT, COMBO_QUICK_TAP_MS)