proteus67.c (1186B)
- // Copyright 2023 James Gzowski
- // SPDX-License-Identifier: GPL-2.0-or-later
- #include QMK_KEYBOARD_H
- enum custom_layer {
- _LAYERA,
- _LAYERB,
- _LAYERC,
- };
- // MO(_LAYERB)
- const rgblight_segment_t PROGMEM backlight_layer_layerb[] = RGBLIGHT_LAYER_SEGMENTS(
- {0, 4, HSV_GOLD}
- );
- // MO(_LAYERC)
- const rgblight_segment_t PROGMEM backlight_layer_layerc[] = RGBLIGHT_LAYER_SEGMENTS(
- {0, 4, HSV_CYAN}
- );
- const rgblight_segment_t PROGMEM backlight_layer_layera[] = RGBLIGHT_LAYER_SEGMENTS(
- {0, 4, HSV_BLACK}
- );
- const rgblight_segment_t* const PROGMEM set_backlight_mode[] = RGBLIGHT_LAYERS_LIST(
- backlight_layer_layerb,
- backlight_layer_layerc,
- backlight_layer_layera
- );
- layer_state_t layer_state_set_kb(layer_state_t state) {
- rgblight_set_layer_state(0, layer_state_cmp(state, _LAYERB));
- rgblight_set_layer_state(1, layer_state_cmp(state, _LAYERC));
- rgblight_set_layer_state(2, layer_state_cmp(state, _LAYERA));
- return layer_state_set_user(state);
- }
- void keyboard_post_init_kb(void) {
- rgblight_set_effect_range(4, 17);
- rgblight_sethsv_range(HSV_BLACK, 0, 4);
- rgblight_layers = set_backlight_mode;
- keyboard_post_init_user();
- }