system-manager-wakasu
  1#include <dt-bindings/zmk/mouse.h>
  2#include <input/processors.dtsi>
  3#include <behaviors.dtsi>
  4#include <dt-bindings/zmk/bt.h>
  5#include <dt-bindings/zmk/keys.h>
  6#include <dt-bindings/zmk/outputs.h>
  7#include <dt-bindings/zmk/pointing.h>
  8#include <dt-bindings/zmk/rgb.h>
  9
 10#include "constants.h"
 11#define HOST_OS LINUX // Needed for unicode international_chars
 12
 13#include "zmk-helpers/helper.h"
 14#include "zmk-helpers/key-labels/eyelash42.h"
 15#include "zmk-helpers/unicode-chars/currency.dtsi"
 16#include "zmk-helpers/unicode-chars/french.dtsi"
 17#include "combos.dtsi"
 18#include "numword.dtsi"
 19#include "hold-tap.dtsi"
 20#include "mod-morph.dtsi"
 21#include "mouse.dtsi"
 22
 23#define ZMK_MOUSE_DEFAULT_MOVE_VAL 1200  // 600
 24#define ZMK_MOUSE_DEFAULT_SCRL_VAL 20    // 10
 25#define IDLE_MS 125
 26
 27
 28// 0: Bépo
 29// This is an "adaptation" of the bépo layout (https://bepo.fr/wiki/Accueil)
 30// There is some difference
 31// - No Ê or Ç keys, we don't have enough room
 32// - Not all RIGHT_ALT and RIGHT_ALT+SHIFT are available, as those might be accessed from a different layer instead, and some are very hard to do, like `…`
 33// - It works if the layout on the system (at least for that keyboard) is US_intl 😇. This is common enough (and available everywhere, Linux, Windows, OSX, Android, …)
 34// - TODO go to accent layer (and back)
 35ZMK_LAYER(Bepo,
 36// ╭───────────┬───────────┬───────────┬───────────┬────────────┬────────────╮                                ╭───────────┬─────────────┬─────────────┬────────────┬────────────┬────────────╮
 37     &kp TAB   &b_pipe_brkp  &kp EACUT  &p_amp_sect  &o_oe_cap    &AGRA E                 &kp UP                &car_excl   &v_qmark      &kp D       &l_fslh_pound  &kp J        &kp Z
 38// ├───────────┼───────────┼───────────┼───────────┼────────────┼────────────┤                                ├───────────┼─────────────┼─────────────┼────────────┼────────────┼────────────┤
 39     &smart_num NUM NUM   &hml GL A   &hml AL U   &hml SL I   &cl_e_euro   &hyp_com_smc  &kp LEFT  &kp RET  &kp RIGHT    &c_copy      &t_tm         &s_ss         &r_reg       &n_tilde     &kp M
 40// ├───────────┼───────────┼───────────┼───────────┼────────────┼────────────┤                                ├───────────┼─────────────┼─────────────┼────────────┼────────────┼────────────┤
 41     &kp GRAVE &agra_a_bslh_ae &y_lbrc_rsqt &x_rbrc_lsqt &dot_col  &k_tilde    &key_repeat &kp DOWN          &sqt_qma    &q_deg      &g_mu_dag      &h_ddag      &kp F        &kp W
 42// ╰───────────┴───────────────────────┼───────────┼────────────┼────────────┤                                ├───────────┼─────────────┼─────────────┼────────────┴────────────┴────────────╯
 43                                        &lt ACC DEL  &num_spc_und &lt NAV BSPC                                   &kp SL      &lt SYM RET   &kp AR
 44//                                     ╰───────────┴────────────┴────────────╯                                ╰───────────┴─────────────┴─────────────╯
 45	  , &inc_dec_kp C_VOLUME_UP C_VOLUME_DOWN
 46)
 47
 48// 1: ErgoL
 49// This is an "adaptation" of the ergol layout (https://ergol.org/claviers/compacts/#kbd_3x6)
 50ZMK_LAYER(ErgoL,
 51// ╭───────────┬───────────┬───────────┬───────────┬────────────┬────────────╮                                ╭───────────┬─────────────┬─────────────┬────────────┬────────────┬────────────╮
 52     &kp TAB     &kp Q       &kp C       &kp O       &kp P        &kp  W                  &kp UP                &kp J       &kp M         &kp D         &kp EXCL     &kp Y        &kp LBKT
 53// ├───────────┼───────────┼───────────┼───────────┼────────────┼────────────┤                                ├───────────┼─────────────┼─────────────┼────────────┼────────────┼────────────┤
 54     &kp EQUAL   &hml GL A   &hml AL S   &hml SL E   &hml CL N    &kp F         &kp LEFT  &kp RET  &kp RIGHT    &kp L       &hmr CR R     &hmr SR T     &hmr AR I    &hmr GL U    &kp SQT
 55// ├───────────┼───────────┼───────────┼───────────┼────────────┼────────────┤                                ├───────────┼─────────────┼─────────────┼────────────┼────────────┼────────────┤
 56     &kp GRAVE   &kp Z       &kp X       &min_qma    &kp V        &kp B        &key_repeat &kp DOWN          &dot_col    &kp H         &kp G         &com_smc     &kp K        &kp RBKT
 57// ╰───────────┴───────────────────────┼───────────┼────────────┼────────────┤                                ├───────────┼─────────────┼─────────────┼────────────┴────────────┴────────────╯
 58                                         ___         ___          ___                                           ___         ___           ___
 59//                                     ╰───────────┴────────────┴────────────╯                                ╰───────────┴─────────────┴─────────────╯
 60	  , &inc_dec_kp C_VOLUME_UP C_VOLUME_DOWN
 61)
 62
 63// 2: Qwerty
 64ZMK_LAYER(Qwerty,
 65// ╭───────────┬───────────┬───────────┬───────────┬────────────┬────────────╮                                ╭───────────┬─────────────┬─────────────┬────────────┬────────────┬────────────╮
 66     &kp TAB     &kp Q       &kp W       &kp E       &kp R        &kp T                   &kp UP                &kp Y       &kp U         &kp I         &kp O        &kp P        &kp LBKT
 67// ├───────────┼───────────┼───────────┼───────────┼────────────┼────────────┤                                ├───────────┼─────────────┼─────────────┼────────────┼────────────┼────────────┤
 68     &kp EQUAL   &hml GL A   &hml AL S   &hml SL D   &hml CL F    &kp G         &kp LEFT  &kp RET  &kp RIGHT    &kp H       &hmr CR J     &hmr SR K     &hmr AR L   &hmr GL SEMI  &kp SQT
 69// ├───────────┼───────────┼───────────┼───────────┼────────────┼────────────┤                                ├───────────┼─────────────┼─────────────┼────────────┼────────────┼────────────┤
 70     &kp GRAVE   &kp Z       &kp X       &kp C       &kp V        &kp B        &key_repeat &kp DOWN          &kp N       &kp M         &kp COMMA     &kp DOT      &kp FSLH     &kp RBKT
 71// ╰───────────┴───────────────────────┼───────────┼────────────┼────────────┤                                ├───────────┼─────────────┼─────────────┼────────────┴────────────┴────────────╯
 72                                         ___         ___          ___                                           ___         ___           ___
 73//                                     ╰───────────┴────────────┴────────────╯                                ╰───────────┴─────────────┴─────────────╯
 74	  , &inc_dec_kp C_VOLUME_UP C_VOLUME_DOWN
 75)
 76
 77// 3: Accents
 78//  Â À Ê É È Ê Î Ê Ô Ê Û Ù Ê Æ Ç
 79ZMK_LAYER(Accents,
 80// ╭───────────┬───────────┬───────────┬───────────┬────────────┬────────────╮                                ╭───────────┬─────────────┬─────────────┬────────────┬────────────┬────────────╮
 81     XXX         &kp AE      &AIGU I     &AGRA I     &CIRC I      &TREM I                 &kp UP                &TREM O     &CIRC O       &AGRA O       &AIGU O      XXX          &kp DQT
 82// ├───────────┼───────────┼───────────┼───────────┼────────────┼────────────┤                                ├───────────┼─────────────┼─────────────┼────────────┼────────────┼────────────┤
 83     &kp GRAVE   &kp OE      &AIGU E     &AGRA E     &CIRC E      &TREM E       &kp LEFT  &kp RET  &kp RIGHT    &TREM A     &CIRC A       &AGRA A       &AIGU A      &kp NTIL     &kp SQT
 84// ├───────────┼───────────┼───────────┼───────────┼────────────┼────────────┤                                ├───────────┼─────────────┼─────────────┼────────────┼────────────┼────────────┤
 85     XXX         XXX         XXX         XXX         XXX          XXX          &kp C_MUTE &kp DOWN              &TREM U     &CIRC U       &AGRA U       &AIGU U      &kp CDIL     &kp CARET
 86// ╰───────────┴───────────────────────┼───────────┼────────────┼────────────┤                                ├───────────┼─────────────┼─────────────┼────────────┴────────────┴────────────╯
 87                                         ___         ___          ___                                           ___         ___           ___
 88//                                     ╰───────────┴────────────┴────────────╯                                ╰───────────┴─────────────┴─────────────╯
 89	  , &inc_dec_kp C_VOLUME_UP C_VOLUME_DOWN
 90)
 91
 92// 4: SYMBOLS
 93ZMK_LAYER(Symbols,
 94// ╭───────────┬───────────┬───────────┬───────────┬────────────┬────────────╮                                ╭───────────┬─────────────┬─────────────┬────────────┬────────────┬────────────╮
 95     &kp BSLH    &AGRA SPACE  &kp LT      &kp GT      &kp MINUS    &kp PIPE                &kp UP                &kp CARET   &kp LBRC      &kp RBRC      &kp DLLR     &CIRC SPACE  XXX
 96// ├───────────┼───────────┼───────────┼───────────┼────────────┼────────────┤                                ├───────────┼─────────────┼─────────────┼────────────┼────────────┼────────────┤
 97     XXX         &kp EXCL &hml AL STAR &hml SL FSLH &hml CL EQUAL &kp AMPS      &kp LEFT  &kp RET  &kp RIGHT    &kp HASH   &hmr CR LPAR  &hmr SR RPAR  &hmr AR SEMI  &TREM SPACE  XXX
 98// ├───────────┼───────────┼───────────┼───────────┼────────────┼────────────┤                                ├───────────┼─────────────┼─────────────┼────────────┼────────────┼────────────┤
 99     XXX         &kp TILDE   &kp PLUS    &kp LBKT    &kp RBKT     &kp PRCNT    &kp C_MUTE &kp DOWN              &kp AT      &kp COLON     &kp COMMA     &kp DOT      &AIGU SPACE  XXX
100// ╰───────────┴───────────────────────┼───────────┼────────────┼────────────┤                                ├───────────┼─────────────┼─────────────┼────────────┴────────────┴────────────╯
101                                         ___         ___          ___                                           ___         ___           ___
102//                                     ╰───────────┴────────────┴────────────╯                                ╰───────────┴─────────────┴─────────────╯
103	  , &inc_dec_kp C_VOLUME_UP C_VOLUME_DOWN
104)
105
106// 5: Navigation
107ZMK_LAYER(Nav,
108// ╭───────────┬───────────┬───────────┬───────────┬────────────┬────────────╮                                ╭───────────┬─────────────┬─────────────┬────────────┬────────────┬────────────╮
109    &out OUT_TOG XXX         XXX         XXX         XXX          &bt BT_CLR              &mmv_up             &kp PRINTSCREEN &kp HOME      &kp UP        &kp END      &kp PG_UP    XXX
110// ├───────────┼───────────┼───────────┼───────────┼────────────┼────────────┤                                ├───────────┼─────────────┼─────────────┼────────────┼────────────┼────────────┤
111     XXX         &kp GL      &kp C_PREV  &kp C_PP    &kp C_NEXT   XXX          &mmv_lf    &mkp_lf  &mmv_rg      XXX         &kp LEFT      &kp DOWN      &kp RIGHT    &kp PG_DN    XXX
112// ├───────────┼───────────┼───────────┼───────────┼────────────┼────────────┤                                ├───────────┼─────────────┼─────────────┼────────────┼────────────┼────────────┤
113     XXX         &bt BT_PRV  &bt BT_NXT &rgb_ug RGB_TOG &rgb_ug RGB_EFF &rgb_ug RGB_COLOR_HSB(205, 66, 57) &kp C_MUTE &mmv_dn           XXX         XXX           XXX           XXX          XXX          XXX
114// ╰───────────┴───────────────────────┼───────────┼────────────┼────────────┤                                ├───────────┼─────────────┼─────────────┼────────────┴────────────┴────────────╯
115                                         ___         ___          ___                                           ___         ___           ___
116//                                     ╰───────────┴────────────┴────────────╯                                ╰───────────┴─────────────┴─────────────╯
117	  , &inc_dec_kp C_BRI_INC C_BRI_DEC
118)
119
120// 6: Numbers
121ZMK_LAYER(Numbers,
122// ╭───────────┬───────────┬───────────┬───────────┬────────────┬────────────╮                                ╭───────────┬─────────────┬─────────────┬────────────┬────────────┬────────────╮
123     XXX         &kp F1      &kp F2      &kp F3      &kp F4      &kp F5                   &kp UP               &kp MATH_1_4 &kp N7        &kp N8       &kp N9        &kp STAR     &kp SLASH
124// ├───────────┼───────────┼───────────┼───────────┼────────────┼────────────┤                                ├───────────┼─────────────┼─────────────┼────────────┼────────────┼────────────┤
125     XXX         &kp F6      &kp F7      &kp F8      &kp F9      &kp F10        &kp LEFT  &kp RET  &kp RIGHT   &kp MATH_1_2 &kp N4        &kp N5       &kp N6        &kp MINUS    &kp PLUS
126// ├───────────┼───────────┼───────────┼───────────┼────────────┼────────────┤                                ├───────────┼─────────────┼─────────────┼────────────┼────────────┼────────────┤
127     XXX         &kp F11     &kp F12     &kp F13     &kp F14     &kp F15        XXX       &kp DOWN             &kp MATH_3_4 &kp N1        &kp N2       &kp N3        &kp DOT      &kp COMMA
128// ╰───────────┴───────────────────────┼───────────┼────────────┼────────────┤                                ├───────────┼─────────────┼─────────────┼────────────┴────────────┴────────────╯
129                                         ___         ___          ___                                           ___         ___           &kp N0
130//                                     ╰───────────┴────────────┴────────────╯                                ╰───────────┴─────────────┴─────────────╯
131	  , &inc_dec_kp C_VOLUME_UP C_VOLUME_DOWN
132)
133
134// 7: Mouse
135ZMK_LAYER(Mouse,
136// ╭───────────┬───────────┬───────────┬───────────┬────────────┬────────────╮                                ╭───────────┬─────────────┬─────────────┬────────────┬────────────┬────────────╮
137     XXX         XXX         XXX         XXX         XXX          XXX                     &kp UP                XXX         XXX           &mmv_up       XXX          XXX          XXX
138// ├───────────┼───────────┼───────────┼───────────┼────────────┼────────────┤                                ├───────────┼─────────────┼─────────────┼────────────┼────────────┼────────────┤
139     XXX         &mwh_lf     &mwh_up     &mwh_dn     &mwh_rg      XXX           &kp LEFT  &kp RET  &kp RIGHT    XXX         &mmv_lf       &mmv_dn       &mmv_rg      XXX         XXX
140// ├───────────┼───────────┼───────────┼───────────┼────────────┼────────────┤                                ├───────────┼─────────────┼─────────────┼────────────┼────────────┼────────────┤
141     XXX         XXX         XXX         XXX         XXX          XXX           XXX       &kp DOWN              XXX         XXX           XXX           XXX          XXX          XXX
142// ╰───────────┴───────────────────────┼───────────┼────────────┼────────────┤                                ├───────────┼─────────────┼─────────────┼────────────┴────────────┴────────────╯
143                                         XXX         &mkp_lf      &mkp_md                                       &mkp_md     &mkp_rg       XXX
144//                                     ╰───────────┴────────────┴────────────╯                                ╰───────────┴─────────────┴─────────────╯
145	  , &inc_dec_kp C_VOLUME_UP C_VOLUME_DOWN
146)
147/*
148
149/*
150Local Variables:
151mode: c
152End:
153*/