mirror of
https://github.com/Kabbone/zmk-config.git
synced 2025-01-06 09:14:24 +01:00
181 lines
5.6 KiB
Plaintext
181 lines
5.6 KiB
Plaintext
/*
|
|
* Copyright (c) 2020 The ZMK Contributors
|
|
*
|
|
* SPDX-License-Identifier: MIT
|
|
*/
|
|
|
|
#include <behaviors.dtsi>
|
|
#include <dt-bindings/zmk/keys.h>
|
|
#include <dt-bindings/zmk/bt.h>
|
|
|
|
|
|
&mt {
|
|
flavor = "tap-preferred";
|
|
tapping_term_ms = <200>;
|
|
};
|
|
&sk {
|
|
quick-release;
|
|
release-after-ms = <2000>;
|
|
};
|
|
|
|
/* Layers */
|
|
#define ALPH 0
|
|
#define SYM 1
|
|
#define NUM 2
|
|
#define SYS 3
|
|
#define BT 4
|
|
#define GAME 5
|
|
/ {
|
|
|
|
combos {
|
|
compatible = "zmk,combos";
|
|
|
|
combo_game {
|
|
timeout-ms = <30>;
|
|
key-positions = <0 1 2 3>;
|
|
bindings = <&to GAME>;
|
|
};
|
|
|
|
combo_sys {
|
|
timeout-ms = <30>;
|
|
key-positions = <6 7 8>;
|
|
bindings = <&to SYS>;
|
|
};
|
|
|
|
combo_num {
|
|
timeout-ms = <30>;
|
|
key-positions = <15 16>;
|
|
bindings = <&to NUM>;
|
|
};
|
|
|
|
combo_bt {
|
|
timeout-ms = <30>;
|
|
key-positions = <13 14>;
|
|
bindings = <&to BT>;
|
|
layers = <SYS>;
|
|
};
|
|
|
|
combo_term {
|
|
timeout-ms = <50>;
|
|
key-positions = <30 33>;
|
|
bindings = <&kp LG(ENTER)>;
|
|
};
|
|
|
|
combo_lenter {
|
|
timeout-ms = <50>;
|
|
key-positions = <30 19>;
|
|
bindings = <&kp ENTER>;
|
|
};
|
|
|
|
combo_renter {
|
|
timeout-ms = <50>;
|
|
key-positions = <33 19>;
|
|
bindings = <&kp ENTER>;
|
|
};
|
|
|
|
combo_layer0 {
|
|
timeout-ms = <50>;
|
|
key-positions = <31 32>;
|
|
bindings = <&to 0>;
|
|
};
|
|
};
|
|
|
|
behaviors {
|
|
hm: homerow_mods {
|
|
compatible = "zmk,behavior-hold-tap";
|
|
label = "HOMEROW_MODS";
|
|
#binding-cells = <2>;
|
|
tapping-term-ms = <200>;
|
|
quick_tap_ms = <0>;
|
|
flavor = "tap-preferred";
|
|
bindings = <&kp>, <&kp>;
|
|
};
|
|
hl: homerow_layers {
|
|
compatible = "zmk,behavior-hold-tap";
|
|
label = "HOMEROW_LAYERS";
|
|
#binding-cells = <2>;
|
|
tapping-term-ms = <220>;
|
|
quick_tap_ms = <0>;
|
|
flavor = "tap-preferred";
|
|
bindings = <&sl>, <&kp>;
|
|
};
|
|
sr: shift_layer {
|
|
compatible = "zmk,behavior-hold-tap";
|
|
label = "SHIFT_LAYER";
|
|
#binding-cells = <2>;
|
|
tapping-term-ms = <300>;
|
|
quick_tap_ms = <0>;
|
|
flavor = "tap-preferred";
|
|
bindings = <&kp>, <&to>;
|
|
retro-tap;
|
|
};
|
|
shk: shift_key {
|
|
compatible = "zmk,behavior-mod-morph";
|
|
label = "SHIFT_KEY";
|
|
#binding-cells = <2>;
|
|
bindings = <&kp>, <&kp>;
|
|
mods = <(MOD_LSFT|MOD_RSFT)>;
|
|
};
|
|
|
|
};
|
|
|
|
keymap {
|
|
compatible = "zmk,keymap";
|
|
|
|
alpha1 {
|
|
bindings = <
|
|
&kp Q &kp W &kp F &kp P &kp G &kp J &kp L &kp U &kp Y &kp ESC
|
|
&hm LCTRL A &hm LGUI R &hm LALT S &kp T &kp D &hm EQUAL H &kp N &hm RALT E &hm RGUI I &hm RCTRL O
|
|
&hl NUM Z &kp X &kp C &kp V &kp B &hm QMARK K &hm COLON M &hm MINUS COMMA &hm EXCL DOT &hm UNDER SLASH
|
|
&hm LCTRL TAB &hm LSHIFT ENTER &hl SYM SPACE &hl SYS BSPC
|
|
>;
|
|
};
|
|
|
|
sym1 {
|
|
bindings = <
|
|
&kp EXCL &kp AT &kp HASH &kp DOLLAR &kp PERCENT &kp CARET &kp AMPS &kp STAR &kp TILDE &kp EQUAL
|
|
&kp MINUS &kp LBKT &kp LBRC &kp LPAR &kp LT &kp GT &kp RPAR &kp RBRC &kp RBKT &kp PLUS
|
|
&to SYS &kp QMARK &kp HOME &kp DEL &kp SQT &kp DQT &kp COLON &kp END &kp UNDER &trans
|
|
&trans &trans &trans &trans
|
|
>;
|
|
};
|
|
|
|
num1 {
|
|
bindings = <
|
|
&none &kp C_PLAY_PAUSE &kp C_PREV &kp C_NEXT &none &kp SLASH &kp NUM_7 &kp NUM_8 &kp NUM_9 &kp MINUS
|
|
&none &kp C_VOL_UP &kp C_VOL_DN &none &kp COMMA &kp STAR &kp NUM_4 &kp NUM_5 &kp NUM_6 &kp PLUS
|
|
&none &none &to BT &to GAMING &kp DOT &kp EQUAL &kp NUM_1 &kp NUM_2 &kp NUM_3 &trans
|
|
&trans &trans &trans &kp NUM_0
|
|
>;
|
|
};
|
|
|
|
sys {
|
|
bindings = <
|
|
&kp LG(NUM_1) &kp LG(NUM_2) &kp LG(NUM_3) &kp LG(NUM_4) &kp LG(NUM_5) &none &hm LC(V) LC(C) &kp RC(TAB) &kp Q &trans
|
|
&kp LG(LS(Q)) &kp LG(D) &hm LG(E) LG(W) &kp LG(F) &kp LGUI &kp LEFT &kp DOWN &kp UP &kp RIGHT &none
|
|
&kp LG(LS(MINUS)) &kp HOME &kp END &kp LG(MINUS) &kp LG(ENTER) &kp DEL &kp PG_UP &kp PG_DN &none &trans
|
|
&trans &trans &trans &trans
|
|
>;
|
|
};
|
|
|
|
bluetooth {
|
|
bindings = <
|
|
&bt BT_SEL 0 &bt BT_SEL 1 &bt BT_SEL 2 &bt BT_SEL 3 &bt BT_SEL 4 &none &none &none &none &none
|
|
&none &none &none &none &none &none &none &none &none &none
|
|
&bt BT_NXT &bt BT_PRV &bt BT_SEL 0 &none &none &bt BT_CLR &none &none &none &none
|
|
&none &to ALPH &none &none
|
|
>;
|
|
};
|
|
|
|
gaming {
|
|
bindings = <
|
|
&kp Q &kp W &kp E &kp R &kp NUM_1 &none &none &none &none &none
|
|
&kp A &kp S &kp D &kp F &kp NUM_2 &none &none &none &none &none
|
|
&kp Z &kp X &kp C &kp V &kp NUM_3 &none &none &none &none &none
|
|
&none &to ALPH &none &none
|
|
>;
|
|
};
|
|
|
|
};
|
|
};
|