From 976645729d7f18e31f3871ff2905cf2b769b91a5 Mon Sep 17 00:00:00 2001 From: Danny Oh Date: Tue, 16 Jul 2024 11:06:18 -0500 Subject: [PATCH] Add leader key --- .gitignore | 1 + .../crkbd/qmk/qmk_firmware/rev4_1_right/config.h | 4 ++++ .../crkbd/qmk/qmk_firmware/rev4_1_right/rules.mk | 1 + .../crkbd/vial-kb/vial-qmk/keymaps/vial/keymap.c | 16 ++++++++++++++++ 4 files changed, 22 insertions(+) diff --git a/.gitignore b/.gitignore index 351748d3..0eccdc7b 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ # OSX thumbnails cache file .DS_Store +secret.h diff --git a/keyboards/crkbd/qmk/qmk_firmware/rev4_1_right/config.h b/keyboards/crkbd/qmk/qmk_firmware/rev4_1_right/config.h index 3252c6f8..8afe8002 100644 --- a/keyboards/crkbd/qmk/qmk_firmware/rev4_1_right/config.h +++ b/keyboards/crkbd/qmk/qmk_firmware/rev4_1_right/config.h @@ -29,3 +29,7 @@ #define POINTING_DEVICE_AUTO_MOUSE_ENABLE #define AUTO_MOUSE_DEFAULT_LAYER 5 #define AUTO_MOUSE_TIME 1000 + +#define LEADER_TIMEOUT 250 +#define LEADER_PER_KEY_TIMING + diff --git a/keyboards/crkbd/qmk/qmk_firmware/rev4_1_right/rules.mk b/keyboards/crkbd/qmk/qmk_firmware/rev4_1_right/rules.mk index d5f72af3..608f69e3 100644 --- a/keyboards/crkbd/qmk/qmk_firmware/rev4_1_right/rules.mk +++ b/keyboards/crkbd/qmk/qmk_firmware/rev4_1_right/rules.mk @@ -1,3 +1,4 @@ SERIAL_DRIVER = vendor POINTING_DEVICE_ENABLE = yes POINTING_DEVICE_DRIVER = pimoroni_trackball +LEADER_ENABLE = yes diff --git a/keyboards/crkbd/vial-kb/vial-qmk/keymaps/vial/keymap.c b/keyboards/crkbd/vial-kb/vial-qmk/keymaps/vial/keymap.c index 3b3e6dfd..b70bfc50 100644 --- a/keyboards/crkbd/vial-kb/vial-qmk/keymaps/vial/keymap.c +++ b/keyboards/crkbd/vial-kb/vial-qmk/keymaps/vial/keymap.c @@ -1,5 +1,13 @@ #include QMK_KEYBOARD_H #include "drivers/sensors/pimoroni_trackball.h" +#include "secret.h" + +#ifndef SECRET_1 + #define SECRET_1 secret +#endif +#ifndef SECRET_2 + #define SECRET_2 secret +#endif enum custom_keycodes { DRAG_SCROLL = QK_USER_0, @@ -324,6 +332,14 @@ layer_state_t layer_state_set_user(layer_state_t state) { return state; } +void leader_end_user(void) { + if (leader_sequence_two_keys(KC_D, KC_A)) { + SEND_STRING(SECRET_1); + } else if (leader_sequence_three_keys(KC_T, KC_A, KC_O)) { + SEND_STRING(SECRET_2); + } +} + #ifdef ENCODER_MAP_ENABLE const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = { [0] = { ENCODER_CCW_CW(RGB_MOD, RGB_RMOD), ENCODER_CCW_CW(RGB_HUI, RGB_HUD), ENCODER_CCW_CW(RGB_VAI, RGB_VAD), ENCODER_CCW_CW(RGB_SAI, RGB_SAD), },