Update bm16a by adding application shortcuts and layer led colors
This commit is contained in:
@@ -19,7 +19,7 @@
|
|||||||
void matrix_init_kb(void) {
|
void matrix_init_kb(void) {
|
||||||
// put your keyboard start-up code here
|
// put your keyboard start-up code here
|
||||||
// runs once when the firmware starts up
|
// runs once when the firmware starts up
|
||||||
/* rgblight_setrgb (0xFF, 0xFF, 0xFF); */
|
rgblight_setrgb (0xFF, 0xFF, 0xFF);
|
||||||
matrix_init_user();
|
matrix_init_user();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -21,6 +21,7 @@
|
|||||||
enum layers {
|
enum layers {
|
||||||
_BASE = 0,
|
_BASE = 0,
|
||||||
_FN1,
|
_FN1,
|
||||||
|
_APP,
|
||||||
_FN2,
|
_FN2,
|
||||||
_FN3,
|
_FN3,
|
||||||
};
|
};
|
||||||
@@ -37,16 +38,22 @@ enum custom_keycodes {
|
|||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||||
|
|
||||||
[_BASE] = LAYOUT_ortho_4x4(
|
[_BASE] = LAYOUT_ortho_4x4(
|
||||||
LT(_FN3, KC_P7), KC_P8, KC_P9, KC_PAST, \
|
LT(_FN3, KC_7), LT(_FN3, KC_8), LT(_FN3, KC_9), KC_PAST, \
|
||||||
LT(_FN3, KC_P4), KC_P5, KC_P6, KC_PPLS, \
|
LT(_FN3, KC_4), LT(_FN3, KC_5), LT(_FN3, KC_6), KC_PPLS, \
|
||||||
LT(_FN3, KC_P1), KC_P2, KC_P3, KC_PMNS, \
|
LT(_FN3, KC_1), LT(_FN3, KC_2), LT(_FN3, KC_3), KC_PMNS, \
|
||||||
LT(_FN3, KC_P0), KC_COMMA, LT(_FN2, KC_DOT), TO(_FN1) \
|
LT(_FN3, KC_0), LT(_FN3, KC_COMMA), LT(_FN2, KC_DOT), TO(_FN1) \
|
||||||
),
|
),
|
||||||
[_FN1] = LAYOUT_ortho_4x4(
|
[_FN1] = LAYOUT_ortho_4x4(
|
||||||
KC_PGUP, KC_HOME, KC_UP, KC_END , \
|
|
||||||
KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, \
|
|
||||||
KC_VOLU, KC_MPLY, KC_MPRV, MO(_FN2), \
|
KC_VOLU, KC_MPLY, KC_MPRV, MO(_FN2), \
|
||||||
KC_VOLD, KC_MUTE, KC_MNXT, TO(_BASE) \
|
KC_VOLD, KC_MUTE, KC_MNXT, KC_PGUP, \
|
||||||
|
KC_HOME, KC_UP, KC_END , KC_PGDN, \
|
||||||
|
KC_LEFT, KC_DOWN, KC_RGHT, TO(_APP) \
|
||||||
|
),
|
||||||
|
[_APP] = LAYOUT_ortho_4x4(
|
||||||
|
LCTL(LALT(KC_SCOLON)), LCTL(LALT(KC_QUOTE)), LCTL(LALT(KC_BSPC)), LCTL(LALT(KC_LBRC)), \
|
||||||
|
LCTL(LALT(KC_L)), LCTL(LALT(KC_I)), LCTL(LALT(KC_M)), LCTL(LALT(KC_RBRC)), \
|
||||||
|
LCTL(LSFT(KC_ESC)), LCTL(LALT(KC_P)), _______, _______, \
|
||||||
|
LCTL(LALT(KC_SPC)), LCTL(LALT(KC_F)), LGUI(KC_TAB), TO(_BASE) \
|
||||||
),
|
),
|
||||||
[_FN2] = LAYOUT_ortho_4x4(
|
[_FN2] = LAYOUT_ortho_4x4(
|
||||||
RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, \
|
RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, \
|
||||||
@@ -63,6 +70,28 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
uint32_t layer_state_set_user(uint32_t state) {
|
||||||
|
switch (biton32(state)) {
|
||||||
|
case _BASE:
|
||||||
|
rgblight_setrgb (0xFF, 0xFF, 0xFF);
|
||||||
|
break;
|
||||||
|
case _FN1:
|
||||||
|
rgblight_setrgb (0xC0, 0x61, 0xFF);
|
||||||
|
break;
|
||||||
|
case _APP:
|
||||||
|
// 6BBFFF
|
||||||
|
rgblight_setrgb (0x6B, 0xFF, 0xBF);
|
||||||
|
break;
|
||||||
|
case _FN2:
|
||||||
|
rgblight_setrgb (0xFF, 0x00, 0x00);
|
||||||
|
break;
|
||||||
|
case _FN3:
|
||||||
|
rgblight_setrgb (0x99, 0x99, 0x99);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
return state;
|
||||||
|
}
|
||||||
|
|
||||||
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
||||||
switch (keycode) {
|
switch (keycode) {
|
||||||
case QMKBEST:
|
case QMKBEST:
|
||||||
|
|||||||
Reference in New Issue
Block a user