forked from qmk/qmk_firmware
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add init function to RGBLight driver struct (qmk#23076)
- Loading branch information
Showing
42 changed files
with
305 additions
and
92 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 1,200 @@ | ||
#include QMK_KEYBOARD_H | ||
#include "version.h" | ||
|
||
enum layers { | ||
BASE, // default layer | ||
SYMB, // symbols | ||
MDIA, // media keys | ||
}; | ||
|
||
enum custom_keycodes { | ||
VRSN = SAFE_RANGE, | ||
}; | ||
|
||
// clang-format off | ||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||
/* Keymap 0: Basic layer | ||
* | ||
* ,--------------------------------------------------. ,--------------------------------------------------. | ||
* | = | 1 | 2 | 3 | 4 | 5 | LEFT | | RIGHT| 6 | 7 | 8 | 9 | 0 | - | | ||
* |-------- ------ ------ ------ ------ -------------| |------ ------ ------ ------ ------ ------ --------| | ||
* | Del | Q | W | E | R | T | L1 | | L1 | Y | U | I | O | P | \ | | ||
* |-------- ------ ------ ------ ------ ------| | | |------ ------ ------ ------ ------ --------| | ||
* | BkSp | A | S | D | F | G |------| |------| H | J | K | L |; / L2|' / Cmd | | ||
* |-------- ------ ------ ------ ------ ------| Hyper| | Meh |------ ------ ------ ------ ------ --------| | ||
* | LShift |Z/Ctrl| X | C | V | B | | | | N | M | , | . |//Ctrl| RShift | | ||
* `-------- ------ ------ ------ ------ -------------' `------------- ------ ------ ------ ------ --------' | ||
* |Grv/L1| '" |AltShf| Left | Right| | Up | Down | [ | ] | ~L1 | | ||
* `----------------------------------' `----------------------------------' | ||
* ,-------------. ,-------------. | ||
* | App | LGui | | Alt |Ctrl/Esc| | ||
* ,------|------|------| |------ -------- ------. | ||
* | | | Home | | PgUp | | | | ||
* | Space|Backsp|------| |------| Tab |Enter | | ||
* | |ace | End | | PgDn | | | | ||
* `--------------------' `----------------------' | ||
*/ | ||
[BASE] = LAYOUT_ergodox_pretty( | ||
// left hand | ||
KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LEFT, KC_RGHT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, | ||
KC_DEL, KC_Q, KC_W, KC_E, KC_R, KC_T, TG(SYMB), TG(SYMB), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, | ||
KC_BSPC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, LT(MDIA, KC_SCLN), GUI_T(KC_QUOT), | ||
KC_LSFT, CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B, ALL_T(KC_NO), MEH_T(KC_NO), KC_N, KC_M, KC_COMM, KC_DOT, CTL_T(KC_SLSH), KC_RSFT, | ||
LT(SYMB,KC_GRV), KC_QUOT, LALT(KC_LSFT), KC_LEFT, KC_RGHT, KC_UP, KC_DOWN, KC_LBRC, KC_RBRC, TT(SYMB), | ||
ALT_T(KC_APP), KC_LGUI, KC_LALT, CTL_T(KC_ESC), | ||
KC_HOME, KC_PGUP, | ||
KC_SPC, KC_BSPC, KC_END, KC_PGDN, KC_TAB, KC_ENT | ||
), | ||
/* Keymap 1: Symbol Layer | ||
* | ||
* ,---------------------------------------------------. ,--------------------------------------------------. | ||
* |Version | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | | ||
* |--------- ------ ------ ------ ------ ------ ------| |------ ------ ------ ------ ------ ------ --------| | ||
* | | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | F12 | | ||
* |--------- ------ ------ ------ ------ ------| | | |------ ------ ------ ------ ------ --------| | ||
* | | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | | | | ||
* |--------- ------ ------ ------ ------ ------| | | |------ ------ ------ ------ ------ --------| | ||
* | | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | \ | | | ||
* `--------- ------ ------ ------ ------ -------------' `------------- ------ ------ ------ ------ --------' | ||
* | EPRM | | | | | | | . | 0 | = | | | ||
* `-----------------------------------' `----------------------------------' | ||
* ,-------------. ,-------------. | ||
* |Animat| | |Toggle|Solid | | ||
* ,------|------|------| |------ ------ ------. | ||
* |Bright|Bright| | | |Hue- |Hue | | ||
* |ness- |ness |------| |------| | | | ||
* | | | | | | | | | ||
* `--------------------' `--------------------' | ||
*/ | ||
[SYMB] = LAYOUT_ergodox_pretty( | ||
// left hand | ||
VRSN, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, | ||
KC_TRNS, KC_EXLM, KC_AT, KC_LCBR, KC_RCBR, KC_PIPE, KC_TRNS, KC_TRNS, KC_UP, KC_7, KC_8, KC_9, KC_ASTR, KC_F12, | ||
KC_TRNS, KC_HASH, KC_DLR, KC_LPRN, KC_RPRN, KC_GRV, KC_DOWN, KC_4, KC_5, KC_6, KC_PLUS, KC_TRNS, | ||
KC_TRNS, KC_PERC, KC_CIRC, KC_LBRC, KC_RBRC, KC_TILD, KC_TRNS, KC_TRNS, KC_AMPR, KC_1, KC_2, KC_3, KC_BSLS, KC_TRNS, | ||
EE_CLR, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_DOT, KC_0, KC_EQL, KC_TRNS, | ||
RGB_MOD, KC_TRNS, RGB_TOG, RGB_M_P, | ||
KC_TRNS, KC_TRNS, | ||
RGB_VAD, RGB_VAI, KC_TRNS, KC_TRNS, RGB_HUD, RGB_HUI | ||
), | ||
/* Keymap 2: Media and mouse keys | ||
* | ||
* ,--------------------------------------------------. ,--------------------------------------------------. | ||
* | | | | | | | | | | | | | | | | | ||
* |-------- ------ ------ ------ ------ -------------| |------ ------ ------ ------ ------ ------ --------| | ||
* | | | | MsUp | | | | | | | | | | | | | ||
* |-------- ------ ------ ------ ------ ------| | | |------ ------ ------ ------ ------ --------| | ||
* | | |MsLeft|MsDown|MsRght| |------| |------| | | | | | Play | | ||
* |-------- ------ ------ ------ ------ ------| | | |------ ------ ------ ------ ------ --------| | ||
* | | | | | | | | | | | | Prev | Next | | | | ||
* `-------- ------ ------ ------ ------ -------------' `------------- ------ ------ ------ ------ --------' | ||
* | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | | | ||
* `----------------------------------' `----------------------------------' | ||
* ,-------------. ,-------------. | ||
* | | | | | | | ||
* ,------|------|------| |------ ------ ------. | ||
* | | | | | | |Brwser| | ||
* | | |------| |------| |Back | | ||
* | | | | | | | | | ||
* `--------------------' `--------------------' | ||
*/ | ||
[MDIA] = LAYOUT_ergodox_pretty( | ||
// left hand | ||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | ||
KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | ||
KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, | ||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, | ||
KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN1, KC_BTN2, KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, | ||
|
||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | ||
KC_TRNS, KC_TRNS, | ||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_WBAK | ||
), | ||
}; | ||
// clang-format on | ||
|
||
bool process_record_user(uint16_t keycode, keyrecord_t *record) { | ||
if (record->event.pressed) { | ||
switch (keycode) { | ||
case VRSN: | ||
SEND_STRING(QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION); | ||
return false; | ||
} | ||
} | ||
return true; | ||
} | ||
|
||
// Runs just one time when the keyboard initializes. | ||
void keyboard_post_init_user(void) { | ||
#ifdef RGBLIGHT_COLOR_LAYER_0 | ||
rgblight_setrgb(RGBLIGHT_COLOR_LAYER_0); | ||
#endif | ||
}; | ||
|
||
// Runs whenever there is a layer state change. | ||
layer_state_t layer_state_set_user(layer_state_t state) { | ||
ergodox_board_led_off(); | ||
ergodox_right_led_1_off(); | ||
ergodox_right_led_2_off(); | ||
ergodox_right_led_3_off(); | ||
|
||
uint8_t layer = get_highest_layer(state); | ||
switch (layer) { | ||
case 0: | ||
#ifdef RGBLIGHT_COLOR_LAYER_0 | ||
rgblight_setrgb(RGBLIGHT_COLOR_LAYER_0); | ||
#endif | ||
break; | ||
case 1: | ||
ergodox_right_led_1_on(); | ||
#ifdef RGBLIGHT_COLOR_LAYER_1 | ||
rgblight_setrgb(RGBLIGHT_COLOR_LAYER_1); | ||
#endif | ||
break; | ||
case 2: | ||
ergodox_right_led_2_on(); | ||
#ifdef RGBLIGHT_COLOR_LAYER_2 | ||
rgblight_setrgb(RGBLIGHT_COLOR_LAYER_2); | ||
#endif | ||
break; | ||
case 3: | ||
ergodox_right_led_3_on(); | ||
#ifdef RGBLIGHT_COLOR_LAYER_3 | ||
rgblight_setrgb(RGBLIGHT_COLOR_LAYER_3); | ||
#endif | ||
break; | ||
case 4: | ||
ergodox_right_led_1_on(); | ||
ergodox_right_led_2_on(); | ||
#ifdef RGBLIGHT_COLOR_LAYER_4 | ||
rgblight_setrgb(RGBLIGHT_COLOR_LAYER_4); | ||
#endif | ||
break; | ||
case 5: | ||
ergodox_right_led_1_on(); | ||
ergodox_right_led_3_on(); | ||
#ifdef RGBLIGHT_COLOR_LAYER_5 | ||
rgblight_setrgb(RGBLIGHT_COLOR_LAYER_5); | ||
#endif | ||
break; | ||
case 6: | ||
ergodox_right_led_2_on(); | ||
ergodox_right_led_3_on(); | ||
#ifdef RGBLIGHT_COLOR_LAYER_6 | ||
rgblight_setrgb(RGBLIGHT_COLOR_LAYER_6); | ||
#endif | ||
break; | ||
case 7: | ||
ergodox_right_led_1_on(); | ||
ergodox_right_led_2_on(); | ||
ergodox_right_led_3_on(); | ||
#ifdef RGBLIGHT_COLOR_LAYER_7 | ||
rgblight_setrgb(RGBLIGHT_COLOR_LAYER_7); | ||
#endif | ||
break; | ||
default: | ||
break; | ||
} | ||
|
||
return state; | ||
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 1,2 @@ | ||
RGBLIGHT_ENABLE = no | ||
RGB_MATRIX_ENABLE = yes |
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
Oops, something went wrong.