Skip to content

Commit

Permalink
Added MOU layer
Browse files Browse the repository at this point in the history
  • Loading branch information
keymap-editor[bot] committed Oct 27, 2024
1 parent 1b51ff4 commit 2405103
Showing 1 changed file with 73 additions and 59 deletions.
132 changes: 73 additions & 59 deletions config/cradio.keymap
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
#include <behaviors.dtsi>
#include <dt-bindings/zmk/bt.h>
#include <dt-bindings/zmk/keys.h>
#include <dt-bindings/zmk/mouse.h>

#define DEF 0
#define NMT 1 // No-mod-taps for if I regret setting mod-taps and can't access my code or can't update my firmware on the keyboard
Expand All @@ -12,7 +13,6 @@
#define AOE 6 // AOE 2 layers with easier access for default shortcuts on main layer
#define AGS 7
#define ABS 8

#define HYPER LG(LC(LA(LSHFT)))

&sk {
Expand All @@ -22,7 +22,6 @@

&caps_word { continue-list = <UNDERSCORE MINUS BACKSPACE DELETE K_CANCEL LSHFT SQT CARET TILDE GRAVE>; }; // K_CANCEL is for &lc macro, LSHFT is for PT-BR diacriticals on ^`~" keys.
&mt { flavor = "balanced"; }; // Using these for GLOBE keys and faster window management with Swish app as well as AOE layers

/ {
combos {
compatible = "zmk,combos";
Expand All @@ -47,77 +46,83 @@

sticky_sym_layer_for_one_handed_typing {
key-positions = <32 33>;
bindings = <&sl SYM>;
layers = <DEF NMT>;
bindings = <&sl 4>;
layers = <0>;
require-prior-idle-ms = <200>;
};

toggle_mod_taps {
key-positions = <14 15>;
bindings = <&tog NMT>;
bindings = <&tog 0>;
require-prior-idle-ms = <200>;
};

toggle_nav_layer_for_extended_edits_or_mouse_usage {
key-positions = <30 31>;
bindings = <&tog NAV>;
bindings = <&tog 3>;
require-prior-idle-ms = <200>;
};

toggle_num_word {
key-positions = <12 30>;
bindings = <&num_word NUM>; // requires auto-layer module (https://github.com/urob/zmk-auto-layer)
layers = <DEF NMT NUM>;
layers = <0 2>;
};
require-prior-idle-ms = <200>;

require-prior-idle-ms = <200>;

toggle_caps_word {
key-positions = <12 17>;
bindings = <&caps_word>;
layers = <DEF NMT>;
layers = <0>;
require-prior-idle-ms = <200>;
};

toggle_aoe {
key-positions = <20 21 22>;
bindings = <&tog AOE>;
layers = <DEF NMT AOE>;
bindings = <&tog 0>;
layers = <0>;
require-prior-idle-ms = <200>;
};

sys_bootloader {
key-positions = <20 21>;
bindings = <&bootloader>;
layers = <FUN>;
layers = <5>;
require-prior-idle-ms = <200>;
};

sys_connect_to_bt0 {
key-positions = <3 4>;
bindings = <&bt BT_SEL 0>;
layers = <FUN>;
layers = <5>;
};

sys_connect_to_bt1 {
key-positions = <13 14>;
bindings = <&bt BT_SEL 1>;
layers = <FUN>;
layers = <5>;
};

sys_connect_to_bt2 {
key-positions = <23 24>;
bindings = <&bt BT_SEL 2>;
layers = <FUN>;
layers = <5>;
};

sys_clear_current_bluetooth_profile {
key-positions = <28 29>;
bindings = <&bt BT_CLR>;
layers = <FUN>;
layers = <5>;
require-prior-idle-ms = <200>;
};


toggle_mouse {
bindings = <&tog 6>;
key-positions = <16 17 18>;
require-prior-idle-ms = <200>;
layers = <0 6 1>;
};
};

behaviors {
Expand All @@ -135,20 +140,23 @@
compatible = "zmk,behavior-mod-morph";
#binding-cells = <0>;
bindings = <&kp C_VOL_UP>, <&kp C_BRI_UP>;

mods = <(MOD_LCTL)>;
};

vb_dn: volume_brightness_down_on_control {
compatible = "zmk,behavior-mod-morph";
#binding-cells = <0>;
bindings = <&kp C_VOL_DN>, <&kp C_BRI_DN>;

mods = <(MOD_LCTL)>;
};

swapper: swapper_for_apple_cmd_tab {
compatible = "zmk,behavior-tri-state"; // requires tri-state module (https://github.com/urob/zmk-tri-state)
#binding-cells = <0>;
bindings = <&kt RGUI>, <&kp TAB>, <&kt RGUI>;

ignored-key-positions = <7 16 17 18 9 19 29>;// Arrows and BSPC, ENTER and DEL
};

Expand Down Expand Up @@ -209,7 +217,6 @@
quick-tap-ms = <175>;
require-prior-idle-ms = <175>;
};

};

macros {
Expand All @@ -235,8 +242,8 @@
compatible = "zmk,conditional-layers";

tri_layer_for_function_and_number_row_keys {
if-layers = <NAV SYM>;
then-layer = <FUN>;
if-layers = <3 4>;
then-layer = <5>;
};
};

Expand All @@ -245,85 +252,92 @@

DEF {
bindings = <
&kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P
&hrml LCTRL A &hrml LALT S &hrml LSHFT D &hrml LGUI F &kp G &kp H &hrmr RGUI J &hrmr LSHFT K &hrmr RALT L &hrmr RCTRL SQT
&hrml GLOBE Z &kp X &kp C &kp V &kp B &kp N &kp M &kp COMMA &kp DOT &kp SEMI
&lc NAV &kp RSHFT &kp SPACE &lc SYM
&kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P
&hrml LCTRL A &hrml LALT S &hrml LSHFT D &hrml LGUI F &kp G &kp H &hrmr RGUI J &hrmr LSHFT K &hrmr RALT L &hrmr RCTRL SQT
&hrml GLOBE Z &kp X &kp C &kp V &kp B &kp N &kp M &kp COMMA &kp DOT &kp SEMI
&lc 3 &kp RSHFT &kp SPACE &lc 4
>;
};

NMT {
bindings = <
&kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P
&kp A &kp S &kp D &kp F &kp G &kp H &kp J &kp K &kp L &kp SQT
&kp Z &kp X &kp C &kp V &kp B &kp N &kp M &kp COMMA &kp DOT &kp SEMI
&lc NAV &kp RSHFT &kp SPACE &lc SYM
&kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P
&kp A &kp S &kp D &kp F &kp G &kp H &kp J &kp K &kp L &kp SQT
&kp Z &kp X &kp C &kp V &kp B &kp N &kp M &kp COMMA &kp DOT &kp SEMI
&lc 3 &kp RSHFT &kp SPACE &lc 4
>;
};

NUM {
bindings = <
&sl SYM &kp N7 &kp N8 &kp N9 &kp COLON &trans &trans &trans &trans &trans
&kp N0 &kp N4 &kp N5 &kp N6 &sl SYM &trans &trans &trans &trans &trans
&kp COMMA &kp N1 &kp N2 &kp N3 &kp DOT &trans &trans &trans &trans &trans
&trans &trans &trans &trans
&sl 4 &kp N7 &kp N8 &kp N9 &kp COLON &trans &trans &trans &trans &trans
&kp N0 &kp N4 &kp N5 &kp N6 &sl 4 &trans &trans &trans &trans &trans
&kp COMMA &kp N1 &kp N2 &kp N3 &kp DOT &trans &trans &trans &trans &trans
&trans &trans &trans &trans
>;
};

NAV {
bindings = <
&kp TAB &swapper &kp LS(LC(TAB)) &kp LC(TAB) &kp LG(RBKT) &kp PG_UP &kp HOME &kp UP &kp END &kp BSPC
&sk LCTRL &sk LALT &sk LSHFT &sk LGUI &kp LG(LBKT) &kp PG_DN &kp LEFT &kp DOWN &kp RIGHT &kp RET
&kp LG(Z) &kp LG(X) &kp LG(C) &kp LG(V) &sk GLOBE &caps_word &playnp &vb_dn &vb_up &kp DEL
&trans &kp F18 &trans &trans
&kp TAB &swapper &kp LS(LC(TAB)) &kp LC(TAB) &kp LG(RBKT) &kp PG_UP &kp HOME &kp UP &kp END &kp BSPC
&sk LCTRL &sk LALT &sk LSHFT &sk LGUI &kp LG(LBKT) &kp PG_DN &kp LEFT &kp DOWN &kp RIGHT &kp RET
&kp LG(Z) &kp LG(X) &kp LG(C) &kp LG(V) &sk GLOBE &caps_word &playnp &vb_dn &vb_up &kp DEL
&trans &kp F18 &trans &trans
>;
};

SYM {
bindings = <
&kp ESC &kp LBRC &kp LBKT &kp LPAR &kp PIPE &kp AMPS &kp RPAR &kp RBKT &kp RBRC &kp DQT
&kp MINUS &kp CARET &kp GRAVE &kp TILDE &kp DOLLAR &kp HASH &sk RGUI &sk LSHFT &sk RALT &sk RCTRL
&kp PLUS &kp EQUAL &kp ASTRK &kp FSLH &kp PRCNT &kp AT &kp BSLH &kp QMARK &kp EXCL &kp COLON
&trans &mt RSHFT UNDER &trans &trans
&kp ESC &kp LBRC &kp LBKT &kp LPAR &kp PIPE &kp AMPS &kp RPAR &kp RBKT &kp RBRC &kp DQT
&kp MINUS &kp CARET &kp GRAVE &kp TILDE &kp DOLLAR &kp HASH &sk RGUI &sk LSHFT &sk RALT &sk RCTRL
&kp PLUS &kp EQUAL &kp ASTRK &kp FSLH &kp PRCNT &kp AT &kp BSLH &kp QMARK &kp EXCL &kp COLON
&trans &mt RSHFT UNDER &trans &trans
>;
};

FUN {
bindings = <
&kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &kp N6 &kp N7 &kp N8 &kp N9 &kp N0
&sk LCTRL &sk LALT &sk LSHFT &sk LGUI &kp F11 &kp F12 &sk RGUI &sk LSHFT &sk RALT &sk RCTRL
&kp F1 &kp F2 &kp F3 &kp F4 &kp F5 &kp F6 &kp F7 &kp F8 &kp F9 &kp F10
&trans &kp LG(LC(Q)) &kp CAPS &trans
&kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &kp N6 &kp N7 &kp N8 &kp N9 &kp N0
&sk LCTRL &sk LALT &sk LSHFT &sk LGUI &kp F11 &kp F12 &sk RGUI &sk LSHFT &sk RALT &sk RCTRL
&kp F1 &kp F2 &kp F3 &kp F4 &kp F5 &kp F6 &kp F7 &kp F8 &kp F9 &kp F10
&trans &kp LG(LC(Q)) &kp CAPS &trans
>;
};

MOU {
bindings = <
&kp ESC &kp TAB &kp LC(LS(TAB)) &kp LC(TAB) &kp RBKT &msc SCROLL_UP &msc SCROLL_LEFT &mmv MOVE_UP &msc SCROLL_RIGHT &kp BSPC
&kp LCTRL &kp LALT &kp LSHFT &kp LGUI &kp LBKT &msc SCROLL_DOWN &mmv MOVE_LEFT &mmv MOVE_DOWN &mmv MOVE_RIGHT &kp RET
&kp LG(Z) &kp LG(X) &kp LG(C) &kp LG(V) &kp GLOBE &kp F18 &mkp MB3 &mkp MB4 &mkp MB5 &kp DEL
&tog 6 &mt LSHFT SPACE &mkp MB1 &mkp MB2
>;
};


AOE {
bindings = <
&kp Q &kp W &kp E &kp R &kp T &trans &trans &trans &trans &trans
&mt LCTRL A &mt LALT S &mt LSHFT D &mt LCTRL F &kp G &trans &trans &trans &trans &trans
&lt 2 Z &kp X &kp C &kp V &kp B &trans &trans &trans &trans &trans
&lt AGS H &lt ABS DOT &trans &trans
&kp Q &kp W &kp E &kp R &kp T &trans &trans &trans &trans &trans
&mt LCTRL A &mt LALT S &mt LSHFT D &mt LCTRL F &kp G &trans &trans &trans &trans &trans
&lt 2 Z &kp X &kp C &kp V &kp B &trans &trans &trans &trans &trans
&lt 8 H &lt 9 DOT &trans &trans
>;
};

AGS {
bindings = <
&kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &trans &trans &trans &trans &kp BSPC
&mt LCTRL N6 &mt LALT N7 &mt LSHFT N8 &mt LCTRL N9 &kp N0 &trans &trans &trans &trans &kp ENTER
&kp COMMA &kp BSPC &kp SPACE &kp DOT &kp H &trans &trans &trans &trans &kp F3
&trans &kp DEL &trans &trans
&kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &trans &trans &trans &trans &kp BSPC
&mt LCTRL N6 &mt LALT N7 &mt LSHFT N8 &mt LCTRL N9 &kp N0 &trans &trans &trans &trans &kp ENTER
&kp COMMA &kp BSPC &kp SPACE &kp DOT &kp H &trans &trans &trans &trans &kp F3
&trans &kp DEL &trans &trans
>;
};

ABS {
bindings = <
&kp LC(LS(M)) &kp LC(LS(S)) &kp LC(LS(U)) &kp LC(LS(Y)) &kp LS(COMMA) &trans &trans &trans &trans &trans
&kp LC(LS(A)) &kp LC(LS(L)) &kp LC(LS(B)) &kp LC(LS(K)) &kp LS(LC(D)) &trans &trans &trans &trans &trans
&kp LC(LS(Z)) &kp LC(LS(I)) &kp LC(LS(G)) &kp LC(LS(V)) &kp LC(LS(H)) &trans &trans &trans &trans &trans
&trans &trans &trans &trans
&kp LC(LS(M)) &kp LC(LS(S)) &kp LC(LS(U)) &kp LC(LS(Y)) &kp LS(COMMA) &trans &trans &trans &trans &trans
&kp LC(LS(A)) &kp LC(LS(L)) &kp LC(LS(B)) &kp LC(LS(K)) &kp LS(LC(D)) &trans &trans &trans &trans &trans
&kp LC(LS(Z)) &kp LC(LS(I)) &kp LC(LS(G)) &kp LC(LS(V)) &kp LC(LS(H)) &trans &trans &trans &trans &trans
&trans &trans &trans &trans
>;
};

};
};
};

0 comments on commit 2405103

Please sign in to comment.