97 lines
3.7 KiB
Plaintext
97 lines
3.7 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 = <11 13>;
|
|
bindings = <&kp ESC>;
|
|
};
|
|
|
|
combo_undo {
|
|
timeout-ms = <50>;
|
|
key-positions = <20 21>;
|
|
bindings = <&kp LC(Z)>;
|
|
};
|
|
};
|
|
};
|
|
|
|
/ {
|
|
behaviors {
|
|
lt_hold: lt_hold {
|
|
compatible = "zmk,behavior-hold-tap";
|
|
label = "LT_HOLD";
|
|
bindings =
|
|
<&mo>,
|
|
<&kp>;
|
|
|
|
#binding-cells = <2>;
|
|
tapping-term-ms = <200>;
|
|
quick-tap-ms = <0>;
|
|
};
|
|
};
|
|
|
|
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 K &kp L &kp L &kp SEMI
|
|
&kp Z &kp X &kp C &kp V &kp B &kp N &kp M &kp COMMA &kp DOT &kp FSLH
|
|
<_hold 2 TAB &kp SPACE &kp ESC <_hold 1 BACKSPACE <_hold 3 ENTER &kp K_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) &kp F11 &trans &trans &kp F12 &kp LG(ENTER)
|
|
>;
|
|
|
|
label = "Navigation";
|
|
};
|
|
|
|
sym_layer {
|
|
label = "Symbols";
|
|
bindings = <
|
|
&kp EXCL &kp DOUBLE_QUOTES &kp GB_POUND_SIGN &kp DLLR &kp PRCNT &kp CARET &kp AMPS &kp ASTRK &kp LEFT_PARENTHESIS &kp RIGHT_PARENTHESIS
|
|
&kp 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 &trans &kp AT_SIGN &kp SQT &kp GRAVE &kp TILDE &kp HASH &kp LESS_THAN &kp GREATER_THAN &kp QUESTION
|
|
&trans &trans &bootloader &bootloader &out OUT_TOG &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_UP &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
|
|
&kp DEL &kp INSERT &kp PRINTSCREEN &trans &trans &kp LCTRL
|
|
>;
|
|
};
|
|
};
|
|
};
|