summaryrefslogtreecommitdiff
path: root/users/ericgebhart/miryoku_hd_gold_config.h
diff options
context:
space:
mode:
Diffstat (limited to 'users/ericgebhart/miryoku_hd_gold_config.h')
-rw-r--r--users/ericgebhart/miryoku_hd_gold_config.h325
1 files changed, 325 insertions, 0 deletions
diff --git a/users/ericgebhart/miryoku_hd_gold_config.h b/users/ericgebhart/miryoku_hd_gold_config.h
new file mode 100644
index 0000000000..8b5d06da3a
--- /dev/null
+++ b/users/ericgebhart/miryoku_hd_gold_config.h
@@ -0,0 +1,325 @@
+/*
+ Copyright 2018 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 configuration creates a miryoku system with */
+/* Qwerty and Hands Down Gold. as base layers. */
+
+/* It also usess layers which are the same or very closely resemble */
+/* the layers of miryoku. These can be swapped out for other choices */
+/* as desired. */
+
+/* The language is set to EN, so KC_ keycodes are used. */
+/* The oled is on, rgb is off, see below. */
+
+
+#ifndef USERSPACE_CONFIG_H
+#define USERSPACE_CONFIG_H
+
+// pro-micro v3's don't always detect otherwise.
+/* #define SPLIT_USB_DETECT */
+
+#define NO_ACTION_MACRO
+#define NO_ACTION_FUNCTION
+// Sets good default for the speed of the mouse.
+#undef MOUSEKEY_INTERVAL
+#undef MOUSEKEY_DELAY
+#undef MOUSEKEY_TIME_TO_MAX
+#undef MOUSEKEY_MAX_SPEED
+
+#define MOUSEKEY_INTERVAL 20
+#define MOUSEKEY_DELAY 100
+#define MOUSEKEY_TIME_TO_MAX 60
+#define MOUSEKEY_MAX_SPEED 7
+
+#undef MOUSEKEY_WHEEL_MAX_SPEED
+#undef MOUSEKEY_WHEEL_TIME_TO_MAX
+#undef MOUSEKEY_WHEEL_DELAY
+
+#define MOUSEKEY_WHEEL_MAX_SPEED 5
+#define MOUSEKEY_WHEEL_TIME_TO_MAX 60
+#define MOUSEKEY_WHEEL_DELAY 100
+
+#undef TAPPING_TOGGLE
+#undef TAPPING_TERM
+#undef IGNORE_MOD_TAP_INTERRUPT
+
+#define TAPPING_TOGGLE 2
+#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
+
+
+/* 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 EN
+#define DEFAULT_LANG EN
+#define DEFAULT_LANG_NAME " en"
+
+// 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 MIRYOKU_HRM_GACS
+#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
+// MIRYOKU_TR_LTR_TAB, MIRYOKU_LTR_TAB
+#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 MIRYOKU_LTR_TAB
+#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 CAPS_WORD_ENABLE // caps word. both shifts to caps a word.
+#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 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
+
+// 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
+
+// 3x12 sized base layers
+//--------------------------
+//#define HD_NEU_LAYER_ENABLE
+
+// additionally all these have accent characters on base layer.
+//#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