diff options
author | drashna <drashna@live.com> | 2017-11-10 19:58:53 -0800 |
---|---|---|
committer | Jack Humbert <jack.humb@gmail.com> | 2017-11-10 22:58:53 -0500 |
commit | 0533362e8205957493d52d4356aa20537a151118 (patch) | |
tree | 106e6feb82d31192ce349f68b4763c5a3d71dcaa | |
parent | 4df4fa7c265e1e5c9b262851a704db7755971229 (diff) | |
download | qmk_firmware-0533362e8205957493d52d4356aa20537a151118.tar.gz qmk_firmware-0533362e8205957493d52d4356aa20537a151118.zip |
Cleaned uppersonal userspace and keymaps (#1998)
* Cleanup of keymaps
* Remove Tap Dance from Orthodox keymap
* Cleaned up userspace and keymaps
* Added sample (template)userspace files to my folder
-rw-r--r-- | keyboards/ergodox_ez/keymaps/drashna/keymap.c | 4 | ||||
-rw-r--r-- | keyboards/ergodox_ez/keymaps/drashna/rules.mk | 3 | ||||
-rw-r--r-- | keyboards/handwired/woodpad/keymaps/drashna/config.h | 6 | ||||
-rw-r--r-- | keyboards/handwired/woodpad/keymaps/drashna/keymap.c | 22 | ||||
-rw-r--r-- | keyboards/handwired/woodpad/keymaps/drashna/rules.mk | 1 | ||||
-rw-r--r-- | keyboards/orthodox/keymaps/drashna/config.h | 3 | ||||
-rw-r--r-- | keyboards/orthodox/keymaps/drashna/keymap.c | 47 | ||||
-rw-r--r-- | keyboards/orthodox/keymaps/drashna/rules.mk | 5 | ||||
-rw-r--r-- | keyboards/viterbi/keymaps/drashna/keymap.c | 50 | ||||
-rw-r--r-- | users/drashna/drashna.c | 115 | ||||
-rw-r--r-- | users/drashna/drashna.h | 7 | ||||
-rw-r--r-- | users/drashna/rules.mk | 1 | ||||
-rw-r--r-- | users/drashna/template.c | 82 | ||||
-rw-r--r-- | users/drashna/template.h | 18 |
14 files changed, 218 insertions, 146 deletions
diff --git a/keyboards/ergodox_ez/keymaps/drashna/keymap.c b/keyboards/ergodox_ez/keymaps/drashna/keymap.c index 651703c1e..1f9161236 100644 --- a/keyboards/ergodox_ez/keymaps/drashna/keymap.c +++ b/keyboards/ergodox_ez/keymaps/drashna/keymap.c | |||
@@ -225,7 +225,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
225 | KC_BSPC, KC_A, KC_R, KC_S, KC_T, KC_D, | 225 | KC_BSPC, KC_A, KC_R, KC_S, KC_T, KC_D, |
226 | KC_LSFT, LCTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B, TG(_OVERWATCH), | 226 | KC_LSFT, LCTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B, TG(_OVERWATCH), |
227 | LT(_SYMB,KC_GRV),KC_QUOT, KC_LGUI, KC_LBRACKET,KC_RBRACKET, | 227 | LT(_SYMB,KC_GRV),KC_QUOT, KC_LGUI, KC_LBRACKET,KC_RBRACKET, |
228 | ALT_T(KC_APP), KC_LEAD, | 228 | ALT_T(KC_APP), KC_LGUI, |
229 | KC_HOME, | 229 | KC_HOME, |
230 | KC_SPC,KC_BSPC,KC_END, | 230 | KC_SPC,KC_BSPC,KC_END, |
231 | // right hand | 231 | // right hand |
@@ -234,7 +234,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
234 | KC_H, KC_N, KC_E, KC_I, KC_O, GUI_T(KC_QUOTE), | 234 | KC_H, KC_N, KC_E, KC_I, KC_O, GUI_T(KC_QUOTE), |
235 | TG(_OVERWATCH),KC_K, KC_M, KC_COMM,KC_DOT, RCTL_T(KC_SLASH), KC_RSHIFT, | 235 | TG(_OVERWATCH),KC_K, KC_M, KC_COMM,KC_DOT, RCTL_T(KC_SLASH), KC_RSHIFT, |
236 | KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, TT(_SYMB), | 236 | KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, TT(_SYMB), |
237 | KC_LALT, CTL_T(KC_ESC), | 237 | KC_RGUI, CTL_T(KC_ESC), |
238 | KC_PGUP, | 238 | KC_PGUP, |
239 | KC_PGDN,KC_DELETE, KC_ENT | 239 | KC_PGDN,KC_DELETE, KC_ENT |
240 | ), | 240 | ), |
diff --git a/keyboards/ergodox_ez/keymaps/drashna/rules.mk b/keyboards/ergodox_ez/keymaps/drashna/rules.mk index b6c5ed3bd..bfeb6be49 100644 --- a/keyboards/ergodox_ez/keymaps/drashna/rules.mk +++ b/keyboards/ergodox_ez/keymaps/drashna/rules.mk | |||
@@ -1,8 +1,7 @@ | |||
1 | TAP_DANCE_ENABLE = yes | 1 | TAP_DANCE_ENABLE = yes |
2 | SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend | 2 | SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend |
3 | COMMAND_ENABLE = yes # Commands for debug and configuration | 3 | COMMAND_ENABLE = no # Commands for debug and configuration |
4 | RGBLIGHT_ENABLE = yes | 4 | RGBLIGHT_ENABLE = yes |
5 | MIDI_ENABLE = no | ||
6 | CONSOLE_ENABLE = no | 5 | CONSOLE_ENABLE = no |
7 | 6 | ||
8 | EXTRAFLAGS = -flto | 7 | EXTRAFLAGS = -flto |
diff --git a/keyboards/handwired/woodpad/keymaps/drashna/config.h b/keyboards/handwired/woodpad/keymaps/drashna/config.h index be1e4df59..780192cf3 100644 --- a/keyboards/handwired/woodpad/keymaps/drashna/config.h +++ b/keyboards/handwired/woodpad/keymaps/drashna/config.h | |||
@@ -28,13 +28,13 @@ | |||
28 | 28 | ||
29 | #ifdef RGBLIGHT_ENABLE | 29 | #ifdef RGBLIGHT_ENABLE |
30 | #define RGB_DI_PIN D3 | 30 | #define RGB_DI_PIN D3 |
31 | #define RGBLED_NUM 7 // Number of LEDs | 31 | #define RGBLED_NUM 14 // Number of LEDs |
32 | #define RGBLIGHT_ANIMATIONS | 32 | #define RGBLIGHT_ANIMATIONS |
33 | #define RGBLIGHT_HUE_STEP 12 | 33 | #define RGBLIGHT_HUE_STEP 12 |
34 | #define RGBLIGHT_SAT_STEP 12 | 34 | #define RGBLIGHT_SAT_STEP 12 |
35 | #define RGBLIGHT_VAL_STEP 12 | 35 | #define RGBLIGHT_VAL_STEP 12 |
36 | #define RGBLIGHT_EFFECT_KNIGHT_LENGTH 2 | 36 | #define RGBLIGHT_EFFECT_KNIGHT_LENGTH 4 |
37 | #define RGBLIGHT_EFFECT_SNAKE_LENGTH 2 | 37 | #define RGBLIGHT_EFFECT_SNAKE_LENGTH 3 |
38 | #define RGBLIGHT_EFFECT_BREATHE_CENTER 1 | 38 | #define RGBLIGHT_EFFECT_BREATHE_CENTER 1 |
39 | #endif // RGBLIGHT_ENABLE | 39 | #endif // RGBLIGHT_ENABLE |
40 | 40 | ||
diff --git a/keyboards/handwired/woodpad/keymaps/drashna/keymap.c b/keyboards/handwired/woodpad/keymaps/drashna/keymap.c index 6ec7f52fd..e53c65f10 100644 --- a/keyboards/handwired/woodpad/keymaps/drashna/keymap.c +++ b/keyboards/handwired/woodpad/keymaps/drashna/keymap.c | |||
@@ -47,10 +47,10 @@ bool check_dtimer(uint8_t dtimer) { | |||
47 | 47 | ||
48 | #ifdef TAP_DANCE_ENABLE | 48 | #ifdef TAP_DANCE_ENABLE |
49 | enum { | 49 | enum { |
50 | TD_DIABLO_1 = 0, | 50 | TD_D3_1 = 0, |
51 | TD_DIABLO_2, | 51 | TD_D3_2, |
52 | TD_DIABLO_3, | 52 | TD_D3_3, |
53 | TD_DIABLO_4 | 53 | TD_D3_4 |
54 | }; | 54 | }; |
55 | 55 | ||
56 | 56 | ||
@@ -89,10 +89,10 @@ void diablo_tapdance4(qk_tap_dance_state_t *state, void *user_data) { | |||
89 | //Tap Dance Definitions | 89 | //Tap Dance Definitions |
90 | qk_tap_dance_action_t tap_dance_actions[] = { | 90 | qk_tap_dance_action_t tap_dance_actions[] = { |
91 | // tap once to disable, and more to enable timed micros | 91 | // tap once to disable, and more to enable timed micros |
92 | [TD_DIABLO_1] = ACTION_TAP_DANCE_FN(diablo_tapdance1), | 92 | [TD_D3_1] = ACTION_TAP_DANCE_FN(diablo_tapdance1), |
93 | [TD_DIABLO_2] = ACTION_TAP_DANCE_FN(diablo_tapdance2), | 93 | [TD_D3_2] = ACTION_TAP_DANCE_FN(diablo_tapdance2), |
94 | [TD_DIABLO_3] = ACTION_TAP_DANCE_FN(diablo_tapdance3), | 94 | [TD_D3_3] = ACTION_TAP_DANCE_FN(diablo_tapdance3), |
95 | [TD_DIABLO_4] = ACTION_TAP_DANCE_FN(diablo_tapdance4), | 95 | [TD_D3_4] = ACTION_TAP_DANCE_FN(diablo_tapdance4), |
96 | 96 | ||
97 | }; | 97 | }; |
98 | #endif | 98 | #endif |
@@ -117,7 +117,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
117 | KC_ESC, _______, _______, _______,\ | 117 | KC_ESC, _______, _______, _______,\ |
118 | KC_S, KC_F, KC_I, KC_M, \ | 118 | KC_S, KC_F, KC_I, KC_M, \ |
119 | KC_1, KC_2, KC_3, KC_4, \ | 119 | KC_1, KC_2, KC_3, KC_4, \ |
120 | TD(TD_DIABLO_1), TD(TD_DIABLO_2), TD(TD_DIABLO_3), TD(TD_DIABLO_4), \ | 120 | TD(TD_D3_1), TD(TD_D3_2), TD(TD_D3_3), TD(TD_D3_4), \ |
121 | _______, KC_DIABLO_CLEAR, KC_Q, SFT_T(KC_SPACE) \ | 121 | _______, KC_DIABLO_CLEAR, KC_Q, SFT_T(KC_SPACE) \ |
122 | ), | 122 | ), |
123 | #else | 123 | #else |
@@ -135,7 +135,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
135 | KC_OVERWATCH, _______, _______, XXXXXXX,\ | 135 | KC_OVERWATCH, _______, _______, XXXXXXX,\ |
136 | XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \ | 136 | XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \ |
137 | XXXXXXX, XXXXXXX, XXXXXXX, KC_JUSTGAME, \ | 137 | XXXXXXX, XXXXXXX, XXXXXXX, KC_JUSTGAME, \ |
138 | KC_SYMM, KC_DOOMFIST, KC_TORB, KC_GOODGAME, \ | 138 | KC_SYMM, KC_TORB, XXXXXXX, KC_GOODGAME, \ |
139 | KC_SALT, KC_MORESALT, KC_SALTHARD, KC_GLHF \ | 139 | KC_SALT, KC_MORESALT, KC_SALTHARD, KC_GLHF \ |
140 | ), | 140 | ), |
141 | [_MEDIA] = KEYMAP( /* Base */ | 141 | [_MEDIA] = KEYMAP( /* Base */ |
@@ -226,7 +226,7 @@ void matrix_init_keymap(void) { | |||
226 | 226 | ||
227 | void matrix_scan_keymap(void) { | 227 | void matrix_scan_keymap(void) { |
228 | numlock_led_off(); | 228 | numlock_led_off(); |
229 | if (is_overwatch && biton32(layer_state) == _MACROS) { | 229 | if ((is_overwatch && biton32(layer_state) == _MACROS) || (biton32(layer_state) == _NAV)) { |
230 | numlock_led_on(); | 230 | numlock_led_on(); |
231 | } | 231 | } |
232 | 232 | ||
diff --git a/keyboards/handwired/woodpad/keymaps/drashna/rules.mk b/keyboards/handwired/woodpad/keymaps/drashna/rules.mk index b6c5ed3bd..bee3ecf50 100644 --- a/keyboards/handwired/woodpad/keymaps/drashna/rules.mk +++ b/keyboards/handwired/woodpad/keymaps/drashna/rules.mk | |||
@@ -4,6 +4,7 @@ COMMAND_ENABLE = yes # Commands for debug and configuration | |||
4 | RGBLIGHT_ENABLE = yes | 4 | RGBLIGHT_ENABLE = yes |
5 | MIDI_ENABLE = no | 5 | MIDI_ENABLE = no |
6 | CONSOLE_ENABLE = no | 6 | CONSOLE_ENABLE = no |
7 | NKRO_ENABLE = yes | ||
7 | 8 | ||
8 | EXTRAFLAGS = -flto | 9 | EXTRAFLAGS = -flto |
9 | 10 | ||
diff --git a/keyboards/orthodox/keymaps/drashna/config.h b/keyboards/orthodox/keymaps/drashna/config.h index fc483b08e..d88481fd6 100644 --- a/keyboards/orthodox/keymaps/drashna/config.h +++ b/keyboards/orthodox/keymaps/drashna/config.h | |||
@@ -61,5 +61,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. | |||
61 | #define RGBLIGHT_EFFECT_BREATHE_CENTER 1 | 61 | #define RGBLIGHT_EFFECT_BREATHE_CENTER 1 |
62 | #endif // RGBLIGHT_ENABLE | 62 | #endif // RGBLIGHT_ENABLE |
63 | 63 | ||
64 | #ifdef AUDIO_ENABLE | ||
65 | #define C6_AUDIO | ||
66 | #endif | ||
64 | 67 | ||
65 | #endif | 68 | #endif |
diff --git a/keyboards/orthodox/keymaps/drashna/keymap.c b/keyboards/orthodox/keymaps/drashna/keymap.c index b6618f151..ca4e6dc2c 100644 --- a/keyboards/orthodox/keymaps/drashna/keymap.c +++ b/keyboards/orthodox/keymaps/drashna/keymap.c | |||
@@ -20,11 +20,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. | |||
20 | */ | 20 | */ |
21 | 21 | ||
22 | #include "orthodox.h" | 22 | #include "orthodox.h" |
23 | #include "action_layer.h" | ||
24 | #include "eeconfig.h" | ||
25 | #include "drashna.h" | 23 | #include "drashna.h" |
26 | 24 | ||
27 | extern keymap_config_t keymap_config; | ||
28 | 25 | ||
29 | // Each layer gets a name for readability, which is then used in the keymap matrix below. | 26 | // Each layer gets a name for readability, which is then used in the keymap matrix below. |
30 | // The underscores don't mean anything - you can have a layer called STUFF or any other name. | 27 | // The underscores don't mean anything - you can have a layer called STUFF or any other name. |
@@ -36,38 +33,6 @@ extern keymap_config_t keymap_config; | |||
36 | #define XXXXXXX KC_NO | 33 | #define XXXXXXX KC_NO |
37 | 34 | ||
38 | 35 | ||
39 | #ifdef TAP_DANCE_ENABLE | ||
40 | enum { | ||
41 | TD_FLSH = 0, | ||
42 | }; | ||
43 | |||
44 | |||
45 | |||
46 | |||
47 | |||
48 | // on the fourth tap, set the keyboard on flash state | ||
49 | // and set the underglow to red, because red == bad | ||
50 | void dance_flsh_finished(qk_tap_dance_state_t *state, void *user_data) { | ||
51 | if (state->count >= 4) { | ||
52 | #ifdef RGBLIGHT_ENABLE | ||
53 | rgblight_mode(1); | ||
54 | rgblight_setrgb(0xff, 0x00, 0x00); | ||
55 | #endif | ||
56 | reset_tap_dance(state); | ||
57 | reset_keyboard(); | ||
58 | } | ||
59 | } | ||
60 | |||
61 | |||
62 | |||
63 | //Tap Dance Definitions | ||
64 | qk_tap_dance_action_t tap_dance_actions[] = { | ||
65 | //Once for Blue, Twice for Green, Thrice for Red, and four to flash | ||
66 | [TD_FLSH] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, dance_flsh_finished, NULL), | ||
67 | |||
68 | }; | ||
69 | #endif | ||
70 | |||
71 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | 36 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { |
72 | 37 | ||
73 | [_QWERTY] = KEYMAP(\ | 38 | [_QWERTY] = KEYMAP(\ |
@@ -106,7 +71,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
106 | ), | 71 | ), |
107 | 72 | ||
108 | [_ADJUST] = KEYMAP(\ | 73 | [_ADJUST] = KEYMAP(\ |
109 | KC_MAKE, KC_RESET, TD(TD_FLSH), _______, _______, _______, _______, _______, _______, _______, _______, _______, \ | 74 | KC_MAKE,KC_RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \ |
110 | _______, _______, _______, AU_ON, AU_OFF, AG_NORM, _______, XXXXXXX, _______, _______, XXXXXXX, _______, AG_SWAP, KC_QWERTY, KC_COLEMAK, KC_DVORAK, KC_WORKMAN, _______, \ | 75 | _______, _______, _______, AU_ON, AU_OFF, AG_NORM, _______, XXXXXXX, _______, _______, XXXXXXX, _______, AG_SWAP, KC_QWERTY, KC_COLEMAK, KC_DVORAK, KC_WORKMAN, _______, \ |
111 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, MAGIC_TOGGLE_NKRO, KC_MUTE, KC_VOLD, KC_VOLU, KC_MNXT, KC_MPLY \ | 76 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, MAGIC_TOGGLE_NKRO, KC_MUTE, KC_VOLD, KC_VOLU, KC_MNXT, KC_MPLY \ |
112 | ) | 77 | ) |
@@ -114,8 +79,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
114 | 79 | ||
115 | }; | 80 | }; |
116 | 81 | ||
117 | 82 | #ifdef FAUXCLICKY_ENABLE | |
118 | bool process_record_keymap(uint16_t keycode, keyrecord_t *record) { | 83 | float fauxclicky_pressed_note[2] = MUSICAL_NOTE(_A4, 0.0625); // (_D4, 0.25); |
119 | return true; | 84 | float fauxclicky_released_note[2] = MUSICAL_NOTE(_A4, 0.0625); // (_C4, 0.125); |
120 | } | 85 | float fauxclicky_beep_note[2] = MUSICAL_NOTE(_C6, 0.25); // (_C4, 0.25); |
121 | 86 | #endif | |
diff --git a/keyboards/orthodox/keymaps/drashna/rules.mk b/keyboards/orthodox/keymaps/drashna/rules.mk index e6eb954bc..293faf13e 100644 --- a/keyboards/orthodox/keymaps/drashna/rules.mk +++ b/keyboards/orthodox/keymaps/drashna/rules.mk | |||
@@ -1,11 +1,10 @@ | |||
1 | CONSOLE_ENABLE = no | 1 | CONSOLE_ENABLE = no |
2 | TAP_DANCE_ENABLE = yes | 2 | TAP_DANCE_ENABLE = no |
3 | RGBLIGHT_ENABLE = yes | 3 | RGBLIGHT_ENABLE = yes |
4 | AUDIO_ENABLE = no | 4 | AUDIO_ENABLE = no |
5 | MOUSEKEY_ENABLE = no | 5 | MOUSEKEY_ENABLE = no |
6 | NKRO_ENABLE = yes | 6 | NKRO_ENABLE = yes |
7 | FAUXCLICKY_ENABLE = no | 7 | FAUXCLICKY_ENABLE = yes |
8 | EXTRAFLAGS = -flto | ||
9 | 8 | ||
10 | ifndef QUANTUM_DIR | 9 | ifndef QUANTUM_DIR |
11 | include ../../../../Makefile | 10 | include ../../../../Makefile |
diff --git a/keyboards/viterbi/keymaps/drashna/keymap.c b/keyboards/viterbi/keymaps/drashna/keymap.c index b33f05027..48a146958 100644 --- a/keyboards/viterbi/keymaps/drashna/keymap.c +++ b/keyboards/viterbi/keymaps/drashna/keymap.c | |||
@@ -38,10 +38,10 @@ bool check_dtimer(uint8_t dtimer) { | |||
38 | 38 | ||
39 | 39 | ||
40 | enum { | 40 | enum { |
41 | TD_DIABLO_1 = 0, | 41 | TD_D3_1 = 0, |
42 | TD_DIABLO_2, | 42 | TD_D3_2, |
43 | TD_DIABLO_3, | 43 | TD_D3_3, |
44 | TD_DIABLO_4 | 44 | TD_D3_4 |
45 | }; | 45 | }; |
46 | 46 | ||
47 | 47 | ||
@@ -80,10 +80,10 @@ void diablo_tapdance4(qk_tap_dance_state_t *state, void *user_data) { | |||
80 | //Tap Dance Definitions | 80 | //Tap Dance Definitions |
81 | qk_tap_dance_action_t tap_dance_actions[] = { | 81 | qk_tap_dance_action_t tap_dance_actions[] = { |
82 | // tap once to disable, and more to enable timed micros | 82 | // tap once to disable, and more to enable timed micros |
83 | [TD_DIABLO_1] = ACTION_TAP_DANCE_FN(diablo_tapdance1), | 83 | [TD_D3_1] = ACTION_TAP_DANCE_FN(diablo_tapdance1), |
84 | [TD_DIABLO_2] = ACTION_TAP_DANCE_FN(diablo_tapdance2), | 84 | [TD_D3_2] = ACTION_TAP_DANCE_FN(diablo_tapdance2), |
85 | [TD_DIABLO_3] = ACTION_TAP_DANCE_FN(diablo_tapdance3), | 85 | [TD_D3_3] = ACTION_TAP_DANCE_FN(diablo_tapdance3), |
86 | [TD_DIABLO_4] = ACTION_TAP_DANCE_FN(diablo_tapdance4), | 86 | [TD_D3_4] = ACTION_TAP_DANCE_FN(diablo_tapdance4), |
87 | 87 | ||
88 | }; | 88 | }; |
89 | #endif | 89 | #endif |
@@ -92,33 +92,33 @@ qk_tap_dance_action_t tap_dance_actions[] = { | |||
92 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | 92 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { |
93 | 93 | ||
94 | [_NUMLOCK] = KEYMAP( | 94 | [_NUMLOCK] = KEYMAP( |
95 | LMACRO, DIABLO, GAMEPAD, KC_NLCK, KC_SLCK, KC_COLN, KC_PSLS, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \ | 95 | LMACRO, DIABLO, GAMEPAD, KC_NLCK, KC_SLCK, KC_COLN, KC_PSLS, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \ |
96 | MEDIA, KC_CALC, COVECUBE,KC_P7, KC_P8, KC_P9, KC_PAST, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \ | 96 | MEDIA, KC_CALC, COVECUBE, KC_P7, KC_P8, KC_P9, KC_PAST, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \ |
97 | KC_HOME, KC_DEL, KC_PGUP, KC_P4, KC_P5, KC_P6, KC_PMNS, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \ | 97 | KC_HOME, KC_DEL, KC_PGUP, KC_P4, KC_P5, KC_P6, KC_PMNS, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \ |
98 | KC_END, KC_UP, KC_PGDN, KC_P1, KC_P2, KC_P3, KC_PPLS, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \ | 98 | KC_END, KC_UP, KC_PGDN, KC_P1, KC_P2, KC_P3, KC_PPLS, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \ |
99 | KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_P00, KC_PDOT, KC_PENT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX \ | 99 | KC_LEFT, KC_DOWN, K C_RGHT, KC_P0, KC_KP_00,KC_PDOT, KC_PENT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX \ |
100 | ), | 100 | ), |
101 | 101 | ||
102 | [_DIABLO] = KEYMAP( | 102 | [_DIABLO] = KEYMAP( |
103 | KC_ESC, DIABLO, KC_V, KC_D, XXXXXXX, XXXXXXX, KC_L, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \ | 103 | KC_ESC, DIABLO, KC_V, KC_D, XXXXXXX, XXXXXXX, KC_L, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \ |
104 | KC_TAB, KC_S, KC_F, KC_I, KC_M, KC_T, KC_J, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \ | 104 | KC_TAB, KC_S, KC_F, KC_I, KC_M, KC_T, KC_J, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \ |
105 | KC_Q, KC_1, KC_2, KC_3, KC_4, KC_G, KC_F, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \ | 105 | KC_Q, KC_1, KC_2, KC_3, KC_4, KC_G, KC_F, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \ |
106 | KC_LCTL, TD(TD_DIABLO_1), TD(TD_DIABLO_2), TD(TD_DIABLO_3), TD(TD_DIABLO_4), KC_Z, KC_DIABLO_CLEAR, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \ | 106 | KC_LCTL, TD(TD_D3_1), TD(TD_D3_2), TD(TD_D3_3), TD(TD_D3_4), KC_Z, KC_DIABLO_CLEAR, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \ |
107 | KC_LALT, KC_F4, KC_F5, KC_F8, KC_F9, KC_F10, SFT_T(KC_SPACE), XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX \ | 107 | KC_LALT, KC_F4, KC_F5, KC_F8, KC_F9, KC_F10, SFT_T(KC_SPACE), XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX \ |
108 | ), | 108 | ), |
109 | 109 | ||
110 | [_OVERWATCH] = KEYMAP( // Game pad layout designed primarily for Overwatch | 110 | [_OVERWATCH] = KEYMAP( // Game pad layout designed primarily for Overwatch |
111 | LMACRO, KC_ESC, GAMEPAD, KC_1, KC_2, KC_3, KC_4, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \ | 111 | LMACRO, KC_ESC, GAMEPAD, KC_1, KC_2, KC_3, KC_4, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \ |
112 | MEDIA, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \ | 112 | MEDIA, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \ |
113 | KC_Z, KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \ | 113 | KC_Z, KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \ |
114 | KC_Y, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \ | 114 | KC_Y, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \ |
115 | KC_F1, KC_U, KC_I, KC_Y, KC_V, KC_SPC, KC_V, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX \ | 115 | KC_F1, KC_U, KC_I, KC_Y, KC_V, KC_SPC, KC_V, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX \ |
116 | ), | 116 | ), |
117 | 117 | ||
118 | [_MACROS] = KEYMAP( | 118 | [_MACROS] = KEYMAP( |
119 | LMACRO, XXXXXXX, GAMEPAD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \ | 119 | LMACRO, XXXXXXX, GAMEPAD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \ |
120 | XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \ | 120 | XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \ |
121 | KC_SYMM, KC_TORB, KC_DOOMFIST, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \ | 121 | KC_SYMM, KC_TORB, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \ |
122 | KC_GLHF, KC_GOODGAME, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \ | 122 | KC_GLHF, KC_GOODGAME, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \ |
123 | KC_SALT, KC_MORESALT, KC_SALTHARD, KC_JUSTGAME, KC_AIM, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX \ | 123 | KC_SALT, KC_MORESALT, KC_SALTHARD, KC_JUSTGAME, KC_AIM, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX \ |
124 | ), | 124 | ), |
diff --git a/users/drashna/drashna.c b/users/drashna/drashna.c index 47565ff9c..30da7414e 100644 --- a/users/drashna/drashna.c +++ b/users/drashna/drashna.c | |||
@@ -3,6 +3,10 @@ | |||
3 | #include "action.h" | 3 | #include "action.h" |
4 | #include "version.h" | 4 | #include "version.h" |
5 | 5 | ||
6 | // Add reconfigurable functions here, for keymap customization | ||
7 | // This allows for a global, userspace functions, and continued | ||
8 | // customization of the keymap. Use _keymap instead of _user | ||
9 | // functions in the keymaps | ||
6 | __attribute__ ((weak)) | 10 | __attribute__ ((weak)) |
7 | void matrix_init_keymap(void) {} | 11 | void matrix_init_keymap(void) {} |
8 | 12 | ||
@@ -13,8 +17,15 @@ __attribute__ ((weak)) | |||
13 | bool process_record_keymap(uint16_t keycode, keyrecord_t *record) { | 17 | bool process_record_keymap(uint16_t keycode, keyrecord_t *record) { |
14 | return true; | 18 | return true; |
15 | } | 19 | } |
20 | __attribute__ ((weak)) | ||
21 | uint32_t layer_state_set_keymap (uint32_t state) { | ||
22 | return state; | ||
23 | } | ||
16 | 24 | ||
25 | bool is_overwatch = false; | ||
17 | 26 | ||
27 | // Call user matrix init, set default RGB colors and then | ||
28 | // call the keymap's init function | ||
18 | void matrix_init_user(void) { | 29 | void matrix_init_user(void) { |
19 | #ifdef RGBLIGHT_ENABLE | 30 | #ifdef RGBLIGHT_ENABLE |
20 | uint8_t default_layer = eeconfig_read_default_layer(); | 31 | uint8_t default_layer = eeconfig_read_default_layer(); |
@@ -44,6 +55,8 @@ void matrix_init_user(void) { | |||
44 | matrix_init_keymap(); | 55 | matrix_init_keymap(); |
45 | } | 56 | } |
46 | 57 | ||
58 | // No global matrix scan code, so just run keymap's matix | ||
59 | // scan function | ||
47 | void matrix_scan_user(void) { | 60 | void matrix_scan_user(void) { |
48 | matrix_scan_keymap(); | 61 | matrix_scan_keymap(); |
49 | } | 62 | } |
@@ -61,16 +74,10 @@ void persistent_default_layer_set(uint16_t default_layer) { | |||
61 | default_layer_set(default_layer); | 74 | default_layer_set(default_layer); |
62 | } | 75 | } |
63 | 76 | ||
64 | 77 | // Defines actions tor my global custom keycodes. Defined in drashna.h file | |
78 | // Then runs the _keymap's recod handier if not processed here | ||
65 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { | 79 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { |
66 | 80 | ||
67 | uint16_t kc; | ||
68 | if (is_overwatch) { | ||
69 | kc = KC_BSPC; | ||
70 | } | ||
71 | else { | ||
72 | kc = KC_ENTER; | ||
73 | } | ||
74 | #ifdef CONSOLE_ENABLE | 81 | #ifdef CONSOLE_ENABLE |
75 | xprintf("KL: row: %u, column: %u, pressed: %u\n", record->event.key.col, record->event.key.row, record->event.pressed); | 82 | xprintf("KL: row: %u, column: %u, pressed: %u\n", record->event.key.col, record->event.key.row, record->event.pressed); |
76 | #endif | 83 | #endif |
@@ -143,6 +150,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { | |||
143 | } | 150 | } |
144 | return false; | 151 | return false; |
145 | break; | 152 | break; |
153 | #if !(defined(KEYBOARD_orthodox_rev1) || defined(KEYBOARD_ergodox_ez)) | ||
146 | case KC_OVERWATCH: | 154 | case KC_OVERWATCH: |
147 | if (record->event.pressed) { | 155 | if (record->event.pressed) { |
148 | is_overwatch = !is_overwatch; | 156 | is_overwatch = !is_overwatch; |
@@ -154,8 +162,8 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { | |||
154 | break; | 162 | break; |
155 | case KC_SALT: | 163 | case KC_SALT: |
156 | if (!record->event.pressed) { | 164 | if (!record->event.pressed) { |
157 | register_code(kc); | 165 | register_code(is_overwatch ? KC_BSPC : KC_ENTER); |
158 | unregister_code(kc); | 166 | unregister_code(is_overwatch ? KC_BSPC : KC_ENTER); |
159 | _delay_ms(50); | 167 | _delay_ms(50); |
160 | SEND_STRING("Salt, salt, salt..."); | 168 | SEND_STRING("Salt, salt, salt..."); |
161 | register_code(KC_ENTER); | 169 | register_code(KC_ENTER); |
@@ -165,8 +173,8 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { | |||
165 | break; | 173 | break; |
166 | case KC_MORESALT: | 174 | case KC_MORESALT: |
167 | if (!record->event.pressed) { | 175 | if (!record->event.pressed) { |
168 | register_code(kc); | 176 | register_code(is_overwatch ? KC_BSPC : KC_ENTER); |
169 | unregister_code(kc); | 177 | unregister_code(is_overwatch ? KC_BSPC : KC_ENTER); |
170 | _delay_ms(50); | 178 | _delay_ms(50); |
171 | SEND_STRING("Please sir, can I have some more salt?!"); | 179 | SEND_STRING("Please sir, can I have some more salt?!"); |
172 | register_code(KC_ENTER); | 180 | register_code(KC_ENTER); |
@@ -176,10 +184,10 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { | |||
176 | break; | 184 | break; |
177 | case KC_SALTHARD: | 185 | case KC_SALTHARD: |
178 | if (!record->event.pressed) { | 186 | if (!record->event.pressed) { |
179 | register_code(kc); | 187 | register_code(is_overwatch ? KC_BSPC : KC_ENTER); |
180 | unregister_code(kc); | 188 | unregister_code(is_overwatch ? KC_BSPC : KC_ENTER); |
181 | _delay_ms(50); | 189 | _delay_ms(50); |
182 | SEND_STRING("Your salt only makes my penis that much harder, and even more aggressive!"); | 190 | SEND_STRING("Your salt only makes me harder, and even more aggressive!"); |
183 | register_code(KC_ENTER); | 191 | register_code(KC_ENTER); |
184 | unregister_code(KC_ENTER); | 192 | unregister_code(KC_ENTER); |
185 | } | 193 | } |
@@ -187,8 +195,8 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { | |||
187 | break; | 195 | break; |
188 | case KC_GOODGAME: | 196 | case KC_GOODGAME: |
189 | if (!record->event.pressed) { | 197 | if (!record->event.pressed) { |
190 | register_code(kc); | 198 | register_code(is_overwatch ? KC_BSPC : KC_ENTER); |
191 | unregister_code(kc); | 199 | unregister_code(is_overwatch ? KC_BSPC : KC_ENTER); |
192 | _delay_ms(50); | 200 | _delay_ms(50); |
193 | SEND_STRING("Good game, everyone!"); | 201 | SEND_STRING("Good game, everyone!"); |
194 | register_code(KC_ENTER); | 202 | register_code(KC_ENTER); |
@@ -198,8 +206,8 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { | |||
198 | break; | 206 | break; |
199 | case KC_GLHF: | 207 | case KC_GLHF: |
200 | if (!record->event.pressed) { | 208 | if (!record->event.pressed) { |
201 | register_code(kc); | 209 | register_code(is_overwatch ? KC_BSPC : KC_ENTER); |
202 | unregister_code(kc); | 210 | unregister_code(is_overwatch ? KC_BSPC : KC_ENTER); |
203 | _delay_ms(50); | 211 | _delay_ms(50); |
204 | SEND_STRING("Good luck, have fun!!!"); | 212 | SEND_STRING("Good luck, have fun!!!"); |
205 | register_code(KC_ENTER); | 213 | register_code(KC_ENTER); |
@@ -209,8 +217,8 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { | |||
209 | break; | 217 | break; |
210 | case KC_SYMM: | 218 | case KC_SYMM: |
211 | if (!record->event.pressed) { | 219 | if (!record->event.pressed) { |
212 | register_code(kc); | 220 | register_code(is_overwatch ? KC_BSPC : KC_ENTER); |
213 | unregister_code(kc); | 221 | unregister_code(is_overwatch ? KC_BSPC : KC_ENTER); |
214 | _delay_ms(50); | 222 | _delay_ms(50); |
215 | SEND_STRING("Left click to win!"); | 223 | SEND_STRING("Left click to win!"); |
216 | register_code(KC_ENTER); | 224 | register_code(KC_ENTER); |
@@ -218,21 +226,10 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { | |||
218 | } | 226 | } |
219 | return false; | 227 | return false; |
220 | break; | 228 | break; |
221 | case KC_DOOMFIST: | ||
222 | if (!record->event.pressed) { | ||
223 | register_code(kc); | ||
224 | unregister_code(kc); | ||
225 | _delay_ms(50); | ||
226 | SEND_STRING("Hey, look at me. I'm Doomfist, and I'm overpowered! All I do is spam punches all day! I'm DPS, tank and defense, rolled into one! All I need is team healing to be complete!"); | ||
227 | register_code(KC_ENTER); | ||
228 | unregister_code(KC_ENTER); | ||
229 | } | ||
230 | return false; | ||
231 | break; | ||
232 | case KC_JUSTGAME: | 229 | case KC_JUSTGAME: |
233 | if (!record->event.pressed) { | 230 | if (!record->event.pressed) { |
234 | register_code(kc); | 231 | register_code(is_overwatch ? KC_BSPC : KC_ENTER); |
235 | unregister_code(kc); | 232 | unregister_code(is_overwatch ? KC_BSPC : KC_ENTER); |
236 | _delay_ms(50); | 233 | _delay_ms(50); |
237 | SEND_STRING("It may be a game, but if you don't want to actually try, please go play AI, so that people that actually want to take the game seriously and \"get good\" have a place to do so without trolls like you throwing games."); | 234 | SEND_STRING("It may be a game, but if you don't want to actually try, please go play AI, so that people that actually want to take the game seriously and \"get good\" have a place to do so without trolls like you throwing games."); |
238 | register_code(KC_ENTER); | 235 | register_code(KC_ENTER); |
@@ -242,8 +239,8 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { | |||
242 | break; | 239 | break; |
243 | case KC_TORB: | 240 | case KC_TORB: |
244 | if (!record->event.pressed) { | 241 | if (!record->event.pressed) { |
245 | register_code(kc); | 242 | register_code(is_overwatch ? KC_BSPC : KC_ENTER); |
246 | unregister_code(kc); | 243 | unregister_code(is_overwatch ? KC_BSPC : KC_ENTER); |
247 | _delay_ms(50); | 244 | _delay_ms(50); |
248 | SEND_STRING("That was positively riveting!"); | 245 | SEND_STRING("That was positively riveting!"); |
249 | register_code(KC_ENTER); | 246 | register_code(KC_ENTER); |
@@ -253,8 +250,8 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { | |||
253 | break; | 250 | break; |
254 | case KC_AIM: | 251 | case KC_AIM: |
255 | if (!record->event.pressed) { | 252 | if (!record->event.pressed) { |
256 | register_code(kc); | 253 | register_code(is_overwatch ? KC_BSPC : KC_ENTER); |
257 | unregister_code(kc); | 254 | unregister_code(is_overwatch ? KC_BSPC : KC_ENTER); |
258 | _delay_ms(50); | 255 | _delay_ms(50); |
259 | SEND_STRING("That aim is absolutely amazing. It's almost like you're a machine!" SS_TAP(X_ENTER)); | 256 | SEND_STRING("That aim is absolutely amazing. It's almost like you're a machine!" SS_TAP(X_ENTER)); |
260 | _delay_ms(50); | 257 | _delay_ms(50); |
@@ -262,13 +259,31 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { | |||
262 | } | 259 | } |
263 | return false; | 260 | return false; |
264 | break; | 261 | break; |
262 | #endif | ||
265 | case KC_MAKE: | 263 | case KC_MAKE: |
266 | if (!record->event.pressed) { | 264 | if (!record->event.pressed) { |
265 | SEND_STRING("make " QMK_KEYBOARD ":" QMK_KEYMAP); | ||
266 | #ifndef CATERINA_BOOTLOADER | ||
267 | SEND_STRING(":teensy "); | ||
268 | #else | ||
269 | SEND_STRING(" "); | ||
270 | #endif | ||
267 | #ifdef RGBLIGHT_ENABLE | 271 | #ifdef RGBLIGHT_ENABLE |
268 | SEND_STRING("make " QMK_KEYBOARD ":" QMK_KEYMAP " RGBLIGHT_ENABLE=yes" SS_TAP(X_ENTER)); | 272 | SEND_STRING("RGBLIGHT_ENABLE=yes "); |
273 | #else | ||
274 | SEND_STRING("RGBLIGHT_ENABLE=no "); | ||
275 | #endif | ||
276 | #ifdef AUDIO_ENABLE | ||
277 | SEND_STRING("AUDIO_ENABLE=yes "); | ||
278 | #else | ||
279 | SEND_STRING("AUDIO_ENABLE=no "); | ||
280 | #endif | ||
281 | #ifdef FAUXCLICKY_ENABLE | ||
282 | SEND_STRING("FAUXCLICKY_ENABLE=yes "); | ||
269 | #else | 283 | #else |
270 | SEND_STRING("make " QMK_KEYBOARD ":" QMK_KEYMAP " RGBLIGHT_ENABLE=no"SS_TAP(X_ENTER)); | 284 | SEND_STRING("FAUXCLICKY_ENABLE=no "); |
271 | #endif | 285 | #endif |
286 | SEND_STRING(SS_TAP(X_ENTER)); | ||
272 | } | 287 | } |
273 | return false; | 288 | return false; |
274 | break; | 289 | break; |
@@ -295,21 +310,14 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { | |||
295 | } | 310 | } |
296 | return false; | 311 | return false; |
297 | break; | 312 | break; |
298 | case KC_P00: | ||
299 | if (!record->event.pressed) { | ||
300 | register_code(KC_P0); | ||
301 | unregister_code(KC_P0); | ||
302 | register_code(KC_P0); | ||
303 | unregister_code(KC_P0); | ||
304 | } | ||
305 | return false; | ||
306 | break; | ||
307 | } | 313 | } |
308 | return process_record_keymap(keycode, record); | 314 | return process_record_keymap(keycode, record); |
309 | } | 315 | } |
310 | 316 | ||
311 | 317 | // Runs state check and changes underglow color and animation | |
312 | uint32_t layer_state_set_kb(uint32_t state) { | 318 | // on layer change, no matter where the change was initiated |
319 | // Then runs keymap's layer change check | ||
320 | uint32_t layer_state_set_user (uint32_t state) { | ||
313 | #ifdef RGBLIGHT_ENABLE | 321 | #ifdef RGBLIGHT_ENABLE |
314 | uint8_t default_layer = eeconfig_read_default_layer(); | 322 | uint8_t default_layer = eeconfig_read_default_layer(); |
315 | 323 | ||
@@ -329,7 +337,6 @@ uint32_t layer_state_set_kb(uint32_t state) { | |||
329 | case _MACROS: | 337 | case _MACROS: |
330 | rgblight_set_orange; | 338 | rgblight_set_orange; |
331 | is_overwatch ? rgblight_mode(17) : rgblight_mode(18); | 339 | is_overwatch ? rgblight_mode(17) : rgblight_mode(18); |
332 | rgblight_mode(18); | ||
333 | break; | 340 | break; |
334 | case _MEDIA: | 341 | case _MEDIA: |
335 | rgblight_set_green; | 342 | rgblight_set_green; |
@@ -375,5 +382,5 @@ uint32_t layer_state_set_kb(uint32_t state) { | |||
375 | break; | 382 | break; |
376 | } | 383 | } |
377 | #endif | 384 | #endif |
378 | return state; | 385 | return layer_state_set_keymap (state); |
379 | } | 386 | } |
diff --git a/users/drashna/drashna.h b/users/drashna/drashna.h index 0e7b25d2d..6e897ad99 100644 --- a/users/drashna/drashna.h +++ b/users/drashna/drashna.h | |||
@@ -38,8 +38,7 @@ | |||
38 | #define rgblight_set_purple rgblight_sethsv (0x10E, 0xFF, 0xFF); | 38 | #define rgblight_set_purple rgblight_sethsv (0x10E, 0xFF, 0xFF); |
39 | #endif | 39 | #endif |
40 | 40 | ||
41 | __attribute__ ((weak)) | 41 | extern bool is_overwatch; |
42 | bool is_overwatch = false; | ||
43 | 42 | ||
44 | enum custom_keycodes { | 43 | enum custom_keycodes { |
45 | PLACEHOLDER = SAFE_RANGE, // can always be here | 44 | PLACEHOLDER = SAFE_RANGE, // can always be here |
@@ -59,15 +58,13 @@ enum custom_keycodes { | |||
59 | KC_SALTHARD, | 58 | KC_SALTHARD, |
60 | KC_GOODGAME, | 59 | KC_GOODGAME, |
61 | KC_SYMM, | 60 | KC_SYMM, |
62 | KC_DOOMFIST, | ||
63 | KC_JUSTGAME, | 61 | KC_JUSTGAME, |
64 | KC_GLHF, | 62 | KC_GLHF, |
65 | KC_TORB, | 63 | KC_TORB, |
66 | KC_AIM, | 64 | KC_AIM, |
67 | KC_MAKE, | 65 | KC_MAKE, |
68 | KC_RESET, | 66 | KC_RESET, |
69 | KC_P00, | 67 | NEWPLACEHOLDER //use "NEWPLACEHOLDER for keymap specific codes |
70 | NEWPLACEHOLDER | ||
71 | }; | 68 | }; |
72 | 69 | ||
73 | #endif | 70 | #endif |
diff --git a/users/drashna/rules.mk b/users/drashna/rules.mk index 0150bb608..6ce1ff5ba 100644 --- a/users/drashna/rules.mk +++ b/users/drashna/rules.mk | |||
@@ -1,2 +1,3 @@ | |||
1 | 1 | ||
2 | SRC += drashna.c | 2 | SRC += drashna.c |
3 | EXTRAFLAGS = -flto | ||
diff --git a/users/drashna/template.c b/users/drashna/template.c new file mode 100644 index 000000000..027c780e9 --- /dev/null +++ b/users/drashna/template.c | |||
@@ -0,0 +1,82 @@ | |||
1 | #include "drashna.h" | ||
2 | #include "quantum.h" | ||
3 | #include "action.h" | ||
4 | #include "version.h" | ||
5 | |||
6 | // Add reconfigurable functions here, for keymap customization | ||
7 | // This allows for a global, userspace functions, and continued | ||
8 | // customization of the keymap. Use _keymap instead of _user | ||
9 | // functions in the keymaps | ||
10 | __attribute__ ((weak)) | ||
11 | void matrix_init_keymap(void) {} | ||
12 | |||
13 | __attribute__ ((weak)) | ||
14 | void matrix_scan_keymap(void) {} | ||
15 | |||
16 | __attribute__ ((weak)) | ||
17 | bool process_record_keymap(uint16_t keycode, keyrecord_t *record) { | ||
18 | return true; | ||
19 | } | ||
20 | __attribute__ ((weak)) | ||
21 | uint32_t layer_state_set_keymap (uint32_t state) { | ||
22 | return state; | ||
23 | } | ||
24 | |||
25 | // Call user matrix init, then call the keymap's init function | ||
26 | void matrix_init_user(void) { | ||
27 | matrix_init_keymap(); | ||
28 | } | ||
29 | |||
30 | // No global matrix scan code, so just run keymap's matix | ||
31 | // scan function | ||
32 | void matrix_scan_user(void) { | ||
33 | matrix_scan_keymap(); | ||
34 | } | ||
35 | |||
36 | |||
37 | // Defines actions tor my global custom keycodes. Defined in drashna.h file | ||
38 | // Then runs the _keymap's recod handier if not processed here, | ||
39 | // And use "NEWPLACEHOLDER" for new safe range | ||
40 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { | ||
41 | |||
42 | switch (keycode) { | ||
43 | case KC_MAKE: | ||
44 | if (!record->event.pressed) { | ||
45 | SEND_STRING("make " QMK_KEYBOARD ":" QMK_KEYMAP); | ||
46 | #ifndef CATERINA_BOOTLOADER | ||
47 | SEND_STRING(":teensy "); | ||
48 | #else | ||
49 | SEND_STRING(" "); | ||
50 | #endif | ||
51 | SEND_STRING(SS_TAP(X_ENTER)); | ||
52 | } | ||
53 | return false; | ||
54 | break; | ||
55 | case KC_RESET: | ||
56 | if (!record->event.pressed) { | ||
57 | reset_keyboard(); | ||
58 | } | ||
59 | return false; | ||
60 | break; | ||
61 | case EPRM: | ||
62 | if (record->event.pressed) { | ||
63 | eeconfig_init(); | ||
64 | } | ||
65 | return false; | ||
66 | break; | ||
67 | case VRSN: | ||
68 | if (record->event.pressed) { | ||
69 | SEND_STRING(QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION); | ||
70 | } | ||
71 | return false; | ||
72 | break; | ||
73 | } | ||
74 | return process_record_keymap(keycode, record); | ||
75 | } | ||
76 | |||
77 | // Runs state check and changes underglow color and animation | ||
78 | // on layer change, no matter where the change was initiated | ||
79 | // Then runs keymap's layer change check | ||
80 | uint32_t layer_state_set_user (uint32_t state) { | ||
81 | return layer_state_set_keymap (state); | ||
82 | } | ||
diff --git a/users/drashna/template.h b/users/drashna/template.h new file mode 100644 index 000000000..d1251462b --- /dev/null +++ b/users/drashna/template.h | |||
@@ -0,0 +1,18 @@ | |||
1 | #ifndef USERSPACE | ||
2 | #define USERSPACE | ||
3 | |||
4 | #include "quantum.h" | ||
5 | |||
6 | // Define layer names | ||
7 | #define BASE 0 | ||
8 | |||
9 | enum custom_keycodes { | ||
10 | PLACEHOLDER = SAFE_RANGE, // can always be here | ||
11 | EPRM, | ||
12 | VRSN, | ||
13 | KC_MAKE, | ||
14 | KC_RESET, | ||
15 | NEWPLACEHOLDER //use "NEWPLACEHOLDER for keymap specific codes | ||
16 | }; | ||
17 | |||
18 | #endif | ||