diff options
Diffstat (limited to 'users/drashna/drashna.h')
-rw-r--r-- | users/drashna/drashna.h | 64 |
1 files changed, 37 insertions, 27 deletions
diff --git a/users/drashna/drashna.h b/users/drashna/drashna.h index 8a022cd14..0df9abb46 100644 --- a/users/drashna/drashna.h +++ b/users/drashna/drashna.h @@ -17,10 +17,9 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. #ifndef USERSPACE #define USERSPACE - #include "quantum.h" -// Define layer names +// Define layer names #define _QWERTY 0 #define _NUMLOCK 0 #define _COLEMAK 1 @@ -118,6 +117,12 @@ enum userspace_custom_keycodes { NEW_SAFE_RANGE //use "NEWPLACEHOLDER for keymap specific codes }; +#define KC_SEC1 KC_SECRET_1 +#define KC_SEC2 KC_SECRET_2 +#define KC_SEC3 KC_SECRET_3 +#define KC_SEC4 KC_SECRET_4 +#define KC_SEC5 KC_SECRET_5 + #ifdef TAP_DANCE_ENABLE enum { TD_D3_1 = 0, @@ -129,8 +134,8 @@ enum { // Custom Keycodes for Diablo 3 layer -// But since TD() doesn't work when tapdance is disabled -// We use custom codes here, so we can substituet the right stuff +// But since TD() doesn't work when tap dance is disabled +// We use custom codes here, so we can substitute the right stuff #ifdef TAP_DANCE_ENABLE #define KC_D3_1 TD(TD_D3_1) #define KC_D3_2 TD(TD_D3_2) @@ -146,26 +151,10 @@ enum { // OSM keycodes, to keep things clean and easy to change #define KC_MLSF OSM(MOD_LSFT) #define KC_MRSF OSM(MOD_RSFT) -#define ONESHOT_TIMEOUT 3000 - -#define QMK_KEYS_PER_SCAN 8 -#ifdef RGBLIGHT_ENABLE -#define RGBLIGHT_SLEEP -#endif // RGBLIGHT_ENABLE -// this makes it possible to do rolling combos (zx) with keys that -// convert to other keys on hold (z becomes ctrl when you hold it, -// and when this option isn't enabled, z rapidly followed by x -// actually sends Ctrl-x. That's bad.) -#define IGNORE_MOD_TAP_INTERRUPT -// Disable action_get_macro and fn_actions, since we don't use these -// and it saves on space in the firmware. -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - -// If we're still using the official Faux Clicky feature, substituet codes +// If we're still using the official Faux Clicky feature, substitute codes // so that we don't have any unused/blank keys. #ifdef FAUXCLICKY_ENABLE #define AUD_ON FC_ON @@ -177,23 +166,27 @@ enum { -// Since our quirky block definitions are basically a list of comma separated -// arguments, we need a wrapper in order for these definitions to be +// Since our quirky block definitions are basically a list of comma separated +// arguments, we need a wrapper in order for these definitions to be // expanded before being used as arguments to the LAYOUT_xxx macro. +#if (!defined(LAYOUT) && defined(KEYMAP)) +#define LAYOUT KEYMAP +#endif + #define LAYOUT_ergodox_wrapper(...) LAYOUT_ergodox(__VA_ARGS__) #define LAYOUT_ergodox_pretty_wrapper(...) LAYOUT_ergodox_pretty(__VA_ARGS__) -#define KEYMAP_wrapper(...) KEYMAP(__VA_ARGS__) +#define KEYMAP_wrapper(...) LAYOUT(__VA_ARGS__) // Blocks for each of the four major keyboard layouts // Organized so we can quickly adapt and modify all of them // at once, rather than for each keyboard, one at a time. -// And this allows wor much cleaner blocks in the keymaps. +// And this allows for much cleaner blocks in the keymaps. // For instance Tap/Hold for Control on all of the layouts // NOTE: These are all the same length. If you do a search/replace // then you need to add/remove underscores to keep the -// lengths consistent. +// lengths consistent. #define _________________QWERTY_L1_________________ KC_Q, KC_W, KC_E, KC_R, KC_T #define _________________QWERTY_L2_________________ KC_A, KC_S, KC_D, KC_F, KC_G @@ -212,6 +205,14 @@ enum { #define _________________COLEMAK_R2________________ KC_H, KC_N, KC_E, KC_I, KC_O #define _________________COLEMAK_R3________________ KC_K, KC_M, KC_COMM, KC_DOT, CTL_T(KC_SLASH) +#define ______________COLEMAK_MOD_DH_L1____________ KC_Q, KC_W, KC_F, KC_P, KC_B +#define ______________COLEMAK_MOD_DH_L2____________ KC_A, KC_R, KC_S, KC_T, KC_G +#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 _________________DVORAK_L1_________________ KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y #define _________________DVORAK_L2_________________ KC_A, KC_O, KC_E, KC_U, KC_I @@ -231,12 +232,21 @@ enum { #define _________________WORKMAN_R3________________ KC_B, KC_M, KC_W, KC_V, CTL_T(KC_Z) +#define _________________NORMAN_L1_________________ KC_Q, KC_W, KC_D, KC_F, KC_K +#define _________________NORMAN_L2_________________ KC_A, KC_S, KC_E, KC_T, KC_G +#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_R3_________________ KC_P, KC_M, KC_COMM, KC_DOT, CTL_T(KC_SLASH) + + // Since we have 4 default layouts (QWERTY, DVORAK, COLEMAK and WORKMAN), // this allows us to quickly modify the bottom row for all of the layouts // so we don't have to alter it 4 times and hope that we haven't missed // anything -#define ___________ERGODOX_BOTTOM_LEFT_____________ KC_QUOT, KC_MEH, KC_LBRC, KC_RBRC +#define ___________ERGODOX_BOTTOM_LEFT_____________ KC_MEH, KC_LGUI, KC_LBRC, KC_RBRC #define ___________ERGODOX_BOTTOM_RIGHT____________ KC_LEFT, KC_DOWN, KC_UP, KC_RGHT |