Big overhaul to Drashna keymaps and userspace (#3097)

* Optimize secrets code

* Orthodox tweaks

* rules.mk features

* Minor cleanup

* Revert mod bits

* Force Hold breaks One Shot Tap Toggle

* Cleanup

* Moke keymaps more consistent

* minor ergodox tweak

* More OSM for the Orthodox

* Cleanup of userspace

* Toggle Secrets

* Add hidden process record for super secret macros

* Make sure secret macros always compiles

* finish up making them super secret

* Add ColinTA's rgb twinkle as WIP

* Optimize RGB Twinkling for typing

Also, tweak RGB indicators.

AND WTF, I HAVE NO IDEA WHY THE INDICATORS ONLY WORK AS IS.  The logical method for getting them working doesn't ... and it's beyond bizarre

* Make console logging more configurable

* Indicator travisty

* Clean up userspace rgb code

* Optimize RGB Twinking to work on default layer only, and to base it's color on the curent hue

* Eff it... rgblight_sethsv_at runs at every matrix scan

* RGB Twinkle cleanup

* Update Iris code for new board

* Move RGB Indicator and RGB Twinkle into userspace

* Move RGB Indicator code to rgb_stuff.c

* Major cleanup of RGB Code in userspace

* Additional cleanup of RGB code in userspace

* Use noeeprom functions to save my boards!

* Enable RGB Sleep on all boards now

* Add old iris board

* tapping tweak

* Use byte 19 for eeprom to prepare for possible merge of eeconfig function pr

* Add code to fix default layer after eeprom reset
This commit is contained in:
Drashna Jaelre 2018-05-31 22:11:06 -07:00 committed by Jack Humbert
parent 8eaf23ae81
commit 3d1349b280
21 changed files with 738 additions and 505 deletions

View file

@ -42,6 +42,7 @@ enum userspace_layers {
#define MODS_ALT_MASK (MOD_BIT(KC_LALT)|MOD_BIT(KC_RALT))
#define MODS_GUI_MASK (MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI))
// RGB color codes are no longer located here anymore. Instead, you will want to
// head to https://github.com/qmk/qmk_firmware/blob/master/quantum/rgblight_list.h
@ -51,7 +52,11 @@ extern bool clicky_enable;
void rgblight_sethsv_default_helper(uint8_t index);
#endif // RGBLIGHT_ENABLE
#define EECONFIG_USERSPACE (uint8_t *)20
void tap(uint16_t keycode);
bool process_record_secrets(uint16_t keycode, keyrecord_t *record);
#define EECONFIG_USERSPACE (uint8_t *)19
typedef union {
uint8_t raw;
@ -59,6 +64,7 @@ typedef union {
bool clicky_enable :1;
bool rgb_layer_change :1;
bool is_overwatch :1;
bool nuke_switch :1;
};
} userspace_config_t;
@ -91,6 +97,8 @@ enum userspace_custom_keycodes {
KC_SECRET_4,
KC_SECRET_5,
KC_CCCV,
KC_NUKE,
#ifdef UNICODE_ENABLE
UC_FLIP,
#endif //UNICODE_ENABLE
@ -112,8 +120,8 @@ enum userspace_custom_keycodes {
#define DVORAK KC_DVORAK
#define COLEMAK KC_COLEMAK
#define WORKMAN KC_WORKMAN
#define KC_RST KC_RESET
#define KC_RST KC_RESET
#ifdef SWAP_HANDS_ENABLE
#define KC_C1R3 SH_TT
@ -125,6 +133,16 @@ enum userspace_custom_keycodes {
#define KC_MLSF OSM(MOD_LSFT)
#define KC_MRSF OSM(MOD_RSFT)
#define OS_LGUI OSM(MOD_LGUI)
#define OS_RGUI OSM(MOD_RGUI)
#define OS_LSFT OSM(MOD_LSFT)
#define OS_RSFT OSM(MOD_RSFT)
#define OS_LCTL OSM(MOD_LCTL)
#define OS_RCTL OSM(MOD_RCTL)
#define OS_LALT OSM(MOD_LALT)
#define OS_RALT OSM(MOD_RALT)
#define ALT_APP ALT_T(KC_APP)
#define MG_NKRO MAGIC_TOGGLE_NKRO
@ -200,8 +218,8 @@ enum {
#define ______________COLEMAK_MOD_DH_L3____________ CTL_T(KC_Z), KC_X, KC_C, KC_D, KC_V
#define ______________COLEMAK_MOD_DH_R1____________ KC_J, KC_L, KC_U, KC_Y, KC_SCLN
#define ______________COLEMAK_MOD_DH_R2____________ KC_K, KC_N, KC_E, KC_I, KC_O
#define ______________COLEMAK_MOD_DH_R3____________ KC_M, KC_H, KC_COMM, KC_DOT, CTL_T(KC_SLASH)
#define ______________COLEMAK_MOD_DH_R2____________ KC_M, KC_N, KC_E, KC_I, KC_O
#define ______________COLEMAK_MOD_DH_R3____________ KC_K, KC_H, KC_COMM, KC_DOT, CTL_T(KC_SLASH)
#define _________________DVORAK_L1_________________ KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y
@ -227,7 +245,7 @@ enum {
#define _________________NORMAN_L3_________________ CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B
#define _________________NORMAN_R1_________________ KC_J, KC_U, KC_R, KC_L, KC_SCLN
#define _________________NORMAN_R2_________________ KC_J, KC_N, KC_I, KC_O, KC_U
#define _________________NORMAN_R2_________________ KC_Y, KC_N, KC_I, KC_O, KC_U
#define _________________NORMAN_R3_________________ KC_P, KC_M, KC_COMM, KC_DOT, CTL_T(KC_SLASH)
#define ________________NUMBER_LEFT________________ KC_1, KC_2, KC_3, KC_4, KC_5
@ -243,7 +261,7 @@ enum {
#define ___________ERGODOX_BOTTOM_RIGHT____________ KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
#define __________________ERGODOX_THUMB_CLUSTER_____________________ ALT_T(KC_APP), KC_LGUI, KC_RGUI, CTL_T(KC_ESCAPE), \
#define __________________ERGODOX_THUMB_CLUSTER_____________________ ALT_T(KC_APP), OSM(MOD_LGUI), OSM(MOD_RGUI), CTL_T(KC_ESCAPE), \
KC_HOME, KC_PGUP, \
LT(_LOWER, KC_SPACE),KC_BSPC, KC_END, KC_PGDN, KC_DEL, LT(_RAISE, KC_ENTER)