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/layer_names/base_names.h | 173 ++++++++++++++++++++++++++++ users/ericgebhart/layer_names/func_names.h | 38 ++++++ users/ericgebhart/layer_names/layer_names.h | 75 ++++++++++++ users/ericgebhart/layer_names/util_names.h | 59 ++++++++++ 4 files changed, 345 insertions(+) create mode 100644 users/ericgebhart/layer_names/base_names.h create mode 100644 users/ericgebhart/layer_names/func_names.h create mode 100644 users/ericgebhart/layer_names/layer_names.h create mode 100644 users/ericgebhart/layer_names/util_names.h (limited to 'users/ericgebhart/layer_names') diff --git a/users/ericgebhart/layer_names/base_names.h b/users/ericgebhart/layer_names/base_names.h new file mode 100644 index 0000000000..1fef1efed0 --- /dev/null +++ b/users/ericgebhart/layer_names/base_names.h @@ -0,0 +1,173 @@ +/* + 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 . +*/ +#ifdef DVORAK_LAYER_ENABLE + LANG_N(_DVORAK), +#endif +#ifdef DVORAK_RLC_IU_LAYER_ENABLE + LANG_N(_DVORAK_RLC_IU_), +#endif +#ifdef BOO_LAYER_ENABLE + LANG_N(_BOO), +#endif +#ifdef CAPEWELL_DVORAK_LAYER_ENABLE + LANG_N(_CAPEWELL_DVORAK), +#endif +#ifdef AHEI_LAYER_ENABLE + LANG_N(_AHEI), +#endif + + +#ifdef QWERTY_LAYER_ENABLE + LANG_N(_QWERTY), +#endif +#ifdef WORKMAN_LAYER_ENABLE + LANG_N(_WORKMAN), +#endif +#ifdef NORMAN_LAYER_ENABLE + LANG_N(_NORMAN), +#endif + + +#ifdef COLEMAK_LAYER_ENABLE + LANG_N(_COLEMAK), +#endif +#ifdef COLEMAK_DH_LAYER_ENABLE + LANG_N(_COLEMAK_DH), +#endif +#ifdef HALMAK_LAYER_ENABLE + LANG_N(_COLEMAK), +#endif +#ifdef MINIMAK_LAYER_ENABLE + LANG_N(_MINIMAK), +#endif +#ifdef MINIMAK_8_LAYER_ENABLE + LANG_N(_MINIMAK_8), +#endif +#ifdef MINIMAK_12_LAYER_ENABLE + LANG_N(_MINIMAK_12), +#endif + + +#ifdef BEAKL15_LAYER_ENABLE + LANG_N(_BEAKL15), +#endif +#ifdef BEAKL19_LAYER_ENABLE + LANG_N(_BEAKL19), +#endif +#ifdef BEAKL27_LAYER_ENABLE + LANG_N(_BEAKL27), +#endif +#ifdef BEAKLWI_LAYER_ENABLE + LANG_N(_BEAKLWI), +#endif + +#ifdef MALTRON_LAYER_ENABLE + LANG_N(_MALTRON), +#endif +#ifdef EUCALYN_LAYER_ENABLE + LANG_N(_EUCALYN), +#endif +#ifdef RSTHD_LAYER_ENABLE + LANG_N(_RSTHD), +#endif +#ifdef HANDS_UP_LAYER_ENABLE + LANG_N(_HANDS_UP), +#endif +#ifdef WHITE_LAYER_ENABLE + LANG_N(_WHITE), +#endif +#ifdef ISRT_LAYER_ENABLE + LANG_N(_ISRT), +#endif +#ifdef SOUL_LAYER_ENABLE + LANG_N(_SOUL), +#endif +#ifdef NIRO_LAYER_ENABLE + LANG_N(_NIRO), +#endif +#ifdef ASSET_LAYER_ENABLE + LANG_N(_ASSET), +#endif +#ifdef WHORF_LAYER_ENABLE + LANG_N(_WHORF), +#endif +#ifdef WHORF6_LAYER_ENABLE + LANG_N(_WHORF6), +#endif + +#ifdef CARPALX_QFMLWY_LAYER_ENABLE + LANG_N(_CARPALX_QFMLWY), +#endif +#ifdef CARPALX_QGMLWB_LAYER_ENABLE + LANG_N(_CARPALX_QGMLWB), +#endif +#ifdef CARPALX_QGMLWY_LAYER_ENABLE + LANG_N(_CARPALX_QGMLWY), +#endif + + +#ifdef MTGAP_LAYER_ENABLE + LANG_N(_MTGAP), +#endif +#ifdef CTGAP_LAYER_ENABLE + LANG_N(_CTGAP), +#endif +#ifdef APT_LAYER_ENABLE + LANG_N(_APT), +#endif +#ifdef CANARY_LAYER_ENABLE + LANG_N(_CANARY), +#endif + + +#ifdef HD_NEU_LAYER_ENABLE + LANG_N(_HD_NEU), +#endif +#ifdef HD_NEU_NARROW_LAYER_ENABLE + LANG_N(_HD_NEU_NARROW), +#endif +#ifdef HD_GOLD_LAYER_ENABLE + LANG_N(_HD_GOLD), +#endif +#ifdef HD_PLATINUM_LAYER_ENABLE + LANG_N(_HD_PLATINUM), +#endif +#ifdef HD_SILVER_LAYER_ENABLE + LANG_N(_HD_SILVER), +#endif +#ifdef HD_BRONZE_LAYER_ENABLE + LANG_N(_HD_BRONZE), +#endif +#ifdef HD_ELAN_LAYER_ENABLE + LANG_N(_HD_ELAN), +#endif +#ifdef HD_DASH_LAYER_ENABLE + LANG_N(_HD_DASH), +#endif +#ifdef HD_REF_LAYER_ENABLE + LANG_N(_HD_REF), +#endif + +#ifdef BEPO_LAYER_ENABLE + LANG_N(_BEPO), +#endif +#ifdef OPTIMOT_LAYER_ENABLE + LANG_N(_OPTIMOT), +#endif +#ifdef BEAKL19bis_LAYER_ENABLE + LANG_N(_BEAKL19bis), +#endif diff --git a/users/ericgebhart/layer_names/func_names.h b/users/ericgebhart/layer_names/func_names.h new file mode 100644 index 0000000000..e1b061a145 --- /dev/null +++ b/users/ericgebhart/layer_names/func_names.h @@ -0,0 +1,38 @@ +/* + 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 . +*/ + +// functional layers that would be different by language + +#ifdef ACCENTS_LAYER_ENABLE +LANG_N(_ACCENTS), +#endif +#ifdef MORTE_LAYER_ENABLE + LANG_N(_MORTE), +#endif +#ifdef ACCENTS_MORTE_LAYER_ENABLE + LANG_N(_ACCENTS_MORTE), +#endif + +#ifdef SYMBOL_LAYER_ENABLE + LANG_N(_SYMB), +#endif +#ifdef KEYPAD_LAYER_ENABLE + LANG_N(_KEYPAD), +#endif +#ifdef TOPROWS_LAYER_ENABLE + LANG_N(_TOPROWS), +#endif diff --git a/users/ericgebhart/layer_names/layer_names.h b/users/ericgebhart/layer_names/layer_names.h new file mode 100644 index 0000000000..69d9d50d32 --- /dev/null +++ b/users/ericgebhart/layer_names/layer_names.h @@ -0,0 +1,75 @@ +/* + 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 . +*/ +#include QMK_KEYBOARD_H +#include "base_layers.h" +#include "layouts.h" +#include "layers.h" +#if defined(OLED_CUSTOM_ENABLE) +# include "oled_stuff.h" +#endif + +#define MO_LAYERS MO(_LAYERS) + +#undef LANG_IS +#define LANG_IS LOCALE_LAYERS + +enum base_layer_names{ +#include "base_names.h" + BASE_NAME_COUNT +}; +#undef LANG_IS +#define LANG_IS DEFAULT_LANG + + +// Get the enums for the layers. +enum userspace_layers { + +#include "base_names.h" + + // get them again if we have another locale. +#ifdef SECOND_LOCALE +#undef LANG_IS +#define LANG_IS SECOND_LOCALE + +#include "base_names.h" + +#undef LANG_IS +#define LANG_IS DEFAULT_LANG +#endif + + _LAYERS, + +#include "func_names.h" + + // get them again if we have another locale. +#ifdef SECOND_LOCALE +#undef LANG_IS +#define LANG_IS SECOND_LOCALE + +#include "func_names.h" + +#undef LANG_IS +#define LANG_IS DEFAULT_LANG +#endif + +#include "util_names.h" + +}; + + +// find the beginning and end of each locale. +#include "locale_layers.h" diff --git a/users/ericgebhart/layer_names/util_names.h b/users/ericgebhart/layer_names/util_names.h new file mode 100644 index 0000000000..55597385fe --- /dev/null +++ b/users/ericgebhart/layer_names/util_names.h @@ -0,0 +1,59 @@ +/* + 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 . +*/ + +// transient layers which are language agnostic. + + +#ifdef NAV_LAYER_ENABLE + _NAV, +#ifdef MOUSEKEY_ENABLE + _NAVm, +#endif +#endif + +#ifdef MEDIA_LAYER_ENABLE + _MEDIA, +#endif + +#ifdef FUNC_LAYER_ENABLE + _FUN, +#endif + +#ifdef RGB_LAYER_ENABLE + _RGB, +#define TO_RGB MO(_RGB) +#else +#define TO_RGB ___ +#endif + +#ifdef ADJUST_LAYER_ENABLE + _ADJUST, +#define MO_ADJUST MO(_ADJUST) +#else +#define MO_ADJUST ___ +#endif + + +#ifdef COMBO_REF_LAYER_ENABLE + _COMBO_REF, +// set the combo reference layer if we have one. +#undef COMBO_REF_DEFAULT +#define COMBO_REF_DEFAULT _COMBO_REF +#endif +#ifdef COMBO_REF_LAYER_TWO_ENABLE + _COMBO_REF2, +#endif -- cgit v1.2.3