99#include <dt-bindings/zmk/keys.h>
1010
1111// #include "zmk-helpers/helper.h"
12- // #include "zmk-helpers/key-labels/34.h"
12+ #include "zmk-helpers/key-labels/34.h"
13+
14+ // TODO: left hand combos for uncommon Factorio keys.
15+
16+ #define FACTORY 0
17+ #define OVERLAY 1
18+ #define QWERTY 2
1319
1420/ {
1521keymap {
1622 compatible = "zmk,keymap";
17- /* hands_down_vibranium_layer { */
18- /* // Vibranium f (Neu-vf) with punctuation moved a bit to match my habits. */
19- /* // Q and Z exist only in combos. */
20- /* // ,-----------------------------. ,-----------------------------. */
21- /* // | X | W | M | G | J | | # @ | . : | ' ! | " ? | / \ | */
22- /* // | S | C | N | T | K | | , ; | A | E | I | H | */
23- /* // | F | P | L | D | V | | - | U | O | Y | B | */
24- /* // `-----------------| | R | | Spc | Bks |-----------------' */
25- /* bindings = < */
26- /* &kp X &kp W &kp M &kp G &kp J &kp AT &kp DOT &kp SQT &kp DQT &kp FSLH */
27- /* &kp S &kp C &kp N &kp T &kp K &kp COMMA &kp A &kp E &kp I &kp H */
28- /* &kp F &kp P &kp L &kp D &kp V &kp MINUS &kp U &kp O &kp Y &kp B */
29- /* &none &kp R &kp SPACE &kp BACKSPACE */
30- /* >; */
31- /* display-name = "HDVibr"; */
32- /* }; */
23+
24+ factorio_layer {
25+ // ,-----------------------------. ,-----------------------------.
26+ // | T | Q | W | E | R | | Y | U | I | O | P |
27+ // |Shift| A | S | D | H | | H | J | K | L | ; |
28+ // | Ctrl| Z | X | C | V | | N | M | , | . | / |
29+ // `-----------------|F/OVL|Space| | Spc | Bks |-----------------'
30+ bindings = <
31+ &kp T &kp Q &kp W &kp E &kp R &qkp Y &qkp U &qkp I &qkp O &qkp P
32+ &kp LSHIFT &kp A &kp S &kp D &kp H &qkp H &qkp J &qkp K &qkp L &qkp SEMI
33+ &kp LCTRL &kp Z &kp X &kp C &kp V &qkp N &qkp M &qkp COMMA &qkp DOT &qkp FSLH
34+ &kp F &kp SPACE &qkp SPACE &to QWERTY
35+ >;
36+ display-name = "F A C";
37+ };
38+
39+ overlay_layer {
40+ &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans
41+ &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans
42+ &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans
43+ &trans &trans &trans &trans
44+ };
45+
3346 qwerty_layer {
3447// ,-----------------------------. ,-----------------------------.
3548// | Q | W | E | R | T | | Y | U | I | O | P |
@@ -40,10 +53,20 @@ keymap {
4053 &kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P
4154 &kp A &kp S &kp D &kp F &kp G &kp H &kp J &kp K &kp L &kp SEMI
4255 &kp Z &kp X &kp C &kp V &kp B &kp N &kp M &kp COMMA &kp DOT &kp FSLH
43- &kp ESC &kp LSHIFT &kp SPACE &kp BACKSPACE
56+ &kp ESC &kp LSHIFT &kp SPACE &tog QWERTY
4457 >;
4558 display-name = "QWERTY";
4659 };
47- };
48- // end keymap
60+ }; // end keymap
61+ macros {
62+ qkp: qwerty_keypress {
63+ compatible = "zmk,macro-one-param";
64+ #binding-cells = <1>;
65+ bindings
66+ = <¯o_param_1to1>
67+ , <&to QWERTY>
68+ , <&kp MACRO_PLACEHOLDER>
69+ ;
70+ };
71+ }; // end macros
4972};
0 commit comments