Eric Gebhart user space and keymaps (#17487)

Co-authored-by: Drashna Jaelre <drashna@live.com>
This commit is contained in:
Eric Gebhart 2022-11-12 00:09:41 +01:00 committed by GitHub
parent 49a78b8114
commit 050472a4d0
Failed to generate hash of commit
147 changed files with 13177 additions and 4102 deletions

View file

@ -0,0 +1,142 @@
/*
Copyright 2022 Eric Gebhart <e.a.gebhart@gmail.com>
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 <http://www.gnu.org/licenses/>.
*/
/* This is my keymap. Enable the layers you want in config.h. */
#include QMK_KEYBOARD_H
#include "ericgebhart.h"
#include "layouts.h"
#include "keyboards.h"
// set up the wrapper macros.
#define BASE_LAYER(NAME, ...) [NAME] = BASE(__VA_ARGS__)
#define BASE_LAYERt6(NAME, ...) [NAME] = BASEt6(__VA_ARGS__)
#define T_LAYER(LNAME, ...) [LNAME] = TRANS(__VA_ARGS__)
// One that takes 5 and one that takes 6 for bepo and other big maps
// that need 3x12 instead of 3x10.
#ifdef BASE_NUMBER_ROW
#define B_LAYER(LNAME, NUMS, LAYOUT) BASE_LAYER(LNAME, NUMS, LAYOUT)
#define B_LAYERt6(LNAME, NUMS, LAYOUT) BASE_LAYERt6(LNAME, NUMS, LAYOUT)
#else
// if there is no number row, don't give it one.
#define B_LAYER(LNAME, NUMS, LAYOUT) BASE_LAYER(LNAME, LAYOUT)
#define B_LAYERt6(LNAME, NUMS, LAYOUT) BASE_LAYERt6(LNAME, LAYOUT)
#endif
// Find alt local key definitions.
// DV for dvorak/qwerty maps on bepo.
// BK, BKW for beakl maps on en-qwerty and bepo.
// BKW is automatic in map_beakl.h
#define ALT_TARGET_IS NONE // NONE, DV=dvorak, BK=Beakl, BK2, BKW=Beaklwi.
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
// Default lang, Base layers
#include "map_dvorak.h"
#include "map_maks.h"
#include "map_qwerty.h"
#include "map_beakl.h"
#include "map_alt.h"
#include "map_gap.h"
#include "map_carpalx.h"
#include "map_hd.h"
#include "map_bepo.h"
// create a set of layers for a second locale.
#ifdef SECOND_LOCALE
#undef LANG_IS
#define LANG_IS SECOND_LOCALE
// changes alt target for us, because both en-qwerty and fr-bepo
// need a beakl alt target.
#include "map_beakl.h"
// Qwerty based layers. Need a DV alt target to get the right shifted keys.
#undef ALT_TARGET_IS
#define ALT_TARGET_IS DV // NONE, DV = dvorak, BK=Beakl, BKW=Beaklwi.
#include "map_dvorak.h"
#include "map_maks.h"
#include "map_qwerty.h"
#include "map_alt.h"
#include "map_gap.h"
#include "map_carpalx.h"
#include "map_hd.h"
#undef ALT_TARGET_IS
#define ALT_TARGET_IS NONE // NONE, DV = dvorak, BK=Beakl, BKW=Beaklwi.
#include "map_bepo.h"
#undef LANG_IS
#define LANG_IS DEFAULT_LANG
#endif // bepo
// SYMBOL LAYER
#include "map_symbols.h"
#ifdef SECOND_LOCALE
#undef LANG_IS
#define LANG_IS SECOND_LOCALE
#include "map_symbols.h"
#undef LANG_IS
#define LANG_IS DEFAULT_LANG
#endif
// KEYPAD LAYER
#include "map_keypads.h"
#ifdef SECOND_LOCALE
#undef LANG_IS
#define LANG_IS SECOND_LOCALE
#include "map_keypads.h"
#undef LANG_IS
#define LANG_IS DEFAULT_LANG
#endif
// TOPROWS LAYER
#include "map_toprows.h"
#include "map_accented.h"
#ifdef SECOND_LOCALE
#undef LANG_IS
#define LANG_IS SECOND_LOCALE
#include "map_toprows.h"
#include "map_accented.h"
#undef LANG_IS
#define LANG_IS EN
#endif
// functional non language based layers.
#include "map_funcs.h"
};

View file

@ -0,0 +1,26 @@
/*
Copyright 2022 Eric Gebhart <e.a.gebhart@gmail.com>
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 <http://www.gnu.org/licenses/>.
*/
// Accented character and dead key layers.
#ifdef ACCENTS_LAYER_ENABLE
T_LAYER(LANG_N(_ACCENTS), ___ACCENTS___),
#endif
#ifdef MORTE_LAYER_ENABLE
T_LAYER(LANG_N(_MORTE), ___MORTE___),
#endif
#ifdef ACCENTS_MORTE_LAYER_ENABLE
T_LAYER(LANG_N(_ACCENTS_MORTE), ___ACCENTS_MORTE___),
#endif

View file

@ -0,0 +1,69 @@
/*
Copyright 2022 Eric Gebhart <e.a.gebhart@gmail.com>
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 <http://www.gnu.org/licenses/>.
*/
#ifdef MALTRON_LAYER_ENABLE
#undef THUMBS_ARE
#define THUMBS_ARE MALTRON_LTR_THUMBS_ARE
#undef THUMB_LETTER
#define THUMB_LETTER LANG_KC(_E)
B_LAYER(LANG_N(_MALTRON), ___10_NUMBERS___, ___MALTRON___),
#undef THUMBS_ARE
#define THUMBS_ARE DEFAULT_THUMBS
#undef THUMB_LETTER
#endif
#ifdef RSTHD_LAYER_ENABLE
#undef THUMBS_ARE
#define THUMBS_ARE RSTHD_LTR_THUMBS_ARE
#undef THUMB_LETTER
#define THUMB_LETTER LANG_KC(_E)
B_LAYER(LANG_N(_RSTHD), ___10_NUMBERS___, ___RSTHD___),
#undef THUMBS_ARE
#define THUMBS_ARE DEFAULT_THUMBS
#undef THUMB_LETTER
#endif
#ifdef EUCALYN_LAYER_ENABLE
B_LAYER(LANG_N(_EUCALYN), ___10_NUMBERS___, ___EUCALYN___),
#endif
#ifdef HANDS_UP_LAYER_ENABLE
B_LAYER(LANG_N(_HANDS_UP), ___10_NUMBERS___, ___HANDS_UP___),
#endif
#ifdef WHITE_LAYER_ENABLE
B_LAYER(LANG_N(_WHITE), ___10_NUMBERS___, ___WHITE___),
#endif
#ifdef ISRT_LAYER_ENABLE
B_LAYER(LANG_N(_ISRT), ___10_NUMBERS___, ___ISRT___),
#endif
#ifdef SOUL_LAYER_ENABLE
B_LAYER(LANG_N(_SOUL), ___10_NUMBERS___, ___SOUL___),
#endif
#ifdef NIRO_LAYER_ENABLE
B_LAYER(LANG_N(_NIRO), ___10_NUMBERS___, ___NIRO___),
#endif
#ifdef ASSET_LAYER_ENABLE
B_LAYER(LANG_N(_ASSET), ___10_NUMBERS___, ___ASSET___),
#endif
#ifdef WHORF_LAYER_ENABLE
B_LAYER(LANG_N(_WHORF), ___10_NUMBERS___, ___WHORF___),
#endif
#ifdef WHORF6_LAYER_ENABLE
B_LAYER(LANG_N(_WHORF6), ___10_NUMBERS___, ___WHORF6___),
#endif

View file

@ -0,0 +1,48 @@
/*
Copyright 2022 Eric Gebhart <e.a.gebhart@gmail.com>
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 <http://www.gnu.org/licenses/>.
*/
// choose your beakl,
#undef ALT_TARGET_IS
#define ALT_TARGET_IS BK // NONE, DV = dvorak, BK=Beakl, BKW=Beaklwi.
#ifdef BEAKL15_LAYER_ENABLE
B_LAYER(LANG_N(_BEAKL15), ___10_NUMBERS_BEAKL15___, ___BEAKL15___),
#endif
#ifdef BEAKL19_LAYER_ENABLE
B_LAYER(LANG_N(_BEAKL19), ___10_NUMBERS_BEAKL19___, ___BEAKL19___),
#endif
#ifdef BEAKL27_LAYER_ENABLE
#undef ALT_TARGET_IS
#define ALT_TARGET_IS BK2 // NONE, DV = dvorak, BK=Beakl, BKW=Beaklwi.
B_LAYER(LANG_N(_BEAKL27), ___10_NUMBERS_BEAKL19___, ___BEAKL27___),
#endif
#ifdef BEAKLWI_LAYER_ENABLE
#undef ALT_TARGET_IS
#define ALT_TARGET_IS BKW // NONE, DV = dvorak, BK=Beakl, BKW=Beaklwi.
#undef THUMBS_ARE // change the default thumbs to WI.
#define THUMBS_ARE WIa
B_LAYER(LANG_N(_BEAKLWI), ___10_NUMBERS_BEAKL19___, ___BEAKLWI___),
#undef THUMBS_ARE
#define THUMBS_ARE DEFAULT_THUMBS
#endif
#undef ALT_TARGET_IS
#define ALT_TARGET_IS NONE // NONE, DV = dvorak, BK=Beakl, BKW=Beaklwi.

View file

@ -0,0 +1,40 @@
/*
Copyright 2022 Eric Gebhart <e.a.gebhart@gmail.com>
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 <http://www.gnu.org/licenses/>.
*/
// beginning of 3x12 base layers.
#undef BASE_COLS_IN_OUT
#define BASE_COLS_IN_OUT 6 // 5, 5_6, 6
#ifdef BEPO_LAYER_ENABLE
B_LAYERt6(LANG_N(_BEPO), ___12_SYMBOLS_BEPO___, ___BEPO_3x12___),
#endif
#ifdef OPTIMOT_LAYER_ENABLE
B_LAYERt6(LANG_N(_OPTIMOT), ___12_SYMBOLS_BEPO___, ___OPTIMOT_3x12___),
#endif
#ifdef OPTIMOT_COMPACT_LAYER_ENABLE
B_LAYER(LANG_N(_OPTIMOT), ___10_SYMBOLS_BEPO___, ___OPTIMOT_3x10___),
#endif
#ifdef BEAKL19bis_LAYER_ENABLE
B_LAYERt6(LANG_N(_BEAKL19bis), ___12_SYMBOLS_BEPO___, ___BEAKL19bis_3x12___),
#endif
// end of 3x12 base layers.
#undef BASE_COLS_IN_OUT
#define BASE_COLS_IN_OUT 5_6 // 5, 5_6, 6

View file

@ -0,0 +1,25 @@
/*
Copyright 2022 Eric Gebhart <e.a.gebhart@gmail.com>
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 <http://www.gnu.org/licenses/>.
*/
#ifdef CARPALX_QFMLWY_LAYER_ENABLE
B_LAYER(LANG_N(_CARPALX_QFMLWY), ___10_NUMBERS___, ___CARPALX_QFMLWY___),
#endif
#ifdef CARPALX_QGMLWB_LAYER_ENABLE
B_LAYER(LANG_N(_CARPALX_QGMLWB), ___10_NUMBERS___, ___CARPALX_QGMLWB___),
#endif
#ifdef CARPALX_QGMLWY_LAYER_ENABLE
B_LAYER(LANG_N(_CARPALX_QGMLWY), ___10_NUMBERS___, ___CARPALX_QGMLWY___),
#endif

View file

@ -0,0 +1,31 @@
/*
Copyright 2022 Eric Gebhart <e.a.gebhart@gmail.com>
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 <http://www.gnu.org/licenses/>.
*/
#ifdef DVORAK_LAYER_ENABLE
B_LAYER(LANG_N(_DVORAK), ___10_NUMBERS___, ___DVORAK___),
#endif
#ifdef DVORAK_RLC_IU_LAYER_ENABLE
B_LAYER(LANG_N(_DVORAK_RLC_IU), ___10_NUMBERS___, ___DVORAK_RLC_IU___),
#endif
#ifdef BOO_LAYER_ENABLE
B_LAYER(LANG_N(_BOO), ___10_NUMBERS___, ___BOO___),
#endif
#ifdef CAPEWELL_DVORAK_LAYER_ENABLE
B_LAYER(LANG_N(_CAPEWELL_DVORAK), ___10_NUMBERS___, ___CAPEWELL_DVORAK___),
#endif
#ifdef AHEI_LAYER_ENABLE
B_LAYER(LANG_N(_AHEI), ___10_NUMBERS___, ___AHEI___),
#endif

View file

@ -0,0 +1,127 @@
/*
Copyright 2022 Eric Gebhart <e.a.gebhart@gmail.com>
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 <http://www.gnu.org/licenses/>.
*/
// navigation. Mouse keys, arrows, home,end, etc.
#ifdef NAV_LAYER_ENABLE
# ifdef MOUSEKEY_ENABLE
# undef THUMBS_ARE
# define THUMBS_ARE MOUSE_LAYER_THUMBS
# ifdef NAV_FULL_LOCK_MODS
T_LAYER(_NAV, ___NAVA_3x10___),
# endif
# ifdef NAV_FULL
T_LAYER(_NAV, ___NAV_3x10___),
# endif
# ifdef NAV_NO_MOUSE
T_LAYER(_NAV, ___NAVnm_3x10___),
T_LAYER(_NAVm, ___NAVm_3x10___),
# endif
// give a default
# if !defined(NAV_FULL) && \
!defined(NAV_NO_MOUSE) && \
!defined(NAV_FULL_LOCK_MODS) \
T_LAYER(_NAV, ___NAVA_3x10___),
# endif
# ifdef MOUSE_LAYER_ENABLE
T_LAYER(_NAVm, ___NAVm_3x10___),
# endif
# undef THUMBS_ARE
# define THUMBS_ARE DEFAULT_THUMBS
# else // no mouse enable.
T_LAYER(_NAV, ___NAVnm_3x10___),
# endif // mousekey end.
#endif //nav end.
#ifdef MEDIA_LAYER_ENABLE
#undef THUMBS_ARE
#define THUMBS_ARE MEDIA_LAYER_THUMBS
T_LAYER(_MEDIA, ___MEDIA_3x10___),
#undef THUMBS_ARE
#define THUMBS_ARE DEFAULT_THUMBS
#endif
#ifdef FUN_LAYER_ENABLE
#ifdef FUNCPAD_MIRYOKU_ENABLE
T_LAYER(_FUN, ___FUN_3x10___),
#else
T_LAYER(_FUN, ___FUN_MIRYOKU_3x10___),
#endif
#endif
// A layer for layers. to set the default, etc.
T_LAYER(_LAYERS, ___LAYERS_3x10___),
// control the RGB if there are any.
#ifdef RGB_LAYER_ENABLE
T_LAYER(_RGB, ___RGB_3x10___),
#endif
// control and adjust stuff.
#ifdef ADJUST_LAYER_ENABLE
T_LAYER(_ADJUST, ___ADJUST_3x10___),
#endif
// put the combo reference layers at the end.
#ifdef COMBO_REF_LAYER_ENABLE
#undef LANG_IS
#define LANG_IS COMBO
#undef EDGE_KEY_SET_IS
#define EDGE_KEY_SET_IS REF1
#undef THUMBS_ARE
#define THUMBS_ARE COMBO
#undef MODS_ARE
#define MODS_ARE TRNS
B_LAYER(_COMBO_REF, ___10_NUMBERS___, ___COMBO_REF___),
#undef LANG_IS
#define LANG_IS DEFAULT_LANG
#undef EDGE_KEY_SET_IS
#define EDGE_KEY_SET_IS DEFAULT_EDGE_SET
#undef THUMBS_ARE
#define THUMBS_ARE DEFAULT_THUMBS
#undef MODS_ARE
#define MODS_ARE DEFAULT_MODS
#endif
#ifdef COMBO_REF_LAYER_TWO_ENABLE
#undef LANG_IS
#define LANG_IS COMBO2
#undef EDGE_KEY_SET_IS
#define EDGE_KEY_SET_IS REF2
#undef THUMBS_ARE
#define THUMBS_ARE COMBO2
#undef MODS_ARE
#define MODS_ARE TRNS
B_LAYER(_COMBO_REF2, ___10_NUMBERS___, ___COMBO_REF___),
#undef LANG_IS
#define LANG_IS DEFAULT_LANG
#undef EDGE_KEY_SET_IS
#define EDGE_KEY_SET_IS DEFAULT_EDGE_SET
#undef THUMBS_ARE
#define THUMBS_ARE DEFAULT_THUMBS
#undef MODS_ARE
#define MODS_ARE DEFAULT_MODS
#endif

View file

@ -0,0 +1,31 @@
/*
Copyright 2022 Eric Gebhart <e.a.gebhart@gmail.com>
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 <http://www.gnu.org/licenses/>.
*/
#ifdef MTGAP_LAYER_ENABLE
B_LAYER(LANG_N(_MTGAP), ___10_NUMBERS___, ___MTGAP___),
#endif
#ifdef CTGAP_LAYER_ENABLE
B_LAYER(LANG_N(_CTGAP), ___10_NUMBERS___, ___CTGAP___),
#endif
#ifdef APT_LAYER_ENABLE
B_LAYER(LANG_N(_APT), ___10_NUMBERS___, ___APT___),
#endif
#ifdef CANARY_LAYER_ENABLE
B_LAYER(LANG_N(_CANARY), ___10_NUMBERS___, ___CANARY___),
#endif

View file

@ -0,0 +1,117 @@
/*
Copyright 2022 Eric Gebhart <e.a.gebhart@gmail.com>
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 <http://www.gnu.org/licenses/>.
*/
#undef ALT_TARGET_IS
#define ALT_TARGET_IS HD
// NONE, DV = dvorak, BK=Beakl, BKW=Beaklwi, HD=Hands down.
// HD_ELAN,
#ifdef HD_NEU_LAYER_ENABLE
B_LAYERt6(LANG_N(_HD_NEU), ___12_NUMBERS___, ___HD_NEU___),
#endif
#ifdef HD_NEU_NARROW_LAYER_ENABLE
B_LAYER(LANG_N(_HD_NEU_NARROW), ___10_NUMBERS___, ___HD_NEU_NARROW___),
#endif
#ifdef HD_REF_LAYER_ENABLE
B_LAYER(LANG_N(_HD_REF), ___10_NUMBERS___, ___HD_REF___),
#endif
#ifdef HD_TITANIUM_LAYER_ENABLE
#undef THUMBS_ARE
#define THUMBS_ARE HANDS_DOWN_LTR_THUMBS_ARE
#undef THUMB_LETTER
#define THUMB_LETTER LANG_KC(_R)
B_LAYER(LANG_N(_HD_TITANIUM), ___10_NUMBERS___, ___HD_TITANIUM___),
#undef THUMBS_ARE
#define THUMBS_ARE DEFAULT_THUMBS
#undef THUMB_LETTER
#endif
#ifdef HD_GOLD_LAYER_ENABLE
#undef THUMBS_ARE
#define THUMBS_ARE HANDS_DOWN_LTR_THUMBS_ARE
#undef THUMB_LETTER
#define THUMB_LETTER LANG_KC(_T)
B_LAYER(LANG_N(_HD_GOLD), ___10_NUMBERS___, ___HD_GOLD___),
#undef THUMBS_ARE
#define THUMBS_ARE DEFAULT_THUMBS
#undef THUMB_LETTER
#endif
#ifdef HD_PLATINUM_LAYER_ENABLE
#undef THUMBS_ARE
#define THUMBS_ARE HANDS_DOWN_LTR_THUMBS_ARE
#undef THUMB_LETTER
#define THUMB_LETTER LANG_KC(_L)
B_LAYER(LANG_N(_HD_PLATINUM), ___10_NUMBERS___, ___HD_PLATINUM___),
#undef THUMBS_ARE
#define THUMBS_ARE DEFAULT_THUMBS
#undef THUMB_LETTER
#endif
#ifdef HD_SILVER_LAYER_ENABLE
#undef THUMBS_ARE
#define THUMBS_ARE HANDS_DOWN_LTR_THUMBS_ARE
#undef THUMB_LETTER
#define THUMB_LETTER LANG_KC(_N)
B_LAYER(LANG_N(_HD_SILVER), ___10_NUMBERS___, ___HD_SILVER___),
#undef THUMBS_ARE
#define THUMBS_ARE DEFAULT_THUMBS
#undef THUMB_LETTER
#endif
#ifdef HD_BRONZE_LAYER_ENABLE
#undef THUMBS_ARE
#define THUMBS_ARE HANDS_DOWN_LTR_THUMBS_ARE
#undef THUMB_LETTER
#define THUMB_LETTER LANG_KC(_H)
B_LAYER(LANG_N(_HD_BRONZE), ___10_NUMBERS___, ___HD_BRONZE___),
#undef THUMBS_ARE
#define THUMBS_ARE DEFAULT_THUMBS
#undef THUMB_LETTER
#endif
#ifdef HD_ELAN_LAYER_ENABLE
#undef THUMBS_ARE
#define THUMBS_ARE HANDS_DOWN_LTR_THUMBS_ARE
#undef THUMB_LETTER
#define THUMB_LETTER LANG_KC(TL_DOT)
#undef ALT_TARGET_IS
#define ALT_TARGET_IS HD_ELAN
B_LAYER(LANG_N(_HD_ELAN), ___10_NUMBERS___, ___HD_ELAN___),
#undef THUMBS_ARE
#define THUMBS_ARE DEFAULT_THUMBS
#undef ALT_TARGET_IS
#define ALT_TARGET_IS NONE
#undef THUMB_LETTER
#endif
#ifdef HD_DASH_LAYER_ENABLE
#undef ALT_TARGET_IS
#define ALT_TARGET_IS HD_DASH
#undef THUMBS_ARE
#define THUMBS_ARE HD_DASH
#undef THUMB_LETTER
#define THUMB_LETTER LANG_KC(_E)
B_LAYER(LANG_N(_HD_DASH), ___10_NUMBERS___, ___HD_DASH___),
#undef THUMBS_ARE
#define THUMBS_ARE DEFAULT_THUMBS
#undef ALT_TARGET_IS
#define ALT_TARGET_IS NONE
#undef THUMB_LETTER
#endif

View file

@ -0,0 +1,66 @@
/*
Copyright 2022 Eric Gebhart <e.a.gebhart@gmail.com>
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 <http://www.gnu.org/licenses/>.
*/
#ifdef KEYPAD_LAYER_ENABLE
# undef THUMBS_ARE
# define THUMBS_ARE KEYPAD_LAYER_THUMBS
# ifdef KEYPAD_BEAKL
# ifdef KEYPAD_BEAKL_WI
T_LAYER(LANG_N(_KEYPAD), ___KP_BKL_WI_3x10___),
# else
# ifdef KEYPAD_MODS
T_LAYER(LANG_N(_KEYPAD), ___KP_BKL_MODS_3x10___),
# else
T_LAYER(LANG_N(_KEYPAD), ___KP_BKL_FUNC_3x10___),
# endif
# endif
# else //not beakl
# ifdef KEYPAD_MIRYOKU
T_LAYER(LANG_N(_KEYPAD), ___KP_MIRYOKU_3x10___),
# else
# ifdef KEYPAD_RIGHT
# ifdef KEYPAD_MODS
T_LAYER(LANG_N(_KEYPAD), ___MODS_KP_3x10___),
# else
T_LAYER(LANG_N(_KEYPAD), ___FP_KP_3x10___),
# endif
# else // kp Left
# ifdef KEYPAD_MODS
T_LAYER(LANG_N(_KEYPAD), ___KP_MODS_3x10___),
# else
T_LAYER(LANG_N(_KEYPAD), ___KP_FP_3x10___),
# endif
# endif
# endif
# endif // not beakl
#undef THUMBS_ARE
#define THUMBS_ARE DEFAULT_THUMBS
#endif
#ifdef FUNC_LAYER_ENABLE
# ifdef FUNCPAD_MIRYOKU
T_LAYER(_FUN, ___FP_MIRYOKU_3x10___),
# else
T_LAYER(_FUN, ___FUN_3x10___),
# endif
#endif

View file

@ -0,0 +1,34 @@
/*
Copyright 2022 Eric Gebhart <e.a.gebhart@gmail.com>
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 <http://www.gnu.org/licenses/>.
*/
#ifdef COLEMAK_LAYER_ENABLE
B_LAYER(LANG_N(_COLEMAK), ___10_NUMBERS___, ___COLEMAK___),
#endif
#ifdef COLEMAK_DH_LAYER_ENABLE
B_LAYER(LANG_N(_COLEMAK_DH), ___10_NUMBERS___, ___COLEMAK_DH___),
#endif
#ifdef HALMAK_LAYER_ENABLE
B_LAYER(LANG_N(_HALMAK), ___10_NUMBERS___, ___HALMAK___),
#endif
#ifdef MINIMAK_LAYER_ENABLE
B_LAYER(LANG_N(_MINIMAK), ___10_NUMBERS___, ___MINIMAK___),
#endif
#ifdef MINIMAK_8_LAYER_ENABLE
B_LAYER(LANG_N(_MINIMAK_8), ___10_NUMBERS___, ___MINIMAK___),
#endif
#ifdef MINIMAK_12_LAYER_ENABLE
B_LAYER(LANG_N(_MINIMAK_12), ___10_NUMBERS___, ___MINIMAK___),
#endif

View file

@ -0,0 +1,25 @@
/*
Copyright 2022 Eric Gebhart <e.a.gebhart@gmail.com>
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 <http://www.gnu.org/licenses/>.
*/
#ifdef QWERTY_LAYER_ENABLE
B_LAYER(LANG_N(_QWERTY), ___10_NUMBERS___, ___QWERTY___),
#endif
#ifdef NORMAN_LAYER_ENABLE
B_LAYER(LANG_N(_NORMAN), ___10_NUMBERS___, ___NORMAN___),
#endif
#ifdef WORKMAN_LAYER_ENABLE
B_LAYER(LANG_N(_WORKMAN), ___10_NUMBERS___, ___WORKMAN___),
#endif

View file

@ -0,0 +1,56 @@
/*
Copyright 2022 Eric Gebhart <e.a.gebhart@gmail.com>
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 <http://www.gnu.org/licenses/>.
*/
#ifdef SYMBOL_LAYER_ENABLE
# undef THUMBS_ARE
# define THUMBS_ARE SYMB_LAYER_THUMBS
# ifdef SYMBOL_BEAKL_C
T_LAYER(LANG_N(_SYMB), ___SYMB_BEAKLC_3x10___),
# else
# ifdef SYMBOL_BEAKL_EXT_VI
T_LAYER(LANG_N(_SYMB), ___SYMB_BEAKLB_3x10___),
# else
# ifdef SYMBOL_BEAKL_EXT
T_LAYER(LANG_N(_SYMB ), ___SYMB_BEAKLA_3x10___),
# else
# ifdef SYMBOL_BEAKL_WI
T_LAYER(LANG_N(_SYMB), ___SYMB_BEAKLWI_3x10___),
# else
# ifdef SYMBOL_MIRYOKU
T_LAYER(LANG_N(_SYMB), ___SYMB_MIRYOKU_3x10___),
# else
# ifdef SYMBOL_NEO
T_LAYER(LANG_N(_SYMB), ___SYMB_NEO_3x10___),
# else
// basic beakl, the default if nothing chosen.
T_LAYER(LANG_N(_SYMB), ___SYMB_BEAKL_3x10___),
# endif //neo
# endif //miryoku
# endif //beakl wi
# endif //beakl ext
# endif //beakl ext vi
# endif //beaklc
# undef THUMBS_ARE
# define THUMBS_ARE DEFAULT_THUMBS
#endif

View file

@ -0,0 +1,45 @@
/*
Copyright 2022 Eric Gebhart <e.a.gebhart@gmail.com>
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 <http://www.gnu.org/licenses/>.
*/
// Top Rows commonly called Raise
#ifdef TOPROWS_LAYER_ENABLE
# undef THUMBS_ARE
# define THUMBS_ARE TOPROWS_LAYER_THUMBS
# ifdef TOPROWS_BKL_15_NUMS
T_LAYER(LANG_N(_TOPROWS), ___TOPROWS_3x10___),
# endif
# ifdef TOPROWS_BKL_19_NUMS
T_LAYER(LANG_N(_TOPROWS), ___TOPROWS_BKL19_3x10___),
# endif
# ifdef TOPROWS_MOD
T_LAYER(LANG_N(_TOPROWS), ___TOPROWS_MOD_3x10___),
# endif
// Not beakl numbers. Give a basic en-qwerty toprows layer.
#if !defined(TOPROWS_BKL_15_NUMS) && \
!defined(TOPROWS_BKL_19_NUMS) && \
!defined(TOPROWS_MOD)
T_LAYER(LANG_N(_TOPROWS), ___RAISE_3x10___),
#endif
# undef THUMBS_ARE
# define THUMBS_ARE DEFAULT_THUMBS
#endif // toprows.