You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

147 lines
5.2 KiB
Plaintext

// Copyright (c) 2022 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/pointing.h>
/ {
behaviors {
esc_mod: esc_mod {
compatible = "zmk,behavior-tap-dance";
#binding-cells = <0>;
tapping-term-ms = <200>;
bindings = <&kp ESC>, <&kp LCTRL>;
};
esc_3mod: esc_shift_ctrl {
compatible = "zmk,behavior-hold-tap";
#binding-cells = <2>;
flavor = "tap-preferred";
tapping-term-ms = <200>;
quick-tap-ms = <200>;
bindings = <&kp>, <&esc_mod>;
retro-tap;
};
eq_dot: equal_dot {
compatible = "zmk,behavior-tap-dance";
#binding-cells = <0>;
tapping-term-ms = <200>;
bindings = <&kp EQUAL>, <&kp DOT>;
};
dash_slsh: dash_slash {
compatible = "zmk,behavior-tap-dance";
#binding-cells = <0>;
tapping-term-ms = <200>;
bindings = <&kp MINUS>, <&kp SLASH>;
};
tab_ret: tab_return {
compatible = "zmk,behavior-tap-dance";
#binding-cells = <0>;
tapping-term-ms = <200>;
bindings = <&kp TAB>, <&kp RET>;
};
f1_f7: function1 {
compatible = "zmk,behavior-tap-dance";
#binding-cells = <0>;
tapping-term-ms = <200>;
bindings = <&kp F1>, <&kp F7>;
};
f2_f8: function2 {
compatible = "zmk,behavior-tap-dance";
#binding-cells = <0>;
tapping-term-ms = <200>;
bindings = <&kp F2>, <&kp F8>;
};
f3_f9: function3 {
compatible = "zmk,behavior-tap-dance";
#binding-cells = <0>;
tapping-term-ms = <200>;
bindings = <&kp F3>, <&kp F9>;
};
f4_f10: function4 {
compatible = "zmk,behavior-tap-dance";
#binding-cells = <0>;
tapping-term-ms = <200>;
bindings = <&kp F4>, <&kp F10>;
};
f5_f11: function5 {
compatible = "zmk,behavior-tap-dance";
#binding-cells = <0>;
tapping-term-ms = <200>;
bindings = <&kp F5>, <&kp F11>;
};
f6_f12: function6 {
compatible = "zmk,behavior-tap-dance";
#binding-cells = <0>;
tapping-term-ms = <200>;
bindings = <&kp F6>, <&kp F12>;
};
};
combos {
compatible = "zmk,combos";
combo_act {
timeout-ms = <50>;
key-positions = <14 31>;
bindings = <&tog 3>;
layers = <0>;
};
combo_altspc {
timeout-ms = <50>;
key-positions = <24 31>;
bindings = <&kp LA(SPACE)>;
layers = <0>;
};
};
keymap {
compatible = "zmk,keymap";
base {
bindings = <
&lt 1 Q &kp W &kp F &kp P &kp G &kp J &kp L &kp U &kp Y &kp SEMI
&kp A &kp R &kp S &kp T &kp D &kp H &kp N &kp E &kp I &kp O
&kp Z &kp X &kp C &kp V &kp B &kp K &kp M &kp COMMA &kp DOT &kp FSLH
&esc_3mod LSHIFT 0 &kp SPACE &kp BSPC &lt 1 ENTER
>;
};
sym {
bindings = <
&none &kp N7 &kp N8 &kp N9 &kp N0 &kp BSLH &kp GRAVE &kp LBKT &kp RBKT &kp APOS
&none &kp N4 &kp N5 &kp N6 &eq_dot &kp HOME &kp LEFT &kp DOWN &kp UP &kp RIGHT
&none &kp N1 &kp N2 &kp N3 &dash_slsh &kp END &kp LC(LEFT) &kp PG_DN &kp PG_UP &kp LC(RIGHT)
&mt LSHIFT ESC &tab_ret &lt 2 DEL &mo 2
>;
};
mnav {
bindings = <
&trans &trans &msc SCRL_UP &trans &trans &trans &mkp LCLK &msc SCRL_DOWN &msc SCRL_UP &mkp RCLK
&trans &mkp LCLK &mkp MCLK &mkp RCLK &trans &trans &mmv MOVE_LEFT &mmv MOVE_DOWN &mmv MOVE_UP &mmv MOVE_RIGHT
&trans &trans &msc SCRL_DOWN &trans &trans &trans &trans &trans &trans &trans
&trans &trans &trans &trans
>;
};
act {
bindings = <
&f1_f7 &f2_f8 &f3_f9 &kp TAB &studio_unlock &studio_unlock &bt BT_PRV &bt BT_NXT &bt BT_CLR &bt BT_CLR_ALL
&f4_f10 &f5_f11 &f6_f12 &kp LS(TAB) &tog 3 &bootloader &kp C_PREV &kp C_PP &kp C_STOP &kp C_NEXT
&sk LCTRL &sk LSHIFT &sk LALT &sk LGUI &kp PSCRN &trans &kp C_MUTE &kp C_VOL_DN &kp C_VOL_UP &trans
&trans &tog 3 &trans &trans
>;
};
};
};