Add readme

This commit is contained in:
Björn Struckmeier 2024-12-08 11:35:29 -05:00
parent 96015e01ac
commit 56973404ac
5 changed files with 204 additions and 166 deletions

View file

@ -16,10 +16,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
#ifdef COLEMAK_DH_ENABLE
[LAYER_COLEMAK_DH] = LAYOUT_split_3x6_3_wrapper(_COLEMAK_DH_3x6_, _THUMBS_3_3_),
#endif /* ifdef COLEMAK_DH_ENABLE */
#ifdef MOUSEKEY_ENABLE
[LAYER_POINTER] = LAYOUT_split_3x6_3_wrapper(_POINT_3x6_, _PL4_3_, _PR4_3_),
#endif /* ifdef MOUSEKEY_ENABLE */
[LAYER_SYMBOL] = LAYOUT_split_3x6_3_wrapper(_SYMBL_3x6_, _SL4_3_, _SR4_3_), //
[LAYER_LOWER] = LAYOUT_split_3x6_3_wrapper(_LOWER_3x6_, _LL4_3_, _LR4_3_), //
[LAYER_RAISE] = LAYOUT_split_3x6_3_wrapper(_RAISE_3x6_, _RL4_3_, _RR4_3_), //
[LAYER_POINTER] = LAYOUT_split_3x6_3_wrapper(_POINT_3x6_, _PL4_3_, _PR4_3_), //
[LAYER_ATTIC] = LAYOUT_split_3x6_3_wrapper(_ATTIC_3x6_, _AL4_3_, _AR4_3_), //
[LAYER_SYMBL] = LAYOUT_split_3x6_3_wrapper(_SYMBL_3x6_, _SL4_3_, _SR4_3_), //
[LAYER_LOWER] = LAYOUT_split_3x6_3_wrapper(_LOWER_3x6_, _LL4_3_, _LR4_3_), //
[LAYER_RAISE] = LAYOUT_split_3x6_3_wrapper(_RAISE_3x6_, _RL4_3_, _RR4_3_), //
[LAYER_ATTIC] = LAYOUT_split_3x6_3_wrapper(_ATTIC_3x6_, _AL4_3_, _AR4_3_), //
};

123
users/struckmb/README.md Normal file
View file

@ -0,0 +1,123 @@
These keymaps are using keymap_german_mac_iso.
Symbols are 'translated', if a linux/windows host is detected.
# Base Layers
First and last column keys on base layers for 6x3 keyboards,
(X) is the corresponding key from the currently active base layer:
```
A/BSp│ │A/(X)
─────┼─ ─┼─────
C/Esc│ (...other keys...) │C/(X)
─────┼─ ─┼─────
G/App│ │G/Ent
```
All base layers share the same thumb cluster:
(If the keyboard only has 2 keys on one side, the outermost key (marked with *) is missing)
```
* *
Esc│Ent│Tab│ │Bsp│Spc│Del
───┴───┴LOW┘ └RSE┴───┴───
```
## QWERTY (german adaption)
```
q │ w │ e │ r │ t z │ u │ i │ o │ p │(ü)
───┼───┼───┼───┼─── ───┼───┼───┼───┼─── ───
a │ s │ d │ f │ g h │ j │ k │ l │ ö │(ä)
─Σ─┼───┼───┼───┼─── ───┼───┼───┼───┼─Σ─ ───
y │ x │ c │ v │ b n │ m │ , │ . │ ß │
─M─┴───┴───┴───┴─── ───┴───┴───┴───┴─M─
```
## BONE
```
j │ d │ u │ a │ x p │ h │ l │ m │ w │(ß)
───┼───┼───┼───┼─── ───┼───┼───┼───┼─── ───
c │ t │ i │ e │ o b │ n │ r │ s │ g │(q)
─Σ─┼───┼───┼───┼─── ───┼───┼───┼───┼─Σ─ ───
f │ v │ ü │ ä │ ö y │ z │ , │ . │ k │
─M─┴───┴───┴───┴─── ───┴───┴───┴───┴─M─
```
## Colemak (Mod DH, german adaption)
```
q │ w │ f │ p │ b j │ l │ u │ y │ ö │(ü)
───┼───┼───┼───┼─── ───┼───┼───┼───┼─── ───
a │ r │ s │ t │ g m │ n │ e │ i │ o │(ä)
─Σ─┼───┼───┼───┼─── ───┼───┼───┼───┼─Σ─ ───
z │ x │ c │ d │ v k │ h │ , │ . │ ß │
─M─┴───┴───┴───┴─── ───┴───┴───┴───┴─M─
```
# Additional Layers
## Symbols
```
(ALT)│ @ │ _ │ [ │ ] │ ^ ! │ < │ > │ = │ & │(ALT)
───── ───┼───┼───┼───┼─── ───┼───┼───┼───┼─── ─────
(CTL)│ \ │ / │ { │ } │ * ? │ ( │ ) │ - │ : │(CTL)
───── ───┼───┼───┼───┼─── ───┼───┼───┼───┼─── ─────
(GUI)│ # │ $ │ | │ ~ │ ´ + │ % │ " │ ' │ ; │(GUI)
───┌───┬───┐ ┌───┬───┐───
° │ § │ ` │ │AGr│Spc│CWT
───└───┴───┘ └───┴───┘───
```
(when dynamic tapping term is enabled, thumbs change to:)
```
───┌───┬───┐ ┌───┬───┐───
PTT│ § │TT+│ │TT-│Spc│CWT
───└───┴───┘ └───┴───┘───
```
## Lower (Function keys and numbers)
```
(ALT)│F1 │F2 │F3 │F4 │ £ / │ 7 │ 8 │ 9 │ - │(ALT)
───── ───┼───┼───┼───┼─── ───┼───┼───┼───┼─── ─────
(CTL)│F5 │F6 │F7 │F8 │ € + │ 4 │ 5 │ 6 │ . │(CTL)
───── ───┼───┼───┼───┼─── ───┼───┼───┼───┼─── ─────
(GUI)│F9 │F10│F11│F12│ ¢ 0 │ 1 │ 2 │ 3 │ , │(GUI)
───┌───┬───┐ ┌───┬───┐───
$ │Sft│(v)│ │Bsp│Spc│App
───└───┴───┘ └ATT┴───┘───
```
## Raise (Navigation and control keys)
(the home row modifiers on the right are sticky)
```
(ALT)│PUp│BSp│ ↑ │Del│Ins Prv│Stp│Ply│Nxt│Ejt│(ALT)
───── ───┼───┼───┼───┼─── ───┼───┼───┼───┼─── ─────
(CTL)│Hme│ ← │ ↓ │ → │End * Meh│Sft│Ctl│Alt│Gui│(CTL)
───── ───┼───┼───┼───┼─── ───┼───┼───┼───┼─── ─────
(GUI)│Esc│Cut│Cpy│Pst│PDn PSc│CWT│Pse│AGr│SLk│(GUI)
───┌───┬───┐ ┌───┬───┐───
Prv│V -│V ×│ │(v)│V +│Nxt
───└───┴ATT┘ └───┴───┘───
```
## Pointer (Mouse)
(only if mouse keys are enabled)
* GSC: GUI+Shift+Click
* CSC: CTL+Shift+Click
```
(ALT)│vMv│<M<Ms>M>│ │GSC│CSC│ │ │(ALT)
───── ───┼───┼───┼───┼─── ───┼───┼───┼───┼─── ─────
(CTL)│Bt4│Ms←│Ms↓│Ms→│Bt5 Meh│Sft│Ctl│Alt│Gui│(CTL)
───── ───┼───┼───┼───┼─── ───┼───┼───┼───┼─── ─────
(GUI)│Tb←│Cut│Cpy│Pst│^M^ Slo│Med│Fst│AGr│Tb→│(GUI)
───┌───┬───┐ ┌───┬───┐───
GSC│Bt1│Bt2│ │Gui│Bt3│CSC
───└───┴───┘ └───┴───┘───
```
## Attic (Adjustments and missing stuff)
```
(ALT)│QBt│ECl│LAs│LAr│APP ¡ │ │ « │ » │ │(§)
───── ───┼───┼───┼───┼─── ───┼───┼───┼───┼───
(CTL)│LyG│Ly←│Ly→│BsL│MDX ¿ │ • │ │(…)
───── ───┼───┼───┼───┼─── ───┼───┼───┼───┼───
(GUI)│RGB│R_S│R_H│R_V│R_M n-│m-—│ „ │ “ │ ”
───┌───┬───┐ ┌───┬───┐───
LSf│Br-│(v)│ │(v)│Br+│RSf
───└───┴───┘ └───┴───┘───
```

View file

@ -22,7 +22,7 @@ td_state_t cur_dance(tap_dance_state_t *state) {
void symL_finished(tap_dance_state_t *state, void *user_data) {
td_state = cur_dance(state);
if (td_state == TD_SINGLE_HOLD) {
layer_on(LAYER_SYMBOL);
layer_on(LAYER_SYMBL);
return;
}
uint8_t current_layer = get_highest_layer(default_layer_state);
@ -65,7 +65,7 @@ void symL_finished(tap_dance_state_t *state, void *user_data) {
void symL_reset(tap_dance_state_t *state, void *user_data) {
if (td_state == TD_SINGLE_HOLD) {
layer_off(LAYER_SYMBOL);
layer_off(LAYER_SYMBL);
return;
}
uint8_t current_layer = get_highest_layer(default_layer_state);
@ -90,7 +90,7 @@ void symL_reset(tap_dance_state_t *state, void *user_data) {
void symR_finished(tap_dance_state_t *state, void *user_data) {
td_state = cur_dance(state);
if (td_state == TD_SINGLE_HOLD) {
layer_on(LAYER_SYMBOL);
layer_on(LAYER_SYMBL);
return;
}
uint8_t current_layer = get_highest_layer(default_layer_state);
@ -133,7 +133,7 @@ void symR_finished(tap_dance_state_t *state, void *user_data) {
void symR_reset(tap_dance_state_t *state, void *user_data) {
if (td_state == TD_SINGLE_HOLD) {
layer_off(LAYER_SYMBOL);
layer_off(LAYER_SYMBL);
return;
}
uint8_t current_layer = get_highest_layer(default_layer_state);
@ -161,5 +161,4 @@ tap_dance_action_t tap_dance_actions[] = {
[SYM_L] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, symL_finished, symL_reset),
[SYM_R] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, symR_finished, symR_reset),
};
#endif // TAP_DANCE_ENABLE

View file

@ -7,31 +7,16 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
case NO_MODS:
clear_oneshot_mods();
return false;
#ifdef QWERTY_ENABLE
case DL_QWER:
set_single_persistent_default_layer(LAYER_QWERTY);
return false;
#endif /* ifdef QWERTY_ENABLE */
#ifdef BONE_ENABLE
case DL_BONE:
set_single_persistent_default_layer(LAYER_BONE);
return false;
#endif /* ifdef BONE_ENABLE */
#ifdef COLEMAK_DH_ENABLE
case DL_CODH:
set_single_persistent_default_layer(LAYER_COLEMAK_DH);
return false;
#endif /* ifdef COLEMAK_DH_ENABLE */
case DL_PREV:
if (get_highest_layer(default_layer_state) > 0) {
set_single_persistent_default_layer(get_highest_layer(default_layer_state) - 1);
} else {
set_single_persistent_default_layer(LAYER_SYMBOL - 1);
set_single_persistent_default_layer(LAYER_SYMBL - 1);
}
return false;
case DL_NEXT:
// uint8_t next_default_layer = get_highest_layer(default_layer_state) + 1;
if (get_highest_layer(default_layer_state) + 1 < LAYER_SYMBOL) {
if (get_highest_layer(default_layer_state) + 1 < LAYER_SYMBL) {
set_single_persistent_default_layer(get_highest_layer(default_layer_state) + 1);
} else {
set_single_persistent_default_layer(0);
@ -90,6 +75,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
break;
case OS_LINUX:
case OS_WINDOWS:
switch (keycode) {
case DE_AT: // @
if (record->event.pressed) {
@ -322,8 +308,8 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
// ???
break;
}
#endif /* ifdef OS_DETECTION_ENABLE */
return
// process_record_keymap(keycode, record) &&
// #ifdef ENCODER_ENABLE

View file

@ -10,35 +10,6 @@
# endif // !BONE_ENABLE
#endif // !QWERTY_ENABLE
// one shot shortcuts
#define OSM_ALT OSM(MOD_LALT)
#define OSM_AGR OSM(MOD_RALT)
#define OSM_CTL OSM(MOD_LCTL)
#define OSM_GUI OSM(MOD_LGUI)
#define OSM_MEH OSM(MOD_MEH)
#define OSM_SFT OSM(MOD_LSFT)
// layer switching shortcuts
#define LOW_TAB LT(LAYER_LOWER, KC_TAB)
#define RSE_BSP LT(LAYER_RAISE, KC_BSPC)
#define ATT(kc) LT(LAYER_ATTIC, kc)
#ifdef TAP_DANCE_ENABLE
# define SY_L(kc) TD(SYM_L)
# define SY_R(kc) TD(SYM_R)
#else
# define SY_L(kc) LT(LAYER_SYMBOL, kc)
# define SY_R(kc) LT(LAYER_SYMBOL, kc)
#endif // TAP_DANCE_ENABLE
#ifdef MOUSEKEY_ENABLE
# define MS(kc) LT(LAYER_POINTER, kc)
#else
# define MS(kc) kc
#endif
// // first and last column for 6 column keyboards:
#define SFT_ENT LSFT_T(KC_ENT)
#define SFT_SPC RSFT_T(KC_SPC)
/// Enumeration of layers
enum userspace_layers {
// base layers
@ -54,7 +25,6 @@ enum userspace_layers {
#ifdef GAME_ENABLE
LAYER_GAME,
#endif /* ifdef GAME_ENABLE */
LAYER_SYMBOL,
#ifdef ASETNIOP_ENABLE
LAYER_ASETNIOP,
#endif /* ifdef ASETNIOP_ENABLE */
@ -68,12 +38,13 @@ enum userspace_layers {
L_ARTS_MSE,
#endif /* ifdef ARTSENIO_ENABLE */
// standard layers
LAYER_SYMBL,
LAYER_LOWER,
LAYER_RAISE,
#ifdef MOUSEKEY_ENABLE
LAYER_POINTER,
#endif // MOUSEKEY_ENABLE
LAYER_ATTIC
LAYER_ATTIC,
};
// Custom macro keycode ranges
@ -136,6 +107,35 @@ enum userspace_custom_keycodes {
#define DL_ARTS DF(LAYER_ARTSENIO)
#define DL_ASET DF(LAYER_ASETNIOP)
// layer switching shortcuts
#define LOW_TAB LT(LAYER_LOWER, KC_TAB)
#define RSE_BSP LT(LAYER_RAISE, KC_BSPC)
#define ATT(kc) LT(LAYER_ATTIC, kc)
#ifdef TAP_DANCE_ENABLE
# define SY_L(kc) TD(SYM_L)
# define SY_R(kc) TD(SYM_R)
#else
# define SY_L(kc) LT(LAYER_SYMBL, kc)
# define SY_R(kc) LT(LAYER_SYMBL, kc)
#endif // TAP_DANCE_ENABLE
#ifdef MOUSEKEY_ENABLE
# define MS(kc) LT(LAYER_POINTER, kc)
#else
# define MS(kc) kc
#endif
// one shot modifier shortcuts
#define OSM_ALT OSM(MOD_LALT)
#define OSM_AGR OSM(MOD_RALT)
#define OSM_CTL OSM(MOD_LCTL)
#define OSM_GUI OSM(MOD_LGUI)
#define OSM_MEH OSM(MOD_MEH)
#define OSM_SFT OSM(MOD_LSFT)
// // first and last column for 6 column keyboards:
#define SFT_ENT LSFT_T(KC_ENT)
#define SFT_SPC RSFT_T(KC_SPC)
#ifdef TAP_DANCE_ENABLE
// Tap Dance keycodes
enum td_keycodes {
@ -161,12 +161,7 @@ void symR_reset(tap_dance_state_t *state, void *user_data);
// /// // /* KEYMAPS */ // /// //
/* first and last column base layer keys for 6x3 keyboards
*
* A/BSpEntTab BspSpcDel
* LOW RSE
* * *
*/
/* first and last column base layer keys for 6x3 keyboards */
#define _0L1_1_ LALT_T(KC_BSPC)
#define _0L2_1_ LCTL_T(KC_ESC)
#define _0L3_1_ LGUI_T(KC_APP)
@ -180,23 +175,12 @@ void symR_reset(tap_dance_state_t *state, void *user_data);
#define _0R4_2_ RSE_BSP, SFT_SPC
#define _0R4_3_ _0R4_2_, KC_DEL
/* THUMBS for base layers
*
* EscEntTab BspSpcDel
* LOW RSE
* * *
*/
/* THUMBS for base layers */
#define _THUMBS_3_2_ _0L4_3_, _0R4_2_
#define _THUMBS_3_3_ _0L4_3_, _0R4_3_
#ifdef QWERTY_ENABLE
/* QWERTY layout
* q w e r t z u i o p (ü)
*
* a s d f g h j k l ö (ä)
*
* y x c v b n m , . ß (Ent)
*/
/* QWERTY layout */
# define _QL1_5_ DE_Q, DE_W, DE_E, DE_R, DE_T
# define _QL2_5_ SY_L(DE_A), DE_S, DE_D, DE_F, DE_G
# define _QL3_5_ MS(DE_Y), DE_X, DE_C, DE_V, DE_B
@ -216,13 +200,7 @@ void symR_reset(tap_dance_state_t *state, void *user_data);
#endif // QWERTY_ENABLE
#ifdef BONE_ENABLE
/* BONE layout
* j d u a x p h l m w (ß)
*
* c t i e o b n r s g (q)
*
* f v ü ä ö y z , . k (Ent)
*/
/* BONE layout */
# define _BL1_5_ DE_J, DE_D, DE_U, DE_A, DE_X
# define _BL2_5_ SY_L(DE_C), DE_T, DE_I, DE_E, DE_O
# define _BL3_5_ MS(DE_F), DE_V, DE_UDIA, DE_ADIA, DE_ODIA
@ -242,13 +220,7 @@ void symR_reset(tap_dance_state_t *state, void *user_data);
#endif // BONE_ENABLE
#ifdef COLEMAK_DH_ENABLE
/* Colemak Mod-DH layout (german adaption)
* q w f p b j l u y õ (ü)
*
* a r s t g m n e i o (ä)
*
* z x c d v k h , . ß (Ent)
*/
/* Colemak Mod-DH layout (german adaption) */
# define _CL1_5_ DE_Q, DE_W, DE_F, DE_P, DE_B
# define _CL2_5_ SY_L(DE_A), DE_R, DE_S, DE_T, DE_G
# define _CL3_5_ MS(DE_Z), DE_X, DE_C, DE_D, DE_V
@ -299,21 +271,7 @@ void symR_reset(tap_dance_state_t *state, void *user_data);
# define _GR4_3_ _GR4_2_, KC_LALT
#endif // GAME_ENABLE
/* Symbols layer
* @ _ [ ] ^ ! < > = &
*
* \ / { } * ? ( ) - :
*
* # $ | ~ ´ + % " │ ' │ ;
* (with dynamic tapping term enabled:)
*
* PTT § TT+ TT-SpcCWT
*
* * (otherwise:) *
*
* ° § ` AGrSpcCWT
*
*/
/* Symbols layer */
#define _SL1_5_ DE_AT, DE_UNDS, DE_LBRC, DE_RBRC, DE_CIRC
#define _SL2_5_ DE_BSLS, DE_SLSH, DE_LCBR, DE_RCBR, DE_ASTR
#define _SL3_5_ DE_HASH, DE_DLR, DE_PIPE, DE_TILD, DE_ACUT
@ -342,6 +300,33 @@ void symR_reset(tap_dance_state_t *state, void *user_data);
#define _SYMBL_3x5_ _SL1_5_, _SR1_5_, _SL2_5_, _SR2_5_, _SL3_5_, _SR3_5_
#define _SYMBL_3x6_ _SL1_6_, _SR1_6_, _SL2_6_, _SR2_6_, _SL3_6_, _SR3_6_
#ifdef MOUSEKEY_ENABLE
# define MS_GSB1 S(G(KC_BTN1))
# define MS_CSB1 S(C(KC_BTN1))
/* Pointer layer */
# define _PL1_5_ KC_WH_D, KC_WH_L, KC_MS_U, KC_WH_R, XXXXXXX
# define _PL2_5_ KC_BTN4, KC_MS_L, KC_MS_D, KC_MS_R, KC_BTN5
# define _PL3_5_ S(C(KC_TAB)), KC_CUT, KC_COPY, KC_PSTE, KC_WH_U
# define _PR1_5_ XXXXXXX, MS_GSB1, MS_CSB1, XXXXXXX, XXXXXXX
# define _PR2_5_ OSM_MEH, OSM_SFT, OSM_CTL, OSM_ALT, OSM_GUI
# define _PR3_5_ KC_ACL0, KC_ACL1, KC_ACL2, KC_RALT, C(KC_TAB)
//
# define _PL1_6_ KC_LALT, _PL1_5_
# define _PL2_6_ KC_LCTL, _PL2_5_
# define _PL3_6_ KC_LGUI, _PL3_5_
# define _PR1_6_ _PR1_5_, KC_LALT
# define _PR2_6_ _PR2_5_, KC_RCTL
# define _PR3_6_ _PR3_5_, KC_RGUI
//
# define _PL4_2_ KC_BTN1, KC_BTN2
# define _PL4_3_ MS_GSB1, _PL4_2_
# define _PR4_2_ KC_LGUI, KC_BTN3
# define _PR4_3_ _PR4_2_, MS_CSB1
//
# define _POINT_3x5_ _PL1_5_, _PR1_5_, _PL2_5_, _PR2_5_, _PL3_5_, _PR3_5_
# define _POINT_3x6_ _PL1_6_, _PR1_6_, _PL2_6_, _PR2_6_, _PL3_6_, _PR3_6_
#endif // MOUSEKEY_ENABLE
/* Lower: Numbers and function keys
* F1 F2 F3 F4 £ / 7 8 9 -
*
@ -375,17 +360,7 @@ void symR_reset(tap_dance_state_t *state, void *user_data);
#define _LOWER_3x5_ _LL1_5_, _LR1_5_, _LL2_5_, _LR2_5_, _LL3_5_, _LR3_5_
#define _LOWER_3x6_ _LL1_6_, _LR1_6_, _LL2_6_, _LR2_6_, _LL3_6_, _LR3_6_
/* Raise: Control + Navigation layer
* PUpBSp DelIns PrvStpPlyNxtEjt
*
* Hme End MehSftCtlAltGui
*
* EscCutCpyPstPDn PScCWTPseAGrSLk
*
* PrvV -V × (v)V +Nxt
* ATT
* * *
*/
/* Raise: Control + Navigation layer */
#define _RL1_5_ KC_PGUP, KC_BSPC, KC_UP, KC_DEL, KC_INS
#define _RL2_5_ KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, KC_END
#define _RL3_5_ KC_ESC, KC_CUT, KC_COPY, KC_PSTE, KC_PGDN
@ -408,54 +383,7 @@ void symR_reset(tap_dance_state_t *state, void *user_data);
#define _RAISE_3x5_ _RL1_5_, _RR1_5_, _RL2_5_, _RR2_5_, _RL3_5_, _RR3_5_
#define _RAISE_3x6_ _RL1_6_, _RR1_6_, _RL2_6_, _RR2_6_, _RL3_6_, _RR3_6_
#ifdef MOUSEKEY_ENABLE
# define MS_GSB1 S(G(KC_BTN1))
# define MS_CSB1 S(C(KC_BTN1))
/* Pointer layer
* vMv<M<Ms>M> GSCCSC
*
* Bt4MsMsMsBt5 * MehSftCtlAltGui *
*
* TbCutCpyPst^M^ SloMedFstAGrTb
*
* GSCBt1Bt2 GuiBt3CSC
*
* * *
*/
# define _PL1_5_ KC_WH_D, KC_WH_L, KC_MS_U, KC_WH_R, XXXXXXX
# define _PL2_5_ KC_BTN4, KC_MS_L, KC_MS_D, KC_MS_R, KC_BTN5
# define _PL3_5_ S(C(KC_TAB)), KC_CUT, KC_COPY, KC_PSTE, KC_WH_U
# define _PR1_5_ XXXXXXX, MS_GSB1, MS_CSB1, XXXXXXX, XXXXXXX
# define _PR2_5_ OSM_MEH, OSM_SFT, OSM_CTL, OSM_ALT, OSM_GUI
# define _PR3_5_ KC_ACL0, KC_ACL1, KC_ACL2, KC_RALT, C(KC_TAB)
//
# define _PL1_6_ KC_LALT, _PL1_5_
# define _PL2_6_ KC_LCTL, _PL2_5_
# define _PL3_6_ KC_LGUI, _PL3_5_
# define _PR1_6_ _PR1_5_, KC_LALT
# define _PR2_6_ _PR2_5_, KC_RCTL
# define _PR3_6_ _PR3_5_, KC_RGUI
//
# define _PL4_2_ KC_BTN1, KC_BTN2
# define _PL4_3_ MS_GSB1, _PL4_2_
# define _PR4_2_ KC_LGUI, KC_BTN3
# define _PR4_3_ _PR4_2_, MS_CSB1
//
# define _POINT_3x5_ _PL1_5_, _PR1_5_, _PL2_5_, _PR2_5_, _PL3_5_, _PR3_5_
# define _POINT_3x6_ _PL1_6_, _PR1_6_, _PL2_6_, _PR2_6_, _PL3_6_, _PR3_6_
#endif
/* Attic: Adjustments and missing stuff
* QBtEClLAsLArAPP ¡ « » (§)
*
* LyGLyLyBsLMDX ¿ ()
*
* RGBR_SR_HR_VR_M n-m-
*
* LSfBr-(v) (v)Br+RSf
*
* * *
*/
/* Attic: Adjustments and missing stuff */
#define _AL1_5_ QK_BOOT, EE_CLR, DL_ASET, DL_ARTS, KC_APP
#define _AL2_5_ DL_GAME, DL_PREV, DL_NEXT, DL_QWER, NO_MODS
#define _AL3_5_ RGB_TOG, RGB_SAI, RGB_HUI, RGB_VAI, RGB_MOD