Browse Source

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/2654/merge
Drashna Jaelre 6 years ago
committed by Jack Humbert
parent
commit
61a2169ff9
8 changed files with 152 additions and 148 deletions
  1. +32
    -32
      keyboards/orthodox/keymaps/drashna/keymap.c
  2. +30
    -30
      keyboards/viterbi/keymaps/drashna/keymap.c
  3. +16
    -15
      layouts/community/ergodox/drashna/keymap.c
  4. +8
    -4
      users/drashna/config.h
  5. +19
    -19
      users/drashna/drashna.c
  6. +10
    -42
      users/drashna/drashna.h
  7. +33
    -6
      users/drashna/readme.md
  8. +4
    -0
      users/drashna/rules.mk

+ 32
- 32
keyboards/orthodox/keymaps/drashna/keymap.c View File

@ -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] = {
[_QWERTY] = KEYMAP_wrapper(\
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_MLSF, _________________QWERTY_L3_________________, LOWER, KC_SPACE,KC_BSPC, KC_DEL, KC_ENT, RAISE, _________________QWERTY_R3_________________, KC_LGUI \
[_QWERTY] = LAYOUT_wrapper(\
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_MLSF, _________________QWERTY_L3_________________, LOWER, KC_SPACE,KC_BSPC, KC_DEL, KC_ENT, RAISE, _________________QWERTY_R3_________________, KC_LGUI
),
[_COLEMAK] = KEYMAP_wrapper(\
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_MLSF, _________________COLEMAK_L3________________, LOWER, KC_SPACE,KC_BSPC, KC_DEL, KC_ENT, RAISE, _________________COLEMAK_R3________________, KC_LGUI \
[_COLEMAK] = LAYOUT_wrapper(\
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_MLSF, _________________COLEMAK_L3________________, LOWER, KC_SPACE,KC_BSPC, KC_DEL, KC_ENT, RAISE, _________________COLEMAK_R3________________, KC_LGUI
),
[_DVORAK] = KEYMAP_wrapper(\
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_MLSF, _________________DVORAK_L3_________________, LOWER, KC_SPACE,KC_BSPC, KC_DEL, KC_ENT, RAISE, _________________DVORAK_R3_________________, KC_LGUI \
[_DVORAK] = LAYOUT_wrapper(\
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_MLSF, _________________DVORAK_L3_________________, LOWER, KC_SPACE,KC_BSPC, KC_DEL, KC_ENT, RAISE, _________________DVORAK_R3_________________, KC_LGUI
),
[_WORKMAN] = KEYMAP_wrapper(\
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_MLSF, _________________WORKMAN_L3________________, LOWER, KC_SPACE,KC_BSPC, KC_DEL, KC_ENT, RAISE, _________________WORKMAN_R3________________, KC_LGUI \
[_WORKMAN] = LAYOUT_wrapper(\
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_MLSF, _________________WORKMAN_L3________________, LOWER, KC_SPACE,KC_BSPC, KC_DEL, KC_ENT, RAISE, _________________WORKMAN_R3________________, KC_LGUI
),
[_MODS] = KEYMAP(\
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
KC_LSFT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \
[_MODS] = LAYOUT(\
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
KC_LSFT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
),
[_LOWER] = KEYMAP(\
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_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______, _______, _______, _______, _______, _______, XXXXXXX, KC_PGUP, KC_COMM, KC_DOT, KC_PGDN, _______ \
[_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_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, _______
),
[_RAISE] = KEYMAP(\
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_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______, _______, _______, _______, _______, _______, XXXXXXX, KC_HOME, KC_COMM, KC_DOT, KC_END, _______ \
[_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_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, _______
),
[_ADJUST] = KEYMAP(\
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), \
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 \
[_ADJUST] = LAYOUT(\
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),
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
)


+ 30
- 30
keyboards/viterbi/keymaps/drashna/keymap.c View File

@ -27,51 +27,51 @@ extern keymap_config_t keymap_config;
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_NUMLOCK] = LAYOUT_ortho_5x7(
LMACRO, DIABLO, GAMEPAD, KC_NLCK, KC_SLCK, KC_COLN, KC_PSLS, \
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_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 \
LMACRO, DIABLO, GAMEPAD, KC_NLCK, KC_SLCK, KC_COLN, KC_PSLS,
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_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
),
[_DIABLO] = LAYOUT_ortho_5x7(
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_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_LALT, KC_F4, KC_F5, KC_F8, KC_F9, KC_F10, SFT_T(KC_SPACE) \
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_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_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
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, \
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_F1, KC_U, KC_I, KC_Y, KC_V, KC_SPC, KC_V \
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,
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_F1, KC_U, KC_I, KC_Y, KC_V, KC_SPC, KC_V
),
[_MACROS] = LAYOUT_ortho_5x7(
LMACRO, KC_OVERWATCH,GAMEPAD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
KC_C9, XXXXXXX, 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_SALT, KC_MORESALT, KC_SALTHARD, KC_JUSTGAME, KC_AIM, XXXXXXX, KC_PENT \
LMACRO, KC_OVERWATCH,GAMEPAD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
KC_C9, XXXXXXX, 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_SALT, KC_MORESALT, KC_SALTHARD, KC_JUSTGAME, KC_AIM, XXXXXXX, KC_PENT
),
[_COVECUBE] = LAYOUT_ortho_5x7(
XXXXXXX, XXXXXXX, XXXXXXX, 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, 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
),
[_MEDIA] = LAYOUT_ortho_5x7(
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, \
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_MUTE, KC_VOLD, KC_VOLU, XXXXXXX, XXXXXXX, RGB_VAD, RGB_VAI \
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,
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_MUTE, KC_VOLD, KC_VOLU, XXXXXXX, XXXXXXX, RGB_VAD, RGB_VAI
)


+ 16
- 15
layouts/community/ergodox/drashna/keymap.c View File

@ -30,7 +30,7 @@ bool skip_leds = false;
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)|------+------+------+------+------+--------|
* | 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|
@ -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 | - |
@ -76,7 +76,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* |--------+------+------+------+------+------| OVER | | Meh |------+------+------+------+------+--------|
* | 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|
@ -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_.
// Otherwise, it needs KC_*
[_COLEMAK] = LAYOUT_ergodox_pretty_wrapper(
[_COLEMAK] = LAYOUT_ergodox_pretty_wrapper(
// 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_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_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 | \ |
@ -110,7 +110,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------|
* | 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|
@ -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_.
// Otherwise, it needs KC_*
[_DVORAK] = LAYOUT_ergodox_pretty_wrapper(
[_DVORAK] = LAYOUT_ergodox_pretty_wrapper(
// 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_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_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 | - |
@ -144,7 +144,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* |--------+------+------+------+------+------| OVER | | Meh |------+------+------+------+------+--------|
* | 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|
@ -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_.
// Otherwise, it needs KC_*
[_WORKMAN] = LAYOUT_ergodox_pretty_wrapper(
[_WORKMAN] = LAYOUT_ergodox_pretty_wrapper(
// 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_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
),
// Reverts OSM(Shift) to normal Shifts. However, may not need since we fixed the issue with RDP (LOCAL RESOURCES)
[_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 |
* |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
* | VERSION| ! | @ | { | } | | | | | | + | 7 | 8 | 9 | * | F12 |
* | RESET | ! | @ | { | } | | | | | | + | 7 | 8 | 9 | * | F12 |
* |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
* | MAKE | # | $ | ( | ) | ` |------| |------| - | 4 | 5 | 6 | / | PrtSc |
* |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
* | RESET | % | ^ | [ | ] | ~ | | | | NUM | 1 | 2 | 3 | = | PAUSE |
* | VRSN | % | ^ | [ | ] | ~ | | | | NUM | 1 | 2 | 3 | = | PAUSE |
* `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
* | LT0 | & | * | : | ; | | | 0 | NUM. | ENT | ENT |
* `----------------------------------' `----------------------------------'
@ -202,7 +203,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
*/
[_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,
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,
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,
@ -348,7 +349,7 @@ void matrix_scan_keymap(void) { // runs frequently to update info
// 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) {
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) {
ergodox_right_led_1_on();


+ 8
- 4
users/drashna/config.h View File

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


+ 19
- 19
users/drashna/drashna.c View File

@ -18,7 +18,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "drashna.h"
#include "version.h"
#if (__has_include("secrets.h"))
#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
@ -36,10 +36,10 @@ PROGMEM const char secret[][64] = {
#ifdef FAUXCLICKY_ENABLE
float fauxclicky_pressed_note[2] = MUSICAL_NOTE(_A6, 2); // (_D4, 0.25);
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_released[][2] = SONG(S__NOTE(_A6)); // change to your tastes
#endif
#endif // FAUXCLICKY_ENABLE
bool faux_click_enabled = 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
@ -178,10 +178,15 @@ void matrix_init_user(void) {
}
else
{
rgblight_set_red;
rgblight_setrgb_red();
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();
}
// 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) {
#ifdef TAP_DANCE_ENABLE // Run Diablo 3 macro checking code.
run_diablo_macro_check();
#endif
#endif // TAP_DANCE_ENABLE
matrix_scan_keymap();
}
@ -209,29 +214,24 @@ bool send_game_macro(const char *str, keyrecord_t *record, bool override) {
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
// Then runs the _keymap's record handier if not processed here
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
xprintf("KL: row: %u, column: %u, pressed: %u\n", record->event.key.col, record->event.key.row, record->event.pressed);
#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
if ( (faux_click_enabled && keycode != KC_FXCL) || (!faux_click_enabled && keycode == KC_FXCL) ) {
if (record->event.pressed) {
stop_all_notes();
PLAY_SONG(fauxclicky_pressed);
} else {
stop_note(NOTE_A6);
stop_all_notes();
PLAY_SONG(fauxclicky_released);
}
}
@ -307,7 +307,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
":teensy"
#elif defined(BOOTLOADER_CATERINA)
":avrdude"
#endif
#endif // bootloader options
SS_TAP(X_ENTER));
}
return false;
@ -320,7 +320,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
rgblight_enable();
rgblight_mode(1);
rgblight_setrgb_red();
#endif
#endif // RGBLIGHT_ENABLE
reset_keyboard();
}
return false;
@ -498,7 +498,7 @@ uint32_t layer_state_set_user(uint32_t state) {
break;
}
}
#endif
#endif // RGBLIGHT_ENABLE
return layer_state_set_keymap (state);
}


+ 10
- 42
users/drashna/drashna.h View File

@ -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_GUI_MASK (MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI))
#ifndef RGBLIGHT_ANIMATIONS // add "EXTRA_FLADS=-DDRASHNA_SETRGB" to enable this ... but don't
#define rgblight_set_white rgblight_setrgb (0xFF, 0xFF, 0xFF);
#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
// 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
extern bool is_overwatch;
extern bool rgb_layer_change;
@ -132,6 +93,12 @@ enum userspace_custom_keycodes {
#define KC_SEC4 KC_SECRET_4
#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
enum {
TD_D3_1 = 0,
@ -185,6 +152,7 @@ enum {
#define LAYOUT_ergodox_wrapper(...) LAYOUT_ergodox(__VA_ARGS__)
#define LAYOUT_ergodox_pretty_wrapper(...) LAYOUT_ergodox_pretty(__VA_ARGS__)
#define KEYMAP_wrapper(...) LAYOUT(__VA_ARGS__)
#define LAYOUT_wrapper(...) LAYOUT(__VA_ARGS__)
// 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
// so we don't have to alter it 4 times and hope that we haven't missed
// 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


+ 33
- 6
users/drashna/readme.md View File

@ -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:
```
```c
ifneq ("$(wildcard users/$(KEYMAP)/config.h)","")
CONFIG_H += users/$(KEYMAP)/config.h
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:
```
```c
#ifndef 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:
###### secrets.h
```
```c
PROGMEM const char secret[][64] = {
"secret1",
"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:
if (!record->event.pressed) {
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;
```
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.

+ 4
- 0
users/drashna/rules.mk View File

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

Loading…
Cancel
Save