Files
zmk-config-kyria/config/cradio.keymap
2025-08-12 09:09:25 +02:00

128 lines
5.8 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>
#include <dt-bindings/zmk/ext_power.h>
&mt {
// flavor = "tap-preferred";
// tapping_term_ms = <200>;
};
/ {
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>;
};
td: tapdance {
compatible = "zmk,behavior-hold-tap";
label = "TAPDANCE";
#binding-cells = <2>;
tapping-term-ms = <150>;
quick_tap_ms = <0>;
flavor = "tap-preferred";
bindings = <&kp>, <&kp>;
};
};
combos {
compatible = "zmk,combos";
combo_esc {
timeout-ms = <50>;
key-positions = <0 1>;
bindings = <&kp ESC>;
};
combo_tab {
timeout-ms = <50>;
key-positions = <10 11>;
bindings = <&kp TAB>;
};
// Sticky layer 3
combo_l_layer_3 {
timeout-ms = <50>;
key-positions = <30 31>;
bindings = <&sl 3>;
};
// Sticky layer 3
combo_r_layer_3 {
timeout-ms = <50>;
key-positions = <32 33>;
bindings = <&sl 3>;
};
};
keymap {
compatible = "zmk,keymap";
default_layer {
// ___________________________________________________ ___________________________________________________
// | Q | W | F | P | B | | J | L | U | Y | ; |
// | A | R | S | LAlt(T) | G | | M | RCmd(N) | E | I | O |
// | Z | X | C | D | V | | K | H | , | . | / |
// ------------------------------| LAYER 1 | ENTER | | St RShft| LAYER 2 |------------------------------
bindings = <
&kp Q &kp W &kp F &kp P &kp B &kp J &kp L &kp U &kp Y &kp SEMICOLON
&kp A &kp R &kp S &hm LALT T &kp G &kp M &hm RCMD N &kp E &kp I &kp O
&kp Z &kp X &kp C &kp D &kp V &kp K &kp H &kp COMMA &kp DOT &kp SLASH
&lt 1 BSPC &mt LSHFT ENTER &sk RSHFT &lt 2 SPACE
>;
};
left_layer {
// ___________________________________________________ ___________________________________________________
// | ! | @ | # | $ | % | | ^ | & | ' | ` | |
// | ~ | + | ( | ) | COPY | | | | - | = | _ | * |
// | | EXTRACT | { | } | PASTE | | | [ | ] | | \ |
// ------------------------------| TRANS | TRANS | | | |------------------------------
bindings = <
&kp EXCL &kp AT &kp HASH &kp DOLLAR &kp PERCENT &kp CARET &kp AMPS &kp APOS &kp GRAVE &none
&kp TILDE &kp PLUS &kp LPAR &kp RPAR &kp LG(C) &kp PIPE &kp MINUS &kp EQUAL &kp UNDER &kp STAR
&none &kp LG(X) &kp LBRC &kp RBRC &kp LG(V) &none &kp LBKT &kp RBKT &none &kp BSLH
&trans &trans &none &none
>;
};
right_layer {
// ___________________________________________________ ___________________________________________________
// | | 1 | 2 | 3 | | | STUDIO | | UP | | VOL + |
// | 0 | 4 | 5 | 6 | | | | LEFT | DOWN | RIGHT | VOL - |
// | | 7 | 8 | 9 | | | | | | TRANS | MUTE |
// ------------------------------| St LCtrl| | | | TRANS |------------------------------
bindings = <
&none &kp KP_N1 &kp KP_N2 &kp KP_N3 &none &studio_unlock &none &kp UP &none &kp C_VOL_UP
&kp KP_N0 &kp KP_N4 &kp KP_N5 &kp KP_N6 &none &none &kp LEFT &kp DOWN &kp RIGHT &kp C_VOL_DN
&none &kp KP_N7 &kp KP_N8 &kp KP_N9 &none &none &none &none &trans &kp C_MUTE
&sk LCTRL &none &none &trans
>;
};
tri_layer {
// ___________________________________________________ ___________________________________________________
// | EP_OFF | | | | RESET | | | | | | |
// | EP_ON | | | | | | | | | | |
// | | | | | | | | | | | |
// ------------------------------| | | | | |------------------------------
bindings = <
&ext_power EP_OFF &none &none &none &bootloader &none &none &none &none &none
&ext_power EP_ON &none &none &none &none &none &none &none &none &none
&none &none &none &none &none &none &none &none &none &none
&none &none &none &none
>;
};
};
};