From 050472a4d07d07c1d9ae17d2fd26d44e9d95d950 Mon Sep 17 00:00:00 2001 From: Eric Gebhart Date: Sat, 12 Nov 2022 00:09:41 +0100 Subject: Eric Gebhart user space and keymaps (#17487) Co-authored-by: Drashna Jaelre --- users/ericgebhart/layers/keypads.h | 236 +++++++++++++++++++++++++++++++++++++ 1 file changed, 236 insertions(+) create mode 100644 users/ericgebhart/layers/keypads.h (limited to 'users/ericgebhart/layers/keypads.h') diff --git a/users/ericgebhart/layers/keypads.h b/users/ericgebhart/layers/keypads.h new file mode 100644 index 0000000000..ab4100594d --- /dev/null +++ b/users/ericgebhart/layers/keypads.h @@ -0,0 +1,236 @@ +/* + Copyright 2018-2022 Eric Gebhart + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . +*/ +/**********************************************_**********************************/ +/* KEYPADS. Mostly all in Bepo and Qwerty versions */ +/* 4 row Pads: */ +/* * The BEAKL 15,19 Number pad, for the left hand. */ +/* * The BEAKL Wi hex pad, Number pad. */ +/* * Regular Number pad, for the right hand. */ +/* * 12 Function pad. */ +/* 3 row pads: */ +/* keypad */ +/* function pad - 3x4, 12 function keys. */ +/* */ +/* LAYERS: */ +/* 4 Row: */ +/* * BEAKL with a compact FuncPad on the right. */ +/* * Funcpad on the left, keypad on the right. */ +/* 3 Row: */ +/* * Funcpad on the left, keypad on the right. */ +/* * BEAKL with a compact FuncPad on the right. */ +/* */ +/********************************************************************************/ + +// BEAKL 15 (numpad layer): +/* +=* ^%~ */ +/* ↹523: */ +/* - 7.104 */ +/* /698, */ + +/* BEAKL27 (numpad layer): */ +/* ↹+/\*= yxz */ +/* -523: ~FED */ +/* 7.104 {CBA} */ +/* ,698⏎ []% */ + +// Keypads +#define ___KEYPAD_BEAKL_L1___ ___, _PLUS, _SLSH, _ASTR, _EQL +#define ___KEYPAD_BEAKL_L2___ _MINS, _5, _2, _3, _COLN +#define ___KEYPAD_BEAKL_L3___ _7, _DOT, _1, _0, _4 +#define ___KEYPAD_BEAKL_L4___ _COMM, _6, _9, _8, _COMM + +#define ___6KEYPAD_BEAKL_L1___ ___, KEYPAD_BEAKL_L1 +#define ___6KEYPAD_BEAKL_L2___ ___, KEYPAD_BEAKL_L2 +#define ___6KEYPAD_BEAKL_L3___ KC_MINS, KEYPAD_BEAKL_L3 +#define ___6KEYPAD_BEAKL_L4___ ___, KEYPAD_BEAKL_L4 + +// if there's room. the top row on the right. +#define ___KEYPAD_BEAKL_R1___ ___, KC_CIRC, KC_PERC, KC_TILD, ___ + + + +/// parts is parts. + +#define ___KP_BKL_WI_L1___ _X_, HEX_A, HEX_B, HEX_C, _X_ +#define ___KP_BKL_WI_L2___ _X_, HEX_D, HEX_E, HEX_F, _X_ +#define ___KP_BKL_WI_L3___ _X_, L_BRKT, R_BRKT, DELIM, _X_ + +#define ___KP_BKL_WI_R1___ _SLSH, _4, _5, _9, _ASTR +#define ___KP_BKL_WI_R2___ _DOT , _1, _2, _3, _MINS +#define ___KP_BKL_WI_R3___ _COMM, _8, _6, _7, _PLUS + +#define ___KEYPAD_1___ ___, _7, _8, _9, _PSLS +#define ___KEYPAD_2___ _DOT, _4, _5, _6, _PAST +#define ___KEYPAD_3___ _0, _1, _2, _3, _PMNS + +#define ___KEYPAD_miryoku_1___ _LBRC, _7, _8, _9, _RBRC, ____5_ +#define ___KEYPAD_miryoku_2___ _SCLN, _4, _5, _6, _EQUAL, ____5_ +#define ___KEYPAD_miryoku_3___ _GRV, _1, _2, _3, _BSLS, ____5_ + +// 4 Row keypads +#define ___5KEYPAD_1___ _X_, ___KEYPAD_1___ +#define ___5KEYPAD_2___ _X_, ___KEYPAD_2___ +#define ___5KEYPAD_3___ _X_, ___KEYPAD_3___ +#define ___5KEYPAD_4___ _X_, _0, _DOT, _PEQL, _PPLS + +// Function pad. Same idea as above, but for function keys. + +// Funcpads are a bit weird. THey are KC values, so for +// this to work, there are BP_ versions of the F keys. +// I don't really use this, so maybe it'll go away in favor +// of something more useful. +// 4x3 and 3x4 funcpads. +// Only 4 columns, so the fifth can be added to either end. +#define ___4_FUNCPAD_1___ _F9, _F10, _F11, _F12 +#define ___4_FUNCPAD_2___ _F5, _F6, _F7, _F8 +#define ___4_FUNCPAD_3___ _F1, _F2, _F3, _F4 + +#define ___FUNCPAD_miryoku_1___ KC_F12, KC_F7, KC_F8, KC_F9, KC_PRINT_SCREEN +#define ___FUNCPAD_miryoku_2___ KC_F11, KC_F4, KC_F5, KC_F6, KC_SCROLL_LOCK +#define ___FUNCPAD_miryoku_3___ KC_F10, KC_F1, KC_F2, KC_F3, KC_PAUSE + +// For the left or right side. +#define ___5x4_FUNCPAD_T___ _TRNS, _F10, _F11, _F12, _TRNS +#define ___5x4_FUNCPAD_1___ _TRNS, _F7, _F8, _F9, _TRNS +#define ___5x4_FUNCPAD_2___ _TRNS, _F4, _F5, _F6, _TRNS +#define ___5x4_FUNCPAD_3___ _TRNS, _F1, _F2, _F3, _TRNS + + +/********************************************************************************/ +/* FUNCPAD and Keypad Layer chunks */ +/********************************************************************************/ +// beakl wi is a hexpad numpad. +/* Beakle Wi, Hexpad and keypad - needs a zero somewhere.*/ +#define CARTE_KP_BKL_WI \ + carte_de_map( " ABC /459* ", \ + " DEF .123- ", \ + " {}| ,867+ ") + +#define ___KP_BKL_WI_3x10___ \ + CHUNK_LANG_MAP(___KP_BKL_WI_L1___, ___KP_BKL_WI_R1___, \ + ___KP_BKL_WI_L2___, ___KP_BKL_WI_R2___, \ + ___KP_BKL_WI_L3___, ___KP_BKL_WI_R3___) + + +// BEAKL 15 and a f1-f12 funcpad +#define CARTE_KP_BKL_FUNC \ + carte_de_map(" 523: F9-12", \ + " -7.104 F5-8", \ + " /798, F1-4") + +#define ___KP_BKL_FUNC_3x10___ \ + CHUNK_LANG_MAP(___KEYPAD_BEAKL_L2___, _TRNS, ___4_FUNCPAD_1___, \ + ___KEYPAD_BEAKL_L3___, _TRNS, ___4_FUNCPAD_2___, \ + ___KEYPAD_BEAKL_L4___, _TRNS, ___4_FUNCPAD_3___) + +// BEAKL 15 and mods. +#define CARTE_KP_BKL_MODS \ + carte_de_map(" 523: SL Mods", \ + " -7.104 OS Mods", \ + " /798, Enter") + + +#define ___KP_BKL_MODS_3x10___ \ + CHUNK_LANG_MAP(___KEYPAD_BEAKL_L2___, _TRNS, ___SML_MODS_R___, \ + ___KEYPAD_BEAKL_L3___, ___OS_MODS_R___, \ + ___KEYPAD_BEAKL_L4___, _TRNS, _ENT, _ENT, _ENT, _TRNS) + +// 4 rows, BEAKL 15 and a f1-f12 funcpad +#define ___KP_BKL_FUNC_4x10___ \ + CHUNK_LANG_ROW(___KEYPAD_BEAKL_L1___, ___KEYPAD_BEAKL_R1___), \ + CHUNK_LANG_MAP(___KP_BKL_FUNC_3x10___) + +// 4 rows, funcpad, regular keypad on right. +#define ___FP_KP_4x10___ \ + CHUNK_LANG_ROW(___5x4_FUNCPAD_T___, ___5KEYPAD_1___), \ + CHUNK_LANG_MAP(___5x4_FUNCPAD_1___, ___5KEYPAD_2___, \ + ___5x4_FUNCPAD_2___, ___5KEYPAD_3___, \ + ___5x4_FUNCPAD_3___, ___5KEYPAD_4___) + +#define CARTE_FP_KP \ + carte_de_map(" F9-12 789+", \ + " F5-8 .456*", \ + " F1-4 0123-") + +// funcpad, regular keypad on right. +#define ___FP_KP_3x10___ \ + CHUNK_LANG_MAP(___4_FUNCPAD_1___, ___, ___5KEYPAD_1___, \ + ___4_FUNCPAD_2___, ___, ___5KEYPAD_2___, \ + ___4_FUNCPAD_3___, ___, ___5KEYPAD_3___) + +#define CARTE_KP_FP \ + carte_de_map(" 789+ F9-12", \ + " .456* F5-8", \ + " 0123- F1-4") +// regular keypad on left. +#define ___KP_FP_3x10___ \ + CHUNK_LANG_MAP(___5KEYPAD_1___, ___, ___4_FUNCPAD_1___, \ + ___5KEYPAD_2___, ___, ___4_FUNCPAD_2___, \ + ___5KEYPAD_3___, ___, ___4_FUNCPAD_3___) + +#define CARTE_MODS_KP \ + carte_de_map(" SMods 789+", \ + " OSMods .456*", \ + " F1-4 0123-") + +// funcpad, regular keypad on right. +#define ___MODS_KP_3x10___ \ + CHUNK_LANG_MAP(___SML_MODS_L___, ___, ___5KEYPAD_1___, \ + ___OS_MODS_L___, ___5KEYPAD_2___, \ + ___5___, ___5KEYPAD_3___) + +#define CARTE_KP_MODS \ + carte_de_map(" 789+ SMods", \ + " .456* OSMods", \ + " 0123- ") + +// regular keypad on left. +#define ___KP_MODS_3x10___ \ + CHUNK_LANG_MAP(___5KEYPAD_1___, ___, ___SML_MODS_R___, \ + ___5KEYPAD_2___, ___OS_MODS_L___, \ + ___5KEYPAD_3___, ___, ___4___) + +#define CARTE_FUN \ + carte_de_map(" F9-F12 SMods", \ + " F5-F8 OSMods", \ + " F1-F4 ") + +#define ___FUN_3x10___ \ + CHUNK_LANG_MAP(___4_FUNCPAD_1___, ___, ___, ___SML_MODS_R___, \ + ___4_FUNCPAD_2___, ___, ___OS_MODS_R___, \ + ___4_FUNCPAD_3___, ___, ___5___) + +#define CARTE_FUN_MIRYOKU \ + carte_de_map("F12 F7-F9 prt SMods", \ + "F11 F4-F6 scr OSMods", \ + "F10 F1-F3 pse ") + +#define ___FP_MIRYOKU_3x10___ \ + ___FUNCPAD_miryoku_1___, ___, ___SML_MODS_R___, \ + ___FUNCPAD_miryoku_2___, ___OS_MODS_R___, \ + ___FUNCPAD_miryoku_3___, ___5___ + +// wants . and 0 on left thumb. +#define CARTE_KP_MIRYOKU \ + carte_de_map(" [789]", \ + " ;456=", \ + " `123\\") + +#define ___KP_MIRYOKU_3x10___ \ + CHUNK_LANG_MAP(___KEYPAD_miryoku_1___, \ + ___KEYPAD_miryoku_2___, \ + ___KEYPAD_miryoku_3___) -- cgit v1.2.3