diff options
author | Eric Gebhart <e.a.gebhart@gmail.com> | 2022-11-12 00:09:41 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-11-11 23:09:41 +0000 |
commit | 050472a4d07d07c1d9ae17d2fd26d44e9d95d950 (patch) | |
tree | 8c326011ec8cac395a92839ec4b420bf12652fa1 /users/ericgebhart/config.h | |
parent | 49a78b81145213e2883e6c3beab6d9c136c10085 (diff) |
Eric Gebhart user space and keymaps (#17487)
Co-authored-by: Drashna Jaelre <drashna@live.com>
Diffstat (limited to 'users/ericgebhart/config.h')
-rw-r--r--[-rwxr-xr-x] | users/ericgebhart/config.h | 275 |
1 files changed, 272 insertions, 3 deletions
diff --git a/users/ericgebhart/config.h b/users/ericgebhart/config.h index 116d48f4ab..6cd983b37b 100755..100644 --- a/users/ericgebhart/config.h +++ b/users/ericgebhart/config.h @@ -18,12 +18,11 @@ #ifndef USERSPACE_CONFIG_H #define USERSPACE_CONFIG_H -#include "../../config.h" +// pro-micro v3's don't always detect otherwise. +/* #define SPLIT_USB_DETECT */ #define NO_ACTION_MACRO #define NO_ACTION_FUNCTION -#define COMBO_MUST_HOLD_MODS -#define COMBO_HOLD_TERM 150 // Sets good default for the speed of the mouse. #undef MOUSEKEY_INTERVAL #undef MOUSEKEY_DELAY @@ -51,4 +50,274 @@ #define TAPPING_TERM 200 #define IGNORE_MOD_TAP_INTERRUPT + +#define TAP_HOLD_TERM 200 +#define COMBO_MUST_HOLD_MODS +#define COMBO_HOLD_TERM 150 +#define TAP_CODE_DELAY 5 // for send string with delay + +// change the behavior of Mod taps for HRMs. +// #define GLOBAL_QUICK_TAP + + /* Control switches for my keymaps. */ + /* if needed, this goes in the keyboard's config.h */ + /* Alternately, fix the number row in the layout template. */ +/* #define BASE_NUMBER_ROW // turn on 4 row base templates. */ + +// Extensions, turn them on and off. +#define USERSPACE_H "ericgebhart.h" + +// Layout definitions, which language, thumb cluster, mod layer. +// Columns in and out. + +// the default. set it, use it, set it back. +// US_INT // EN, BEPO, US_INT +#define LANG_IS US_INT +#define DEFAULT_LANG US_INT +#define DEFAULT_LANG_NAME " us" + +// Enable a second locale, for another set of layers. +// This will add bepo versions of all layers chosen. +/* #define SECOND_LOCALE BEPO */ +/* #define SECOND_LOCALE_NAME " bepo" */ + +// Choose a mod layer. Can be changed per layer. +// TRNS, ALT, HRS_NAV HRM_GACS, HRM_SCAG, HRM_GASC, MIRYOKU_HRM_GASC +#define MODS_ARE HRS_NAV +#define DEFAULT_MODS MODS_ARE + +// Choose a thumb cluster. +// WI, WIa, DEFAULT, TEST, TRNS, MODS, LAYERS, MODS_LAYERS, +// MIRYOKU, MIRYOKU_TR, MODS_LAYERS_NAV, +// The following use THUMB_LETTER to place a letter on the Thumbs. +// for use with the hands down metals, maltron, and rsthd. +// HD, HDA, HD_SIMPLE, TH_LTR, HD_DASH, +// MIRYOKU_TR_LTR, MIRYOKU_LTR +#define THUMBS_ARE DEFAULT +#define DEFAULT_THUMBS DEFAULT + +// pick the edge key set. normie, no kc, smart locks or test. +// NORM, NOKC, SML, TEST +#define EDGE_KEY_SET_IS SML +#define DEFAULT_EDGE_SET SML + +// for the base layers which need a thumb cluster which takes a letter. +#define HANDS_DOWN_LTR_THUMBS_ARE TH_LTR +#define MALTRON_LTR_THUMBS_ARE TH_LTR +#define RSTHD_LTR_THUMBS_ARE TH_LTR + +// layout io, matrix size. +// a reasonable default for most keyboards. +// give a 3x10 and get a 3x12, managed in keyboards/keyboards.h +#define BASE_COLS_IN_OUT 5_6 // 5, 5_6, 6 + +// OLED STUFF. +#define OLED_CUSTOM_ENABLE // custom oled here. +//#define OLED_LOGO_ENABLE // turn on/off the logo. +#define KEYLOGGER_ENABLE // 1500 bytes, track and print keypress info to oled. +//#define SPLIT_LAYER_STATE_ENABLE // to sync state between sides. + +// EXTENSIONS + +// Combos +#define COMBO_REF_LAYER_ENABLE +// #define COMBO_REF_LAYER_TWO_ENABLE +// works if you know the number of your layer. +// otherwise set and use them later. +// #define COMBO_ONLY_FROM_LAYER 2 +// #define COMBO_REF_DEFAULT 2 + + +// Console key logging for creation of heatmaps, etc. +// CONSOLE must be enabled for this to work. +// To create Precondition's heat maps, from console key logging +// with hid_listen or qmk console +//#define CONSOLE_KEY_LOGGER_ENABLE // turn on keylogging for heat maps. + +#define ALT_LOCAL_ENABLE // alternate key combinations, with mods as needed. +#define ACCENTED_KEYS_ENABLE // direct access to altgr keys. + +#define SMART_LOCK_ENABLE // smart lock layers and mods. +//#define MOD_LOCK_ENABLE // smart lock mods, similar/overlapping with Smart lock. +#define NSHOT_ENABLE // smart n-shot for count. +//#define ONESHOT_MOD_ENABLE // oneshot mods, similar/overlapping with nshots + +#define TAP_HOLD_ENABLE // tap for one thing, hold for tapping term to get another. +//#define SWAPPER_ENABLE // enable swapper keys. +#define NOT_DEAD_ENABLE // make undead versions (US_DQUO_ND) of dead keys. +//#define ALT_SHIFT_ENABLE // alternate shift behaviors for existing keys. +//#define SEND_STRING_ENABLE // Turn on send string keys +//#define SEND_UNICODE_ENABLE // Unicode must be enabled for this to work. + + +// Turn on the base layers do not exceed 4 if doing two locales. +// That will likely push a layer past 15 and then it will +// no longer work with the LT macro. + +// dvorak and relatives +#define DVORAK_LAYER_ENABLE +//#define DVORAK_RLC_IU_LAYER_ENABLE +//#define CAPEWELL_DVORAK_LAYER_ENABLE +//#define AHEI_LAYER_ENABLE +//#define BOO_LAYER_ENABLE + +// qwerty and derivitives +//#define QWERTY_LAYER_ENABLE +//#define AZERTY_LAYER_ENABLE +//#define WORKMAN_LAYER_ENABLE +//#define NORMAN_LAYER_ENABLE + +// COLEMAK and relatives +//#define COLEMAK_LAYER_ENABLE +//#define COLEMAK_DH_LAYER_ENABLE +//#define HALMAK_LAYER_ENABLE +//#define MINIMAK_LAYER_ENABLE +//#define MINIMAK_8_LAYER_ENABLE +//#define MINIMAK_12_LAYER_ENABLE + +// BEAKL +// #define BEAKL15_LAYER_ENABLE +//#define BEAKL19_LAYER_ENABLE +//#define BEAKL27_LAYER_ENABLE +//#define BEAKLWI_LAYER_ENABLE + +// carpalx layouts +//#define CARPALX_QFMLWY_LAYER_ENABLE +//#define CARPALX_QGMLWB_LAYER_ENABLE +//#define CARPALX_QGMLWY_LAYER_ENABLE + +// alternate layouts +//#define MALTRON_LAYER_ENABLE +//#define EUCALYN_LAYER_ENABLE +//#define HANDS_UP_LAYER_ENABLE +//#define RSTHD_LAYER_ENABLE +//#define HANDS_UP_LAYER_ENABLE +//#define WHITE_LAYER_ENABLE +//#define ISRT_LAYER_ENABLE +//#define SOUL_LAYER_ENABLE +//#define NIRO_LAYER_ENABLE +//#define ASSET_LAYER_ENABLE +//#define WHORF_LAYER_ENABLE +//#define WHORF6_LAYER_ENABLE + +// mtgap and relatives +//#define MTGAP_LAYER_ENABLE +//#define CTGAP_LAYER_ENABLE +//#define APT_LAYER_ENABLE +//#define CANARY_LAYER_ENABLE + +// Hands down +#define HD_NEU_NARROW_LAYER_ENABLE +//#define HD_REF_LAYER_ENABLE +//#define HD_DASH_LAYER_ENABLE +//#define HD_ELAN_LAYER_ENABLE +//#define HD_BRONZE_LAYER_ENABLE +//#define HD_SILVER_LAYER_ENABLE +//#define HD_PLATINUM_LAYER_ENABLE +//#define HD_GOLD_LAYER_ENABLE +//#define HD_TITANIUM_LAYER_ENABLE + +// A compact optimot for 3x10. +// requires accent characters. +//#define OPTIMOT_COMPACT_LAYER_ENABLE + +// 3x12 sized base layers +//-------------------------- +//#define HD_NEU_LAYER_ENABLE + +// Optimized for french +// All these have accent characters on base layer. +// so these dont work for En, but do for US-international and Bepo. + +//#define BEPO_LAYER_ENABLE +//#define OPTIMOT_LAYER_ENABLE +//#define BEAKL19bis_LAYER_ENABLE + + +// enable transient function layers. +#define SYMBOL_LAYER_ENABLE +#define NAV_LAYER_ENABLE +// #define MOUSE_LAYER_ENABLE +#define TOPROWS_LAYER_ENABLE +// #define LAYERS_LAYER_ENABLE - defunct. always on. +#define KEYPAD_LAYER_ENABLE +//#define ADJUST_LAYER_ENABLE +//#define RGB_LAYER_ENABLE +//#define MEDIA_LAYER_ENABLE +//#define FUNC_LAYER_ENABLE + + +// define alternate thumb definitions for the transient layers. +#define MEDIA_LAYER_THUMBS MEDIA_THUMBS +#define MOUSE_LAYER_THUMBS MOUSE_THUMBS +#define NAV_LAYER_THUMBS TRNS_THUMBS +#define KEYPAD_LAYER_THUMBS KEYPAD_THUMBS +#define SYMB_LAYER_THUMBS SYMB_THUMBS +#define TOPROWS_LAYER_THUMBS DEFAULT + +// Extra character layers. +// Bepo has dead keys (altgr) and accented keycodes +// A layer of accented keys +// #define ACCENTS_LAYER_ENABLE +// A layer of dead keys +// #define MORTE_LAYER_ENABLE +// A layer of the most popular accented keys and dead keys +#define ACCENTS_MORTE_LAYER_ENABLE + +// Functional layer choices. +/* configure the function layers. */ +/* They have to be turned on above. */ +/* Choose one of each as desired. */ +/* There are reasonable defaults */ +/* for each if nothing is defined. */ + +/* nav */ +//#define NAV_FULL // monolithic, two sided nav with mouse and arrows. +#define NAV_FULL_LOCK_MODS // Replace left mouse buttons with lockmods. + +// Just the non mouse bits, with lock mods, n-shot mods on the left. +// if mousekeys enabled, adds a mouse layer accessible via smart lock. +// #define NAV_NO_MOUSE +// #define NAV_MIRYOKU +// #define NAV_MOUSE_MIRYOKU + + +/* keypads */ +// beakl keypads are usual, if not chosen, regular keypads will be used. +// left side is the default. +// Beakl, except for WI, is only on the left side. +// Miryoku is on the left also. + +//#define KEYPAD_RIGHT +#define KEYPAD_BEAKL // beakl doesn't have a rightside, swap hands? +//#define KEYPAD_MODS // give mods on the other side instead of funcs. +//#define KEYPAD_BEAKL_WI // right side with hexpad on left. +//#define KEYPAD_MIRYOKU // use the miryoku keypad +// the default if nothing chosen, +// is a functionpad on the left and normal keypad on the right. + +// funcpad from miryoku +// #define FUNCPAD_MIRYOKU + + +/* symbols */ +// pick one of these or get the default. +//#define SYMBOL_BEAKL // original - the default if nothing else. +//#define SYMBOL_BEAKL_EXT // extended for non beakl base layers. +//#define SYMBOL_BEAKL_EXT_VI // extended with vi keybinding in mind. +#define SYMBOL_BEAKL_C // more alterations by frequency +// #define SYMBOL_NEO // The symbol layer from the Neo layout. +// #define SYMBOL_MIRYOKU // minimalist symbols after miryoku +//#define SYMBOL_BEAKL_WI // original wi + + +/* toprows. */ +// The default, if not defined, is a standard qwerty set of rows. +// symbols, numbers, function keys. Numbers on the home row. + +// #define TOPROWS_BKL_15_NUMS // center row with Beakl15 order. 40123 76598. +// #define TOPROWS_BKL_19_NUMS // Beakl 19 order: 32104 76598 +#define TOPROWS_MOD // beakl 15 nums, oneshot and smart lock mods. no Fkeys. + + #endif |