Update to Drashna Keymaps and Userspace (#2650)

* Change global config.h settings

* Make Shift LED brighter

* Compatibility Tweaks

* Update ASCII art and layer comments

* Add comments about MOD layer

* Change ASCII art for reset, since it was out of date

* Use Overwatch theme for Workman layer

* Fix RGB define comments

* Make sure RGB set list matches

* Stop all notes for custom Faux Click

* Switch to OSM for everything, and remove RGB Sleep

* Never use KEYMAP now

* Only enable RGB Sleep on Non-Ergodox boards

* Cleanup do to new rgblight_list.h file

* Add redirect message for RGB codes

* Update userspace documentation

* Cleanup of Userspace

Add unicode support, and cleaned up comments for ifdef statements

* Remove unneeded slashes

* Unicode handling

* Force NKRO
pull/2640/head^2
Drashna Jaelre 7 years ago committed by Jack Humbert
parent adae37f19f
commit 61a2169ff9

@ -36,50 +36,50 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_QWERTY] = KEYMAP_wrapper(\ [_QWERTY] = LAYOUT_wrapper(\
KC_ESC, _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, KC_BSPC, \ KC_ESC, _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, KC_BSPC,
KC_TAB, _________________QWERTY_L2_________________, KC_UP, KC_DOWN, KC_LEFT, KC_RIGHT, _________________QWERTY_R2_________________, KC_QUOT, \ KC_TAB, _________________QWERTY_L2_________________, KC_UP, KC_DOWN, KC_LEFT, KC_RIGHT, _________________QWERTY_R2_________________, KC_QUOT,
KC_MLSF, _________________QWERTY_L3_________________, LOWER, KC_SPACE,KC_BSPC, KC_DEL, KC_ENT, RAISE, _________________QWERTY_R3_________________, KC_LGUI \ KC_MLSF, _________________QWERTY_L3_________________, LOWER, KC_SPACE,KC_BSPC, KC_DEL, KC_ENT, RAISE, _________________QWERTY_R3_________________, KC_LGUI
), ),
[_COLEMAK] = KEYMAP_wrapper(\ [_COLEMAK] = LAYOUT_wrapper(\
KC_ESC, _________________COLEMAK_L1________________, _________________COLEMAK_R1________________, KC_BSPC, \ KC_ESC, _________________COLEMAK_L1________________, _________________COLEMAK_R1________________, KC_BSPC,
KC_TAB, _________________COLEMAK_L2________________, KC_UP, KC_DOWN, KC_LEFT, KC_RIGHT, _________________COLEMAK_R2________________, KC_QUOT, \ KC_TAB, _________________COLEMAK_L2________________, KC_UP, KC_DOWN, KC_LEFT, KC_RIGHT, _________________COLEMAK_R2________________, KC_QUOT,
KC_MLSF, _________________COLEMAK_L3________________, LOWER, KC_SPACE,KC_BSPC, KC_DEL, KC_ENT, RAISE, _________________COLEMAK_R3________________, KC_LGUI \ KC_MLSF, _________________COLEMAK_L3________________, LOWER, KC_SPACE,KC_BSPC, KC_DEL, KC_ENT, RAISE, _________________COLEMAK_R3________________, KC_LGUI
), ),
[_DVORAK] = KEYMAP_wrapper(\ [_DVORAK] = LAYOUT_wrapper(\
KC_ESC, _________________DVORAK_L1_________________, _________________DVORAK_R1_________________, KC_BSPC, \ KC_ESC, _________________DVORAK_L1_________________, _________________DVORAK_R1_________________, KC_BSPC,
KC_TAB, _________________DVORAK_L2_________________, KC_UP, KC_DOWN, KC_LEFT, KC_RIGHT, _________________DVORAK_R2_________________, KC_MINS, \ KC_TAB, _________________DVORAK_L2_________________, KC_UP, KC_DOWN, KC_LEFT, KC_RIGHT, _________________DVORAK_R2_________________, KC_MINS,
KC_MLSF, _________________DVORAK_L3_________________, LOWER, KC_SPACE,KC_BSPC, KC_DEL, KC_ENT, RAISE, _________________DVORAK_R3_________________, KC_LGUI \ KC_MLSF, _________________DVORAK_L3_________________, LOWER, KC_SPACE,KC_BSPC, KC_DEL, KC_ENT, RAISE, _________________DVORAK_R3_________________, KC_LGUI
), ),
[_WORKMAN] = KEYMAP_wrapper(\ [_WORKMAN] = LAYOUT_wrapper(\
KC_ESC, _________________WORKMAN_L1________________, _________________WORKMAN_R1________________, KC_BSPC, \ KC_ESC, _________________WORKMAN_L1________________, _________________WORKMAN_R1________________, KC_BSPC,
KC_TAB, _________________WORKMAN_L2________________, KC_UP, KC_DOWN, KC_LEFT, KC_RIGHT, _________________WORKMAN_R2________________, KC_MINS, \ KC_TAB, _________________WORKMAN_L2________________, KC_UP, KC_DOWN, KC_LEFT, KC_RIGHT, _________________WORKMAN_R2________________, KC_MINS,
KC_MLSF, _________________WORKMAN_L3________________, LOWER, KC_SPACE,KC_BSPC, KC_DEL, KC_ENT, RAISE, _________________WORKMAN_R3________________, KC_LGUI \ KC_MLSF, _________________WORKMAN_L3________________, LOWER, KC_SPACE,KC_BSPC, KC_DEL, KC_ENT, RAISE, _________________WORKMAN_R3________________, KC_LGUI
), ),
[_MODS] = KEYMAP(\ [_MODS] = LAYOUT(\
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
KC_LSFT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \ KC_LSFT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
), ),
[_LOWER] = KEYMAP(\ [_LOWER] = LAYOUT(\
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, \ KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F11, KC_F12, _______, _______, XXXXXXX, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, \ KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F11, KC_F12, _______, _______, XXXXXXX, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
_______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______, _______, _______, _______, _______, _______, XXXXXXX, KC_PGUP, KC_COMM, KC_DOT, KC_PGDN, _______ \ _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______, _______, _______, _______, _______, _______, XXXXXXX, KC_PGUP, KC_COMM, KC_DOT, KC_PGDN, _______
), ),
[_RAISE] = KEYMAP(\ [_RAISE] = LAYOUT(\
KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, \ KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC,
KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F11, KC_F12, _______, KC_RCTL, XXXXXXX, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, \ KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F11, KC_F12, _______, KC_RCTL, XXXXXXX, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
_______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______, _______, _______, _______, _______, _______, XXXXXXX, KC_HOME, KC_COMM, KC_DOT, KC_END, _______ \ _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______, _______, _______, _______, _______, _______, XXXXXXX, KC_HOME, KC_COMM, KC_DOT, KC_END, _______
), ),
[_ADJUST] = KEYMAP(\ [_ADJUST] = LAYOUT(\
KC_MAKE,KC_RESET, EPRM, _______, _______, _______, _______, _______, _______, _______, _______, _______, \ KC_MAKE,KC_RESET, EPRM, _______, _______, _______, _______, _______, _______, _______, _______, _______,
RGB_SMOD,RGB_HUI, KC_FXCL, AUD_ON, AUD_OFF, AG_NORM, _______, _______, _______, _______, AG_SWAP, KC_QWERTY, KC_COLEMAK, KC_DVORAK, KC_WORKMAN, TG(_MODS), \ RGB_SMOD,RGB_HUI, KC_FXCL, AUD_ON, AUD_OFF, AG_NORM, _______, _______, _______, _______, AG_SWAP, KC_QWERTY, KC_COLEMAK, KC_DVORAK, KC_WORKMAN, TG(_MODS),
KC_RGB_T,RGB_HUD, MU_ON, MU_OFF, MU_TOG, MU_MOD, _______, _______, _______, _______, _______, _______, MG_NKRO, KC_MUTE, KC_VOLD, KC_VOLU, KC_MNXT, KC_MPLY \ KC_RGB_T,RGB_HUD, MU_ON, MU_OFF, MU_TOG, MU_MOD, _______, _______, _______, _______, _______, _______, MG_NKRO, KC_MUTE, KC_VOLD, KC_VOLU, KC_MNXT, KC_MPLY
) )

@ -27,51 +27,51 @@ extern keymap_config_t keymap_config;
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_NUMLOCK] = LAYOUT_ortho_5x7( [_NUMLOCK] = LAYOUT_ortho_5x7(
LMACRO, DIABLO, GAMEPAD, KC_NLCK, KC_SLCK, KC_COLN, KC_PSLS, \ LMACRO, DIABLO, GAMEPAD, KC_NLCK, KC_SLCK, KC_COLN, KC_PSLS,
MEDIA, KC_CALC, COVECUBE,KC_P7, KC_P8, KC_P9, KC_PAST, \ MEDIA, KC_CALC, COVECUBE,KC_P7, KC_P8, KC_P9, KC_PAST,
KC_HOME, KC_DEL, KC_PGUP, KC_P4, KC_P5, KC_P6, KC_PMNS, \ KC_HOME, KC_DEL, KC_PGUP, KC_P4, KC_P5, KC_P6, KC_PMNS,
KC_END, KC_UP, KC_PGDN, KC_P1, KC_P2, KC_P3, KC_PPLS, \ KC_END, KC_UP, KC_PGDN, KC_P1, KC_P2, KC_P3, KC_PPLS,
KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_COLN, KC_PENT \ KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_COLN, KC_PENT
), ),
[_DIABLO] = LAYOUT_ortho_5x7( [_DIABLO] = LAYOUT_ortho_5x7(
KC_ESC, DIABLO, KC_V, KC_D, XXXXXXX, XXXXXXX, KC_L, \ KC_ESC, DIABLO, KC_V, KC_D, XXXXXXX, XXXXXXX, KC_L,
KC_TAB, KC_S, KC_F, KC_I, KC_M, KC_T, KC_J, \ KC_TAB, KC_S, KC_F, KC_I, KC_M, KC_T, KC_J,
KC_Q, KC_1, KC_2, KC_3, KC_4, KC_G, KC_F, \ KC_Q, KC_1, KC_2, KC_3, KC_4, KC_G, KC_F,
KC_LCTL, KC_D3_3, KC_D3_3, KC_D3_3, KC_D3_3, KC_Z, KC_DIABLO_CLEAR, \ KC_LCTL, KC_D3_3, KC_D3_3, KC_D3_3, KC_D3_3, KC_Z, KC_DIABLO_CLEAR,
KC_LALT, KC_F4, KC_F5, KC_F8, KC_F9, KC_F10, SFT_T(KC_SPACE) \ KC_LALT, KC_F4, KC_F5, KC_F8, KC_F9, KC_F10, SFT_T(KC_SPACE)
), ),
[_GAMEPAD] = LAYOUT_ortho_5x7( // Game pad layout designed primarily for Overwatch [_GAMEPAD] = LAYOUT_ortho_5x7( // Game pad layout designed primarily for Overwatch
LMACRO, KC_ESC, GAMEPAD, KC_1, KC_2, KC_3, KC_4, \ LMACRO, KC_ESC, GAMEPAD, KC_1, KC_2, KC_3, KC_4,
MEDIA, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, \ MEDIA, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T,
KC_Z, KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, \ KC_Z, KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G,
KC_Y, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, \ KC_Y, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B,
KC_F1, KC_U, KC_I, KC_Y, KC_V, KC_SPC, KC_V \ KC_F1, KC_U, KC_I, KC_Y, KC_V, KC_SPC, KC_V
), ),
[_MACROS] = LAYOUT_ortho_5x7( [_MACROS] = LAYOUT_ortho_5x7(
LMACRO, KC_OVERWATCH,GAMEPAD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \ LMACRO, KC_OVERWATCH,GAMEPAD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
KC_C9, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \ KC_C9, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
KC_SYMM, KC_TORB, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \ KC_SYMM, KC_TORB, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
KC_GLHF, KC_GOODGAME, KC_GGEZ, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \ KC_GLHF, KC_GOODGAME, KC_GGEZ, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
KC_SALT, KC_MORESALT, KC_SALTHARD, KC_JUSTGAME, KC_AIM, XXXXXXX, KC_PENT \ KC_SALT, KC_MORESALT, KC_SALTHARD, KC_JUSTGAME, KC_AIM, XXXXXXX, KC_PENT
), ),
[_COVECUBE] = LAYOUT_ortho_5x7( [_COVECUBE] = LAYOUT_ortho_5x7(
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \ XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
XXXXXXX, XXXXXXX, COVECUBE, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \ XXXXXXX, XXXXXXX, COVECUBE, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \ XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \ XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX \ XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX
), ),
[_MEDIA] = LAYOUT_ortho_5x7( [_MEDIA] = LAYOUT_ortho_5x7(
KC_MAKE, KC_RESET,MU_TOG, AUD_ON, AUD_OFF, KC_FXCL, RGB_SAD, \ KC_MAKE, KC_RESET,MU_TOG, AUD_ON, AUD_OFF, KC_FXCL, RGB_SAD,
MEDIA, EPRM, KC_RGB_T,RGB_M_P, RGB_M_B, RGB_M_R, RGB_SAI, \ MEDIA, EPRM, KC_RGB_T,RGB_M_P, RGB_M_B, RGB_M_R, RGB_SAI,
RGB_TOG, RGB_MOD, RGB_RMOD,RGB_M_SW,RGB_M_SN,RGB_M_K, RGB_HUD, \ RGB_TOG, RGB_MOD, RGB_RMOD,RGB_M_SW,RGB_M_SN,RGB_M_K, RGB_HUD,
KC_MPLY, KC_MPRV, KC_MNXT, RGB_M_X, RGB_M_G, RGB_M_P, RGB_HUI, \ KC_MPLY, KC_MPRV, KC_MNXT, RGB_M_X, RGB_M_G, RGB_M_P, RGB_HUI,
KC_MUTE, KC_VOLD, KC_VOLU, XXXXXXX, XXXXXXX, RGB_VAD, RGB_VAI \ KC_MUTE, KC_VOLD, KC_VOLU, XXXXXXX, XXXXXXX, RGB_VAD, RGB_VAI
) )

@ -30,7 +30,7 @@ bool skip_leds = false;
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Keymap 0: Basic layer /* Keymap 0: QWERTY Layer
* *
* *
* ,--------------------------------------------------. ,--------------------------------------------------. * ,--------------------------------------------------. ,--------------------------------------------------.
@ -42,7 +42,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* |--------+------+------+------+------+------| TG(2)| | TG(2)|------+------+------+------+------+--------| * |--------+------+------+------+------+------| TG(2)| | TG(2)|------+------+------+------+------+--------|
* | Shift | Z | X | C | V | B | | | | N | M | , < | . > | ? / | Shift | * | Shift | Z | X | C | V | B | | | | N | M | , < | . > | ? / | Shift |
* `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
* | `/SYM| ' " | LGUI | [ { | ] } | | LEFT | DOWN | UP |RIGHT | SYMB | * | `/SYM| MEH | LGUI | [ { | ] } | | LEFT | DOWN | UP |RIGHT | SYMB |
* `----------------------------------' `----------------------------------' * `----------------------------------' `----------------------------------'
* ,--------------. ,--------------. * ,--------------. ,--------------.
* |Alt/Ap| Win | | Alt |Ctl/Esc| * |Alt/Ap| Win | | Alt |Ctl/Esc|
@ -65,7 +65,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
), ),
/* Keymap 0: Basic layer /* Keymap 0: COLEMAK layer
* *
* ,--------------------------------------------------. ,--------------------------------------------------. * ,--------------------------------------------------. ,--------------------------------------------------.
* | = | 1 | 2 | 3 | 4 | 5 | LEFT | | RIGHT| 6 | 7 | 8 | 9 | 0 | - | * | = | 1 | 2 | 3 | 4 | 5 | LEFT | | RIGHT| 6 | 7 | 8 | 9 | 0 | - |
@ -76,7 +76,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* |--------+------+------+------+------+------| OVER | | Meh |------+------+------+------+------+--------| * |--------+------+------+------+------+------| OVER | | Meh |------+------+------+------+------+--------|
* | LShift |Z/Ctrl| X | C | V | B | | | | K | M | , | . |//Ctrl| RShift | * | LShift |Z/Ctrl| X | C | V | B | | | | K | M | , | . |//Ctrl| RShift |
* `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
* |Grv/L1| '" |AltShf| Left | Right| | Up | Down | [ | ] | ~L1 | * | `/SYM| MEH | LGUI | [ { | ] } | | LEFT | DOWN | UP |RIGHT | SYMB |
* `----------------------------------' `----------------------------------' * `----------------------------------' `----------------------------------'
* ,-------------. ,-------------. * ,-------------. ,-------------.
* | App | LGui | | Alt |Ctrl/Esc| * | App | LGui | | Alt |Ctrl/Esc|
@ -88,7 +88,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
*/ */
// If it accepts an argument (i.e, is a function), it doesn't need KC_. // If it accepts an argument (i.e, is a function), it doesn't need KC_.
// Otherwise, it needs KC_* // Otherwise, it needs KC_*
[_COLEMAK] = LAYOUT_ergodox_pretty_wrapper( [_COLEMAK] = LAYOUT_ergodox_pretty_wrapper(
// left hand // right hand // left hand // right hand
KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, OSL(_MOUS), OSL(_MOUS), KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, OSL(_MOUS), OSL(_MOUS), KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,
KC_TAB, _________________COLEMAK_L1________________, TG(_DIABLO), TG(_DIABLO), _________________COLEMAK_R1________________, KC_BSLS, KC_TAB, _________________COLEMAK_L1________________, TG(_DIABLO), TG(_DIABLO), _________________COLEMAK_R1________________, KC_BSLS,
@ -99,7 +99,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_HOME, KC_PGUP, KC_HOME, KC_PGUP,
KC_SPACE,KC_BSPC, KC_END, KC_PGDN, KC_DEL, KC_ENTER KC_SPACE,KC_BSPC, KC_END, KC_PGDN, KC_DEL, KC_ENTER
), ),
/* Keymap 0: Basic layer /* Keymap 0: DVORAK Layout
* *
* ,--------------------------------------------------. ,--------------------------------------------------. * ,--------------------------------------------------. ,--------------------------------------------------.
* | = | 1 | 2 | 3 | 4 | 5 | LEFT | | RIGHT| 6 | 7 | 8 | 9 | 0 | \ | * | = | 1 | 2 | 3 | 4 | 5 | LEFT | | RIGHT| 6 | 7 | 8 | 9 | 0 | \ |
@ -110,7 +110,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------| * |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------|
* | LShift |:/Ctrl| Q | J | K | X | | | | B | M | W | V |Z/Ctrl| RShift | * | LShift |:/Ctrl| Q | J | K | X | | | | B | M | W | V |Z/Ctrl| RShift |
* `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
* |Grv/L1| '" |AltShf| Left | Right| | Up | Down | [ | ] | ~L1 | * | `/SYM| MEH | LGUI | [ { | ] } | | LEFT | DOWN | UP |RIGHT | SYMB |
* `----------------------------------' `----------------------------------' * `----------------------------------' `----------------------------------'
* ,-------------. ,-------------. * ,-------------. ,-------------.
* | App | LGui | | Alt |Ctrl/Esc| * | App | LGui | | Alt |Ctrl/Esc|
@ -122,7 +122,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
*/ */
// If it accepts an argument (i.e, is a function), it doesn't need KC_. // If it accepts an argument (i.e, is a function), it doesn't need KC_.
// Otherwise, it needs KC_* // Otherwise, it needs KC_*
[_DVORAK] = LAYOUT_ergodox_pretty_wrapper( [_DVORAK] = LAYOUT_ergodox_pretty_wrapper(
// left hand // right hand // left hand // right hand
KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, OSL(_MOUS), OSL(_MOUS), KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSLS, KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, OSL(_MOUS), OSL(_MOUS), KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSLS,
KC_TAB, _________________DVORAK_L1_________________, TG(_DIABLO), TG(_DIABLO), _________________DVORAK_R1_________________, KC_SLSH, KC_TAB, _________________DVORAK_L1_________________, TG(_DIABLO), TG(_DIABLO), _________________DVORAK_R1_________________, KC_SLSH,
@ -133,7 +133,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_HOME, KC_PGUP, KC_HOME, KC_PGUP,
KC_SPACE,KC_BSPC, KC_END, KC_PGDN, KC_DEL, KC_ENTER KC_SPACE,KC_BSPC, KC_END, KC_PGDN, KC_DEL, KC_ENTER
), ),
/* Keymap 0: Basic layer /* Keymap 0: WORKMAN layer
* *
* ,--------------------------------------------------. ,--------------------------------------------------. * ,--------------------------------------------------. ,--------------------------------------------------.
* | = | 1 | 2 | 3 | 4 | 5 | LEFT | | RIGHT| 6 | 7 | 8 | 9 | 0 | - | * | = | 1 | 2 | 3 | 4 | 5 | LEFT | | RIGHT| 6 | 7 | 8 | 9 | 0 | - |
@ -144,7 +144,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* |--------+------+------+------+------+------| OVER | | Meh |------+------+------+------+------+--------| * |--------+------+------+------+------+------| OVER | | Meh |------+------+------+------+------+--------|
* | LShift |Z/Ctrl| X | M | C | V | | | | K | L | , | . |//Ctrl| RShift | * | LShift |Z/Ctrl| X | M | C | V | | | | K | L | , | . |//Ctrl| RShift |
* `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
* |Grv/L1| '" |AltShf| Left | Right| | Up | Down | [ | ] | ~L1 | * | `/SYM| MEH | LGUI | [ { | ] } | | LEFT | DOWN | UP |RIGHT | SYMB |
* `----------------------------------' `----------------------------------' * `----------------------------------' `----------------------------------'
* ,-------------. ,-------------. * ,-------------. ,-------------.
* | App | LGui | | Alt |Ctrl/Esc| * | App | LGui | | Alt |Ctrl/Esc|
@ -156,7 +156,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
*/ */
// If it accepts an argument (i.e, is a function), it doesn't need KC_. // If it accepts an argument (i.e, is a function), it doesn't need KC_.
// Otherwise, it needs KC_* // Otherwise, it needs KC_*
[_WORKMAN] = LAYOUT_ergodox_pretty_wrapper( [_WORKMAN] = LAYOUT_ergodox_pretty_wrapper(
// left hand // left hand
KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, OSL(_MOUS), OSL(_MOUS), KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, OSL(_MOUS), OSL(_MOUS), KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,
KC_TAB, _________________WORKMAN_L1________________, TG(_DIABLO), TG(_DIABLO), _________________WORKMAN_R1________________, KC_BSLS, KC_TAB, _________________WORKMAN_L1________________, TG(_DIABLO), TG(_DIABLO), _________________WORKMAN_R1________________, KC_BSLS,
@ -168,6 +168,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_SPACE,KC_BSPC, KC_END, KC_PGDN, KC_DEL, KC_ENTER KC_SPACE,KC_BSPC, KC_END, KC_PGDN, KC_DEL, KC_ENTER
), ),
// Reverts OSM(Shift) to normal Shifts. However, may not need since we fixed the issue with RDP (LOCAL RESOURCES)
[_MODS] = LAYOUT_ergodox_pretty( [_MODS] = LAYOUT_ergodox_pretty(
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
@ -184,11 +185,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* ,--------------------------------------------------. ,--------------------------------------------------. * ,--------------------------------------------------. ,--------------------------------------------------.
* | ESC | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | * | ESC | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 |
* |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
* | VERSION| ! | @ | { | } | | | | | | + | 7 | 8 | 9 | * | F12 | * | RESET | ! | @ | { | } | | | | | | + | 7 | 8 | 9 | * | F12 |
* |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
* | MAKE | # | $ | ( | ) | ` |------| |------| - | 4 | 5 | 6 | / | PrtSc | * | MAKE | # | $ | ( | ) | ` |------| |------| - | 4 | 5 | 6 | / | PrtSc |
* |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
* | RESET | % | ^ | [ | ] | ~ | | | | NUM | 1 | 2 | 3 | = | PAUSE | * | VRSN | % | ^ | [ | ] | ~ | | | | NUM | 1 | 2 | 3 | = | PAUSE |
* `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
* | LT0 | & | * | : | ; | | | 0 | NUM. | ENT | ENT | * | LT0 | & | * | : | ; | | | 0 | NUM. | ENT | ENT |
* `----------------------------------' `----------------------------------' * `----------------------------------' `----------------------------------'
@ -202,7 +203,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
*/ */
[_SYMB] = LAYOUT_ergodox_pretty( [_SYMB] = LAYOUT_ergodox_pretty(
EPRM, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_QWERTY, KC_QWERTY, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, EPRM, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_QWERTY, KC_QWERTY, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
KC_RESET, KC_EXLM, KC_AT, KC_LCBR, KC_RCBR, KC_PIPE, KC_WORKMAN, KC_DVORAK, KC_PPLS, KC_KP_7, KC_KP_8, KC_KP_9, KC_PAST, KC_F12, KC_RST, KC_EXLM, KC_AT, KC_LCBR, KC_RCBR, KC_PIPE, KC_WORKMAN, KC_DVORAK, KC_PPLS, KC_KP_7, KC_KP_8, KC_KP_9, KC_PAST, KC_F12,
KC_MAKE, KC_HASH, KC_DLR, KC_LPRN, KC_RPRN, KC_GRAVE, KC_PMNS, KC_KP_4, KC_KP_5, KC_KP_6, KC_PSLS, KC_PSCREEN, KC_MAKE, KC_HASH, KC_DLR, KC_LPRN, KC_RPRN, KC_GRAVE, KC_PMNS, KC_KP_4, KC_KP_5, KC_KP_6, KC_PSLS, KC_PSCREEN,
VRSN, KC_PERC, KC_CIRC, KC_LBRC, KC_RBRC, KC_TILD, KC_COLEMAK, KC_COLEMAK, KC_NLCK, KC_KP_1, KC_KP_2, KC_KP_3, KC_PEQL, KC_PAUSE, VRSN, KC_PERC, KC_CIRC, KC_LBRC, KC_RBRC, KC_TILD, KC_COLEMAK, KC_COLEMAK, KC_NLCK, KC_KP_1, KC_KP_2, KC_KP_3, KC_PEQL, KC_PAUSE,
KC_TRNS, KC_AMPR, KC_ASTR, KC_COLN, KC_SCLN, KC_KP_0, KC_KP_0, KC_PDOT, KC_PENT, KC_TRNS, KC_TRNS, KC_AMPR, KC_ASTR, KC_COLN, KC_SCLN, KC_KP_0, KC_KP_0, KC_PDOT, KC_PENT, KC_TRNS,
@ -348,7 +349,7 @@ void matrix_scan_keymap(void) { // runs frequently to update info
// Also, no "else", since we want to know each, independently. // Also, no "else", since we want to know each, independently.
if (modifiders & MODS_SHIFT_MASK || led_usb_state & (1<<USB_LED_CAPS_LOCK) || one_shot & MODS_SHIFT_MASK) { if (modifiders & MODS_SHIFT_MASK || led_usb_state & (1<<USB_LED_CAPS_LOCK) || one_shot & MODS_SHIFT_MASK) {
ergodox_right_led_2_on(); ergodox_right_led_2_on();
ergodox_right_led_2_set( 10 ); ergodox_right_led_2_set( 50 );
} }
if (modifiders & MODS_CTRL_MASK || one_shot & MODS_CTRL_MASK) { if (modifiders & MODS_CTRL_MASK || one_shot & MODS_CTRL_MASK) {
ergodox_right_led_1_on(); ergodox_right_led_1_on();

@ -3,17 +3,19 @@
#ifdef AUDIO_ENABLE #ifdef AUDIO_ENABLE
#define STARTUP_SONG SONG(IMPERIAL_MARCH) #define STARTUP_SONG SONG(E1M1_DOOM)
#define GOODBYE_SONG SONG(SONIC_RING) #define GOODBYE_SONG SONG(SONIC_RING)
#define DEFAULT_LAYER_SONGS { SONG(QWERTY_SOUND), \ #define DEFAULT_LAYER_SONGS { SONG(QWERTY_SOUND), \
SONG(COLEMAK_SOUND), \ SONG(COLEMAK_SOUND), \
SONG(DVORAK_SOUND), \ SONG(DVORAK_SOUND), \
SONG(PLOVER_SOUND) \ SONG(OVERWATCH_THEME) \
} }
#endif #endif
#ifdef RGBLIGHT_ENABLE #ifdef RGBLIGHT_ENABLE
#define RGBLIGHT_SLEEP #ifndef KEYBOARD_ergodox_ez
#define RGBLIGHT_SLEEP
#endif
#endif // RGBLIGHT_ENABLE #endif // RGBLIGHT_ENABLE
@ -40,6 +42,8 @@
#undef PERMISSIVE_HOLD #undef PERMISSIVE_HOLD
#undef PREVENT_STUCK_MODIFIERS #undef PREVENT_STUCK_MODIFIERS
#define FORCE_NKRO
#ifndef TAPPING_TOGGLE #ifndef TAPPING_TOGGLE
#define TAPPING_TOGGLE 1 #define TAPPING_TOGGLE 1
#endif #endif
@ -47,7 +51,7 @@
#ifdef TAPPING_TERM #ifdef TAPPING_TERM
#undef TAPPING_TERM #undef TAPPING_TERM
#endif #endif
#define TAPPING_TERM 150 #define TAPPING_TERM 160
// Disable action_get_macro and fn_actions, since we don't use these // Disable action_get_macro and fn_actions, since we don't use these

@ -18,7 +18,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "drashna.h" #include "drashna.h"
#include "version.h" #include "version.h"
#if (__has_include("secrets.h")) #if (__has_include("secrets.h") && !defined(NO_SECRETS))
#include "secrets.h" #include "secrets.h"
#else #else
// `PROGMEM const char secret[][x]` may work better, but it takes up more space in the firmware // `PROGMEM const char secret[][x]` may work better, but it takes up more space in the firmware
@ -36,10 +36,10 @@ PROGMEM const char secret[][64] = {
#ifdef FAUXCLICKY_ENABLE #ifdef FAUXCLICKY_ENABLE
float fauxclicky_pressed_note[2] = MUSICAL_NOTE(_A6, 2); // (_D4, 0.25); float fauxclicky_pressed_note[2] = MUSICAL_NOTE(_A6, 2); // (_D4, 0.25);
float fauxclicky_released_note[2] = MUSICAL_NOTE(_A6, 2); // (_C4, 0.125); float fauxclicky_released_note[2] = MUSICAL_NOTE(_A6, 2); // (_C4, 0.125);
#else #else // FAUXCLICKY_ENABLE
float fauxclicky_pressed[][2] = SONG(S__NOTE(_A6)); // change to your tastes float fauxclicky_pressed[][2] = SONG(S__NOTE(_A6)); // change to your tastes
float fauxclicky_released[][2] = SONG(S__NOTE(_A6)); // change to your tastes float fauxclicky_released[][2] = SONG(S__NOTE(_A6)); // change to your tastes
#endif #endif // FAUXCLICKY_ENABLE
bool faux_click_enabled = false; bool faux_click_enabled = false;
bool is_overwatch = false; bool is_overwatch = false;
@ -127,7 +127,7 @@ void run_diablo_macro_check(void) {
} }
} }
#endif #endif // TAP_DANCE_ENABLE
// Add reconfigurable functions here, for keymap customization // Add reconfigurable functions here, for keymap customization
@ -178,10 +178,15 @@ void matrix_init_user(void) {
} }
else else
{ {
rgblight_set_red; rgblight_setrgb_red();
rgblight_mode(5); rgblight_mode(5);
} }
#endif #endif // RGBLIGHT_ENABLE
#if ( defined(UNICODE_ENABLE) || defined(UNICODEMAP_ENABLE) || defined(UCIS_ENABLE) )
set_unicode_input_mode(UC_WINC);
#endif //UNICODE_ENABLE
matrix_init_keymap(); matrix_init_keymap();
} }
// No global matrix scan code, so just run keymap's matrix // No global matrix scan code, so just run keymap's matrix
@ -189,7 +194,7 @@ void matrix_init_user(void) {
void matrix_scan_user(void) { void matrix_scan_user(void) {
#ifdef TAP_DANCE_ENABLE // Run Diablo 3 macro checking code. #ifdef TAP_DANCE_ENABLE // Run Diablo 3 macro checking code.
run_diablo_macro_check(); run_diablo_macro_check();
#endif #endif // TAP_DANCE_ENABLE
matrix_scan_keymap(); matrix_scan_keymap();
} }
@ -209,29 +214,24 @@ bool send_game_macro(const char *str, keyrecord_t *record, bool override) {
return false; return false;
} }
// Sent the default layer
void persistent_default_layer_set(uint16_t default_layer) {
eeconfig_update_default_layer(default_layer);
default_layer_set(default_layer);
}
// Defines actions tor my global custom keycodes. Defined in drashna.h file // Defines actions tor my global custom keycodes. Defined in drashna.h file
// Then runs the _keymap's record handier if not processed here // Then runs the _keymap's record handier if not processed here
bool process_record_user(uint16_t keycode, keyrecord_t *record) { bool process_record_user(uint16_t keycode, keyrecord_t *record) {
// If console is enabled, it will print the matrix position and status of each key pressed // If console is enabled, it will print the matrix position and status of each key pressed
#ifdef CONSOLE_ENABLE #ifdef CONSOLE_ENABLE
xprintf("KL: row: %u, column: %u, pressed: %u\n", record->event.key.col, record->event.key.row, record->event.pressed); xprintf("KL: row: %u, column: %u, pressed: %u\n", record->event.key.col, record->event.key.row, record->event.pressed);
#endif //CONSOLE_ENABLE #endif //CONSOLE_ENABLE
// Run custom faux click code, but only if faux clicky is enabled // Run custom faux click code, but only if faux clicky is enabled
#ifdef AUDIO_ENABLE #ifdef AUDIO_ENABLE
if ( (faux_click_enabled && keycode != KC_FXCL) || (!faux_click_enabled && keycode == KC_FXCL) ) { if ( (faux_click_enabled && keycode != KC_FXCL) || (!faux_click_enabled && keycode == KC_FXCL) ) {
if (record->event.pressed) { if (record->event.pressed) {
stop_all_notes();
PLAY_SONG(fauxclicky_pressed); PLAY_SONG(fauxclicky_pressed);
} else { } else {
stop_note(NOTE_A6); stop_all_notes();
PLAY_SONG(fauxclicky_released); PLAY_SONG(fauxclicky_released);
} }
} }
@ -307,7 +307,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
":teensy" ":teensy"
#elif defined(BOOTLOADER_CATERINA) #elif defined(BOOTLOADER_CATERINA)
":avrdude" ":avrdude"
#endif #endif // bootloader options
SS_TAP(X_ENTER)); SS_TAP(X_ENTER));
} }
return false; return false;
@ -320,7 +320,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
rgblight_enable(); rgblight_enable();
rgblight_mode(1); rgblight_mode(1);
rgblight_setrgb_red(); rgblight_setrgb_red();
#endif #endif // RGBLIGHT_ENABLE
reset_keyboard(); reset_keyboard();
} }
return false; return false;
@ -498,7 +498,7 @@ uint32_t layer_state_set_user(uint32_t state) {
break; break;
} }
} }
#endif #endif // RGBLIGHT_ENABLE
return layer_state_set_keymap (state); return layer_state_set_keymap (state);
} }

@ -46,47 +46,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define MODS_ALT_MASK (MOD_BIT(KC_LALT)|MOD_BIT(KC_RALT)) #define MODS_ALT_MASK (MOD_BIT(KC_LALT)|MOD_BIT(KC_RALT))
#define MODS_GUI_MASK (MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI)) #define MODS_GUI_MASK (MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI))
#ifndef RGBLIGHT_ANIMATIONS // add "EXTRA_FLADS=-DDRASHNA_SETRGB" to enable this ... but don't // RGB color codes are no longer located here anymore. Instead, you will want to
#define rgblight_set_white rgblight_setrgb (0xFF, 0xFF, 0xFF); // head to https://github.com/qmk/qmk_firmware/blob/master/quantum/rgblight_list.h
#define rgblight_set_red rgblight_setrgb (0xFF, 0x00, 0x00);
#define rgblight_set_coral rgblight_setrgb (0xFF, 0x7C, 0x4D);
#define rgblight_set_orange rgblight_setrgb (0xFF, 0x80, 0x00);
#define rgblight_set_goldenrod rgblight_setrgb (0xD9, 0xA5, 0x21);
#define rgblight_set_gold rgblight_setrgb (0xFF, 0xD9, 0x00);
#define rgblight_set_yellow rgblight_setrgb (0xFF, 0xFF, 0x00);
#define rgblight_set_chartreuse rgblight_setrgb (0x80, 0xFF, 0x00);
#define rgblight_set_green rgblight_setrgb (0x00, 0xFF, 0x00);
#define rgblight_set_springgreen rgblight_setrgb (0x00, 0xFF, 0x80);
#define rgblight_set_turquoise rgblight_setrgb (0x47, 0x6E, 0x6A);
#define rgblight_set_teal rgblight_setrgb (0x00, 0x80, 0x80);
#define rgblight_set_cyan rgblight_setrgb (0x00, 0xFF, 0xFF);
#define rgblight_set_azure rgblight_setrgb (0x99, 0xf5, 0xFF);
#define rgblight_set_blue rgblight_setrgb (0x00, 0x00, 0xFF);
#define rgblight_set_purple rgblight_setrgb (0x7A, 0x00, 0xFF);
#define rgblight_set_magenta rgblight_setrgb (0xFF, 0x00, 0xFF);
#define rgblight_set_pink rgblight_setrgb (0xFF, 0x80, 0xBF);
#else
#define rgblight_set_white rgblight_sethsv (0, 0x00, 255);
#define rgblight_set_red rgblight_sethsv (0, 255, 255);
#define rgblight_set_coral rgblight_sethsv (16, 176, 255);
#define rgblight_set_orange rgblight_sethsv (39, 255, 255);
#define rgblight_set_goldenrod rgblight_sethsv (43, 218, 218);
#define rgblight_set_gold rgblight_sethsv (51, 255, 255);
#define rgblight_set_yellow rgblight_sethsv (60, 255, 255);
#define rgblight_set_chartreuse rgblight_sethsv (90, 255, 255);
#define rgblight_set_green rgblight_sethsv (120, 255, 255);
#define rgblight_set_springgreen rgblight_sethsv (150, 255, 255);
#define rgblight_set_turquoise rgblight_sethsv (174, 90, 112);
#define rgblight_set_teal rgblight_sethsv (180, 255, 128);
#define rgblight_set_cyan rgblight_sethsv (180, 255, 255);
#define rgblight_set_azure rgblight_sethsv (186, 102, 255);
#define rgblight_set_blue rgblight_sethsv (240, 255, 255);
#define rgblight_set_purple rgblight_sethsv (270, 255, 255);
#define rgblight_set_magenta rgblight_sethsv (300, 255, 255);
#define rgblight_set_pink rgblight_sethsv (330, 128, 255);
//#define rgblight_set_ rgblight_sethsv (0, 255, 255);
#endif // DRASHNA_SETRGB
extern bool is_overwatch; extern bool is_overwatch;
extern bool rgb_layer_change; extern bool rgb_layer_change;
@ -132,6 +93,12 @@ enum userspace_custom_keycodes {
#define KC_SEC4 KC_SECRET_4 #define KC_SEC4 KC_SECRET_4
#define KC_SEC5 KC_SECRET_5 #define KC_SEC5 KC_SECRET_5
#define QWERTY KC_QWERTY
#define DVORAK KC_DVORAK
#define COLEMAK KC_COLEMAK
#define WORKMAN KC_WORKMAN
#define KC_RST KC_RESET
#ifdef TAP_DANCE_ENABLE #ifdef TAP_DANCE_ENABLE
enum { enum {
TD_D3_1 = 0, TD_D3_1 = 0,
@ -185,6 +152,7 @@ enum {
#define LAYOUT_ergodox_wrapper(...) LAYOUT_ergodox(__VA_ARGS__) #define LAYOUT_ergodox_wrapper(...) LAYOUT_ergodox(__VA_ARGS__)
#define LAYOUT_ergodox_pretty_wrapper(...) LAYOUT_ergodox_pretty(__VA_ARGS__) #define LAYOUT_ergodox_pretty_wrapper(...) LAYOUT_ergodox_pretty(__VA_ARGS__)
#define KEYMAP_wrapper(...) LAYOUT(__VA_ARGS__) #define KEYMAP_wrapper(...) LAYOUT(__VA_ARGS__)
#define LAYOUT_wrapper(...) LAYOUT(__VA_ARGS__)
// Blocks for each of the four major keyboard layouts // Blocks for each of the four major keyboard layouts
@ -255,7 +223,7 @@ enum {
// this allows us to quickly modify the bottom row for all of the layouts // 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 // so we don't have to alter it 4 times and hope that we haven't missed
// anything // anything
#define ___________ERGODOX_BOTTOM_LEFT_____________ KC_MEH, KC_LGUI, KC_LBRC, KC_RBRC #define ___________ERGODOX_BOTTOM_LEFT_____________ OSM(MOD_MEH), OSM(MOD_LGUI), KC_LBRC, KC_RBRC
#define ___________ERGODOX_BOTTOM_RIGHT____________ KC_LEFT, KC_DOWN, KC_UP, KC_RGHT #define ___________ERGODOX_BOTTOM_RIGHT____________ KC_LEFT, KC_DOWN, KC_UP, KC_RGHT

@ -12,7 +12,7 @@ The reason for using seperate files here is that the `drashna.h` file doesn't ge
However, the `rules.mk` file is included when building the firmware. So we can hijack that process to "manually" add a `config.h`. To do so, you would need to add the following to the `rules.mk` in your userspace: However, the `rules.mk` file is included when building the firmware. So we can hijack that process to "manually" add a `config.h`. To do so, you would need to add the following to the `rules.mk` in your userspace:
``` ```c
ifneq ("$(wildcard users/$(KEYMAP)/config.h)","") ifneq ("$(wildcard users/$(KEYMAP)/config.h)","")
CONFIG_H += users/$(KEYMAP)/config.h CONFIG_H += users/$(KEYMAP)/config.h
endif endif
@ -22,7 +22,7 @@ You can replace `$(KEYMAP)` with your name, but it's not necessary. This checks
As for the `config.h` file, you want to make sure that it has an "ifdef" in it to make sure it's only used once. So you want something like this: As for the `config.h` file, you want to make sure that it has an "ifdef" in it to make sure it's only used once. So you want something like this:
``` ```c
#ifndef USERSPACE_CONFIG_H #ifndef USERSPACE_CONFIG_H
#define USERSPACE_CONFIG_H #define USERSPACE_CONFIG_H
@ -122,7 +122,7 @@ If you would *also* like to take advantage of this feature, you'll first want to
Then you can create this file and add your macro strings to it: Then you can create this file and add your macro strings to it:
###### secrets.h ###### secrets.h
``` ```c
PROGMEM const char secret[][64] = { PROGMEM const char secret[][64] = {
"secret1", "secret1",
"secret2", "secret2",
@ -132,11 +132,29 @@ PROGMEM const char secret[][64] = {
}; };
``` ```
Replacing the strings with the codes that you need. Replacing the strings with the codes that you need.
In the `<name>.c` file, you will want to add this to the top:
These are called in the `process_record_user` function, using this block: ```c
#if (__has_include("secrets.h") && !defined(NO_SECRETS))
#include "secrets.h"
#else
// `PROGMEM const char secret[][x]` may work better, but it takes up more space in the firmware
// And I'm not familiar enough to know which is better or why...
PROGMEM const char secret[][64] = {
"test1",
"test2",
"test3",
"test4",
"test5"
};
#endif
``` ```
And then, in the `process_record_user` function, you'll want to add this block:
```c
case KC_SECRET_1 ... KC_SECRET_5: case KC_SECRET_1 ... KC_SECRET_5:
if (!record->event.pressed) { if (!record->event.pressed) {
send_string_P(secret[keycode - KC_SECRET_1]); send_string_P(secret[keycode - KC_SECRET_1]);
@ -145,4 +163,13 @@ These are called in the `process_record_user` function, using this block:
break; break;
``` ```
And this requires `KC_SECRET_1` through `KC_SECRET_5` to be defined, as well. And this requires `KC_SECRET_1` through `KC_SECRET_5` to be defined in your `<name>.h` file fo the new macros, as well.
Additionally, if you want to make sure that you can disable the function without messing with the file, you need to add this to your `/users/<name>/rules.mk`, so that it catches the flag:
```c
ifeq ($(strip $(NO_SECRETS)), yes)
OPT_DEFS += -DNO_SECRETS
endif
```
Then, if you run `make keyboard:name NO_SECRETS=yes`, it will default to the test strings in your `<name>.c` file, rather than reading from your file.

@ -5,3 +5,7 @@ EXTRAFLAGS += -flto
ifneq ("$(wildcard users/$(KEYMAP)/config.h)","") ifneq ("$(wildcard users/$(KEYMAP)/config.h)","")
CONFIG_H += users/$(KEYMAP)/config.h CONFIG_H += users/$(KEYMAP)/config.h
endif endif
ifeq ($(strip $(NO_SECRETS)), yes)
OPT_DEFS += -DNO_SECRETS
endif

Loading…
Cancel
Save