aboutsummaryrefslogtreecommitdiff
path: root/config
diff options
context:
space:
mode:
Diffstat (limited to 'config')
-rw-r--r--config/cradio.keymap129
1 files changed, 97 insertions, 32 deletions
diff --git a/config/cradio.keymap b/config/cradio.keymap
index b60f889..b7b0446 100644
--- a/config/cradio.keymap
+++ b/config/cradio.keymap
@@ -4,15 +4,32 @@
#include <behaviors.dtsi>
#include <dt-bindings/zmk/keys.h>
#include <dt-bindings/zmk/bt.h>
+#include <dt-bindings/zmk/mouse.h>
// Home row mods macro
#define HRML(k1,k2,k3) &lht LALT k1 &lht LCTRL k2 &lht LGUI k3
#define HRMR(k1,k2,k3) &rht LGUI k1 &rht LCTRL k2 &rht LALT k3
+// Layer macros
+#define BASE 0
+#define NAV 1
+#define NUM 2
+#define SYM 3
+#define MSE 4
+#define FUNC 5
+#define GAME 6
+#define BTL 7
+
&sl {
release-after-ms = <1500>;
};
+&mt {
+ flavor = "tap-preferred";
+ quick-tap-ms = <200>;
+ require-prior-idle-ms = <100>;
+};
+
/ {
behaviors {
lht: left_hold_tap {
@@ -23,8 +40,20 @@
quick-tap-ms = <200>;
require-prior-idle-ms = <100>;
bindings = <&kp>, <&kp>;
- hold-trigger-key-positions = <5 6 7 8 9 15 16 17 18 19 25 26 27 28 29 30 31 32 33>;
+ hold-trigger-key-positions = <5 6 7 8 9 10 15 16 17 18 19 20 23 24 25 26 27 28 29 30 31 32 33>;
+ };
+
+ rht: right_hold_tap {
+ compatible = "zmk,behavior-hold-tap";
+ #binding-cells = <2>;
+ flavor = "balanced";
+ tapping-term-ms = <200>;
+ quick-tap-ms = <200>;
+ require-prior-idle-ms = <100>;
+ bindings = <&kp>, <&kp>;
+ hold-trigger-key-positions = <0 1 2 3 4 10 11 12 13 14 20 21 22 23 24 26 30 31 32 33>;
};
+
rht: right_hold_tap {
compatible = "zmk,behavior-hold-tap";
#binding-cells = <2>;
@@ -33,8 +62,9 @@
quick-tap-ms = <200>;
require-prior-idle-ms = <100>;
bindings = <&kp>, <&kp>;
- hold-trigger-key-positions = <0 1 2 3 4 10 11 12 13 14 20 21 22 23 24 30 31 32 33>;
+ hold-trigger-key-positions = <0 1 2 3 4 10 11 12 13 14 20 21 22 23 24 26 30 31 32 33>;
};
+
skq: sticky_key_quick_release {
compatible = "zmk,behavior-sticky-key";
#binding-cells = <1>;
@@ -43,6 +73,7 @@
quick-release;
ignore-modifiers;
};
+
tds: tap_dance_shift {
compatible = "zmk,behavior-tap-dance";
#binding-cells = <0>;
@@ -54,8 +85,8 @@
conditional_layers {
compatible = "zmk,conditional-layers";
bt_layer {
- if-layers = <1 4>;
- then-layer = <5>;
+ if-layers = <NUM FUNC>;
+ then-layer = <BTL>;
};
};
@@ -65,49 +96,49 @@
bindings = <
//╭──────────┬──────────┬──────────┬──────────┬──────────╮ ╭──────────┬──────────┬──────────┬──────────┬──────────╮
//│ Q │ W │ F │ P │ B │ │ J │ L │ U │ Y │ FUNC │
- &kp Q &kp W &kp F &kp P &kp B &kp J &kp L &kp U &kp Y &mo 4
+ &kp Q &kp W &kp F &kp P &kp B &kp J &kp L &kp U &kp Y &mo FUNC
//├──────────┼──────────┼──────────┼──────────┼──────────┤ ├──────────┼──────────┼──────────┼──────────┼──────────┤
//│ A │ R │ S │ T │ G │ │ M │ N │ E │ I │ O │
&kp A HRML(R, S, T) &kp G &kp M HRMR(N, E, I) &kp O
//├──────────┼──────────┼──────────┼──────────┼──────────┤ ├──────────┼──────────┼──────────┼──────────┼──────────┤
//│ Z │ X │ C │ D │ V │ │ K │ H │ ' │ SYM │ BACKSPACE│
- &kp Z &kp X &kp C &kp D &kp V &kp K &kp H &kp SQT &sl 3 &kp BSPC
+ &mt LSFT Z &kp X &kp C &kp D &kp V &kp K &kp H &kp SQT &sl SYM &kp BSPC
//╰──────────┴──────────┴──────────┼──────────┼──────────┤ ├──────────┼──────────┼──────────┴──────────┴──────────╯
- &sl 2 &kp SPACE &tds &sl 1
+ &sl NAV &kp SPACE &tds &sl NUM
// ╰──────────┴──────────╯ ╰──────────┴──────────╯
>;
};
- num_layer {
+ nav_layer {
bindings = <
//╭──────────┬──────────┬──────────┬──────────┬──────────╮ ╭──────────┬──────────┬──────────┬──────────┬──────────╮
- //│ │ 4 │ 5 │ 6 │ │ │ │ * │ < │ > │ │
- &none &kp N4 &kp N5 &kp N6 &none &none &kp ASTRK &kp LT &kp GT &trans
+ //│ │ [ │ ] │ DELETE │ │ │ │ DELETE │ PAGE DN │ PAGE UP │ │
+ &none &kp LBKT &kp RBKT &kp DEL &none &none &kp DEL &kp PG_DN &kp PG_UP &none
//├──────────┼──────────┼──────────┼──────────┼──────────┤ ├──────────┼──────────┼──────────┼──────────┼──────────┤
- //│ TAB │ 1 │ 2 │ 3 │ ^ │ │ │ = │ , │ . │ / │
- &kp TAB &kp N1 &kp N2 &kp N3 &kp CARET &none HRMR(EQUAL, COMMA, DOT) &kp FSLH
+ //│ ESC │ { │ ( │ ) │ │ │ │ LEFT │ DOWN │ UP │ RIGHT │
+ &kp ESC HRML(LBRC, LPAR, RPAR) &none &none &kp LARW &kp DARW &kp UARW &kp RARW
//├──────────┼──────────┼──────────┼──────────┼──────────┤ ├──────────┼──────────┼──────────┼──────────┼──────────┤
- //│ │ 7 │ 8 │ 9 │ ~ │ │ │ - │ _ │ + │ │
- &none &kp N7 &kp N8 &kp N9 &kp TILDE &none &kp MINUS &kp UNDER &kp PLUS &trans
+ //│ │ │ │ } │ │ │ │ HOME │ END │ MOUSE │ │
+ &none &none &none &kp RBRC &none &none &kp HOME &kp END &to MSE &trans
//╰──────────┴──────────┴──────────┼──────────┼──────────┤ ├──────────┼──────────┼──────────┴──────────┴──────────╯
- &kp N0 &trans &trans &to 0
+ &to 0 &trans &trans &kp ENTER
// ╰──────────┴──────────╯ ╰──────────┴──────────╯
>;
};
- nav_layer {
+ num_layer {
bindings = <
//╭──────────┬──────────┬──────────┬──────────┬──────────╮ ╭──────────┬──────────┬──────────┬──────────┬──────────╮
- //│ │ [ │ ] │ │ │ │ │ │ PAGE DN │ PAGE UP │ │
- &none &kp LBKT &kp RBKT &none &none &none &trans &kp PG_DN &kp PG_UP &none
+ //│ │ 4 │ 5 │ 6 │ │ │ │ * │ < │ > │ │
+ &none &kp N4 &kp N5 &kp N6 &none &none &kp ASTRK &kp LT &kp GT &trans
//├──────────┼──────────┼──────────┼──────────┼──────────┤ ├──────────┼──────────┼──────────┼──────────┼──────────┤
- //│ ESC │ { │ ( │ ) │ │ │ │ LEFT │ DOWN │ UP │ RIGHT │
- &kp ESC HRML(LBRC, LPAR, RPAR) &none &none &kp LARW &kp DARW &kp UARW &kp RARW
+ //│ TAB │ 1 │ 2 │ 3 │ ^ │ │ │ = │ , │ . │ / │
+ &kp TAB &kp N1 &kp N2 &kp N3 &kp CARET &none HRMR(EQUAL, COMMA, DOT) &kp FSLH
//├──────────┼──────────┼──────────┼──────────┼──────────┤ ├──────────┼──────────┼──────────┼──────────┼──────────┤
- //│ │ │ │ } │ │ │ │ HOME │ END │ │ │
- &none &none &none &kp RBRC &none &none &kp HOME &kp END &trans &trans
+ //│ │ 7 │ 8 │ 9 │ ~ │ │ │ - │ _ │ + │ │
+ &none &kp N7 &kp N8 &kp N9 &kp TILDE &none &kp MINUS &kp UNDER &kp PLUS &trans
//╰──────────┴──────────┴──────────┼──────────┼──────────┤ ├──────────┼──────────┼──────────┴──────────┴──────────╯
- &to 0 &trans &trans &kp ENTER
+ &kp N0 &trans &trans &to BASE
// ╰──────────┴──────────╯ ╰──────────┴──────────╯
>;
};
@@ -122,26 +153,60 @@
&kp GRAVE &kp EXCL &kp QMARK &kp COLON &kp AMPS &none &none &none &none &none
//├──────────┼──────────┼──────────┼──────────┼──────────┤ ├──────────┼──────────┼──────────┼──────────┼──────────┤
//│ │ \ │ ; │ " │ | │ │ │ │ │ │ │
- &none &kp BSLH &kp SEMI &kp DQT &kp PIPE &none &none &none &to 0 &trans
+ &none &kp BSLH &kp SEMI &kp DQT &kp PIPE &none &none &none &to BASE &trans
//╰──────────┴──────────┴──────────┼──────────┼──────────┤ ├──────────┼──────────┼──────────┴──────────┴──────────╯
&trans &trans &trans &trans
// ╰──────────┴──────────╯ ╰──────────┴──────────╯
>;
};
- func_layer {
+ mse_layer {
bindings = <
//╭──────────┬──────────┬──────────┬──────────┬──────────╮ ╭──────────┬──────────┬──────────┬──────────┬──────────╮
- //│ │ F4 │ F5 │ F6 │ │ │ │ │ │ │ │
- &none &kp F4 &kp F5 &kp F6 &none &none &none &none &none &trans
+ //│ │ │ │ │ │ │ │ │ │ │ │
+ &none &none &none &none &none &none &kp F17 &kp F18 &kp F19 &kp F20
//├──────────┼──────────┼──────────┼──────────┼──────────┤ ├──────────┼──────────┼──────────┼──────────┼──────────┤
- //│ F11 │ F1 │ F2 │ F3 │ │ │ │ │ │ │ │
- &kp F11 &kp F1 &kp F2 &kp F3 &none &none &none &none &none &none
+ //│ │ │ │ │ │ │ │ │ │ │ │
+ &kp LCTRL &mkp MCLK &mkp RCLK &mkp LCLK &none &none &kp F21 &kp F22 &kp F23 &kp F24
//├──────────┼──────────┼──────────┼──────────┼──────────┤ ├──────────┼──────────┼──────────┼──────────┼──────────┤
- //│ F12 │ F7 │ F8 │ F9 │ │ │ │ │ │ │ │
- &kp F12 &kp F7 &kp F8 &kp F9 &none &none &none &none &none &none
+ //│ │ │ │ │ │ │ │ │ │ │ │
+ &kp LALT &none &none &none &none &none &mkp LCLK &mkp RCLK &to BASE &none
//╰──────────┴──────────┴──────────┼──────────┼──────────┤ ├──────────┼──────────┼──────────┴──────────┴──────────╯
+ &kp LGUI &trans &trans &trans
+ // ╰──────────┴──────────╯ ╰──────────┴──────────╯
+ >;
+ };
+
+ func_layer {
+ bindings = <
+ //╭──────────┬──────────┬──────────┬──────────┬──────────╮ ╭──────────┬────────────┬────────────┬──────────┬──────────╮
+ //│ GAME │ F4 │ F5 │ F6 │ │ │ │ │ │ │ │
+ &to GAME &kp F4 &kp F5 &kp F6 &none &kp C_PP &kp C_VOL_DN &kp C_VOL_UP &kp C_MUTE &trans
+ //├──────────┼──────────┼──────────┼──────────┼──────────┤ ├──────────┼────────────┼────────────┼──────────┼──────────┤
+ //│ F11 │ F1 │ F2 │ F3 │ │ │ │ │ │ │ │
+ &kp F11 &kp F1 &kp F2 &kp F3 &none &none &kp C_PREV &kp C_NEXT &none &none
+ //├──────────┼──────────┼──────────┼──────────┼──────────┤ ├──────────┼────────────┼────────────┼──────────┼──────────┤
+ //│ F12 │ F7 │ F8 │ F9 │ │ │ │ │ │ │ │
+ &kp F12 &kp F7 &kp F8 &kp F9 &none &none &kp C_BRI_DN &kp C_BRI_UP &none &none
+ //╰──────────┴──────────┴──────────┼──────────┼──────────┤ ├──────────┼────────────┼────────────┴──────────┴──────────╯
&kp F10 &trans &trans &trans
+ // ╰──────────┴──────────╯ ╰──────────┴────────────╯
+ >;
+ };
+
+ game_layer {
+ bindings = <
+ //╭──────────┬──────────┬──────────┬──────────┬──────────╮ ╭──────────┬──────────┬──────────┬──────────┬──────────╮
+ //│ ESC │ Q │ W │ E │ R │ │ T │ Y │ U │ I │ O │
+ &kp ESC &kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O
+ //├──────────┼──────────┼──────────┼──────────┼──────────┤ ├──────────┼──────────┼──────────┼──────────┼──────────┤
+ //│ SHIFT │ A │ S │ D │ F │ │ G │ UP │ H │ J │ K │
+ &kp LSFT &kp A &kp S &kp D &kp F &kp G &kp UARW &kp H &kp J &kp K
+ //├──────────┼──────────┼──────────┼──────────┼──────────┤ ├──────────┼──────────┼──────────┼──────────┼──────────┤
+ //│ CTRL │ Z │ X │ C │ V │ │ LEFT │ DOWN │ RIGHT │ B │ BACKSPACE│
+ &kp LCTRL &kp X &kp C &kp D &kp V &kp LARW &kp DARW &kp RARW &kp B &kp BSPC
+ //╰──────────┴──────────┴──────────┼──────────┼──────────┤ ├──────────┼──────────┼──────────┴──────────┴──────────╯
+ &kp TAB &kp SPACE &kp ENTER &to BASE
// ╰──────────┴──────────╯ ╰──────────┴──────────╯
>;
};
@@ -158,7 +223,7 @@
//│ │ │ │ CLEAR BT │ │ │ │ │ │ │ │
&none &none &none &bt BT_CLR &none &none &none &none &none &none
//╰──────────┴────────────┴────────────┼────────────┼──────────┤ ├──────────┼──────────┼──────────┴──────────┴──────────╯
- &bt BT_SEL 0 &kp SPACE &kp ENTER &trans
+ &bt BT_SEL 0 &trans &trans &trans
// ╰────────────┴──────────╯ ╰──────────┴──────────╯
>;
};