diff options
23 files changed, 213 insertions, 251 deletions
diff --git a/keyboards/gherkin/keymaps/bbaserdem/config.h b/keyboards/gherkin/keymaps/bbaserdem/config.h index 2bd89e8ece..37d7113e78 100644 --- a/keyboards/gherkin/keymaps/bbaserdem/config.h +++ b/keyboards/gherkin/keymaps/bbaserdem/config.h @@ -1,5 +1,5 @@ -#ifndef CONFIG_USER_H -#define CONFIG_USER_H +#ifndef CONFIG_KEYMAP_H +#define CONFIG_KEYMAP_H #include "../../config.h" #define RGB_DI_PIN F6 diff --git a/keyboards/gherkin/keymaps/bbaserdem/keymap.c b/keyboards/gherkin/keymaps/bbaserdem/keymap.c index d756f9b5c1..0d3c8557c5 100644 --- a/keyboards/gherkin/keymaps/bbaserdem/keymap.c +++ b/keyboards/gherkin/keymaps/bbaserdem/keymap.c @@ -21,7 +21,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ) }; -void matrix_init_keymap(void) { +void matrix_init_user(void) { // Set LED's to max _delay_us(300); backlight_config.level = 2; diff --git a/keyboards/gherkin/keymaps/bbaserdem/rules.mk b/keyboards/gherkin/keymaps/bbaserdem/rules.mk index 4e3a41820b..cd1cddebf4 100644 --- a/keyboards/gherkin/keymaps/bbaserdem/rules.mk +++ b/keyboards/gherkin/keymaps/bbaserdem/rules.mk @@ -2,13 +2,16 @@ ifndef QUANTUM_DIR include ../../../../Makefile endif +USER_NAME := bbaserdem-nouserspace + STENO_ENABLE = no # Additional protocols for Stenography(+1700), requires VIRTSER MOUSEKEY_ENABLE = no # Mouse keys(+4700) EXTRAKEY_ENABLE = no # Audio control and System control(+450) CONSOLE_ENABLE = no # Console for debug(+400) COMMAND_ENABLE = no # Commands for debug and configuration SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend -NKRO_ENABLE = yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work AUDIO_ENABLE = no # Enable audio output from keyboard + +NKRO_ENABLE = yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work RGBLIGHT_ENABLE = yes # Enable RBG light strips BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality diff --git a/keyboards/lets_split/keymaps/bbaserdem/config.h b/keyboards/lets_split/keymaps/bbaserdem/config.h index f908e6d9a8..6a90e1c356 100755 --- a/keyboards/lets_split/keymaps/bbaserdem/config.h +++ b/keyboards/lets_split/keymaps/bbaserdem/config.h @@ -1,5 +1,5 @@ -#ifndef CONFIG_USER_H -#define CONFIG_USER_H +#ifndef CONFIG_KEYMAP_H +#define CONFIG_KEYMAP_H #include "../../config.h" diff --git a/keyboards/lets_split/keymaps/bbaserdem/keymap.c b/keyboards/lets_split/keymaps/bbaserdem/keymap.c index 09da67a69f..623117530d 100755 --- a/keyboards/lets_split/keymaps/bbaserdem/keymap.c +++ b/keyboards/lets_split/keymaps/bbaserdem/keymap.c @@ -20,18 +20,17 @@ uint32_t layer_state_set_keymap(uint32_t state) { const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // Main Dvorak layer - [_DV] = DVORAK, + [_DV] = LAYOUT_letssplit_wrapper(DVORAK), // Turkish and special character overlay - [_AL] = ALTCHAR, + [_AL] = LAYOUT_letssplit_wrapper(ALTCHAR), // Gaming layer - [_GA] = GAME, + [_GA] = LAYOUT_letssplit_wrapper(GAME), // Numbers layer - [_NU] = NUMBERS, + [_NU] = LAYOUT_letssplit_wrapper(NUMBERS), // Settings layer - [_SE] = SETTINGS, + [_SE] = LAYOUT_letssplit_wrapper(SETTINGS), // Mouse emulation layer - [_MO] = MOUSE, -#ifdef AUDIO_ENABLE - [_MU] = MUSIC, -#endif + [_MO] = LAYOUT_letssplit_wrapper(MOUSE), + // Music layer + [_MU] = LAYOUT_letssplit_wrapper(MUSIC), }; diff --git a/keyboards/lets_split/keymaps/bbaserdem_right/config.h b/keyboards/lets_split/keymaps/bbaserdem_right/config.h index 9b6527db23..47545a059b 100755 --- a/keyboards/lets_split/keymaps/bbaserdem_right/config.h +++ b/keyboards/lets_split/keymaps/bbaserdem_right/config.h @@ -1,5 +1,5 @@ -#ifndef CONFIG_USER_H -#define CONFIG_USER_H +#ifndef CONFIG_KEYMAP_H +#define CONFIG_KEYMAP_H #include "../../config.h" diff --git a/keyboards/lets_split/keymaps/bbaserdem_right/keymap.c b/keyboards/lets_split/keymaps/bbaserdem_right/keymap.c index 6faabce3c5..2dcae0dca5 100755 --- a/keyboards/lets_split/keymaps/bbaserdem_right/keymap.c +++ b/keyboards/lets_split/keymaps/bbaserdem_right/keymap.c @@ -22,10 +22,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------' `-----------------------' */ // Main Dvorak layer - [0] = LAYOUT( - LCTL(LALT(KC_DEL)), LGUI(KC_GRV), LGUI(KC_Q), LGUI(KC_LALT), LGUI(KC_L), LGUI(KC_RGHT), KC_RPRN, KC_PMNS, KC_PPLS, KC_PEQL, KC_PENT, KC_BSPC, - LGUI(KC_F3), LGUI(KC_M), LGUI(KC_ENT), LGUI(KC_LCTL), LGUI(KC_K), LGUI(KC_UP), KC_LPRN, KC_PAST, KC_P9, KC_P6, KC_P3, KC_PDOT, - LGUI(KC_F2), LGUI(KC_T), LGUI(KC_SPC), LGUI(KC_LSFT), LGUI(KC_J), LGUI(KC_DOWN), KC_PERC, KC_PSLS, KC_P8, KC_P5, KC_P2, KC_PCMM, - LGUI(KC_F1), LGUI(KC_F), LGUI(KC_P), LGUI(KC_TAB), LGUI(KC_H), LGUI(KC_LEFT), KC_NLCK, KC_TAB, KC_P7, KC_P4, KC_P1, KC_P0 + [0] = LAYOUT_ortho_4x12( + LCTL(LALT(KC_DEL)), LGUI(KC_GRV), LGUI(KC_Q), LGUI(KC_LALT), LGUI(KC_L), LGUI(KC_RGHT), KC_RPRN, KC_PMNS, KC_PPLS, KC_PEQL, KC_PENT, KC_BSPC, \ + LGUI(KC_F3), LGUI(KC_M), LGUI(KC_ENT), LGUI(KC_LCTL), LGUI(KC_K), LGUI(KC_UP), KC_LPRN, KC_PAST, KC_P9, KC_P6, KC_P3, KC_PDOT, \ + LGUI(KC_F2), LGUI(KC_T), LGUI(KC_SPC), LGUI(KC_LSFT), LGUI(KC_J), LGUI(KC_DOWN), KC_PERC, KC_PSLS, KC_P8, KC_P5, KC_P2, KC_PCMM, \ + LGUI(KC_F1), LGUI(KC_F), LGUI(KC_P), LGUI(KC_TAB), LGUI(KC_H), LGUI(KC_LEFT), KC_NLCK, KC_TAB, KC_P7, KC_P4, KC_P1, KC_P0 \ ) }; diff --git a/keyboards/lets_split/keymaps/bbaserdem_right/rules.mk b/keyboards/lets_split/keymaps/bbaserdem_right/rules.mk index 65a64c94f2..36b4b8fc25 100755 --- a/keyboards/lets_split/keymaps/bbaserdem_right/rules.mk +++ b/keyboards/lets_split/keymaps/bbaserdem_right/rules.mk @@ -1,5 +1,7 @@ # Build options +USER_NAME := bbaserdem-without-userspace + BACKLIGHT_ENABLE = no # Switch LEDs MOUSEKEY_ENABLE = no # Emulates mouse key using keypresses RGBLIGHT_ENABLE = no # LED strips diff --git a/keyboards/lets_split_eh/keymaps/bbaserdem/README.md b/keyboards/lets_split_eh/keymaps/bbaserdem/README.md new file mode 100644 index 0000000000..fcb7037937 --- /dev/null +++ b/keyboards/lets_split_eh/keymaps/bbaserdem/README.md @@ -0,0 +1,7 @@ +# Lets Split Eh Layout + +Check out [user readme](../../../../users/bbaserdem/README.md) for more info. + +# Usage + +Fill in after flashing diff --git a/keyboards/lets_split_eh/keymaps/bbaserdem/config.h b/keyboards/lets_split_eh/keymaps/bbaserdem/config.h new file mode 100755 index 0000000000..47be76567e --- /dev/null +++ b/keyboards/lets_split_eh/keymaps/bbaserdem/config.h @@ -0,0 +1,4 @@ +#ifndef CONFIG_KEYMAP_H +#define CONFIG_KEYMAP_H +#include "../../config.h" +#endif diff --git a/keyboards/lets_split_eh/keymaps/bbaserdem/keymap.c b/keyboards/lets_split_eh/keymaps/bbaserdem/keymap.c new file mode 100755 index 0000000000..92e72bbf1c --- /dev/null +++ b/keyboards/lets_split_eh/keymaps/bbaserdem/keymap.c @@ -0,0 +1,27 @@ +#include "lets_split_eh.h" +#include "bbaserdem.h" + + +void matrix_init_keymap (void) { +} + +uint32_t layer_state_set_keymap(uint32_t state) { + return state; +} + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + // Main Dvorak layer + [_DV] = LAYOUT_letssplit_wrapper(DVORAK), + // Turkish and special character overlay + [_AL] = LAYOUT_letssplit_wrapper(ALTCHAR), + // Gaming layer + [_GA] = LAYOUT_letssplit_wrapper(GAME), + // Numbers layer + [_NU] = LAYOUT_letssplit_wrapper(NUMBERS), + // Settings layer + [_SE] = LAYOUT_letssplit_wrapper(SETTINGS), + // Mouse emulation layer + [_MO] = LAYOUT_letssplit_wrapper(MOUSE), + // Music layer + [_MU] = LAYOUT_letssplit_wrapper(MUSIC), +}; diff --git a/keyboards/lets_split_eh/keymaps/bbaserdem/rules.mk b/keyboards/lets_split_eh/keymaps/bbaserdem/rules.mk new file mode 100755 index 0000000000..4159db3fee --- /dev/null +++ b/keyboards/lets_split_eh/keymaps/bbaserdem/rules.mk @@ -0,0 +1,11 @@ +# Build options + +BACKLIGHT_ENABLE = no # Switch LEDs +MOUSEKEY_ENABLE = yes # Emulates mouse key using keypresses +RGBLIGHT_ENABLE = yes # LED strips +TAP_DANCE_ENABLE = no # Use multi-tap features +AUDIO_ENABLE = no # Audio stuff + +ifndef QUANTUM_DIR + include ../../../../Makefile +endif diff --git a/keyboards/planck/keymaps/bbaserdem/config.h b/keyboards/planck/keymaps/bbaserdem/config.h index 2edb45673c..ac5460bda6 100755 --- a/keyboards/planck/keymaps/bbaserdem/config.h +++ b/keyboards/planck/keymaps/bbaserdem/config.h @@ -1,7 +1,7 @@ -#ifndef CONFIG_USER_H -#define CONFIG_USER_H +#ifndef CONFIG_KEYMAP_H +#define CONFIG_KEYMAP_H -#include "../../config.h" +#include "config_common.h" // LED strip stuff #ifdef RGBLIGHT_ENABLE @@ -19,4 +19,6 @@ #define RGBLIGHT_EFFECT_CHRISTMAS_STEP 1 #endif +#define ENCODER_RESOLUTION 4 + #endif diff --git a/keyboards/planck/keymaps/bbaserdem/keymap.c b/keyboards/planck/keymaps/bbaserdem/keymap.c index 0f6e4fbc53..1fa8132ddb 100755 --- a/keyboards/planck/keymaps/bbaserdem/keymap.c +++ b/keyboards/planck/keymaps/bbaserdem/keymap.c @@ -6,25 +6,23 @@ * Check qmk_firmware/users/bbaserdem for the main part of the code */ -#pragma message "You may need to add LAYOUT_planck_grid to your keymap layers - see default for an example" #include "planck.h" #include "bbaserdem.h" + const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // Main Dvorak layer - [_DV] = DVORAK, + [_DV] = LAYOUT_planck_wrapper(DVORAK), // Turkish and special character overlay - [_AL] = ALTCHAR, + [_AL] = LAYOUT_planck_wrapper(ALTCHAR), // Gaming layer - [_GA] = GAME, + [_GA] = LAYOUT_planck_wrapper(GAME), // Numbers layer - [_NU] = NUMBERS, + [_NU] = LAYOUT_planck_wrapper(NUMBERS), // Settings layer - [_SE] = SETTINGS, + [_SE] = LAYOUT_planck_wrapper(SETTINGS), // Mouse emulation layer - [_MO] = MOUSE, -#ifdef MUSIC_ENABLE + [_MO] = LAYOUT_planck_wrapper(MOUSE), // Music mode - [_MU] = MUSIC, -#endif + [_MU] = LAYOUT_planck_wrapper(MUSIC), }; diff --git a/keyboards/planck/keymaps/bbaserdem/rules.mk b/keyboards/planck/keymaps/bbaserdem/rules.mk index e2b5eb3c36..b9b589e8d2 100755 --- a/keyboards/planck/keymaps/bbaserdem/rules.mk +++ b/keyboards/planck/keymaps/bbaserdem/rules.mk @@ -4,8 +4,4 @@ BACKLIGHT_ENABLE = yes # Switch LEDs MOUSEKEY_ENABLE = yes # Emulates mouse key using keypresses RGBLIGHT_ENABLE = yes # LED strips TAP_DANCE_ENABLE = no # Use multi-tap features -AUDIO_ENABLE = no # Audio stuff - -ifndef QUANTUM_DIR - include ../../../../Makefile -endif +AUDIO_ENABLE = yes # Audio stuff diff --git a/keyboards/xd75/keymaps/bbaserdem/config.h b/keyboards/xd75/keymaps/bbaserdem/config.h index 2c24bb7673..28d32e5628 100644 --- a/keyboards/xd75/keymaps/bbaserdem/config.h +++ b/keyboards/xd75/keymaps/bbaserdem/config.h @@ -1,21 +1,5 @@ -/* Copyright 2017 REPLACE_WITH_YOUR_NAME - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - */ - -#ifndef CONFIG_USER_H -#define CONFIG_USER_H +#ifndef CONFIG_KEYMAP_H +#define CONFIG_KEYMAP_H #include "../../config.h" diff --git a/keyboards/xd75/keymaps/bbaserdem/keymap.c b/keyboards/xd75/keymaps/bbaserdem/keymap.c index 0b8ab6235a..68071d018e 100644 --- a/keyboards/xd75/keymaps/bbaserdem/keymap.c +++ b/keyboards/xd75/keymaps/bbaserdem/keymap.c @@ -15,66 +15,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |Tog|Mut| | ] | * `-----------------------------------------------------------' */ -[_DV] = KM( - BL_STEP, LGUI(KC_ESC), KC_GRV,KC_1,KC_2,KC_3,KC_4,KC_5,KC_6,KC_7,KC_8,KC_9,KC_0,KC_MINS,KC_EQL, - KC_WHOM, LGUI(KC_ENT), DVORAK_1, KC_CAPS, - KC_CALC, LGUI(KC_P), DVORAK_2, KC_BSLS, - KC_MPRV, KC_MNXT, DVORAK_3, KC_LBRC, - KC_MPLY, KC_MUTE, DVORAK_4, KC_RBRC ), - -[_AL] = KM( - _______,_______,_______,_______,_______,_______, - _______,_______,_______,_______,_______,_______, - _______,_______,_______, - _______,_______, ALTCHAR_1, _______, - _______,_______, ALTCHAR_2, _______, - _______,_______, ALTCHAR_3, _______, - _______,_______, ALTCHAR_4, _______ ), - -[_GA] = KM( - _______,_______,_______,_______,_______,_______, - _______,_______,_______,_______,_______,_______, - _______,_______,_______, - _______,_______, GAME_1, _______, - _______,_______, GAME_2, _______, - _______,_______, GAME_3, _______, - _______,_______, GAME_4, _______ ), - -[_NU] = KM( - _______,_______,_______,_______,_______,_______, - _______,_______,_______,_______,_______,_______, - _______,_______,_______, - _______,_______, NUMBERS_1, _______, - _______,_______, NUMBERS_2, _______, - _______,_______, NUMBERS_3, _______, - _______,_______, NUMBERS_4, _______ ), - -[_SE] = KM( - _______,_______,_______,_______,_______,_______, - _______,_______,_______,_______,_______,_______, - _______,_______,_______, - _______,_______, SETTINGS_1, _______, - _______,_______, SETTINGS_2, _______, - _______,_______, SETTINGS_3, _______, - _______,_______, SETTINGS_4, _______ ), - -[_MO] = KM( - _______,_______,_______,_______,_______,_______, - _______,_______,_______,_______,_______,_______, - _______,_______,_______, - _______,_______, MOUSE_1, _______, - _______,_______, MOUSE_2, _______, - _______,_______, MOUSE_3, _______, - _______,_______, MOUSE_4, _______ ), - -#ifdef AUDIO_ENABLE -[_MU] = KM( - XXX, XXX, MASK, XXX, - XXX, XXX, MASK, XXX, - XXX, XXX, MASK, XXX, - XXX, XXX, MASK, XXX, - XXX, XXX, MUSIC_4, XXX ), -#endif - +[0] = KM( FKLAVYE ), +[1] = KM( AYARLAR ), }; diff --git a/keyboards/xd75/keymaps/bbaserdem/readme.md b/keyboards/xd75/keymaps/bbaserdem/readme.md index 68a05b0305..f96c8ea976 100644 --- a/keyboards/xd75/keymaps/bbaserdem/readme.md +++ b/keyboards/xd75/keymaps/bbaserdem/readme.md @@ -1,7 +1,9 @@ # XD75RE Setup -This layout is the xd75re layout, inspired by my planck keymap. -Contains some code from the original keymap here, but had to be modded. +(WIP) F keyboard for turkish, using unicode. + +* Write down keymap in userspace +* Figure out LED indicators # Make diff --git a/users/bbaserdem/README.md b/users/bbaserdem/README.md index 2011e74b64..eb8f33d422 100644 --- a/users/bbaserdem/README.md +++ b/users/bbaserdem/README.md @@ -6,6 +6,7 @@ For this purpose, I collected them here. I have the following keymaps: * Gherkin (Does not use the user space) +* XD75RE (Uses different keymap) * Let's Split * Let's Split It Up * Planck @@ -13,37 +14,38 @@ I have the following keymaps: # Layout I use DVORAK with an unorthodox Turkish layout. -If you wanna grab my code, andused a previous layout with a persistent base +If you wanna grab my code, and you used a layout with a persistent base layer change, change it to layer 0 before proceeding. # Layers -* **Dvorak**: Base layer,withdvorak layout. +* **Dvorak**: Base layer,with dvorak layout. * **Alternative**: Has alternate characters. * **Game**: Toggled from *Function*, comfortable for gaming use. * **Numeric**: Has numericals and symbols. Can be locked. * **Function**: Layer has media and function keys. * **Mouse**: Manipulates mouse. Can be locked. -* **Music** Allows playing sounds like a keyboard. +* **Music** Allows playing sounds. # Functionality * **RGB Backlight**: With layer indication, and ability to change base layer lighting mode. -* **Secrets**: By placing a secrets.h, and not tracking it, you can store passwords etc. +* **Secrets**: By placing a secrets.h, and not tracking it, passwords can be stored. * **Mouse**: Mouse emulation, complete with diagonal keys. * **Turkish**: An AltGr-like overlay that allows some non-common letters, in unicode. -I suggest checking out how I enabled shifting for Turkish layer, -how I planned out RGB lighting, and my mouse implementation; they might offer -some insight into fringe user cases. +I suggest checking out how I enabled Turkish keys, +how I planned out RGB lighting, +and my mouse implementation; +they might offer some insight into fringe user cases. # Issues All features are too big for the 32kB bootloader. Offenders are audio and rgb lights; it comes down to one or the other. -~The Proton board, and rev 6 should fix that.~ + +~The Proton board, and rev 6 might fix that.~ # Credits I have previously written my keymap by myself before, but I rewrote it here, -heavily inspired by @drashna's user folder. diff --git a/users/bbaserdem/bbaserdem.c b/users/bbaserdem/bbaserdem.c index 59e5d4ba7e..ac7b1b62e6 100644 --- a/users/bbaserdem/bbaserdem.c +++ b/users/bbaserdem/bbaserdem.c @@ -14,6 +14,12 @@ #include "rgblight.h" #endif +/*-------------*\ +|*---UNICODE---*| +\*-------------*/ +#ifdef UNICODE_ENABLE +#endif + /*-----------------*\ |*-----SECRETS-----*| \*-----------------*/ @@ -61,8 +67,6 @@ __attribute__ ((weak)) void led_set_keymap(uint8_t usb_led) { } /* ----------------------- *\ * -----RGB Functions----- * \* ----------------------- */ - - #ifdef RGBLIGHT_ENABLE // Storage variables extern rgblight_config_t rgblight_config; @@ -106,7 +110,7 @@ void rgblight_colorStatic( int hu, int sa, int va ) { rgblight_mode(1); rgblight_sethsv(hu,sa,va); } -/* HSV values, thank you @drashna! +/* HSV values * white ( 0, 0, 255) * red ( 0, 255, 255) * coral ( 16, 176, 255) @@ -126,16 +130,15 @@ void rgblight_colorStatic( int hu, int sa, int va ) { * magenta (300, 255, 255) * pink (330, 128, 255) */ + // Set RGBLIGHT state depending on layer -void rgblight_change( uint8_t last_layer ) { +void rgblight_change( uint8_t this_layer ) { // Save state, if saving is requested - /* if ( base_sta ) { rgblight_saveBase(); } - */ // Change RGB light - switch ( last_layer ) { + switch ( this_layer ) { case _DV: // Load base layer rgblight_loadBase(); @@ -160,12 +163,10 @@ void rgblight_change( uint8_t last_layer ) { // Do green for mouse rgblight_colorStatic(120,255,255); break; -#ifdef AUDIO_ENABLE case _MU: // Do orange for music rgblight_colorStatic( 39,255,255); break; -#endif default: // Something went wrong rgblight_colorStatic( 0,255,255); @@ -184,7 +185,9 @@ void matrix_init_user (void) { matrix_init_keymap(); // Correct unicode +#ifdef UNICODE_ENABLE set_unicode_input_mode(UC_LNX); +#endif // Make beginning layer DVORAK set_single_persistent_default_layer(_DV); @@ -212,7 +215,6 @@ void matrix_init_user (void) { void matrix_scan_user (void) { // Keymap specific, do it first matrix_scan_keymap(); - // Moved RGB check to layer_state_set_user } /*------------------*\ @@ -227,15 +229,29 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { switch (keycode) { // Secrets implementation - case SECRET1 ... SECRET3: #if (__has_include("secrets.h")) + case SECRET1: if( !record->event.pressed ) { send_string_P( secret[ keycode - SECRET1 ] ); } -#endif return false; break; + case SECRET2: + if( !record->event.pressed ) { + send_string_P( secret[ keycode - SECRET2 ] ); + } + return false; + break; + case SECRET3: + if( !record->event.pressed ) { + send_string_P( secret[ keycode - SECRET3 ] ); + } + return false; + break; +#endif + // If these keys are pressed, load base layer config, and mark saving +#ifdef RGBLIGHT_ENABLE case RGB_TOG: case RGB_MOD: case RGB_VAI: @@ -244,13 +260,12 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { case RGB_SAD: case RGB_HUI: case RGB_HUD: -#ifdef RGBLIGHT_ENABLE if ( !base_sta ) { rgblight_loadBase(); } -#endif return true; break; +#endif // Lock functionality: These layers are locked if the LOCKED buttons are // pressed. Otherwise, they are momentary toggles @@ -261,7 +276,6 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { return false; break; case K_MOUSE: -#ifdef MOUSEKEY_ENABLE if (record->event.pressed) { layer_on(_MO); lock_flag = false; @@ -272,7 +286,6 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { layer_off(_MO); } } -#endif return false; break; case K_NUMBR: @@ -314,7 +327,6 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { return false; break; case MU_TOG: -#ifdef AUDIO_ENABLE if (record->event.pressed) { // On press, turn off layer if active if ( layer == _SE ) { @@ -324,14 +336,13 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { layer_off(_MU); } } -#endif return true; break; //------UNICODE // Unicode switches with sound - case UNI_LI: #ifdef UNICODE_ENABLE + case UNI_LI: if (record->event.pressed) { #ifdef AUDIO_ENABLE stop_all_notes(); @@ -339,11 +350,9 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { #endif set_unicode_input_mode(UC_LNX); } -#endif return false; break; case UNI_WN: -#ifdef UNICODE_ENABLE if (record->event.pressed) { #ifdef AUDIO_ENABLE stop_all_notes(); @@ -351,13 +360,11 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { #endif set_unicode_input_mode(UC_WIN); } -#endif return false; break; // Turkish letters, with capital functionality case TUR_A: -#ifdef UNICODE_ENABLE if (record->event.pressed) { if ( is_capital ) { unicode_input_start(); @@ -369,11 +376,9 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { unicode_input_finish(); } } -#endif return false; break; case TUR_O: -#ifdef UNICODE_ENABLE if (record->event.pressed) { if ( is_capital ) { unicode_input_start(); @@ -385,11 +390,9 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { unicode_input_finish(); } } -#endif return false; break; case TUR_U: -#ifdef UNICODE_ENABLE if (record->event.pressed) { if ( is_capital ) { unicode_input_start(); @@ -401,11 +404,9 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { unicode_input_finish(); } } -#endif return false; break; case TUR_I: -#ifdef UNICODE_ENABLE if (record->event.pressed) { if ( is_capital ) { unicode_input_start(); @@ -417,11 +418,9 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { unicode_input_finish(); } } -#endif return false; break; case TUR_G: -#ifdef UNICODE_ENABLE if (record->event.pressed) { if ( is_capital ) { unicode_input_start(); @@ -433,11 +432,9 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { unicode_input_finish(); } } -#endif return false; break; case TUR_C: -#ifdef UNICODE_ENABLE if (record->event.pressed) { if ( is_capital ) { unicode_input_start(); @@ -449,11 +446,9 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { unicode_input_finish(); } } -#endif return false; break; case TUR_S: -#ifdef UNICODE_ENABLE if (record->event.pressed) { if ( is_capital ) { unicode_input_start(); @@ -465,13 +460,13 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { unicode_input_finish(); } } -#endif return false; break; +#endif //-------Diagonal mouse movements - case MO_NE: #ifdef MOUSEKEY_ENABLE + case MO_NE: if( record->event.pressed ) { mousekey_on(MO_N); mousekey_on(MO_E); @@ -481,11 +476,9 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { mousekey_off(MO_E); mousekey_send(); } -#endif return false; break; case MO_NW: -#ifdef MOUSEKEY_ENABLE if( record->event.pressed ) { mousekey_on(MO_N); mousekey_on(MO_W); @@ -495,11 +488,9 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { mousekey_off(MO_W); mousekey_send(); } -#endif return false; break; case MO_SE: -#ifdef MOUSEKEY_ENABLE if( record->event.pressed ) { mousekey_on(MO_S); mousekey_on(MO_E); @@ -509,11 +500,9 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { mousekey_off(MO_E); mousekey_send(); } -#endif return false; break; case MO_SW: -#ifdef MOUSEKEY_ENABLE if( record->event.pressed ) { mousekey_on(MO_S); mousekey_on(MO_W); @@ -523,11 +512,9 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { mousekey_off(MO_W); mousekey_send(); } -#endif return false; break; case MO_S_NE: -#ifdef MOUSEKEY_ENABLE if( record->event.pressed ) { mousekey_on(MO_S_N); mousekey_on(MO_S_E); @@ -537,11 +524,9 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { mousekey_off(MO_S_E); mousekey_send(); } -#endif return false; break; case MO_S_NW: -#ifdef MOUSEKEY_ENABLE if( record->event.pressed ) { mousekey_on(MO_S_N); mousekey_on(MO_S_W); @@ -551,11 +536,9 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { mousekey_off(MO_S_W); mousekey_send(); } -#endif return false; break; case MO_S_SE: -#ifdef MOUSEKEY_ENABLE if( record->event.pressed ) { mousekey_on(MO_S_S); mousekey_on(MO_S_E); @@ -565,11 +548,9 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { mousekey_off(MO_S_E); mousekey_send(); } -#endif return false; break; case MO_S_SW: -#ifdef MOUSEKEY_ENABLE if( record->event.pressed ) { mousekey_on(MO_S_S); mousekey_on(MO_S_W); @@ -579,9 +560,10 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { mousekey_off(MO_S_W); mousekey_send(); } -#endif return false; break; +#endif + //------DOUBLE PRESS, with added left navigation case DBL_SPC: if( record->event.pressed ) { |