diff options
author | Drashna Jaelre <drashna@live.com> | 2018-02-04 10:44:02 -0800 |
---|---|---|
committer | Jack Humbert <jack.humb@gmail.com> | 2018-02-04 13:44:02 -0500 |
commit | 598384bc1064ab9250191a1727c27a0eea406756 (patch) | |
tree | d4effea1e1f7207a924135fd93a29fbad8c8dd41 /users/drashna/drashna.h | |
parent | ac82cd1ba77f4ed8d38f17662864c6a56a8da293 (diff) | |
download | firmware-598384bc1064ab9250191a1727c27a0eea406756.tar.gz firmware-598384bc1064ab9250191a1727c27a0eea406756.tar.bz2 firmware-598384bc1064ab9250191a1727c27a0eea406756.zip |
Update to drashna userspace (Keymap Templating) (#2338)
* Change tapping term to be longer
* Make Audio/Underglow settings permanent
* Use wait_ms rather than _delay_ms
* Readd One Shot Mods
* Switch to Imperial March startup sound
* Move OSM to it's own layer
* Minor Formatting Tweaks
* Keymap Templates and formatting fixes
Diffstat (limited to 'users/drashna/drashna.h')
-rw-r--r-- | users/drashna/drashna.h | 63 |
1 files changed, 61 insertions, 2 deletions
diff --git a/users/drashna/drashna.h b/users/drashna/drashna.h index aa9c83086..8354c55c9 100644 --- a/users/drashna/drashna.h +++ b/users/drashna/drashna.h @@ -26,8 +26,10 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. #define _COLEMAK 1 #define _DVORAK 2 #define _WORKMAN 3 -#define _NAV 5 -#define _COVECUBE 6 +#define _MODS 4 +//#define _MISC 5 +#define _NAV 6 +#define _COVECUBE 7 #define _SYMB 8 #define _GAMEPAD 9 #define _DIABLO 10 @@ -142,4 +144,61 @@ enum { #define AUD_OFF AU_OFF #endif + + +// 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. +#define LAYOUT_ergodox_wrapper(...) LAYOUT_ergodox(__VA_ARGS__) +#define KEYMAP_wrapper(...) KEYMAP(__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. +// For instance Tap/Hold for Control on all of the layouts + +#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 +#define _________________QWERTY_L3_________________ CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B + +#define _________________QWERTY_R1_________________ KC_Y, KC_U, KC_I, KC_O, KC_P +#define _________________QWERTY_R2_________________ KC_H, KC_J, KC_K, KC_L, KC_SCLN +#define _________________QWERTY_R3_________________ KC_N, KC_M, KC_COMM, KC_DOT, CTL_T(KC_SLASH) + + +#define _________________COLEMAK_L1________________ KC_Q, KC_W, KC_F, KC_P, KC_G +#define _________________COLEMAK_L2________________ KC_A, KC_R, KC_S, KC_T, KC_D +#define _________________COLEMAK_L3________________ CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B + +#define _________________COLEMAK_R1________________ KC_J, KC_L, KC_U, KC_Y, KC_SCLN +#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 _________________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 +#define _________________DVORAK_L3_________________ CTL_T(KC_SCLN),KC_Q, KC_J, KC_K, KC_X + +#define _________________DVORAK_R1_________________ KC_F, KC_G, KC_C, KC_R, KC_L +#define _________________DVORAK_R2_________________ KC_D, KC_H, KC_T, KC_N, KC_S +#define _________________DVORAK_R3_________________ KC_B, KC_M, KC_W, KC_V, CTL_T(KC_Z) + + +#define _________________WORKMAN_L1________________ KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y +#define _________________WORKMAN_L2________________ KC_A, KC_O, KC_E, KC_U, KC_I +#define _________________WORKMAN_L3________________ CTL_T(KC_SCLN),KC_Q, KC_J, KC_K, KC_X + +#define _________________WORKMAN_R1________________ KC_F, KC_G, KC_C, KC_R, KC_L +#define _________________WORKMAN_R2________________ KC_D, KC_H, KC_T, KC_N, KC_S +#define _________________WORKMAN_R3________________ KC_B, KC_M, KC_W, KC_V, CTL_T(KC_Z) + + + +// 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_LGUI, KC_LBRC, KC_RBRC +#define ___________ERGODOX_BOTTOM_RIGHT____________ KC_LEFT, KC_DOWN, KC_UP, KC_RGHT #endif |