Files
zmk-swweeep/config/swweeep.keymap
Benjamin Kyd 5620f2f78d lets try that
2023-06-22 20:56:03 +01:00

143 lines
6.4 KiB
Plaintext

#include <behaviors.dtsi>
#include <dt-bindings/zmk/keys.h>
#include <dt-bindings/zmk/bt.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_undo {
timeout-ms = <50>;
key-positions = <20 21>;
bindings = <&kp LC(Z)>;
};
combo_q {
timeout-ms = <50>;
key-positions = <21 22>;
bindings = <&kp Q>;
};
combo_semicolon {
timeout-ms = <50>;
key-positions = <27 28>;
bindings = <&kp SEMI>;
};
};
};
/ {
behaviors {
hm: homerow_mods {
compatible = "zmk,behavior-hold-tap";
label = "HOMEROW_MODS";
#binding-cells = <2>;
tapping-term-ms = <200>;
quick_tap_ms = <0>;
flavor = "balanced";
bindings = <&kp>, <&kp>;
};
hs: homerow_shift {
compatible = "zmk,behavior-hold-tap";
label = "HOMEROW_SHIFT";
#binding-cells = <2>;
tapping-term-ms = <175>;
quick_tap_ms = <0>;
flavor = "balanced";
bindings = <&kp>, <&kp>;
};
};
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
&kp A &kp A &kp A &kp A &kp A &kp A
>;
};
nav_layer {
label = "Navigation";
bindings = <
&kp ESC &kp PG_UP &kp UP &kp PG_DN &trans &kp ASTRK &kp N7 &kp N8 &kp N9 &kp MINUS
&kp HOME &kp LEFT &kp DOWN &kp RIGHT &kp END &kp FSLH &kp N4 &kp N5 &kp N6 &kp PLUS
&trans &trans &trans &trans &trans &kp EQUAL &kp N1 &kp N2 &kp N3 &kp N0
&trans &trans &kp TAB &kp BSPC &kp SPACE &kp DOT
>;
};
sym_layer {
label = "Symbols";
bindings = <
&kp EXCL &kp AT &kp HASH &kp DLLR &kp PRCNT &kp CARET &kp AMPS &kp ASTRK &kp UNDER &kp EQUAL
&kp MINUS &kp LBKT &kp LBRC &kp LPAR &kp LT &kp GT &kp RPAR &kp RBRC &kp RBKT &kp PLUS
&kp CAPS &kp GRAVE &kp LC(LS(TAB)) &kp LC(LG(LEFT)) &caps_word &trans &kp LC(LG(RIGHT)) &kp LC(TAB) &trans &kp BSLH
&trans &kp RET &kp DEL &kp BSPC &trans &trans
>;
};
func_layer {
label = "Function";
bindings = <
&bootloader &kp LS(PG_UP) &kp LS(UP) &kp LS(PG_DN) &trans &kp C_MUTE &kp F7 &kp F8 &kp F9 &kp F10
&kp LS(HOME) &kp LS(LEFT) &kp LS(DOWN) &kp LS(RIGHT) &kp LS(END) &kp K_VOL_UP &kp F4 &kp F5 &kp F6 &kp F11
&bt BT_SEL 3 &bt BT_SEL 2 &bt BT_SEL 1 &bt BT_SEL 0 &bt BT_CLR &kp K_VOL_DN &kp F1 &kp F2 &kp F3 &kp F12
&out OUT_USB &out OUT_BLE &trans &kp C_PLAY_PAUSE &trans &kp SPACE
>;
};
media_layer {
label = "Media";
bindings = <
&trans &trans &trans &trans &trans &trans &bt BT_PRV &bt BT_NXT &trans &trans
&trans &trans &trans &trans &trans &trans &trans &trans &trans &trans
&trans &trans &trans &trans &trans &bt BT_CLR &bt BT_SEL 0 &bt BT_SEL 1 &bt BT_SEL 2 &bt BT_SEL 3
&trans &trans &trans &trans &out OUT_BLE &out OUT_USB
>;
};
mouse_layer {
label = "Mouse";
bindings = <
&bootloader &trans &trans &trans &trans &trans &trans &trans &trans &trans
&trans &trans &trans &trans &trans &trans &trans &trans &trans &trans
&trans &trans &trans &trans &trans &trans &trans &trans &trans &trans
&trans &trans &trans &trans &trans &trans
>;
};
winnav_layer {
label = "Win Navigation";
bindings = <
&trans &trans &kp LG(UP) &trans &trans &trans &trans &trans &trans &trans
&trans &kp LG(LEFT) &kp LG(DOWN) &kp LG(RIGHT) &trans &trans &trans &trans &trans &trans
&trans &trans &trans &trans &trans &trans &trans &trans &trans &trans
&trans &trans &trans &trans &trans &trans
>;
};
};
};