diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index d74fb89..18f82cd 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -1,5 +1,6 @@ +name: Build ZMK firmware on: [push, pull_request, workflow_dispatch] jobs: build: - uses: zmkfirmware/zmk/.github/workflows/build-user-config.yml@main + uses: zmkfirmware/zmk/.github/workflows/build-user-config.yml@v0.3 diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..e43b0f9 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.DS_Store diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml new file mode 100644 index 0000000..e0666ea --- /dev/null +++ b/.pre-commit-config.yaml @@ -0,0 +1,28 @@ +fail_fast: false +repos: + - repo: https://github.com/Lucas-C/pre-commit-hooks + rev: v1.5.1 + hooks: + - id: remove-tabs + exclude: "vendor-prefixes\\.txt$" + - repo: https://github.com/pocc/pre-commit-hooks + rev: v1.3.5 + hooks: + - id: clang-format + args: + - -i + - repo: https://github.com/pre-commit/mirrors-prettier + rev: v2.7.1 + hooks: + - id: prettier + # Workaround for https://github.com/pre-commit/mirrors-prettier/issues/29 + additional_dependencies: + - prettier@2.8.7 + - repo: https://github.com/pre-commit/pre-commit-hooks + rev: v4.4.0 + hooks: + - id: trailing-whitespace + - id: check-yaml + - id: check-added-large-files + - id: check-shebang-scripts-are-executable + exclude: "\\.mustache$" diff --git a/config/constants.h b/config/constants.h new file mode 100644 index 0000000..3a2be85 --- /dev/null +++ b/config/constants.h @@ -0,0 +1,18 @@ +#pragma once + +// Keys +#define ___ &trans +#define XXX &none + +#define DEF 0 +#define NUM 1 +#define CHARS 2 +#define NAVI 3 +#define ADJS 4 +#define FUNC 5 +#define WIN 6 + +// OS +#define WINDOWS 0 +#define LINUX 1 +#define MAC_OS 2 diff --git a/config/corne.conf b/config/corne.conf index 7fb4dc2..f89c6cd 100644 --- a/config/corne.conf +++ b/config/corne.conf @@ -21,3 +21,4 @@ CONFIG_ZMK_IDLE_SLEEP_TIMEOUT=1800000 CONFIG_ZMK_KSCAN_DEBOUNCE_PRESS_MS=5 CONFIG_ZMK_KSCAN_DEBOUNCE_RELEASE_MS=5 CONFIG_BT_PERIPHERAL_PREF_MAX_INT=6 +CONFIG_BT_CTLR_TX_PWR_PLUS_8=y diff --git a/config/corne.keymap b/config/corne.keymap index adddf53..312ca90 100644 --- a/config/corne.keymap +++ b/config/corne.keymap @@ -7,185 +7,200 @@ #include #include #include +#include +#include - -#define DEFAULT 0 -#define LOWER 1 -#define RAISE 2 +#define DEF 0 +#define NUM 1 +#define CHARS 2 #define NAVI 3 #define ADJS 4 #define FUNC 5 #define WIN 6 +#define GAM 7 + +#define LINUX 1 + +// Override key groups from 42.h to exclude outer columns (for HRM trigger positions) +#undef KEYS_L +#undef KEYS_R +#undef THUMBS +#define KEYS_L LT0 LT1 LT2 LT3 LT4 LM0 LM1 LM2 LM3 LM4 LB0 LB1 LB2 LB3 LB4 // left-hand keys +#define KEYS_R RT0 RT1 RT2 RT3 RT4 RM0 RM1 RM2 RM3 RM4 RB0 RB1 RB2 RB3 RB4 // right-hand keys +#define THUMBS LH2 LH1 LH0 RH0 RH1 RH2 // thumb keys + +#define ___ &trans + +#define HOST_OS LINUX // Needed for unicode international_chars + +ZMK_BEHAVIOR(hml, hold_tap, // left-hand HRMs + flavor = "tap-preferred"; + tapping-term-ms = <100>; + quick-tap-ms = <70>; + bindings = <&kp>, <&kp>; + hold-trigger-key-positions = ; +) + +ZMK_BEHAVIOR(hmr, hold_tap, // right-hand HRMs + flavor = "tap-preferred"; + tapping-term-ms = <100>; + quick-tap-ms = <70>; + bindings = <&kp>, <&kp>; + hold-trigger-key-positions = ; +) + + +// combos +#undef COMBO_TERM +#define COMBO_TERM 40 // timeout of 40ms (default is 30ms if omitted) +ZMK_COMBO(combo_copy, &kp LC(C), LB2 LB3, DEF NUM CHARS NAVI ADJS FUNC WIN) // Ctrl + C, active on all layers except gaming +ZMK_COMBO(combo_paste, &kp LC(V), LB1 LB2, DEF NUM CHARS NAVI ADJS FUNC WIN) // Ctrl + V, active on all layers except gaming +ZMK_COMBO(toggle_game, &tog GAM, RT1 RT4, DEF GAM) // toggle gaming layer on/off + + + +ZMK_LAYER(Main, + // DEFAULT LAYER + // .--------------------------------------------------------------. .-----------------------------------------------------------. + // | ESC | Q | W | E/NAV | R/WIN | T | | Y | U | I | O | P | BKSP | + &kp ESC &kp Q &kp W < 3 E < 6 R &kp T &kp Y &kp U &kp I &kp O &kp P &kp DEL + // |--------------+---------+--------+--------+---------+---------| |-------+---------+---------+---------+----------+----------| + // | CTRL/Tab | A | S | D | F | G | | H | J | K | L | Ö | Ä | + &mt LCTRL TAB &kp A &hmr LALT S &hmr LSHIFT D &hmr LCTRL F &kp G &kp H &hml RCTRL J &hml RSHIFT K &hml RALT L &kp SEMI &kp LBKT + // |--------------+---------+--------+--------+---------+---------| |-------+---------+---------+---------+----------+----------| + // | SHFT | Z | X | C | V | B/FUNC | | N | M | . | , | Å | NAV | + &kp LSHIFT &kp Z &kp X &kp C &kp V < 5 B &kp N &kp M &kp DOT &kp COMMA ___ &kp SQT + // '---------------------------------+--------+---------+---------+ |-------+---------+---------+-------------------------------' + // | GUI | RSE | SPC | | ENT | LWR | LALT | + &kp LGUI &mo 1 &kp SPACE &mt 4 RET &mo 2 &kp BSPC + // '--------+---------+---------' '-------+---------+---------' + +) + + + +ZMK_LAYER(Numbers, + // NUMBERS Layer: Media and Number Pad + // .--------------------------------------------------------------. .-----------------------------------------------------------. + // | ESC | | | | | Numlock | | / ? | 7 & | 8 * | 9 ( | - _ | BKSP | + &kp ESC ___ ___ ___ ___ &kp KP_NUMLOCK &kp FSLH &kp NUMBER_7 &kp NUMBER_8 &kp NUMBER_9 &kp MINUS &kp BSPC + // |--------------+---------+--------+--------+---------+---------| |-------+---------+---------+---------+----------+----------| + // | CTRL/Tab | | | | | | | * | 4 $ | 5 % | 6 ^ | , < | | + &mt LCTRL TAB ___ ___ ___ ___ ___ &kp STAR &kp NUMBER_4 &kp NUMBER_5 &kp NUMBER_6 &kp COMMA ___ + // |--------------+---------+--------+--------+---------+---------| |-------+---------+---------+---------+----------+----------| + // | SHIFT | | | | | | | | 1 ! | 2 @ | 3 # | = + | | + &kp LSHIFT ___ ___ ___ ___ ___ ___ &kp NUMBER_1 &kp NUMBER_2 &kp NUMBER_3 &kp EQUAL ___ + // '---------------------------------+--------+---------+---------+ |-------+---------+---------+-------------------------------' + // | | | | | | | 0 ) | + ___ ___ &kp TAB ___ &mo 4 &kp NUMBER_0 + // '--------+---------+---------' '-------+---------+---------' +) + + +ZMK_LAYER(Symbols, + // RAISE Layer: Special Chars + // .--------------------------------------------------------------. .-----------------------------------------------------------. + // | & | * | @ | { | } | | | | + | - | | | | DEL | + &kp AMPERSAND &kp ASTERISK &kp AT &kp LEFT_BRACE &kp RIGHT_BRACE &kp PIPE &kp PLUS &kp MINUS ___ ___ &kp EQUAL &kp DELETE + // |--------------+---------+--------+--------+---------+---------| |-------+---------+---------+---------+----------+----------| + // | # | | $ | ( | ) | ` | | ! | _ | | / | \ | ' | + &kp HASH ___ &kp DOLLAR &kp LPAR &kp RPAR &kp GRAVE &kp EXCLAMATION &kp UNDERSCORE ___ &kp SLASH &kp BACKSLASH &kp APOSTROPHE + // |--------------+---------+--------+--------+---------+---------| |-------+---------+---------+---------+----------+----------| + // | % | | ^ | [ | ] | ~ | | ? | = | , | < | > | "" | + &kp PERCENT ___ &kp CARET &kp LEFT_BRACKET &kp RIGHT_BRACKET &kp TILDE &kp QUESTION &kp EQUAL &kp COMMA &kp LESS_THAN &kp GREATER_THAN &kp DQT + // '---------------------------------+--------+---------+---------+ |-------+---------+---------+-------------------------------' + // | | | | | | | | + ___ &mo 4 ___ ___ ___ ___ + // '--------+---------+---------' '-------+---------+---------' +) + + +ZMK_LAYER(Navi, + // NAVIGATION Layer: Directions + // .--------------------------------------------------------------. .-----------------------------------------------------------. + // | | | | | | | | | PG DN | UP | PG UP | | PrtScn | + ___ ___ ___ ___ ___ ___ ___ &kp PG_DN &kp UP &kp PG_UP ___ &kp LG(LS(F4)) + // |--------------+---------+--------+--------+---------+---------| |-------+---------+---------+---------+----------+----------| + // | CTRL | | | | | | | | LEFT | DOWN | RIGHT | | CAPS LCK | + &kp LCTRL ___ ___ ___ ___ ___ ___ &kp LEFT &kp DOWN &kp RIGHT ___ &kp CLCK + // |--------------+---------+--------+--------+---------+---------| |-------+---------+---------+---------+----------+----------| + // | SHIFT | | | | | | | | PG HOME | | PG END | | | + &kp LSHIFT ___ ___ ___ ___ ___ ___ &kp HOME ___ &kp END ___ ___ + // '---------------------------------+--------+---------+---------+ |-------+---------+---------+-------------------------------' + // | GUI | | ALT | | | | | + &kp LGUI ___ &kp LALT ___ ___ ___ + // '--------+---------+---------' '-------+---------+---------' +) + + + ZMK_LAYER(Adjust, + // ADJUST Layer: Setting and Configurations + // .------------------------------------------------------------. .-------------------------------------------------------------. + // | | BT 0 | BT 1 | BT 2 | BT 3 | BT 4 | | BT CLR | Rew | | FFwd | Bright Up| Vol Up | + ___ &bt BT_SEL 0 &bt BT_SEL 1 &bt BT_SEL 2 &bt BT_SEL 3 &bt BT_SEL 4 &bt BT_CLR &kp C_RW ___ &kp C_FF &kp C_BRI_UP &kp C_VOL_UP + // |------------+---------+--------+--------+---------+---------| |---------+---------+---------+---------+----------+----------| + // | | | | | | | | | Prev |Play/Paus| Next |Bright Dn | Vol Dn | + ___ ___ ___ ___ ___ ___ ___ &kp C_PREV &kp C_PP &kp C_NEXT &kp C_BRI_DN &kp C_VOL_DN + // |------------+---------+--------+--------+---------+---------| |---------+---------+---------+---------+----------+----------| + // | | | | | | | | | | | | | Mute | + ___ ___ ___ ___ ___ ___ ___ ___ ___ ___ ___ &kp K_MUTE + // '-------------------------------+--------+---------+---------+ |---------+---------+---------+-------------------------------' + // | GUI | | Alt | | | | | + &kp LGUI ___ &kp LALT ___ ___ ___ + // '--------+---------+---------' '---------+---------+---------' +) + + +ZMK_LAYER(Func, + // Function Layer: Functionality + // .--------------------------------------------------------------. .-----------------------------------------------------------. + // | | | | | | | | | F7 | F8 | F9 | F12 | PrtScn | + ___ ___ ___ ___ ___ ___ ___ &kp F7 &kp F8 &kp F9 &kp F12 &kp LG(LS(F4)) + // |--------------+---------+--------+--------+---------+---------| |-------+---------+---------+---------+----------+----------| + // | CTRL | | | | | | | | F6 | F5 | F4 | F11 | CAPS LCK | + &kp LCTRL ___ ___ ___ ___ ___ ___ &kp F6 &kp F5 &kp F4 &kp F11 &kp CLCK + // |--------------+---------+--------+--------+---------+---------| |-------+---------+---------+---------+----------+----------| + // | SHIFT | | | | | | | | F3 | F2 | F1 | | | + &kp LSHIFT ___ ___ ___ ___ ___ ___ &kp F3 &kp F2 &kp F1 ___ ___ + // '---------------------------------+--------+---------+---------+ |-------+---------+---------+-------------------------------' + // | GUI | | ALT | | | | F10 | + &kp LGUI ___ &kp LALT ___ ___ &kp F10 + // '--------+---------+---------' '-------+---------+---------' +) + + + ZMK_LAYER(Tiling, + // Window Layer: Windows + // .--------------------------------------------------------------. .-----------------------------------------------------------. + // | | | | | | | | + | UL | UM | UR | F12 | PrtScn | + ___ ___ ___ ___ ___ ___ &kp RC(RA(MINUS)) &kp RC(RA(U)) &kp RC(RA(UP)) &kp RC(RA(I)) &kp F12 &kp LG(LS(N4)) + // |--------------+---------+--------+--------+---------+---------| |-------+---------+---------+---------+----------+----------| + // | CTRL | | | | | | | | ML | MM | MR | F11 | CAPS LCK | + &kp LCTRL ___ ___ ___ ___ ___ ___ &kp RC(RA(LEFT)) &kp RC(RA(D)) &kp RC(RA(F)) &kp F11 &kp CLCK + // |--------------+---------+--------+--------+---------+---------| |-------+---------+---------+---------+----------+----------| + // | SHIFT | | | | | | | - | BL | ML | MR | | | + &kp LSHIFT ___ ___ ___ ___ ___ &kp RC(RA(FSLH)) &kp RC(RA(J)) &kp RC(RA(DOWN)) &kp RC(RA(K)) ___ ___ + // '---------------------------------+--------+---------+---------+ |-------+---------+---------+-------------------------------' + // | GUI | | ALT | | | | F10 | + &kp LGUI ___ &kp LALT ___ ___ &kp F10 + // '--------+---------+---------' '-------+---------+---------' +) + +ZMK_LAYER(Game, + // DEFAULT LAYER + // .--------------------------------------------------------------. .-----------------------------------------------------------. + // | ESC | Q | W | E/NAV | R/NAV | T | | Y | U | I | O | P | BKSP | + &kp ESC &kp Q &kp W &kp E < 3 R &kp T &kp Y &kp U &kp I &kp O &kp P &kp DEL + // |--------------+---------+--------+--------+---------+---------| |-------+---------+---------+---------+----------+----------| + // | CTRL/Tab | A | S | D | F | G | | H | J | K | L | Ö | Ä | + &mt LCTRL TAB &kp A &kp S &kp D &kp F &kp G &kp H &hml RCTRL J &hml RSHIFT K &hml RALT L &kp SEMI &kp LBKT + // |--------------+---------+--------+--------+---------+---------| |-------+---------+---------+---------+----------+----------| + // | SHFT | Z | X | C | V | B/FUNC | | N | M | . | , | Å | NAV | + &kp LSHIFT &kp Z &kp X &kp C &kp V < 5 B &kp N &kp M &kp DOT &kp COMMA ___ &kp SQT + // '---------------------------------+--------+---------+---------+ |-------+---------+---------+-------------------------------' + // | GUI | RSE | SPC | | ENT | LWR | LALT | + &kp LGUI &mo 1 &kp SPACE &mt 4 RET &mo 2 &kp BSPC + // '--------+---------+---------' '-------+---------+---------' + +) -&mt { - tapping-term-ms = <400>; -}; - -/ { - behaviors { - hm: homerow_mods { - compatible = "zmk,behavior-hold-tap"; - label = "HOMEROW_MODS"; - #binding-cells = <2>; - tapping-term-ms = <400>; - quick-tap-ms = <0>; - flavor = "tap-preferred"; - bindings = - <&kp>, - <&kp>; - }; - }; - - combos { - compatible = "zmk,combos"; - - - }; - - keymap { - compatible = "zmk,keymap"; - - default_layer { - // DEFAULT LAYER - // .--------------------------------------------------------------. .-----------------------------------------------------------. - // | ESC | Q | W | E/NAV | R/WIN | T | | Y | U | I | O | P | BKSP | - // |--------------+---------+--------+--------+---------+---------| |-------+---------+---------+---------+----------+----------| - // | CTRL/Tab | A | S | D | F | G | | H | J | K | L | Ö | Ä | - // |--------------+---------+--------+--------+---------+---------| |-------+---------+---------+---------+----------+----------| - // | SHFT | Z | X | C | V | B/FUNC | | N | M | . | , | Å | NAV | - // '---------------------------------+--------+---------+---------+ |-------+---------+---------+-------------------------------' - // | GUI | RSE | SPC | | ENT | LWR | LALT | - // '--------+---------+---------' '-------+---------+---------' - display-name = "Main"; - bindings = < - &kp ESC &kp Q &kp W < 3 E < 6 R &kp T &kp Y &kp U &kp I &kp O &kp P &kp DEL - &mt LCTRL TAB &kp A &hm LALT S &hm LSHIFT D &hm LCTRL F &kp G &kp H &hm RCTRL J &hm RSHIFT K &hm RALT L &kp SEMI &kp LBKT - &kp LSHIFT &kp Z &kp X &kp C &kp V < 5 B &kp N &kp M &kp DOT &kp COMMA &trans &kp SQT - &kp LGUI &mo 1 &kp SPACE &mt 4 RET &mo 2 &kp BSPC - >; - }; - - lower_layer { - // LOWER Layer: Media and Number Pad - // .--------------------------------------------------------------. .-----------------------------------------------------------. - // | ESC | | | | | Numlock | | / ? | 7 & | 8 * | 9 ( | - _ | BKSP | - // |--------------+---------+--------+--------+---------+---------| |-------+---------+---------+---------+----------+----------| - // | CTRL/Tab | | | | | | | * | 4 $ | 5 % | 6 ^ | , < | | - // |--------------+---------+--------+--------+---------+---------| |-------+---------+---------+---------+----------+----------| - // | SHIFT | | | | | | | | 1 ! | 2 @ | 3 # | = + | | - // '---------------------------------+--------+---------+---------+ |-------+---------+---------+-------------------------------' - // | | | | | | | 0 ) | - // '--------+---------+---------' '-------+---------+---------' - display-name = "Numbers"; - bindings = < - &kp ESC &trans &trans &trans &trans &kp KP_NUMLOCK &kp FSLH &kp NUMBER_7 &kp NUMBER_8 &kp NUMBER_9 &kp MINUS &kp BSPC - &mt LCTRL TAB &trans &trans &trans &trans &trans &kp STAR &kp NUMBER_4 &kp NUMBER_5 &kp NUMBER_6 &kp COMMA &trans - &kp LSHIFT &trans &trans &trans &trans &trans &trans &kp NUMBER_1 &kp NUMBER_2 &kp NUMBER_3 &kp EQUAL &trans - &trans &trans &kp TAB &trans &mo 4 &kp NUMBER_0 - >; - }; - - raise_layer { - // RAISE Layer: Special Chars - // .--------------------------------------------------------------. .-----------------------------------------------------------. - // | & | * | @ | { | } | | | | + | - | | | | DEL | - // |--------------+---------+--------+--------+---------+---------| |-------+---------+---------+---------+----------+----------| - // | # | | $ | ( | ) | ` | | ! | _ | | / | \ | ' | - // |--------------+---------+--------+--------+---------+---------| |-------+---------+---------+---------+----------+----------| - // | % | | ^ | [ | ] | ~ | | ? | = | , | < | > | "" | - // '---------------------------------+--------+---------+---------+ |-------+---------+---------+-------------------------------' - // | | | | | | | | - // '--------+---------+---------' '-------+---------+---------' - display-name = "Chars"; - bindings = < - &kp RS(N6) &kp RS(BSLH) &kp RA(N2) &kp RS(RA(N8)) &kp RS(RA(N9)) &kp RA(N7) &kp MINUS &kp RS(FSLH) &trans &trans &kp RS(N0) &kp DEL - &kp RS(N3) &kp RS(N4) &kp RA(N4) &kp RS(N8) &kp RS(N9) &kp RS(EQUAL) &kp RS(N1) &kp FSLH &trans &kp RS(N7) &kp RS(RA(N7)) &kp BSLH - &kp RS(N5) &trans &kp RS(RBKT) &kp RA(N8) &kp RA(N9) &kp RA(RBKT) &kp RS(MINUS) &kp RS(N0) &kp COMMA &kp GRAVE &kp RS(GRAVE) &kp RS(N2) - &trans &mo 4 &trans &trans &trans &trans - >; - }; - - nav_layer { - // NAVIGATION Layer: Directions - // .--------------------------------------------------------------. .-----------------------------------------------------------. - // | | | | | | | | | PG DN | UP | PG UP | | PrtScn | - // |--------------+---------+--------+--------+---------+---------| |-------+---------+---------+---------+----------+----------| - // | CTRL | | | | | | | | LEFT | DOWN | RIGHT | | CAPS LCK | - // |--------------+---------+--------+--------+---------+---------| |-------+---------+---------+---------+----------+----------| - // | SHIFT | | | | | | | | PG HOME | | PG END | | | - // '---------------------------------+--------+---------+---------+ |-------+---------+---------+-------------------------------' - // | GUI | | ALT | | | | | - // '--------+---------+---------' '-------+---------+---------' - display-name = "Nav"; - bindings = < - &trans &trans &trans &trans &trans &trans &trans &kp PG_DN &kp UP &kp PG_UP &trans &kp LG(LS(F4)) - &kp LCTRL &trans &trans &trans &trans &trans &trans &kp LEFT &kp DOWN &kp RIGHT &trans &kp CLCK - &kp LSHIFT &trans &trans &trans &trans &trans &trans &kp HOME &trans &kp END &trans &trans - &kp LGUI &trans &kp LALT &trans &trans &trans - >; - }; - - adjust_layer { - // ADJUST Layer: Setting and Configurations - // .------------------------------------------------------------. .-------------------------------------------------------------. - // | 0 | BT 0 | BT 1 | BT 2 | BT 3 | BT 4 | | BT CLR | RR | | FF | Bright Up| Vol up | - // |------------+---------+--------+--------+---------+---------| |---------+---------+---------+---------+----------+----------| - // | ExtPow ON | | | | | | | | Prev |Play/Pau.| Next | Bright Dn| Vol dn | - // |------------+---------+--------+--------+---------+---------| |---------+---------+---------+---------+----------+----------| - // | ExtPow OFF | | | | | | | | | | | | Mute | - // '-------------------------------+--------+---------+---------+ |---------+---------+---------+-------------------------------' - // | | | | | | | | - // '--------+---------+---------' '---------+---------+---------' - display-name = "Adjust"; - bindings = < - &trans &bt BT_SEL 0 &bt BT_SEL 1 &bt BT_SEL 2 &bt BT_SEL 3 &bt BT_SEL 4 &bt BT_CLR &kp C_RW &trans &kp C_FF &kp C_BRI_UP &kp C_VOL_UP - &trans &trans &trans &trans &trans &trans &trans &kp C_PREV &kp C_PP &kp C_NEXT &kp C_BRI_DN &kp C_VOL_DN - &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &kp K_MUTE - &kp LALT &trans &trans &trans &trans &trans - >; - }; - - function_layer { - // Function Layer: Functionality - // .--------------------------------------------------------------. .-----------------------------------------------------------. - // | | | | | | | | | F7 | F8 | F9 | F12 | PrtScn | - // |--------------+---------+--------+--------+---------+---------| |-------+---------+---------+---------+----------+----------| - // | CTRL | | | | | | | | F6 | F5 | F4 | F11 | CAPS LCK | - // |--------------+---------+--------+--------+---------+---------| |-------+---------+---------+---------+----------+----------| - // | SHIFT | | | | | | | | F3 | F2 | F1 | | | - // '---------------------------------+--------+---------+---------+ |-------+---------+---------+-------------------------------' - // | GUI | | ALT | | | | F10 | - // '--------+---------+---------' '-------+---------+---------' - display-name = "Function"; - bindings = < - &trans &trans &trans &trans &trans &trans &trans &kp F7 &kp F8 &kp F9 &kp F12 &kp LG(LS(F4)) - &kp LCTRL &trans &trans &trans &trans &trans &trans &kp F6 &kp F5 &kp F4 &kp F11 &kp CLCK - &kp LSHIFT &trans &trans &trans &trans &trans &trans &kp F3 &kp F2 &kp F1 &kp F12 &trans - &kp LGUI &trans &kp LALT &trans &trans &kp F10 - >; - }; - - win_layer { - // Window Layer: Windows - // .--------------------------------------------------------------. .-----------------------------------------------------------. - // | | | | | | | | + | UL | UM | UR | F12 | PrtScn | - // |--------------+---------+--------+--------+---------+---------| |-------+---------+---------+---------+----------+----------| - // | CTRL | | | | | | | | ML | MM | MR | F11 | CAPS LCK | - // |--------------+---------+--------+--------+---------+---------| |-------+---------+---------+---------+----------+----------| - // | SHIFT | | | | | | | - | BL | ML | MR | | | - // '---------------------------------+--------+---------+---------+ |-------+---------+---------+-------------------------------' - // | GUI | | ALT | | | | F10 | - // '--------+---------+---------' '-------+---------+---------' - display-name = "Tile"; - bindings = < - &trans &trans &trans &trans &trans &trans &kp RC(RA(MINUS)) &kp RC(RA(U)) &kp RC(RA(UP)) &kp RC(RA(I)) &trans &kp LG(LS(N4)) - &kp LCTRL &trans &trans &trans &trans &trans &kp RC(RA(LEFT)) &kp RC(RA(D)) &kp RC(RA(F)) &kp RC(RA(G)) &kp RC(RA(RIGHT)) &kp CLCK - &kp LSHIFT &trans &trans &trans &trans &trans &kp RC(RA(FSLH)) &kp RC(RA(J)) &kp RC(RA(DOWN)) &kp RC(RA(K)) &trans &trans - &kp LGUI &trans &kp LALT &trans &trans &trans - >; - }; - - - - }; -}; diff --git a/config/west.yml b/config/west.yml index 379d291..0f8e50e 100644 --- a/config/west.yml +++ b/config/west.yml @@ -2,10 +2,15 @@ manifest: remotes: - name: zmkfirmware url-base: https://github.com/zmkfirmware + - name: urob + url-base: https://github.com/urob projects: - name: zmk remote: zmkfirmware - revision: main + revision: v0.3 import: app/west.yml + - name: zmk-helpers + remote: urob + revision: v0.3 self: path: config