zmk/config/cradio.keymap
2023-10-07 21:00:52 +05:30

197 lines
6.5 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/keys.h>
#include <dt-bindings/zmk/outputs.h>
#include <behaviors.dtsi>
#define COLEMAK 0
#define NAV 1
#define NUM 2
#define SYM 3
#define FUN 4
/* krita base */
#define KRB 5
/* play */
#define PLAY 6
&mt {
flavor = "tap-preferred";
tapping_term_ms = <200>;
quick_tap_ms = <75>;
};
/ {
combos {
compatible = "zmk,combos";
combo_caps_word {
timeout-ms = <100>;
key-positions = <20 29>;
bindings = <&caps_word>;
};
combo_esc {
timeout-ms = <150>;
key-positions = <12 13 16 17>;
bindings = <&kp ESC>;
};
// (
combo_lpar {
timeout-ms = <150>;
key-positions = <4 14>;
bindings = <&kp LPAR>;
};
// )
combo_rpar {
timeout-ms = <150>;
key-positions = <5 15>;
bindings = <&kp RPAR>;
};
// {
combo_lcurly {
timeout-ms = <150>;
key-positions = <3 13>;
bindings = <&kp LBRC>;
};
// }
combo_rcurly {
timeout-ms = <150>;
key-positions = <6 16>;
bindings = <&kp RBRC>;
};
// [
combo_lsquare {
timeout-ms = <150>;
key-positions = <13 23>;
bindings = <&kp LBKT>;
};
// ]
combo_rsquare {
timeout-ms = <150>;
key-positions = <16 26>;
bindings = <&kp RBKT>;
};
// <
combo_less_than {
timeout-ms = <150>;
key-positions = <14 24>;
bindings = <&kp LT>;
};
// >
combo_greater_than {
timeout-ms = <150>;
key-positions = <15 25>;
bindings = <&kp GT>;
};
combo_minus {
timeout-ms = <150>;
key-positions = <2 3 6 7>;
bindings = <&kp MINUS>;
};
combo_under {
timeout-ms = <150>;
key-positions = <22 23 26 27>;
bindings = <&kp UNDER>;
};
combo_ble {
timeout-ms = <20>;
key-positions = <0 1>;
bindings = <&out OUT_BLE>;
};
combo_krita {
timeout-ms = <100>;
key-positions = <0 10 20>;
bindings = <&tog KRB>;
};
combo_draw {
timeout-ms = <100>;
key-positions = <9 19 29>;
bindings = <&tog PLAY>;
};
};
keymap {
compatible = "zmk,keymap";
default_layer {
bindings = <
&kp Q &kp W &kp F &kp P &kp G &kp J &kp L &kp U &kp Y &kp SCLN
&kp A &kp R &lt FUN S &lt NAV T &kp D &kp H &lt SYM N &lt NUM E &kp I &kp O
&kp Z &kp X &kp C &kp V &kp B &kp K &kp M &kp CMMA &kp DOT &kp FSLH
&mt LALT TAB &mt LGUI SPC &mt LSHIFT RET &mt LCTRL BSPC
>;
};
nav_layer {
bindings = <
&bt BT_CLR &trans &trans &bootloader &sys_reset &trans &kp LBRC &kp RBRC &kp LPAR &kp RPAR
&bt BT_SEL 0 &trans &trans &trans &trans &kp LEFT &kp DOWN &kp UP &kp RIGHT &trans
&bt BT_SEL 1 &trans &trans &trans &trans &trans &kp LBKT &kp RBKT &trans &trans
&trans &trans &trans &kp BSPC
>;
};
num_layer {
bindings = <
&trans &kp F7 &kp F8 &kp F9 &trans &trans &trans &trans &trans &trans
&kp SQT &kp F4 &kp F5 &kp F6 &kp EQUAL &trans &trans &trans &trans &trans
&kp GRAVE &kp F1 &kp F2 &kp F3 &kp BSLH &trans &trans &trans &trans &trans
&trans &trans &trans &trans
>;
};
sym_layer {
bindings = <
&kp LS(Q) &kp LS(Z) &kp STAR &kp AMPS &trans &sys_reset &bootloader &trans &trans &trans
&kp DQT &kp CARET &kp PRCNT &kp DLLR &kp KP_PLUS &trans &trans &trans &trans &trans
&kp TILDE &kp HASH &kp AT &kp EXCL &kp PIPE &trans &trans &trans &trans &trans
&kp LPAR &kp RPAR &trans &trans
>;
};
fun_layer {
bindings = <
&trans &trans &trans &trans &trans &trans &kp N7 &kp N8 &kp N9 &trans
&trans &trans &trans &trans &trans &kp BSPC &kp N4 &kp N5 &kp N6 &trans
&trans &trans &trans &trans &trans &trans &kp N1 &kp N2 &kp N3 &trans
&trans &trans &trans &kp N0
>;
};
krita_base_layer {
bindings = <
&kp M &trans &kp BSLH &kp LBKT &kp RBKT &trans &trans &trans &trans &trans
&trans &trans &kp F &kp I &kp O &trans &trans &trans &trans &trans
&kp LC(S) &trans &kp P &kp K &kp L &trans &trans &trans &trans &trans
&kp LS(LC(Z)) &kp LC(Z) &trans &trans
>;
};
draw {
bindings = <
&kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P
&kp N1 &kp S &kp N3 &mt LCTRL F &kp G &kp H &mt LCTRL J &mt RSHIFT K &mt LALT L &mt LGUI SCLN
&kp Z &kp X &kp C &kp V &kp B &kp M &kp LEFT &kp DOWN &kp RIGHT &trans
&kp R &kp U &kp RET &kp BSPC
>;
};
};
};