123 lines
4.3 KiB
Plaintext
123 lines
4.3 KiB
Plaintext
#include <behaviors.dtsi>
|
|
#include "keys_en_gb.h"
|
|
#include <dt-bindings/zmk/bt.h>
|
|
#include <dt-bindings/zmk/keys.h>
|
|
#include <dt-bindings/zmk/outputs.h>
|
|
|
|
#define DEFAULT 0
|
|
#define NAV 1
|
|
#define SYM 2
|
|
#define FUNC 3
|
|
#define MEDIA 4
|
|
#define MOUSE 5
|
|
#define WINNAV 6
|
|
|
|
&caps_word {
|
|
continue-list = <UNDERSCORE MINUS>;
|
|
};
|
|
|
|
/ {
|
|
combos {
|
|
compatible = "zmk,combos";
|
|
|
|
combo_esc {
|
|
timeout-ms = <50>;
|
|
key-positions = <13 14>;
|
|
bindings = <&kp ESC>;
|
|
};
|
|
|
|
combo_undo {
|
|
timeout-ms = <50>;
|
|
key-positions = <20 21>;
|
|
bindings = <&kp LC(Z)>;
|
|
};
|
|
|
|
combo_bsp {
|
|
bindings = <&kp BACKSPACE>;
|
|
key-positions = <8 9>;
|
|
};
|
|
|
|
combo_cc {
|
|
bindings = <&kp LC(C)>;
|
|
key-positions = <21 22>;
|
|
};
|
|
|
|
combo_bb {
|
|
bindings = <&kp LC(B)>;
|
|
key-positions = <23 24>;
|
|
};
|
|
|
|
combo_ww {
|
|
bindings = <&kp LC(W)>;
|
|
key-positions = <1 2>;
|
|
};
|
|
|
|
combo_tab {
|
|
bindings = <&kp TAB>;
|
|
key-positions = <0 1>;
|
|
};
|
|
};
|
|
};
|
|
|
|
/ {
|
|
behaviors {
|
|
lt_hold: lt_hold {
|
|
compatible = "zmk,behavior-hold-tap";
|
|
label = "LT_HOLD";
|
|
bindings =
|
|
<&mo>,
|
|
<&kp>;
|
|
|
|
flavor = "hold-preferred";
|
|
#binding-cells = <2>;
|
|
tapping-term-ms = <250>;
|
|
quick-tap-ms = <250>;
|
|
};
|
|
};
|
|
|
|
keymap {
|
|
compatible = "zmk,keymap";
|
|
|
|
default_layer {
|
|
label = "Default";
|
|
bindings = <
|
|
&kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P
|
|
&kp A &kp S &kp D &kp F &kp G &kp H &kp J &kp K &kp L &kp SEMI
|
|
&mt LSHIFT Z &kp X &kp C &kp V &kp B &kp N &kp M &kp COMMA &kp DOT &kp FSLH
|
|
<_hold 3 TAB <_hold 1 SPACE <_hold 2 ESC <_hold 2 BACKSPACE <_hold 1 ENTER <_hold 3 C_PLAY_PAUSE
|
|
>;
|
|
};
|
|
|
|
raise {
|
|
bindings = <
|
|
&kp GB_N1 &kp GB_N2 &kp GB_N3 &kp GB_N4 &kp GB_N5 &kp GB_N6 &kp GB_N7 &kp GB_N8 &kp GB_N9 &kp GB_N0
|
|
&kp LEFT_SHIFT &kp LCTRL &kp LEFT_ALT &kp LEFT_GUI &bt BT_PRV &bt BT_NXT &kp LEFT_GUI &kp LEFT_ALT &kp LCTRL &kp LEFT_SHIFT
|
|
&kp F1 &kp F2 &kp F3 &kp F4 &kp F5 &kp F6 &kp F7 &kp F8 &kp F9 &kp F10
|
|
&kp LG(D) &trans &kp F11 &kp F12 &trans &kp LG(ENTER)
|
|
>;
|
|
|
|
label = "Navigation";
|
|
};
|
|
|
|
sym_layer {
|
|
label = "Symbols";
|
|
bindings = <
|
|
&kp EXCL &kp LS(N2) &kp GB_POUND_SIGN &kp DLLR &kp PRCNT &kp CARET &kp AMPS &kp ASTRK &kp LEFT_PARENTHESIS &kp RIGHT_PARENTHESIS
|
|
&kp GB_PIPE &kp UNDERSCORE &kp MINUS &kp PLUS &kp EQUAL &kp COLON &kp LEFT_BRACE &kp RBRC &kp LEFT_BRACKET &kp RIGHT_BRACKET
|
|
&kp NON_US_BACKSLASH &kp GB_EURO &kp GB_AT &kp SQT &kp GRAVE &kp GB_TILDE &kp GB_POUND &kp LESS_THAN &kp GREATER_THAN &kp QUESTION
|
|
&out OUT_TOG &bootloader &trans &trans &bootloader &kp LCTRL
|
|
>;
|
|
};
|
|
|
|
func_layer {
|
|
label = "Function";
|
|
bindings = <
|
|
&kp LG(N1) &kp LG(N2) &kp LG(N3) &kp LG(N4) &kp LG(N5) &kp LG(N6) &kp LG(N7) &kp LG(N8) &kp LG(N9) &kp LG(N0)
|
|
&kp K_PREV &kp C_VOL_DN &kp C_VOL_UP &kp K_NEXT &kp C_BRI_INC &kp LEFT &kp DOWN &kp UP &kp RIGHT &kp ENTER
|
|
&kp LC(Z) &kp LC(X) &kp LC(C) &kp LC(V) &kp C_BRI_DEC &kp HOME &kp PAGE_DOWN &kp PAGE_UP &kp END &trans
|
|
&trans &kp INSERT &kp PRINTSCREEN &trans &kp DEL &bt BT_CLR
|
|
>;
|
|
};
|
|
};
|
|
};
|