config

Personal configuration.
git clone git://code.dwrz.net/config
Log | Files | Refs

commit 618020bb362a916f5c0a45f4d8e8c7a29a262367
parent 7c19b1b4c48b399b1eb17504dd1907fa5778375f
Author: dwrz <dwrz@dwrz.net>
Date:   Fri, 15 Mar 2024 21:50:34 +0000

Refactor keymap

Diffstat:
Mqmk/equals48/config.h | 5+++++
Mqmk/equals48/keymap.c | 72+++++++++++++++++++++++++++++-------------------------------------------
2 files changed, 34 insertions(+), 43 deletions(-)

diff --git a/qmk/equals48/config.h b/qmk/equals48/config.h @@ -1 +1,6 @@ #define MK_COMBINED +#define RGB_MATRIX_DEFAULT_HUE 0 +#define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_SOLID_COLOR +#define RGB_MATRIX_DEFAULT_SAT 0 +#define RGB_MATRIX_DEFAULT_VAL 32 +#define RGB_MATRIX_SLEEP diff --git a/qmk/equals48/keymap.c b/qmk/equals48/keymap.c @@ -38,10 +38,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_NO, KC_NO, KC_NO, KC_BTN2, KC_BTN1, KC_BTN3, KC_BTN3, KC_BTN1, KC_BTN2, KC_NO, KC_NO, KC_NO ), [_NUM] = LAYOUT_ortho_4x12( - KC_NO, KC_NO, KC_COMM, KC_DOT, KC_NO, KC_NO, KC_NO, KC_NO, KC_7, KC_8, KC_9, KC_0, - KC_NO, KC_NO, KC_NO, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_4, KC_5, KC_6, KC_EQL, - KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_0, KC_1, KC_2, KC_3, KC_NO, - KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_SLSH, KC_ASTR, KC_PLUS, KC_MINS + KC_NO, KC_NO, KC_COMM, KC_DOT, KC_NO, KC_NO, KC_NO, KC_NO, KC_7, KC_8, KC_9, KC_0, + KC_NO, KC_NO, KC_NO, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_4, KC_5, KC_6, KC_EQL, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_0, KC_1, KC_2, KC_3, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_SPC, KC_NO, KC_SLSH, KC_ASTR, KC_PLUS, KC_MINS ), [_OPS] = LAYOUT_ortho_4x12( KC_NO, KC_EQL, KC_GT, KC_LT, KC_NO, KC_NO, KC_NO, KC_NO, KC_CIRC, KC_ASTR, KC_PLUS, KC_NO, @@ -64,7 +64,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FUNC] = LAYOUT_ortho_4x12( KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_F13, KC_F14, KC_F15, KC_F16, KC_F17, KC_F18, KC_F19, KC_F20, KC_F21, KC_F22, KC_F23, KC_F24, - RGB_TOG, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_MUTE, + RGB_TOG, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, RGB_VAD, RGB_VAI, KC_NO, KC_MUTE, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_BRID, KC_BRIU, KC_VOLU, KC_VOLD ), }; @@ -124,60 +124,46 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // KC_LAUNCHPAD KC_LPAD Open Launchpad void set_led_color(uint8_t i, uint8_t highest_layer, bool unused) { + if (unused) { + rgb_matrix_set_color(i, RGB_OFF); + return; + } + + // Determine the hue and value of the layer. + HSV hsv = {0, 255, 0}; + + // Limit brightness to current value. + hsv.v = rgb_matrix_get_val(); + + // Set the color (hue and saturation). switch (highest_layer) { case _NAV: - if (unused) { - rgb_matrix_set_color(i, RGB_OFF); - } else { - rgb_matrix_set_color(i, RGB_RED); - } + hsv.h = 0; // RED break; case _MOUSE: - if (unused) { - rgb_matrix_set_color(i, RGB_OFF); - } else { - rgb_matrix_set_color(i, RGB_YELLOW); - } + hsv.h = 43; // YELLOW break; case _NUM: - if (unused) { - rgb_matrix_set_color(i, RGB_OFF); - } else { - rgb_matrix_set_color(i, RGB_GREEN); - } + hsv.h = 85; // GREEN break; case _OPS: - if (unused) { - rgb_matrix_set_color(i, RGB_OFF); - } else { - rgb_matrix_set_color(i, RGB_ORANGE); - } + hsv.h = 21; // ORANGE break; case _PUNC: - if (unused) { - rgb_matrix_set_color(i, RGB_OFF); - } else { - rgb_matrix_set_color(i, RGB_CYAN); - } + hsv.h = 128; // CYAN break; case _SYMBOL: - if (unused) { - rgb_matrix_set_color(i, RGB_OFF); - } else { - rgb_matrix_set_color(i, RGB_PURPLE); - } + hsv.h = 191; // PURPLE break; case _FUNC: - if (unused) { - rgb_matrix_set_color(i, RGB_OFF); - } else { - rgb_matrix_set_color(i, RGB_BLUE); - } - break; - default: - // rgb_matrix_set_color(i, RGB_OFF); + hsv.h = 170; // BLUE break; + default: + hsv.s = 0; } + + RGB rgb = hsv_to_rgb(hsv); + rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b); } bool rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) {