diff options
Diffstat (limited to 'users/ericgebhart/layers/utility.h')
-rw-r--r-- | users/ericgebhart/layers/utility.h | 125 |
1 files changed, 125 insertions, 0 deletions
diff --git a/users/ericgebhart/layers/utility.h b/users/ericgebhart/layers/utility.h new file mode 100644 index 0000000000..a688f8196d --- /dev/null +++ b/users/ericgebhart/layers/utility.h @@ -0,0 +1,125 @@ +/* + Copyright 2018-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/>. +*/ +/********************************************************************************/ +/* MEDIA - Mute, Vol, play, pause, stop, next, prev, etc. */ +/********************************************************************************/ +#define ___PRV_PLAY_NXT_STOP___ KC_MPRV, KC_MPLY, KC_MNXT, KC_MSTP +#define ___VDN_MUTE_VUP___ KC_VOLD, KC_MUTE, KC_VOLU + +#define ___PRV_VDN_VUP_NXT___ KC_MPRV, KC_VOLD, KC_VOLU, KC_MNXT +#define ___STOP_PLAY_MUTE___ KC_MSTP, KC_MPLY, KC_MUTE + +#define ___MUTE_PRV_PLAY_NXT_STOP___ KC_MUTE, KC_MPRV, KC_MPLY, KC_MNXT, KC_MSTP +#define ___MUTE_PLAY_STOP___ KC_MUTE, KC_MPLY, KC_MSTP + +#define CARTE_MEDIA \ + carte_de_map(" ", \ + " < vdn vup >", \ + " stp play mute") + +// miryoku, to be used with stop play mute on thumbs. - MEDIA thumbs. +#define ___MEDIA_3x10___ \ + ___5___, ___5___, \ + ___5___, ___, ___PRV_VDN_VUP_NXT___, \ + ___5___, ___5___ + + +/********************************************************************************/ +/* RGB - Control those lights. */ + +/* ___, HUE SAT_INT MOD (UP), | */ +/* ___, HUE SAT INT MOD (DOWN), RGB_TOG | P_B_R_SW_SN___, ___ */ +/* ___6___, | ___, ___RGB_KXGT___, ___ */ +/********************************************************************************/ +// RGB FUNCTION Keysets +// RGB row for the _FN layer from the redo of the default keymap.c +#define ___RGB_HUE_SAT_INT_UP___ RGB_HUI, RGB_SAI, RGB_VAI, RGB_RMOD +#define ___RGB_HUE_SAT_INT_DN___ RGB_HUD, RGB_SAD, RGB_VAD, RGB_MOD +#define ___RGB_MODE_PRV_NXT___ RGB_RMOD, RGB_MOD +#define ___RGB_TOGGLE___ RGB_TOG +#define ___RGB_P_B_R_SW_SN___ RGB_M_P, RGB_M_B, RGB_M_R, RGB_M_SW, RGB_M_SN +#define ___RGB_KXGT___ RGB_M_K, RGB_M_X, RGB_M_G, RGB_M_T + +/// An RGB Layer +#define ___10_RGB_1___ ___RGB_HUE_SAT_INT_UP___, ___, ___5___ +#define ___10_RGB_2___ ___RGB_HUE_SAT_INT_DN___, RGB_TOG, ___RGB_P_B_R_SW_SN___ +#define ___10_RGB_3___ ___5___, ___, ___RGB_KXGT___ + +/********************************************************************************/ +/* The RGB LAYER Chunk */ +/********************************************************************************/ +#define ___RGB_3x10___ ___10_RGB_1___, ___10_RGB_2___, ___10_RGB_3___ + + +/********************************************************************************/ +/* ADJUST - Miscellaneous Melange. */ +/********************************************************************************/ +// For an Adjust layer. Like RBB with audio, flash, etc. +#define ___ADJUST_L1___ ___RGB_HUE_SAT_INT_UP___, RGB_TOG +#define ___ADJUST_L2___ MU_TOG, CK_TOGG, AU_ON, AU_OFF, CG_NORM +#define ___ADJUST_L3___ ___RGB_HUE_SAT_INT_DN___, KC_RGB_T + +#define ___ADJUST_R1___ ___, KC_MAKE, VRSN, MG_NKRO, KC_RESET +#define ___ADJUST_R2___ EEP_RST, ___PRV_PLAY_NXT_STOP___, +#define ___ADJUST_R3___ MG_NKRO, ___VDN_MUTE_VUP___, RGB_IDL +/********************************************************************************/ +/* The Adjust LAYER Chunks */ +/********************************************************************************/ +#define ___ADJUST_3x10___ ___ADJUST_L1___, ___ADJUST_R1___, \ + ___ADJUST_L2___, ___ADJUST_R2___, \ + ___ADJUST_L3___, ___ADJUST_R3___ + + +/********************************************************************************/ +/* LAYERS - Define a base layer, switch to any layer. Get around. Experiment. */ +/* */ +/* Base Layers on the left hand, */ +/* transient layers on the right. Centered on the home region. */ +/* A good place to attach an experimental layer. */ +/* */ +/********************************************************************************/ +// Base Layers +// this was kc_dvorak et al. But since its configurable as to who would be here +// that no longer makes sense. So next keys for locale and base layer. and a set to +// make it permanent. Cycling of layers is based on current locale. +#define ___BASE_LAYERS___ ___, KC_SET_BASE, KC_NEXT_BASE_LAYER, KC_NEXT_LOCALE, ___ + +// transient layers. +#define ___5_LAYERS_T___ ___, MO(_NAV), MO_SYMB, MO_KEYPAD, MO_TOPROWS +#ifdef SECOND_LOCALE +#undef LANG_IS +#define LANG_IS SECOND_LOCALE +#define ___5_LAYERS_T_BP___ ___, MO(_NAV), MO_SYMB, MO_KEYPAD, MO_TOPROWS +#undef LANG_IS +#define LANG_IS DEFAULT_LANG +#else +#define ___5_LAYERS_T_BP___ ___, MO(_NAV), ___3___ +#endif + +#define ___5_LAYERS_T_CTL___ ___, MO_RGB, ___, ___, MO_ADJUST + + +#define CARTE_LAYERS \ + carte_de_map(" |Nv S K TR", \ + " EE Bs Ln|Nv S K TR", \ + " ") + +/// A Layers Layer +#define ___LAYERS_3x10___ \ + ___5___, ___5_LAYERS_T_BP___, \ + ___BASE_LAYERS___, ___5_LAYERS_T___, \ + ___5___, ___5_LAYERS_T_CTL___ |