From 439afc883a94627fd3f742d573fcfdf90ddbb22a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Konstantin=20=C4=90or=C4=91evi=C4=87?= Date: Thu, 9 Apr 2020 18:54:19 +0200 Subject: [PATCH] [Keymap] Update personal userspace and keymaps (#8747) * Update mousekey parameters in userspace * Disable GRAVE_ESC in boards where it isn't used * Tweak MODERN_DOLCH_RED and reset RGB on Shift+Toggle in KBD6X * Disable RGB controls when Fn/Caps indicator lights are on * Use LTO_ENABLE instead of setting -flto directly * Add led_update_keymap, use SS_LCTL instead of SS_LCTRL * Change TAPPING_TOGGLE from 2 to 3 --- .../doro67/multi/keymaps/konstantin/rules.mk | 1 + .../kbdfans/kbd6x/keymaps/konstantin/keymap.c | 18 ++++++++++++++++++ .../kbdfans/kbd6x/keymaps/konstantin/rules.mk | 1 + .../wasdat/keymaps/konstantin/rules.mk | 1 + keyboards/melody96/keymaps/konstantin/rules.mk | 1 + keyboards/whitefox/keymaps/konstantin/rules.mk | 1 + users/konstantin/config.h | 12 +++++++----- users/konstantin/konstantin.c | 11 ++++++++++- users/konstantin/konstantin.h | 1 + users/konstantin/rgb.h | 2 +- users/konstantin/rules.mk | 2 +- 11 files changed, 43 insertions(+), 8 deletions(-) diff --git a/keyboards/doro67/multi/keymaps/konstantin/rules.mk b/keyboards/doro67/multi/keymaps/konstantin/rules.mk index 041d3211459..c3a73fd8450 100644 --- a/keyboards/doro67/multi/keymaps/konstantin/rules.mk +++ b/keyboards/doro67/multi/keymaps/konstantin/rules.mk @@ -3,6 +3,7 @@ BOOTMAGIC_ENABLE = no COMMAND_ENABLE = yes CONSOLE_ENABLE = yes EXTRAKEY_ENABLE = yes +GRAVE_ESC_ENABLE = no MOUSEKEY_ENABLE = yes NKRO_ENABLE = yes SPACE_CADET_ENABLE = no diff --git a/keyboards/kbdfans/kbd6x/keymaps/konstantin/keymap.c b/keyboards/kbdfans/kbd6x/keymaps/konstantin/keymap.c index d002322056e..46cc0a11373 100644 --- a/keyboards/kbdfans/kbd6x/keymaps/konstantin/keymap.c +++ b/keyboards/kbdfans/kbd6x/keymaps/konstantin/keymap.c @@ -14,8 +14,23 @@ void eeconfig_init_keymap(void) { rgblight_mode(RGBLIGHT_MODE_RAINBOW_SWIRL); } +bool indicator_light = false; + bool process_record_keymap(uint16_t keycode, keyrecord_t *record) { switch (keycode) { + case RGB_TOG ... RGB_SPD: + // Disable RGB controls when Fn/Caps indicator lights are on + if (indicator_light) { + return false; + } + // Shift+Toggle = reset RGB + if (record->event.pressed && keycode == RGB_TOG && get_mods() & MOD_MASK_SHIFT) { + eeconfig_init_keymap(); + return false; + } + break; + + // Combined RCtrl and layer case RCTRL: if (record->event.pressed) { register_code(KC_RCTRL); @@ -33,17 +48,20 @@ bool process_record_keymap(uint16_t keycode, keyrecord_t *record) { static inline void fn_light(void) { rgblight_mode_noeeprom(RGBLIGHT_MODE_STATIC_LIGHT); rgblight_sethsv_noeeprom(modern_dolch_red.h, modern_dolch_red.s, rgblight_get_val()); + indicator_light = true; } static inline void caps_light(void) { rgblight_mode_noeeprom(RGBLIGHT_MODE_STATIC_LIGHT); rgblight_sethsv_noeeprom(modern_dolch_cyan.h, modern_dolch_cyan.s, rgblight_get_val()); + indicator_light = true; } static inline void restore_light(void) { rgblight_config_t saved = { .raw = eeconfig_read_rgblight() }; rgblight_sethsv_noeeprom(saved.hue, saved.sat, saved.val); rgblight_mode_noeeprom(saved.mode); + indicator_light = false; } static void check_light_layer(uint32_t state) { diff --git a/keyboards/kbdfans/kbd6x/keymaps/konstantin/rules.mk b/keyboards/kbdfans/kbd6x/keymaps/konstantin/rules.mk index 64428383cf9..c75488af628 100644 --- a/keyboards/kbdfans/kbd6x/keymaps/konstantin/rules.mk +++ b/keyboards/kbdfans/kbd6x/keymaps/konstantin/rules.mk @@ -3,6 +3,7 @@ BOOTMAGIC_ENABLE = no COMMAND_ENABLE = yes CONSOLE_ENABLE = no EXTRAKEY_ENABLE = yes +GRAVE_ESC_ENABLE = no MOUSEKEY_ENABLE = yes NKRO_ENABLE = yes RGBLIGHT_ENABLE = yes diff --git a/keyboards/maartenwut/wasdat/keymaps/konstantin/rules.mk b/keyboards/maartenwut/wasdat/keymaps/konstantin/rules.mk index 041d3211459..c3a73fd8450 100644 --- a/keyboards/maartenwut/wasdat/keymaps/konstantin/rules.mk +++ b/keyboards/maartenwut/wasdat/keymaps/konstantin/rules.mk @@ -3,6 +3,7 @@ BOOTMAGIC_ENABLE = no COMMAND_ENABLE = yes CONSOLE_ENABLE = yes EXTRAKEY_ENABLE = yes +GRAVE_ESC_ENABLE = no MOUSEKEY_ENABLE = yes NKRO_ENABLE = yes SPACE_CADET_ENABLE = no diff --git a/keyboards/melody96/keymaps/konstantin/rules.mk b/keyboards/melody96/keymaps/konstantin/rules.mk index 995402cb053..5b36eef2cba 100644 --- a/keyboards/melody96/keymaps/konstantin/rules.mk +++ b/keyboards/melody96/keymaps/konstantin/rules.mk @@ -3,6 +3,7 @@ BOOTMAGIC_ENABLE = no COMMAND_ENABLE = yes CONSOLE_ENABLE = no EXTRAKEY_ENABLE = yes +GRAVE_ESC_ENABLE = no MOUSEKEY_ENABLE = yes NKRO_ENABLE = yes RGBLIGHT_ENABLE = yes diff --git a/keyboards/whitefox/keymaps/konstantin/rules.mk b/keyboards/whitefox/keymaps/konstantin/rules.mk index bced6e8a707..c39175c979f 100644 --- a/keyboards/whitefox/keymaps/konstantin/rules.mk +++ b/keyboards/whitefox/keymaps/konstantin/rules.mk @@ -3,6 +3,7 @@ BOOTMAGIC_ENABLE = no COMMAND_ENABLE = yes CONSOLE_ENABLE = yes EXTRAKEY_ENABLE = yes +GRAVE_ESC_ENABLE = no MOUSEKEY_ENABLE = yes NKRO_ENABLE = yes SPACE_CADET_ENABLE = no diff --git a/users/konstantin/config.h b/users/konstantin/config.h index bc1987c357b..dcea9be2794 100644 --- a/users/konstantin/config.h +++ b/users/konstantin/config.h @@ -2,11 +2,13 @@ #define FORCE_NKRO -#define MOUSEKEY_DELAY 50 -#define MOUSEKEY_INTERVAL 15 +#define MOUSEKEY_DELAY 0 +#define MOUSEKEY_INTERVAL 10 #define MOUSEKEY_MAX_SPEED 4 -#define MOUSEKEY_TIME_TO_MAX 50 -#define MOUSEKEY_WHEEL_MAX_SPEED 1 +#define MOUSEKEY_TIME_TO_MAX 100 +#define MOUSEKEY_WHEEL_DELAY 0 +#define MOUSEKEY_WHEEL_INTERVAL 50 +#define MOUSEKEY_WHEEL_MAX_SPEED 4 #define MOUSEKEY_WHEEL_TIME_TO_MAX 50 #define NO_ACTION_FUNCTION @@ -21,7 +23,7 @@ #define PERMISSIVE_HOLD #define TAPPING_TERM 200 -#define TAPPING_TOGGLE 2 +#define TAPPING_TOGGLE 3 #define UNICODE_CYCLE_PERSIST false #define UNICODE_SELECTED_MODES UC_WINC, UC_WIN, UC_LNX diff --git a/users/konstantin/konstantin.c b/users/konstantin/konstantin.c index 9cee25ac664..72aca9fb8c2 100644 --- a/users/konstantin/konstantin.c +++ b/users/konstantin/konstantin.c @@ -69,7 +69,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { case CLEAR: if (record->event.pressed) { CLEAN_MODS( - SEND_STRING(SS_LCTRL("a") SS_TAP(X_DELETE)); + SEND_STRING(SS_LCTL("a") SS_TAP(X_DELETE)); ) } break; @@ -117,3 +117,12 @@ void led_set_keymap(uint8_t usb_led) {} void led_set_user(uint8_t usb_led) { led_set_keymap(usb_led); } + +__attribute__((weak)) +bool led_update_keymap(led_t led_state) { + return true; +} + +bool led_update_user(led_t led_state) { + return led_update_keymap(led_state); +} diff --git a/users/konstantin/konstantin.h b/users/konstantin/konstantin.h index da21058312a..0936e3c3ea3 100644 --- a/users/konstantin/konstantin.h +++ b/users/konstantin/konstantin.h @@ -86,3 +86,4 @@ void keyboard_post_init_keymap(void); bool process_record_keymap(uint16_t keycode, keyrecord_t *record); uint32_t layer_state_set_keymap(uint32_t state); void led_set_keymap(uint8_t usb_led); +bool led_update_keymap(led_t led_state); diff --git a/users/konstantin/rgb.h b/users/konstantin/rgb.h index cc7d91808a0..e09c5bd7742 100644 --- a/users/konstantin/rgb.h +++ b/users/konstantin/rgb.h @@ -5,7 +5,7 @@ #define GODSPEED_BLUE 198, 68, 255 #define GODSPEED_YELLOW 27, 153, 255 #define MODERN_DOLCH_CYAN 110, 255, 108 -#define MODERN_DOLCH_RED 251, 255, 108 +#define MODERN_DOLCH_RED 253, 255, 108 extern const HSV godspeed_blue; extern const HSV godspeed_yellow; diff --git a/users/konstantin/rules.mk b/users/konstantin/rules.mk index bf0ab979fb3..d989f486c5a 100644 --- a/users/konstantin/rules.mk +++ b/users/konstantin/rules.mk @@ -13,4 +13,4 @@ ifneq (,$(filter yes,$(UNICODE_ENABLE) $(UNICODEMAP_ENABLE))) SRC += unicode.c endif -EXTRAFLAGS += -flto +LTO_ENABLE = yes