Updated personal keymaps (#1945)

* Add woodpad

* Cleanup

* Remove misc layouts for woodpad

* Move woodpad to handwired

* Updated RGB Underglow info

* Cleanup macros

* Fix odd merge issue

* Tweaked RGB lighting stuff

* Start to merge orthodox/ergodox keymaps (persistant layers)

* Add forced NKRO

* Added Colemak and Dvorak layers to default orthodox keymap

* Added default layer (qwerty/colemak/dvorak) detection to RGB Underglow

* Updated macros and added workman keymaps

* Fixed RGB lighting for Workman layout

* Add leader keys

* Remove force NKRO

* Add Viterbi one handed layout and minor tweaks to others

* Finishing up Viterbi keyboard layout, and NKRO tweaks to other layouts

* Made "make" keystroke universal

* Clean up and updates of drashna keymaps

* Add workman layer to planck

* Update to keymaps

* Fix accidental commit because I don't know how to git

* Fix makefile toggle code in ez keymap
Finish adding RGB code to orthodox

* missing underscore in init function declaration

* Updated RGB Underglow layer indication code due to discovery of the layer_state_set_kb function

* Remove unnecessary planck layout
This commit is contained in:
drashna
2017-11-01 00:13:20 -07:00
committed by skullydazed
parent 44d9ad95b7
commit b79a4cfeba
14 changed files with 502 additions and 470 deletions

View File

@@ -37,5 +37,9 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define RGBLIGHT_HUE_STEP 8
#define RGBLIGHT_SAT_STEP 8
#define RGBLIGHT_VAL_STEP 8
#define RGBLIGHT_EFFECT_KNIGHT_LENGTH 2
#define RGBLIGHT_EFFECT_SNAKE_LENGTH 2
#define RGBLIGHT_EFFECT_BREATHE_CENTER 1
#endif

View File

@@ -10,14 +10,16 @@ extern keymap_config_t keymap_config;
// entirely and just use numbers.
#define _NUMNAV 0
#define _DIABLO 1
#define _MACROS 2
#define _GAMEPAD 3
#define _GAMEPAD 2
#define _MACROS 3
#define _MEDIA 4
#define _COVECUBE 5
enum custom_keycodes {
KC_DIABLO_CLEAR = SAFE_RANGE,
KC_P00,
KC_MAKE,
KC_OVERWATCH,
KC_SALT,
KC_MORESALT,
@@ -27,33 +29,33 @@ enum custom_keycodes {
KC_DOOMFIST,
KC_JUSTGAME,
KC_GLHF,
KC_TORB
KC_TORB,
KC_AIM
};
// Fillers to make layering more clear
#define _______ KC_TRNS
#define XXXXXXX KC_NO
#define MACROS TG(_MACROS)
#define DIABLO TG(_DIABLO)
#define GAMEPAD TG(_GAMEPAD)
#define MEDIA TG(_MEDIA)
#define MACROS TG(_MACROS)
#define DIABLO TG(_DIABLO)
#define GAMEPAD TG(_GAMEPAD)
#define MEDIA TG(_MEDIA)
#define COVECUBE TG(_COVECUBE)
bool is_overwatch = false;
//This is both for underglow, and Diablo 3 macros
static uint8_t current_layer = 0;
bool has_layer_changed = true;
#define rgblight_set_blue rgblight_sethsv (0xFF, 0xFF, 0xFF);
#define rgblight_set_red rgblight_sethsv(0x00, 0xFF, 0xFF);
#define rgblight_set_green rgblight_sethsv (0x78, 0xFF, 0xFF);
#define rgblight_set_orange rgblight_sethsv (0x1E, 0xFF, 0xFF);
#define rgblight_set_teal rgblight_sethsv (0xC3, 0xFF, 0xFF);
#define rgblight_set_magenta rgblight_sethsv (0x12C, 0xFF, 0xFF);
#define rgblight_set_urine rgblight_sethsv (0x3C, 0xFF, 0xFF);
#define rgblight_set_purple rgblight_sethsv (0x10E, 0xFF, 0xFF);
#ifdef RGBLIGHT_ENABLE
#define rgblight_set_blue rgblight_sethsv (0xFF, 0xFF, 0xFF);
#define rgblight_set_red rgblight_sethsv (0x00, 0xFF, 0xFF);
#define rgblight_set_green rgblight_sethsv (0x78, 0xFF, 0xFF);
#define rgblight_set_orange rgblight_sethsv (0x1E, 0xFF, 0xFF);
#define rgblight_set_teal rgblight_sethsv (0xC3, 0xFF, 0xFF);
#define rgblight_set_magenta rgblight_sethsv (0x12C, 0xFF, 0xFF);
#define rgblight_set_yellow rgblight_sethsv (0x3C, 0xFF, 0xFF);
#define rgblight_set_purple rgblight_sethsv (0x10E, 0xFF, 0xFF);
#endif
#ifdef TAP_DANCE_ENABLE
//define diablo macro timer variables
@@ -122,77 +124,71 @@ qk_tap_dance_action_t tap_dance_actions[] = {
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* QWERTY
* ,------------------------------------------------. ,------------------------------------------------.
* | Ins | ` | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | Bksp | Del |
* |------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
* | - | Tab | Q | W | E | R | T | | Y | U | I | O | P | [ | ] |
* |------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
* | = | Esc | A | S | D | F | G | | H | J | K | L | ; | " |Enter |
* |------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
* | Pg Up| Shift| Z | X | C | V | B | | N | M | , | . | / | Home | End |
* |------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
* | Pg Dn|Adjust| Ctrl | Alt | GUI |Lower |Space | |Space |Raise | Left | Down | Up | Right| \ |
* `------------------------------------------------' `------------------------------------------------'
*/
[_NUMNAV] = KEYMAP(
MACROS, DIABLO, GAMEPAD, KC_NLCK, KC_SCLK, KC_PTSC, KC_PSLS, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
MEDIA, XXXXXXX, XXXXXXX, KC_P7, KC_P8, KC_P9, KC_PAST, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
MACROS, DIABLO, GAMEPAD, KC_NLCK, KC_SLCK, KC_COLN, KC_PSLS, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
MEDIA, KC_CALC, COVECUBE,KC_P7, KC_P8, KC_P9, KC_PAST, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
KC_HOME, KC_DEL, KC_PGUP, KC_P4, KC_P5, KC_P6, KC_PMNS, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
KC_END, KC_UP, KC_PGDN, KC_P1, KC_P2, KC_P3, KC_PPLS, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_P00, KC_PDOT, KC_PENT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX \
),
/* Lower
* ,------------------------------------------------. ,------------------------------------------------.
* | | ~ | F1 | F3 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 | F11 | F12 |
* |------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
* | _ | | ! | @ | # | $ | % | | ^ | & | * | ( | ) | { | } |
* |------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
* | + | | F1 | F2 | F3 | F4 | F5 | | F6 | _ | + | { | } | | |
* |------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
* | | | F7 | F8 | F9 | F10 | F11 | | F12 | | | | | | |
* |------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
* | | | | | | | | | | | Next | Vol- | Vol+ | Play | |
* `------------------------------------------------' `------------------------------------------------'
*/
[_DIABLO] = KEYMAP(
_______, _______, _______, _______, _______, _______, _______, 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 \
KC_ESC, DIABLO, KC_V, KC_D, XXXXXXX, XXXXXXX, KC_L, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
KC_TAB, KC_S, KC_F, KC_I, KC_M, KC_T, KC_J, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
KC_Q, KC_1, KC_2, KC_3, KC_4, KC_G, KC_F, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
KC_LCTL, (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, \
KC_LALT, KC_F4, KC_F5, KC_F8, KC_F9, KC_F10, SFT_T(KC_SPACE), XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX \
),
[_GAMEPAD] = KEYMAP( // Game pad layout designed primarily for Overwatch
MACROS, KC_ESC, GAMEPAD, KC_1, KC_2, KC_3, KC_4, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
MEDIA, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
KC_Z, KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
KC_Y, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
KC_F1, KC_U, KC_I, KC_Y, KC_V, KC_SPC, KC_V, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX \
),
[_MACROS] = KEYMAP(
_______, _______, _______, _______, _______, _______, _______, 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 \
MACROS, XXXXXXX, GAMEPAD, 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, \
KC_SYMM, KC_TORB, KC_DOOMFIST, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
KC_GLHF, KC_GOODGAME, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
KC_SALT, KC_MORESALT, KC_SALTHARD, KC_JUSTGAME, KC_AIM, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX \
),
[_COVECUBE] = KEYMAP(
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, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX \
),
[_MEDIA] = KEYMAP(
_______, _______, _______, _______, _______, _______, _______, 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 \
RESET, KC_MAKE, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
MEDIA, XXXXXXX, RGB_SAI, RGB_VAI, RGB_M_P, RGB_M_B, RGB_M_R, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
RGB_TOG, RGB_MOD, RGB_SAD, RGB_VAD, RGB_M_SW,RGB_M_SN,RGB_M_K, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
KC_MPLY, KC_MSTP, KC_MPRV, KC_MNXT, RGB_M_K, RGB_M_X, RGB_M_G, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
KC_MUTE, KC_VOLD, KC_VOLU, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX \
)
};
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
uint16_t kc;
if (is_overwatch) {
kc = KC_BSPC;
if (is_overwatch) {
kc = KC_BSPC;
}
else {
kc = KC_ENTER;
}
// Once a delay command is added to "SEND_STRING",
// replace these with X_BSPC and X_ENTER instead.
// and add "SS_TAP(kc) SS_DELAY(50)" to all of the
// SEND_STRING commands, to compress things.
switch (keycode) {
#ifdef TAP_DANCE_ENABLE
case KC_DIABLO_CLEAR: // reset all Diable timers, disabling them
@@ -215,11 +211,19 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
}
return false;
break;
case KC_MAKE:
if (!record->event.pressed) {
SEND_STRING("make " QMK_KEYBOARD ":" QMK_KEYMAP SS_TAP(X_ENTER));
}
return false;
break;
case KC_OVERWATCH: // reset all Diable timers, disabling them
if (record->event.pressed) {
is_overwatch = !is_overwatch;
has_layer_changed = true;
}
#ifdef RGBLIGHT_ENABLE
is_overwatch ? rgblight_mode(17) : rgblight_mode(18);
#endif
return false;
break;
case KC_SALT:
@@ -227,9 +231,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
register_code(kc);
unregister_code(kc);
_delay_ms(50);
SEND_STRING("Salt, salt, salt...");
register_code(KC_ENTER);
unregister_code(KC_ENTER);
SEND_STRING("Salt, salt, salt..." SS_TAP(X_ENTER));
}
return false;
break;
@@ -238,9 +240,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
register_code(kc);
unregister_code(kc);
_delay_ms(50);
SEND_STRING("Please sir, can I have some more salt?!");
register_code(KC_ENTER);
unregister_code(KC_ENTER);
SEND_STRING("Please sir, can I have some more salt?!" SS_TAP(X_ENTER));
}
return false;
break;
@@ -249,9 +249,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
register_code(kc);
unregister_code(kc);
_delay_ms(50);
SEND_STRING("Your salt only makes my penis that much harder, and even more aggressive!");
register_code(KC_ENTER);
unregister_code(KC_ENTER);
SEND_STRING("Your salt only makes my penis that much harder, and even more aggressive!" SS_TAP(X_ENTER));
}
return false;
break;
@@ -260,9 +258,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
register_code(kc);
unregister_code(kc);
_delay_ms(50);
SEND_STRING("Good game, everyone!");
register_code(KC_ENTER);
unregister_code(KC_ENTER);
SEND_STRING("Good game, everyone!" SS_TAP(X_ENTER));
}
return false;
break;
@@ -271,9 +267,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
register_code(kc);
unregister_code(kc);
_delay_ms(50);
SEND_STRING("Good luck, have fun!!!");
register_code(KC_ENTER);
unregister_code(KC_ENTER);
SEND_STRING("Good luck, have fun!!!" SS_TAP(X_ENTER));
}
return false;
break;
@@ -282,20 +276,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
register_code(kc);
unregister_code(kc);
_delay_ms(50);
SEND_STRING("Left click to win!");
register_code(KC_ENTER);
unregister_code(KC_ENTER);
}
return false;
break;
case KC_DOOMFIST:
if (!record->event.pressed) {
register_code(kc);
unregister_code(kc);
_delay_ms(50);
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!");
register_code(KC_ENTER);
unregister_code(KC_ENTER);
SEND_STRING("Left click to win!" SS_TAP(X_ENTER));
}
return false;
break;
@@ -305,9 +286,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
register_code(kc);
unregister_code(kc);
_delay_ms(50);
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.");
register_code(KC_ENTER);
unregister_code(KC_ENTER);
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." SS_TAP(X_ENTER));
}
return false;
break;
@@ -317,12 +296,23 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
register_code(kc);
unregister_code(kc);
_delay_ms(50);
SEND_STRING("That was positively riveting!");
register_code(KC_ENTER);
unregister_code(KC_ENTER);
SEND_STRING("That was positively riveting! SS_TAP(X_ENTER)");
}
return false;
break;
case KC_AIM:
if (!record->event.pressed) {
register_code(kc);
unregister_code(kc);
_delay_ms(50);
SEND_STRING("That aim is absolutely amazing. It's almost like you're a machine!" SS_TAP(X_ENTER));
_delay_ms(50);
SEND_STRING("Wait! That aim is TOO good! You're clearly using an aim hack! CHEATER!" SS_TAP(X_ENTER));
}
return false;
break;
}
return true;
@@ -332,7 +322,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
// Sends the key press to system, but only if on the Diablo layer
void send_diablo_keystroke(uint8_t diablo_key) {
if (current_layer == _DIABLO) {
if (biton32(layer_state) == _DIABLO) {
switch (diablo_key) {
case 0:
SEND_STRING("1");
@@ -366,48 +356,51 @@ void run_diablo_macro_check(void) {
#endif
void matrix_init_user(void) { // Runs boot tasks for keyboard
#ifdef RGBLIGHT_ENABLE
rgblight_enable();
rgblight_set_teal;
rgblight_mode(1);
#endif
};
void matrix_scan_user(void) { // runs frequently to update info
uint8_t layer = biton32(layer_state);
if (layer != current_layer) {
has_layer_changed = true;
current_layer = layer;
}
// Check layer, and apply color if its changed since last check
if (has_layer_changed) {
switch (layer) {
case _NUMNAV:
rgblight_set_teal;
rgblight_mode(2);
break;
case _MACROS:
rgblight_set_orange;
if (is_overwatch) {
rgblight_mode(17);
}
else {
rgblight_mode(18);
}
break;
case _DIABLO:
rgblight_set_red;
rgblight_mode(5);
break;
case _GAMEPAD:
rgblight_set_urine;
rgblight_mode(1);
break;
case _MEDIA:
rgblight_set_blue;
rgblight_mode(1);
break;
}
has_layer_changed = false;
}
#ifdef TAP_DANCE_ENABLE
// Run Diablo 3 macro checking code.
run_diablo_macro_check();
#endif
};
};
uint32_t layer_state_set_kb(uint32_t state) {
#ifdef RGBLIGHT_ENABLE
rgblight_enable();
switch (biton32(state)) {
case _NUMNAV:
rgblight_set_teal;
rgblight_mode(2);
break;
case _MACROS:
rgblight_set_orange;
is_overwatch ? rgblight_mode(17) : rgblight_mode(18);
break;
case _DIABLO:
rgblight_set_red;
rgblight_mode(5);
break;
case _GAMEPAD:
rgblight_set_yellow;
rgblight_mode(1);
break;
case _MEDIA:
rgblight_set_blue;
rgblight_mode(1);
break;
case _COVECUBE:
rgblight_set_green;
rgblight_mode(2);
}
#endif
return state;
}

View File

@@ -2,6 +2,9 @@ CONSOLE_ENABLE = no
TAP_DANCE_ENABLE = yes
RGBLIGHT_ENABLE = yes
MOUSEKEY_ENABLE = no
NKRO_ENABLE = yes
EXTRAFLAGS = -flto
ifndef QUANTUM_DIR
include ../../../../Makefile