2022-09-09 22:09:53 +02:00
|
|
|
#include <behaviors.dtsi>
|
|
|
|
#include <dt-bindings/zmk/keys.h>
|
2022-09-11 00:03:06 +02:00
|
|
|
#include <dt-bindings/zmk/bt.h>
|
2022-09-09 22:09:53 +02:00
|
|
|
|
2022-09-18 20:05:19 +02:00
|
|
|
#define HOST_OS 1
|
2022-09-17 16:34:46 +02:00
|
|
|
#include "../../../../zmk-nodefree-config/helper.h"
|
2022-09-17 16:29:38 +02:00
|
|
|
|
2022-09-16 20:43:24 +02:00
|
|
|
#define L0 0
|
|
|
|
#define L1 1
|
2022-09-12 20:08:41 +02:00
|
|
|
#define L2 2
|
|
|
|
#define L3 3
|
2022-09-17 21:42:40 +02:00
|
|
|
#define L4 4
|
2022-09-12 20:08:41 +02:00
|
|
|
|
2022-09-16 22:36:29 +02:00
|
|
|
/ {
|
|
|
|
behaviors {
|
|
|
|
// characters with logical inverses, assigned to shift
|
2022-09-18 20:05:19 +02:00
|
|
|
iminus: i_minus_plus {
|
2022-09-16 22:36:29 +02:00
|
|
|
compatible = "zmk,behavior-mod-morph";
|
2022-09-18 20:05:19 +02:00
|
|
|
label = "- +";
|
2022-09-16 22:36:29 +02:00
|
|
|
#binding-cells = <0>;
|
2022-09-18 20:05:19 +02:00
|
|
|
bindings = <&kp MINUS>, <&kp PLUS>;
|
2022-09-16 22:36:29 +02:00
|
|
|
mods = <(MOD_LSFT)>;
|
|
|
|
};
|
|
|
|
iunder: i_underscore_pipe {
|
|
|
|
compatible = "zmk,behavior-mod-morph";
|
|
|
|
label = "_ |";
|
|
|
|
#binding-cells = <0>;
|
|
|
|
bindings = <&kp UNDER>, <&kp PIPE>;
|
|
|
|
mods = <(MOD_LSFT)>;
|
|
|
|
};
|
|
|
|
idot: i_dot_colon {
|
|
|
|
compatible = "zmk,behavior-mod-morph";
|
|
|
|
label = ". :";
|
|
|
|
#binding-cells = <0>;
|
|
|
|
bindings = <&kp DOT>, <&kp COLON>;
|
|
|
|
mods = <(MOD_LSFT)>;
|
|
|
|
};
|
|
|
|
icomma: i_comma_semicolon {
|
|
|
|
compatible = "zmk,behavior-mod-morph";
|
|
|
|
label = ", ;";
|
|
|
|
#binding-cells = <0>;
|
|
|
|
bindings = <&kp COMMA>, <&kp SEMICOLON>;
|
|
|
|
mods = <(MOD_LSFT)>;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
2022-09-09 22:09:53 +02:00
|
|
|
/ {
|
2022-09-16 20:43:24 +02:00
|
|
|
keymap {
|
|
|
|
compatible = "zmk,keymap";
|
|
|
|
layer_0 {
|
|
|
|
bindings = <
|
2022-09-16 22:36:29 +02:00
|
|
|
&kp ESC &kp W &kp F &kp P &kp B &kp J &kp L &kp U &kp Y &kp BACKSPACE
|
|
|
|
&kp A &kp R &kp S &kp T &kp G &kp M &kp N &kp E &kp I &kp O
|
2022-09-17 16:09:31 +02:00
|
|
|
&kp LCTRL &kp X &kp C &kp D &kp V &kp K &kp H &kp Z &kp Q &kp LALT
|
|
|
|
&kp SPACE &kp LWIN &mo L1 &mo L2 &kp LSHIFT &kp RET
|
2022-09-16 20:43:24 +02:00
|
|
|
>;
|
|
|
|
};
|
2022-09-16 22:36:29 +02:00
|
|
|
// numbers + symbols + non english letters
|
2022-09-16 20:43:24 +02:00
|
|
|
layer_1 {
|
|
|
|
bindings = <
|
2022-09-18 20:05:19 +02:00
|
|
|
&kp TAB &none &none &none &none &none &sv_ao &sv_ae &sv_oe &kp DEL
|
|
|
|
&kp N0 &kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &kp N6 &kp N7 &kp N8 &kp N9
|
|
|
|
&trans &none &none &none &none &iunder &iminus &icomma &idot &trans
|
2022-09-17 16:09:31 +02:00
|
|
|
&trans &trans &trans &mo L3 &trans &trans
|
2022-09-16 22:36:29 +02:00
|
|
|
>;
|
|
|
|
};
|
|
|
|
// F keys + navigation
|
|
|
|
layer_2 {
|
|
|
|
bindings = <
|
|
|
|
&kp F1 &kp F2 &kp F3 &kp F4 &kp F5 &none &kp HOME &kp UP &kp END &kp PG_UP
|
|
|
|
&kp F6 &kp F7 &kp F8 &kp F9 &kp F10 &none &kp LEFT &kp DOWN &kp RIGHT &kp PG_DN
|
|
|
|
&trans &kp F11 &kp F12 &kp PSCRN &kp K_CMENU &none &none &none &none &trans
|
2022-09-17 16:09:31 +02:00
|
|
|
&trans &trans &mo L3 &trans &trans &trans
|
2022-09-16 22:36:29 +02:00
|
|
|
>;
|
|
|
|
};
|
|
|
|
// media + bluetooth + future layer toggles
|
|
|
|
layer_3 {
|
|
|
|
bindings = <
|
2022-09-17 21:31:25 +02:00
|
|
|
&trans &none &none &none &tog L4 &kp C_BRI_UP &kp C_PREV &kp C_NEXT &kp C_VOL_UP &trans
|
2022-09-16 22:36:29 +02:00
|
|
|
&none &none &none &none &none &kp C_BRI_DN &kp C_PLAY &kp C_PAUSE &kp C_VOL_DN &none
|
|
|
|
&trans &none &bt BT_SEL 0 &bt BT_NXT &bt BT_CLR &none &none &none &none &trans
|
|
|
|
&trans &trans &trans &trans &trans &trans
|
2022-09-16 20:43:24 +02:00
|
|
|
>;
|
|
|
|
};
|
2022-09-17 21:22:52 +02:00
|
|
|
// toki pona
|
|
|
|
l_toki {
|
|
|
|
bindings = <
|
2022-09-17 21:35:11 +02:00
|
|
|
&trans &kp P &kp W &kp U &none &to L0 &kp E &kp S &kp J &trans
|
|
|
|
&kp N &kp L &kp I &kp A &none &none &kp O &kp T &kp M &kp K
|
|
|
|
&trans &none &kp QMARK &kp EXCL &none &none &kp DOT &kp COMMA &none &none
|
|
|
|
&trans &trans &none &none &trans &trans
|
2022-09-17 21:22:52 +02:00
|
|
|
>;
|
|
|
|
};
|
2022-09-16 20:43:24 +02:00
|
|
|
};
|
2022-09-16 22:36:29 +02:00
|
|
|
};
|