Compare commits

...

7 Commits

Author SHA1 Message Date
Chaser Huang
e7c6090be2
Merge b0fbc8a5a3 into 859dab864a 2024-11-23 11:11:05 -08:00
Joel Challis
859dab864a
Remove keyboard use of eeconfig_read_default_layer (#24635) 2024-11-23 17:43:45 +00:00
Dasky
1f7d10902a
Add pointing tests (#24513) 2024-11-23 16:34:32 +00:00
Ryan
d189de24a0
Simple Python script to show polling rate (#24622) 2024-11-23 14:07:18 +00:00
Joel Challis
e4e015c0c8
Update keymaps to use PDF keycode (#24633) 2024-11-23 13:35:34 +00:00
Chaser Huang
b0fbc8a5a3 Better option macro name and lint changes 2024-09-21 16:42:22 -04:00
Chaser Huang
3f42efb60d feat: add option to keep layer state when recording dynamic macros 2024-09-20 17:29:07 -04:00
112 changed files with 1330 additions and 1741 deletions

View File

@ -21,8 +21,10 @@ $(TEST_OUTPUT)_SRC := \
$(SRC) \
$(QUANTUM_PATH)/keymap_introspection.c \
tests/test_common/matrix.c \
tests/test_common/pointing_device_driver.c \
tests/test_common/test_driver.cpp \
tests/test_common/keyboard_report_util.cpp \
tests/test_common/mouse_report_util.cpp \
tests/test_common/keycode_util.cpp \
tests/test_common/keycode_table.cpp \
tests/test_common/test_fixture.cpp \

View File

@ -32,12 +32,13 @@ For the details about the internals of the dynamic macros, please read the comme
There are a number of options added that should allow some additional degree of customization
|Define |Default |Description |
|----------------------------|----------------|-----------------------------------------------------------------------------------------------------------------|
|`DYNAMIC_MACRO_SIZE` |128 |Sets the amount of memory that Dynamic Macros can use. This is a limited resource, dependent on the controller. |
|`DYNAMIC_MACRO_USER_CALL` |*Not defined* |Defining this falls back to using the user `keymap.c` file to trigger the macro behavior. |
|`DYNAMIC_MACRO_NO_NESTING` |*Not Defined* |Defining this disables the ability to call a macro from another macro (nested macros). |
|`DYNAMIC_MACRO_DELAY` |*Not Defined* |Sets the waiting time (ms unit) when sending each key. |
|Define |Default |Description |
|------------------------------------------|----------------|-----------------------------------------------------------------------------------------------------------------|
|`DYNAMIC_MACRO_SIZE` |128 |Sets the amount of memory that Dynamic Macros can use. This is a limited resource, dependent on the controller. |
|`DYNAMIC_MACRO_USER_CALL` |*Not defined* |Defining this falls back to using the user `keymap.c` file to trigger the macro behavior. |
|`DYNAMIC_MACRO_NO_NESTING` |*Not Defined* |Defining this disables the ability to call a macro from another macro (nested macros). |
|`DYNAMIC_MACRO_DELAY` |*Not Defined* |Sets the waiting time (ms unit) when sending each key. |
|`DYNAMIC_MACRO_KEEP_ORIGINAL_LAYER_STATE` |*Not Defined* |Defining this keeps the layer state when starting to record a macro |
If the LEDs start blinking during the recording with each keypress, it means there is no more space for the macro in the macro buffer. To fit the macro in, either make the other macro shorter (they share the same buffer) or increase the buffer size by adding the `DYNAMIC_MACRO_SIZE` define in your `config.h` (default value: 128; please read the comments for it in the header).

View File

@ -23,10 +23,7 @@ enum layer_number {
};
enum custom_keycodes {
QWERTY = SAFE_RANGE,
COLEMAK,
DVORAK,
LOWER,
LOWER = SAFE_RANGE,
RAISE,
ADJUST,
BACKLIT,
@ -35,12 +32,9 @@ enum custom_keycodes {
RGBRST
};
enum macro_keycodes {
KC_SAMPLEMACRO,
};
//Macros
#define M_SAMPLE M(KC_SAMPLEMACRO)
#define QWERTY PDF(_QWERTY)
#define COLEMAK PDF(_COLEMAK)
#define DVORAK PDF(_DVORAK)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Qwerty
@ -169,25 +163,6 @@ void update_tri_layer_RGB(uint8_t layer1, uint8_t layer2, uint8_t layer3) {
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
break;
case COLEMAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLEMAK);
}
return false;
break;
case DVORAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_DVORAK);
}
return false;
break;
case LOWER:
if (record->event.pressed) {
//not sure how to have keyboard check mode and set it to a variable, so my work around

View File

@ -13,16 +13,14 @@ enum layer_names {
_ADJUST
};
enum custom_keycodes {
QWERTY = SAFE_RANGE,
COLEMAK,
DVORAK,
};
#define LOWER MO(_LOWER)
#define RAISE MO(_RAISE)
#define ADJUST MO(_ADJUST)
#define QWERTY PDF(_QWERTY)
#define COLEMAK PDF(_COLEMAK)
#define DVORAK PDF(_DVORAK)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Qwerty
* ,-----------------------------------------------------------------------------------.
@ -138,24 +136,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
layer_state_t layer_state_set_user(layer_state_t state) {
return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
}
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
case COLEMAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLEMAK);
}
return false;
case DVORAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_DVORAK);
}
return false;
}
return true;
}

View File

@ -23,9 +23,7 @@ enum sofle_layers {
};
enum custom_keycodes {
KC_QWERTY = SAFE_RANGE,
KC_COLEMAK,
KC_LOWER,
KC_LOWER = SAFE_RANGE,
KC_RAISE,
KC_ADJUST,
KC_PRVWD,
@ -35,6 +33,9 @@ enum custom_keycodes {
KC_DLINE
};
#define KC_QWERTY PDF(_QWERTY)
#define KC_COLEMAK PDF(_COLEMAK)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_QWERTY] = LAYOUT(
@ -148,16 +149,6 @@ bool oled_task_user(void) {
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case KC_QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
case KC_COLEMAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLEMAK);
}
return false;
case KC_LOWER:
if (record->event.pressed) {
layer_on(_LOWER);

View File

@ -12,12 +12,9 @@ enum layers {
#define FN1_CAPS LT(_FN1, KC_CAPS)
//custom keycode enums
enum custom_keycodes {
BASE_QWER = QK_USER,
BASE_COLE,
BASE_DVOR
};
#define BASE_QWER PDF(_QWER)
#define BASE_COLE PDF(_COLE)
#define BASE_DVOR PDF(_DVOR)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_QWER] = LAYOUT(
@ -67,37 +64,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
),
*/
};
// macros to allow the user to set whatever default layer they want, even after reboot
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case BASE_QWER:
if (record->event.pressed) {
// when keycode BASE_QWER is pressed
set_single_persistent_default_layer(_QWER);
} else {
// when keycode BASE_QWER is released
}
break;
case BASE_COLE:
if (record->event.pressed) {
// when keycode BASE_COLE is pressed
set_single_persistent_default_layer(_COLE);
} else {
// when keycode BASE_COLE is released
}
break;
case BASE_DVOR:
if (record->event.pressed) {
// when keycode BASE_DVOR is pressed
set_single_persistent_default_layer(_DVOR);
} else {
// when keycode BASE_DVOR is released
}
break;
}
return true;
};

View File

@ -12,12 +12,9 @@ enum layers {
#define FN1_CAPS LT(_FN1, KC_CAPS)
//custom keycode enums
enum custom_keycodes {
BASE_QWER = QK_USER,
BASE_COLE,
BASE_DVOR
};
#define BASE_QWER PDF(_QWER)
#define BASE_COLE PDF(_COLE)
#define BASE_DVOR PDF(_DVOR)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_QWER] = LAYOUT_83_ansi(
@ -67,37 +64,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
),
*/
};
// macros to allow the user to set whatever default layer they want, even after reboot
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case BASE_QWER:
if (record->event.pressed) {
// when keycode BASE_QWER is pressed
set_single_persistent_default_layer(_QWER);
} else {
// when keycode BASE_QWER is released
}
break;
case BASE_COLE:
if (record->event.pressed) {
// when keycode BASE_COLE is pressed
set_single_persistent_default_layer(_COLE);
} else {
// when keycode BASE_COLE is released
}
break;
case BASE_DVOR:
if (record->event.pressed) {
// when keycode BASE_DVOR is pressed
set_single_persistent_default_layer(_DVOR);
} else {
// when keycode BASE_DVOR is released
}
break;
}
return true;
};

View File

@ -12,12 +12,9 @@ enum layers {
#define FN1_CAPS LT(_FN1, KC_CAPS)
//custom keycode enums
enum custom_keycodes {
BASE_QWER = QK_USER,
BASE_COLE,
BASE_DVOR
};
#define BASE_QWER PDF(_QWER)
#define BASE_COLE PDF(_COLE)
#define BASE_DVOR PDF(_DVOR)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_QWER] = LAYOUT_84_iso(
@ -67,37 +64,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
),
*/
};
//macros to allow the user to set whatever default layer they want, even after reboot
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case BASE_QWER:
if (record->event.pressed) {
// when keycode BASE_QWER is pressed
set_single_persistent_default_layer(_QWER);
} else {
// when keycode BASE_QWER is released
}
break;
case BASE_COLE:
if (record->event.pressed) {
// when keycode BASE_COLE is pressed
set_single_persistent_default_layer(_COLE);
} else {
// when keycode BASE_COLE is released
}
break;
case BASE_DVOR:
if (record->event.pressed) {
// when keycode BASE_DVOR is pressed
set_single_persistent_default_layer(_DVOR);
} else {
// when keycode BASE_DVOR is released
}
break;
}
return true;
};

View File

@ -12,12 +12,9 @@ enum layers {
#define FN1_CAPS LT(_FN1, KC_CAPS)
//custom keycode enums
enum custom_keycodes {
BASE_QWER = QK_USER,
BASE_COLE,
BASE_DVOR
};
#define BASE_QWER PDF(_QWER)
#define BASE_COLE PDF(_COLE)
#define BASE_DVOR PDF(_DVOR)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_QWER] = LAYOUT_83_ansi(
@ -67,26 +64,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
),
*/
};
// Macros to allow the user to set whatever default layer they want, even after reboot
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case BASE_QWER:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWER);
}
break;
case BASE_COLE:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLE);
}
break;
case BASE_DVOR:
if (record->event.pressed) {
set_single_persistent_default_layer(_DVOR);
}
break;
}
return true;
};

View File

@ -12,12 +12,9 @@ enum layers {
#define FN1_CAPS LT(_FN1, KC_CAPS)
//custom keycode enums
enum custom_keycodes {
BASE_QWER = QK_USER,
BASE_COLE,
BASE_DVOR
};
#define BASE_QWER PDF(_QWER)
#define BASE_COLE PDF(_COLE)
#define BASE_DVOR PDF(_DVOR)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_QWER] = LAYOUT_84_iso(
@ -67,26 +64,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
),
*/
};
// Macros to allow the user to set whatever default layer they want, even after reboot
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case BASE_QWER:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWER);
}
break;
case BASE_COLE:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLE);
}
break;
case BASE_DVOR:
if (record->event.pressed) {
set_single_persistent_default_layer(_DVOR);
}
break;
}
return true;
};

View File

@ -24,11 +24,9 @@ enum layers {
_L3,
};
enum custom_keycodes {
DVORAK = SAFE_RANGE,
QWERTY,
COLEMAK
};
#define QWERTY PDF(_QW)
#define DVORAK PDF(_DV)
#define COLEMAK PDF(_CM)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_QW] = LAYOUT( /* Qwerty */
@ -68,26 +66,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
_______, KC_LSFT, KC_B, KC_SPC, KC_C, _______, _______, _______
)
};
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch(keycode) {
case DVORAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_DV);
}
return false;
case QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QW);
}
return false;
case COLEMAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_CM);
}
return false;
default:
return true;
}
return true;
};

View File

@ -28,16 +28,17 @@ enum planck_layers {
};
enum planck_keycodes {
QWERTY = SAFE_RANGE,
COLEMAK,
DVORAK,
PLOVER,
PLOVER = SAFE_RANGE,
LOWER,
RAISE,
BACKLIT,
EXT_PLV
};
#define QWERTY PDF(_QWERTY)
#define COLEMAK PDF(_COLEMAK)
#define DVORAK PDF(_DVORAK)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Qwerty
@ -177,25 +178,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
print("mode just switched to qwerty and this is a huge string\n");
set_single_persistent_default_layer(_QWERTY);
}
return false;
break;
case COLEMAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLEMAK);
}
return false;
break;
case DVORAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_DVORAK);
}
return false;
break;
case LOWER:
if (record->event.pressed) {
layer_on(_LOWER);

View File

@ -18,16 +18,13 @@
// Defines names for use in layer keycodes and the keymap
enum layer_names { _QWERTY, _COLEMAK, _DVORAK, _LOWER, _RAISE, _ADJUST };
enum layer_keycodes {
QWERTY = SAFE_RANGE,
COLEMAK,
DVORAK,
};
// Defines the keycodes used by our macros in process_record_user
#define LOWER MO(_LOWER)
#define RAISE MO(_RAISE)
#define QWERTY PDF(_QWERTY)
#define COLEMAK PDF(_COLEMAK)
#define DVORAK PDF(_DVORAK)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* BASE
* ,-----------------------------------------------------------------------------------.
@ -163,25 +160,3 @@ layer_state_t layer_state_set_user(layer_state_t state) {
state = update_tri_layer_state(state, _RAISE, _LOWER, _ADJUST);
return state;
}
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
print("mode just switched to qwerty and this is a huge string\n");
set_single_persistent_default_layer(_QWERTY);
}
return false;
case COLEMAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLEMAK);
}
return false;
case DVORAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_DVORAK);
}
return false;
}
return true;
}

View File

@ -28,10 +28,7 @@ enum plaid_layers {
};
enum plaid_keycodes {
QWERTY = SAFE_RANGE,
COLEMAK,
DVORAK,
PLOVER,
PLOVER = SAFE_RANGE,
EXT_PLV,
LED_1,
LED_2,
@ -48,6 +45,10 @@ enum plaid_keycodes {
#define LOWER MO(_LOWER)
#define RAISE MO(_RAISE)
#define QWERTY PDF(_QWERTY)
#define COLEMAK PDF(_COLEMAK)
#define DVORAK PDF(_DVORAK)
// array of keys considered modifiers for led purposes
const uint16_t modifiers[] = {
KC_LCTL,
@ -301,25 +302,6 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
led_keypress_update(LED_GREEN, led_config.green_mode, keycode, record);
}
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
print("mode just switched to qwerty and this is a huge string\n");
set_single_persistent_default_layer(_QWERTY);
}
return false;
break;
case COLEMAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLEMAK);
}
return false;
break;
case DVORAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_DVORAK);
}
return false;
break;
case PLOVER:
if (record->event.pressed) {
layer_off(_RAISE);

View File

@ -9,8 +9,7 @@ enum layer_names {
};
enum custom_keycodes {
QWERTY = SAFE_RANGE,
LOWER,
LOWER = SAFE_RANGE,
RAISE,
ADJUST,
};
@ -58,23 +57,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
};
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
#ifdef AUDIO_ENABLE
PLAY_SONG(tone_qwerty);
#endif
set_single_persistent_default_layer(_QWERTY);
}
return false;
break;
case LOWER:
if (record->event.pressed) {
layer_on(_LOWER);

View File

@ -14,18 +14,13 @@ enum my_layers {
_ADJUST
};
enum custom_keycodes {
QWERTY = SAFE_RANGE,
COLEMAK,
DVORAK,
LOWER,
RAISE,
ADJUST,
};
#define LOWER MO(_LOWER)
#define RAISE MO(_RAISE)
#define QWERTY PDF(_QWERTY)
#define COLEMAK PDF(_COLEMAK)
#define DVORAK PDF(_DVORAK)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Qwerty
@ -160,24 +155,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
layer_state_t layer_state_set_user(layer_state_t state) {
return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
}
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
case COLEMAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLEMAK);
}
return false;
case DVORAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_DVORAK);
}
return false;
}
return true;
}

View File

@ -28,14 +28,15 @@ enum preonic_layers {
};
enum preonic_keycodes {
QWERTY = SAFE_RANGE,
COLEMAK,
DVORAK,
LOWER,
LOWER = SAFE_RANGE,
RAISE,
BACKLIT
};
#define QWERTY PDF(_QWERTY)
#define COLEMAK PDF(_COLEMAK)
#define DVORAK PDF(_DVORAK)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Qwerty
@ -169,24 +170,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
break;
case COLEMAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLEMAK);
}
return false;
break;
case DVORAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_DVORAK);
}
return false;
break;
case LOWER:
if (record->event.pressed) {
layer_on(_LOWER);

View File

@ -16,10 +16,7 @@ extern rgblight_config_t rgblight_config;
#define _ADJUST 6
enum preonic_keycodes {
QWERTY = SAFE_RANGE,
COLEMAK,
DVORAK,
LOWER,
LOWER = SAFE_RANGE,
RAISE,
BACKLIT,
RGBLED_TOGGLE,
@ -42,6 +39,9 @@ enum preonic_keycodes {
#define LT_MC(kc) LT(_MOUSECURSOR, kc) // L-ayer T-ap M-ouse C-ursor
#define LT_RAI(kc) LT(_RAISE, kc) // L-ayer T-ap to Raise
#define QWERTY PDF(_QWERTY)
#define COLEMAK PDF(_COLEMAK)
#define DVORAK PDF(_DVORAK)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
@ -213,18 +213,6 @@ void update_tri_layer_RGB(uint8_t layer1, uint8_t layer2, uint8_t layer3) {
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
break;
case COLEMAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLEMAK);
}
return false;
break;
case LOWER:
if (record->event.pressed) {
//not sure how to have keyboard check mode and set it to a variable, so my work around

View File

@ -16,10 +16,7 @@ extern rgblight_config_t rgblight_config;
#define _ADJUST 6
enum preonic_keycodes {
QWERTY = SAFE_RANGE,
COLEMAK,
DVORAK,
LOWER,
LOWER = SAFE_RANGE,
RAISE,
BACKLIT,
RGBLED_TOGGLE,
@ -181,7 +178,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* |------+------+------+------+------+------+------+------+------+------+------+------+--------------------.
* | |RGB TG|RGB ST|RGBH -|RGBH +|RGBS -|RGBS +|RGBV -|RGBV +| | | Del | | | |
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------+------|
* | | | |Aud on|Audoff|AGnorm|AGswap|Qwerty| | | | | | | |
* | | | |Aud on|Audoff|AGnorm|AGswap| | | | | | | | |
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------+------|
* | |Voice-|Voice+|Mus on|Musoff|MIDIon|MIDIof| | BL + |BL ST |BLSTEP| BL TG| | | |
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------+------|
@ -191,7 +188,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_ADJUST] = LAYOUT(
QK_BOOT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_VOLD, KC_VOLU, KC_MUTE,
_______, UG_TOGG, UG_NEXT, UG_HUEU, UG_HUED, UG_SATU, UG_SATD, UG_VALU, UG_VALD, _______, _______, KC_DEL, _______, _______, _______,
_______, _______, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, _______, _______, _______, _______, _______, _______, _______, _______,
_______, AU_PREV, AU_NEXT, MU_ON, MU_OFF, MI_ON, MI_OFF, _______, BL_DOWN, BL_UP, BL_STEP, BL_TOGG, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
)
@ -218,12 +215,6 @@ void update_tri_layer_RGB(uint8_t layer1, uint8_t layer2, uint8_t layer3) {
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
break;
case LOWER:
if (record->event.pressed) {
//not sure how to have keyboard check mode and set it to a variable, so my work around

View File

@ -13,10 +13,7 @@
#define _ADJUST 6
enum preonic_keycodes {
QWERTY = SAFE_RANGE,
COLEMAK,
DVORAK,
LOWER,
LOWER = SAFE_RANGE,
RAISE,
BACKLIT,
RGBLED_TOGGLE,
@ -39,6 +36,10 @@ enum preonic_keycodes {
#define LT_MC(kc) LT(_MOUSECURSOR, kc) // L-ayer T-ap M-ouse C-ursor
#define LT_RAI(kc) LT(_RAISE, kc) // L-ayer T-ap to Raise
#define QWERTY PDF(_QWERTY)
#define COLEMAK PDF(_COLEMAK)
#define DVORAK PDF(_DVORAK)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Qwerty
@ -200,18 +201,6 @@ layer_state_t layer_state_set_user(layer_state_t state) {
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
break;
case COLEMAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLEMAK);
}
return false;
break;
case LOWER:
if (record->event.pressed) {
//not sure how to have keyboard check mode and set it to a variable, so my work around

View File

@ -48,15 +48,14 @@ enum custom_layer {
};
enum custom_keycodes {
QWERTY = SAFE_RANGE,
ALT,
CTRL,
LOWER,
LOWER = SAFE_RANGE,
RAISE,
MOUSE,
ADJUST
};
#define QWERTY PDF(_QWERTY)
#define MOUSE PDF(_MOUSE)
// TAP DANCE ***********************************************************
//Tap Dance Declarations
enum {
@ -569,12 +568,6 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
return false;
}
return true;
case QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
break;
case LOWER:
if (record->event.pressed) {
layer_on(_LOWER);
@ -584,7 +577,6 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
update_tri_layer(_LOWER, _RAISE, _ADJUST);
}
return false;
break;
case RAISE:
if (record->event.pressed) {
layer_on(_RAISE);
@ -594,13 +586,6 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
update_tri_layer(_LOWER, _RAISE, _ADJUST);
}
return false;
break;
case MOUSE:
if (record->event.pressed) {
set_single_persistent_default_layer(_MOUSE);
}
return false;
break;
}
return true;
};

View File

@ -30,10 +30,7 @@ enum custom_layer {
};
enum custom_keycodes {
QWERTY = SAFE_RANGE,
COLEMAK,
DVORAK,
LOWER,
LOWER = SAFE_RANGE,
RAISE,
BACKLIT
};
@ -189,7 +186,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
* | | | | Reset| | | | | | | | | | Del |
* |------+------+------+------+------+------+------+-------------+------+------+------+------+------|
* | | | | | |Audoff|Aud on|AGnorm|AGswap|Qwerty|Colemk|Dvorak| | |
* | | | | | |Audoff|Aud on|AGnorm|AGswap| | | | | |
* |------+------+------+------+------+------+------+------|------+------+------+------+------+------|
* | | | |Voice-|Voice+|Musoff|Mus on| | | | | | | |
* |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
@ -199,7 +196,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_ADJUST] = LAYOUT(
_______, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_DEL,
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, XXXXXXX, XXXXXXX, XXXXXXX, _______,
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, AU_ON, AU_OFF, AG_NORM, AG_SWAP, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______,
XXXXXXX, XXXXXXX, XXXXXXX, AU_PREV, AU_NEXT, MU_ON, MU_OFF, MI_ON, MI_OFF, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
XXXXXXX, _______, _______, _______, _______, _______, _______, _______,_______,_______, _______, _______
)
@ -209,15 +206,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
#ifdef AUDIO_ENABLE
PLAY_SONG(tone_qwerty);
#endif
set_single_persistent_default_layer(_QWERTY);
}
return false;
break;
case LOWER:
if (record->event.pressed) {
layer_on(_LOWER);

View File

@ -47,15 +47,14 @@ enum custom_layer {
};
enum custom_keycodes {
QWERTY = SAFE_RANGE,
ALT,
CTRL,
LOWER,
LOWER = SAFE_RANGE,
RAISE,
MOUSE,
ADJUST
};
#define QWERTY PDF(_QWERTY)
#define MOUSE PDF(_MOUSE)
// TAP DANCE ***********************************************************
//Tap Dance Declarations
enum {
@ -499,12 +498,6 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
return false;
}
return true;
case QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
break;
case LOWER:
if (record->event.pressed) {
layer_on(_LOWER);
@ -514,7 +507,6 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
update_tri_layer(_LOWER, _RAISE, _ADJUST);
}
return false;
break;
case RAISE:
if (record->event.pressed) {
layer_on(_RAISE);
@ -524,13 +516,6 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
update_tri_layer(_LOWER, _RAISE, _ADJUST);
}
return false;
break;
case MOUSE:
if (record->event.pressed) {
set_single_persistent_default_layer(_MOUSE);
}
return false;
break;
}
return true;
};

View File

@ -27,16 +27,17 @@ enum ortho_brass_layers {
};
enum ortho_brass_keycodes {
QWERTY = SAFE_RANGE,
COLEMAK,
DVORAK,
PLOVER,
PLOVER = SAFE_RANGE,
EXT_PLV
};
#define LOWER MO(_LOWER)
#define RAISE MO(_RAISE)
#define QWERTY PDF(_QWERTY)
#define COLEMAK PDF(_COLEMAK)
#define DVORAK PDF(_DVORAK)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Qwerty
@ -172,24 +173,6 @@ layer_state_t layer_state_set_user(layer_state_t state) { return update_tri_laye
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
break;
case COLEMAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLEMAK);
}
return false;
break;
case DVORAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_DVORAK);
}
return false;
break;
case PLOVER:
if (record->event.pressed) {
layer_off(_RAISE);

View File

@ -27,15 +27,16 @@ enum preonic_layers {
};
enum preonic_keycodes {
QWERTY = SAFE_RANGE,
COLEMAK,
DVORAK,
BACKLIT
BACKLIT = SAFE_RANGE,
};
#define LOWER MO(_LOWER)
#define RAISE MO(_RAISE)
#define QWERTY PDF(_QWERTY)
#define COLEMAK PDF(_COLEMAK)
#define DVORAK PDF(_DVORAK)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Qwerty
@ -172,24 +173,6 @@ layer_state_t layer_state_set_user(layer_state_t state) {
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
break;
case COLEMAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLEMAK);
}
return false;
break;
case DVORAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_DVORAK);
}
return false;
break;
case BACKLIT:
if (record->event.pressed) {
register_code(keycode_config(KC_LGUI));
@ -200,7 +183,6 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
unregister_code(keycode_config(KC_LGUI));
}
return false;
break;
}
return true;
};

View File

@ -27,15 +27,16 @@ enum layer_names {
};
enum custom_keycodes {
QWERTY = SAFE_RANGE,
COLEMAK,
DVORAK,
BACKLIT
BACKLIT = SAFE_RANGE,
};
#define LOWER MO(_LOWER)
#define RAISE MO(_RAISE)
#define QWERTY PDF(_QWERTY)
#define COLEMAK PDF(_COLEMAK)
#define DVORAK PDF(_DVORAK)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Qwerty
@ -172,24 +173,6 @@ layer_state_t layer_state_set_user(layer_state_t state) {
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
break;
case COLEMAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLEMAK);
}
return false;
break;
case DVORAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_DVORAK);
}
return false;
break;
case BACKLIT:
if (record->event.pressed) {
register_code(keycode_config(KC_LGUI));
@ -200,7 +183,6 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
unregister_code(keycode_config(KC_LGUI));
}
return false;
break;
}
return true;
};

View File

@ -26,13 +26,14 @@ enum layers {
};
enum keycodes {
QWERTY = SAFE_RANGE,
COLEMAK,
DVORAK,
LOWER,
LOWER = SAFE_RANGE,
RAISE,
};
#define QWERTY PDF(_QWERTY)
#define COLEMAK PDF(_COLEMAK)
#define DVORAK PDF(_DVORAK)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Qwerty
@ -164,24 +165,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
break;
case COLEMAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLEMAK);
}
return false;
break;
case DVORAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_DVORAK);
}
return false;
break;
case LOWER:
if (record->event.pressed) {
layer_on(_LOWER);

View File

@ -29,13 +29,14 @@ enum layer_names {
};
enum custom_keycodes {
QWERTY = SAFE_RANGE,
COLEMAK,
DVORAK,
PLOVER,
PLOVER = SAFE_RANGE,
EXT_PLV
};
#define QWERTY PDF(_QWERTY)
#define COLEMAK PDF(_COLEMAK)
#define DVORAK PDF(_DVORAK)
#define ST_BOLT QK_STENO_BOLT
#define ST_GEM QK_STENO_GEMINI
@ -195,21 +196,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
case COLEMAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLEMAK);
}
return false;
case DVORAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_DVORAK);
}
return false;
case PLOVER:
if (!record->event.pressed) {
layer_on(_PLOVER);

View File

@ -33,10 +33,7 @@ enum terminus_mini_layers {
};
enum terminus_mini_keycodes {
COLEMAK = SAFE_RANGE,
QWERTY,
DVORAK,
LOWER,
LOWER = SAFE_RANGE,
RAISE,
FUNCTION,
MOUSE,
@ -48,6 +45,10 @@ enum terminus_mini_keycodes {
#define SPC_LW LT(_LOWER, KC_SPC)
#define ENT_RS LT(_RAISE, KC_ENT)
#define QWERTY PDF(_QWERTY)
#define COLEMAK PDF(_COLEMAK)
#define DVORAK PDF(_DVORAK)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Colemak -
* ,----------------------------------------------------------------------------------.
@ -204,24 +205,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
// Cases to switch default layer to QWERTY, COLEMAK or DVORAK and to access ADJUST layer
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
break;
case COLEMAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLEMAK);
}
return false;
break;
case DVORAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_DVORAK);
}
return false;
break;
case LOWER:
if (record->event.pressed) {
layer_on(_LOWER);

View File

@ -8,14 +8,12 @@ enum layer_names {
_ADJUST,
};
enum custom_keycodes {
QWERTY = SAFE_RANGE,
COLEMAK,
};
#define LOWER MO(_LOWER)
#define RAISE MO(_RAISE)
#define QWERTY PDF(_QWERTY)
#define COLEMAK PDF(_COLEMAK)
// Each layer gets a name for readability, which is then used in the keymap matrix below.
// The underscores don't mean anything - you can have a layer called STUFF or any other name.
// Layer names don't all need to be of the same length, obviously, and you can also skip them
@ -65,19 +63,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
layer_state_t layer_state_set_user(layer_state_t state) {
return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
}
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
case COLEMAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLEMAK);
}
return false;
}
return true;
}

View File

@ -11,16 +11,14 @@ enum jian_layers {
_BCKLT_ADJ
};
enum jian_keycodes {
QWERTY = SAFE_RANGE,
DVORAK,
COLEMAK,
WORKMAN
};
#define RAISE_T(kc) LT(_RAISE, kc)
#define LOWER_T(kc) LT(_LOWER, kc)
#define QWERTY PDF(_QWERTY)
#define COLEMAK PDF(_COLEMAK)
#define DVORAK PDF(_DVORAK)
#define WORKMAN PDF(_WORKMAN)
#ifdef SWAP_HANDS_ENABLE
#define SW_TG SH_TOGG
#else
@ -92,29 +90,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
layer_state_t layer_state_set_user(layer_state_t state) {
return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
}
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
case DVORAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_DVORAK);
}
return false;
case COLEMAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLEMAK);
}
return false;
case WORKMAN:
if (record->event.pressed) {
set_single_persistent_default_layer(_WORKMAN);
}
return false;
}
return true;
}

View File

@ -63,12 +63,6 @@ uint16_t get_tapping_term(uint16_t keycode, keyrecord_t *record) {
}
}
// Defines the keycodes used by our macros in process_record_user
enum custom_keycodes {
MAC = SAFE_RANGE,
WIN,
};
// Key Macro
#define ESC_NUM TD(TD_ESC_NUM)
#define S_CAP TD(TD_LSFT_CAPS)
@ -82,7 +76,8 @@ enum custom_keycodes {
#define ALT_GRV LALT(KC_GRV)
#define LOWER MO(_LOWER)
#define NUM TG(_NUM)
#define MAC PDF(_MAC)
#define WIN PDF(_WIN)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_MAC] = LAYOUT_jp(
@ -146,26 +141,6 @@ const uint8_t music_map[MATRIX_ROWS][MATRIX_COLS] = LAYOUT_jp(
);
#endif
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case MAC: // Change default ayer --> Write to EEPROM
if (record->event.pressed) {
set_single_persistent_default_layer(_MAC);
}
return false;
break;
case WIN: // Change default ayer --> Write to EEPROM
if (record->event.pressed) {
set_single_persistent_default_layer(_WIN);
}
return false;
break;
default:
break;
}
return true;
}
//------------------------------------------------------------------------------
// RGB Light settings
#ifdef RGBLIGHT_LAYERS

View File

@ -62,12 +62,6 @@ uint16_t get_tapping_term(uint16_t keycode, keyrecord_t *record) {
}
}
// Defines the keycodes used by our macros in process_record_user
enum custom_keycodes {
MAC = SAFE_RANGE,
WIN,
};
// Key Macro
#define ESC_NUM TD(TD_ESC_NUM)
#define S_CAP TD(TD_LSFT_CAPS)
@ -80,7 +74,8 @@ enum custom_keycodes {
#define ALT_GRV LALT(KC_GRV)
#define LOWER MO(_LOWER)
#define NUM TG(_NUM)
#define MAC PDF(_MAC)
#define WIN PDF(_WIN)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_MAC] = LAYOUT_ansi(
@ -134,26 +129,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
)
};
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case MAC: // Change default ayer --> Write to EEPROM
if (record->event.pressed) {
set_single_persistent_default_layer(_MAC);
}
return false;
break;
case WIN: // Change default ayer --> Write to EEPROM
if (record->event.pressed) {
set_single_persistent_default_layer(_WIN);
}
return false;
break;
default:
break;
}
return true;
}
//------------------------------------------------------------------------------
// RGB Light settings
#ifdef RGBLIGHT_LAYERS

View File

@ -63,12 +63,6 @@ uint16_t get_tapping_term(uint16_t keycode, keyrecord_t *record) {
}
}
// Defines the keycodes used by our macros in process_record_user
enum custom_keycodes {
MAC = SAFE_RANGE,
WIN,
};
// Key Macro
#define ESC_NUM TD(TD_ESC_NUM)
#define S_CAP TD(TD_LSFT_CAPS)
@ -82,7 +76,8 @@ enum custom_keycodes {
#define ALT_GRV LALT(KC_GRV)
#define LOWER MO(_LOWER)
#define NUM TG(_NUM)
#define MAC PDF(_MAC)
#define WIN PDF(_WIN)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_MAC] = LAYOUT_jp(
@ -136,26 +131,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
)
};
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case MAC: // Change default ayer --> Write to EEPROM
if (record->event.pressed) {
set_single_persistent_default_layer(_MAC);
}
return false;
break;
case WIN: // Change default ayer --> Write to EEPROM
if (record->event.pressed) {
set_single_persistent_default_layer(_WIN);
}
return false;
break;
default:
break;
}
return true;
}
//------------------------------------------------------------------------------
// RGB Light settings
#ifdef RGBLIGHT_LAYERS

View File

@ -19,13 +19,14 @@
enum layer_number { _QWERTY = 0, _COLEMAK, _DVORAK, _LOWER, _RAISE, _ADJUST };
// Defines the keycodes used by our macros in process_record_user
enum custom_keycodes { QWERTY = SAFE_RANGE, COLEMAK, DVORAK };
#define LOWER MO(_LOWER)
#define RAISE MO(_RAISE)
#define ADJUST MO(_ADJUST)
#define QWERTY PDF(_QWERTY)
#define COLEMAK PDF(_COLEMAK)
#define DVORAK PDF(_DVORAK)
// clang-format off
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Qwerty
@ -141,27 +142,6 @@ layer_state_t layer_state_set_user(layer_state_t state) {
return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
}
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
case COLEMAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLEMAK);
}
return false;
case DVORAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_DVORAK);
}
return false;
}
return true;
}
bool led_update_user(led_t led_state) {
board_set_led_by_index(0, LED_YELLOW, led_state.caps_lock);
board_set_led_by_index(1, LED_YELLOW, led_state.scroll_lock);

View File

@ -19,13 +19,14 @@
enum layer_number { _QWERTY = 0, _COLEMAK, _DVORAK, _LOWER, _RAISE, _ADJUST };
// Defines the keycodes used by our macros in process_record_user
enum custom_keycodes { QWERTY = SAFE_RANGE, COLEMAK, DVORAK };
#define LOWER MO(_LOWER)
#define RAISE MO(_RAISE)
#define ADJUST MO(_ADJUST)
#define QWERTY PDF(_QWERTY)
#define COLEMAK PDF(_COLEMAK)
#define DVORAK PDF(_DVORAK)
// clang-format off
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Qwerty
@ -141,27 +142,6 @@ layer_state_t layer_state_set_user(layer_state_t state) {
return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
}
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
case COLEMAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLEMAK);
}
return false;
case DVORAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_DVORAK);
}
return false;
}
return true;
}
bool led_update_user(led_t led_state) {
board_set_led_by_index(0, LED_YELLOW, led_state.caps_lock);
board_set_led_by_index(1, LED_YELLOW, led_state.scroll_lock);

View File

@ -13,8 +13,7 @@ enum layer_names {
};
enum custom_keycodes {
QWERTY = SAFE_RANGE,
LOWER,
LOWER = SAFE_RANGE,
RAISE,
ADJUST,
};
@ -88,7 +87,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_ADJUST] = LAYOUT_ortho_5x14(
_______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______,
_______, _______, QK_BOOT, UG_TOGG, UG_NEXT, UG_HUED, UG_HUEU, UG_SATD, UG_SATU, UG_VALD, UG_VALU, _______, KC_DEL, _______,
_______, _______, _______, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, _______, _______, _______, _______, _______,
_______, _______, _______, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
)
@ -98,12 +97,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
break;
case LOWER:
if (record->event.pressed) {
layer_on(_LOWER);

View File

@ -5,11 +5,6 @@ enum layer_names {
_LOWER
};
enum custom_keycodes {
QWERTY = SAFE_RANGE,
LOWER
};
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Qwerty
* ,-----------------------------------------------------------------------------------.
@ -29,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
QK_GESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT,
KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_ENT, KC_SPC, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
KC_LCTL, KC_LALT, KC_LGUI, MO(_LOWER), KC_ENT, KC_SPC, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
),
/* Lower
@ -53,21 +48,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
UG_TOGG, QK_BOOT, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
)
};
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
case LOWER:
if (record->event.pressed) {
layer_on(_LOWER);
} else {
layer_off(_LOWER);
}
return false;
}
return true;
};

View File

@ -8,8 +8,7 @@ enum layer_names {
};
enum custom_keycodes {
QWERTY = SAFE_RANGE,
LOWER,
LOWER = SAFE_RANGE,
RAISE
};
@ -83,7 +82,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* |------+------+------+------+------+------+------+------+------+------+------+------|
* | | Reset| | | | | | | | | | Del |
* |------+------+------+------+------+-------------+------+------+------+------+------|
* | | | |Aud on|AudOff|AGnorm|AGswap|Qwerty| | | | |
* | | | |Aud on|AudOff|AGnorm|AGswap| | | | | |
* |------+------+------+------+------+------|------+------+------+------+------+------|
* | |Voice-|Voice+|Mus on|MusOff|MidiOn|MidOff| | | | | |
* |------+------+------+------+------+------+------+------+------+------+------+------|
@ -93,7 +92,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_ADJUST] = LAYOUT_ortho_5x12(
KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
_______, QK_BOOT, DB_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL,
_______, _______, MU_NEXT, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, _______, _______, _______, _______,
_______, _______, MU_NEXT, AU_ON, AU_OFF, AG_NORM, AG_SWAP, _______, _______, _______, _______, _______,
_______, AU_PREV, AU_NEXT, MU_ON, MU_OFF, MI_ON, MI_OFF, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
)
@ -101,11 +100,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
case LOWER:
if (record->event.pressed) {
layer_on(_LOWER);

View File

@ -26,10 +26,7 @@ enum layer_names {
};
enum custom_keycodes {
KC_QWRTY = SAFE_RANGE,
KC_COLMK,
KC_HRM,
KC_PRVWD,
KC_PRVWD = SAFE_RANGE,
KC_NXTWD
};
@ -46,6 +43,10 @@ enum custom_keycodes {
#define HRM_RC MT(MOD_RCTL, KC_K)
#define HRM_RS MT(MOD_RSFT, KC_J)
#define KC_QWRTY PDF(_QWERTY)
#define KC_COLMK PDF(_COLEMAK)
#define KC_HRM PDF(_HRM)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/*
* QWERTY
@ -188,21 +189,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case KC_QWRTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
case KC_COLMK:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLEMAK);
}
return false;
case KC_HRM:
if (record->event.pressed) {
set_single_persistent_default_layer(_HRM);
}
return false;
case KC_PRVWD:
if (record->event.pressed) {
register_mods(mod_config(MOD_LCTL));

View File

@ -26,10 +26,7 @@ enum layer_names {
};
enum custom_keycodes {
KC_QWRTY = SAFE_RANGE,
KC_COLMK,
KC_HRM,
KC_PRVWD,
KC_PRVWD = SAFE_RANGE,
KC_NXTWD
};
@ -46,6 +43,10 @@ enum custom_keycodes {
#define HRM_RC MT(MOD_RCTL, KC_K)
#define HRM_RS MT(MOD_RSFT, KC_J)
#define KC_QWRTY PDF(_QWERTY)
#define KC_COLMK PDF(_COLEMAK)
#define KC_HRM PDF(_HRM)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/*
* QWERTY
@ -188,21 +189,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case KC_QWRTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
case KC_COLMK:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLEMAK);
}
return false;
case KC_HRM:
if (record->event.pressed) {
set_single_persistent_default_layer(_HRM);
}
return false;
case KC_PRVWD:
if (record->event.pressed) {
register_mods(mod_config(MOD_LCTL));

View File

@ -26,10 +26,7 @@ enum layer_names {
};
enum custom_keycodes {
KC_QWRTY = SAFE_RANGE,
KC_COLMK,
KC_HRM,
KC_PRVWD,
KC_PRVWD = SAFE_RANGE,
KC_NXTWD
};
@ -46,6 +43,10 @@ enum custom_keycodes {
#define HRM_RC MT(MOD_RCTL, KC_K)
#define HRM_RS MT(MOD_RSFT, KC_J)
#define KC_QWRTY PDF(_QWERTY)
#define KC_COLMK PDF(_COLEMAK)
#define KC_HRM PDF(_HRM)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/*
* QWERTY
@ -188,21 +189,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case KC_QWRTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
case KC_COLMK:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLEMAK);
}
return false;
case KC_HRM:
if (record->event.pressed) {
set_single_persistent_default_layer(_HRM);
}
return false;
case KC_PRVWD:
if (record->event.pressed) {
register_mods(mod_config(MOD_LCTL));

View File

@ -26,10 +26,7 @@ enum layer_names {
};
enum custom_keycodes {
KC_QWRTY = SAFE_RANGE,
KC_COLMK,
KC_HRM,
KC_PRVWD,
KC_PRVWD = SAFE_RANGE,
KC_NXTWD
};
@ -46,6 +43,10 @@ enum custom_keycodes {
#define HRM_RC MT(MOD_RCTL, KC_K)
#define HRM_RS MT(MOD_RSFT, KC_J)
#define KC_QWRTY PDF(_QWERTY)
#define KC_COLMK PDF(_COLEMAK)
#define KC_HRM PDF(_HRM)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/*
* QWERTY
@ -188,21 +189,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case KC_QWRTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
case KC_COLMK:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLEMAK);
}
return false;
case KC_HRM:
if (record->event.pressed) {
set_single_persistent_default_layer(_HRM);
}
return false;
case KC_PRVWD:
if (record->event.pressed) {
register_mods(mod_config(MOD_LCTL));

View File

@ -26,15 +26,13 @@ enum layer_names {
_CMD,
};
enum corgi_keycodes {
QWERTY = SAFE_RANGE,
COLEMAK
};
#define LOWER MO(_LOWER)
#define RAISE MO(_RAISE)
#define CMD MO(_CMD)
#define QWERTY PDF(_QWERTY)
#define COLEMAK PDF(_COLEMAK)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Qwerty
* ,-----------------------------------------------------------------------------------.
@ -136,21 +134,3 @@ bool encoder_update_user(uint8_t index, bool clockwise) {
tap_code(clockwise ? KC_VOLU : KC_VOLD);
return true;
}
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
break;
case COLEMAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLEMAK);
}
return false;
break;
}
return true;
}

View File

@ -28,17 +28,15 @@ enum layers {
_FN
};
enum keycodes {
QWERTY = SAFE_RANGE,
WORKMAN,
COLEMAK,
DVORAK
};
#define FN MO(_FN)
#define LOWER MO(_LOWER)
#define RAISE MO(_RAISE)
#define QWERTY PDF(_QWERTY)
#define WORKMAN PDF(_WORKMAN)
#define COLEMAK PDF(_COLEMAK)
#define DVORAK PDF(_DVORAK)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Qwerty
@ -213,29 +211,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
layer_state_t layer_state_set_user(layer_state_t state) {
return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
}
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
case WORKMAN:
if (record->event.pressed) {
set_single_persistent_default_layer(_WORKMAN);
}
return false;
case COLEMAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLEMAK);
}
return false;
case DVORAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_DVORAK);
}
return false;
}
return true;
};

View File

@ -13,16 +13,14 @@ enum layer_names {
_ADJUST
};
enum custom_keycodes {
QWERTY = SAFE_RANGE,
COLEMAK,
DVORAK
};
#define LOWER MO(_LOWER)
#define RAISE MO(_RAISE)
#define ADJUST MO(_ADJUST)
#define QWERTY PDF(_QWERTY)
#define COLEMAK PDF(_COLEMAK)
#define DVORAK PDF(_DVORAK)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Qwerty
* ,-----------------------------------------------------------------------------------.
@ -138,24 +136,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
layer_state_t layer_state_set_user(layer_state_t state) {
return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
}
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
case COLEMAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLEMAK);
}
return false;
case DVORAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_DVORAK);
}
return false;
}
return true;
}

View File

@ -30,9 +30,7 @@ enum lime_layers {
};
enum custom_keycodes {
KC_QWERTY = SAFE_RANGE,
KC_COLEMAK,
KC_LOWER,
KC_LOWER = SAFE_RANGE,
KC_RAISE,
KC_ADJUST,
KC_PRVWD,
@ -47,6 +45,9 @@ enum custom_keycodes {
KC_JOYSTICK_DEBUG,
};
#define KC_QWERTY PDF(_QWERTY)
#define KC_COLEMAK PDF(_COLEMAK)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/*
* QWERTY
@ -480,16 +481,6 @@ bool showedJump = true;
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case KC_QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
case KC_COLEMAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLEMAK);
}
return false;
case KC_LOWER:
if (record->event.pressed) {
layer_on(_LOWER);

View File

@ -24,15 +24,11 @@ enum planck_layers {
};
enum planck_keycodes {
L1 = SAFE_RANGE,
L2,
L3
};
#define L1 PDF(_1)
#define L2 PDF(_2)
#define L3 PDF(_3)
#define LOWER MO(_4)
#define IND_1 D4
#define IND_2 C6
#define IND_3 D7
@ -66,27 +62,6 @@ layer_state_t layer_state_set_user(layer_state_t state) {
return state;
}
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case L1:
if (record->event.pressed) {
set_single_persistent_default_layer(_1);
}
return false;
case L2:
if (record->event.pressed) {
set_single_persistent_default_layer(_2);
}
return false;
case L3:
if (record->event.pressed) {
set_single_persistent_default_layer(_3);
}
return false;
}
return true;
}
void matrix_init_user(void) {
//init the Pro Micro on-board LEDs
gpio_set_pin_output(IND_1);

View File

@ -15,16 +15,14 @@ enum layer_names
_ADJUST
};
enum custom_keycodes {
QWERTY = SAFE_RANGE,
COLEMAK,
DVORAK
};
#define LOWER MO(_LOWER)
#define RAISE MO(_RAISE)
#define ADJUST MO(_ADJUST)
#define QWERTY PDF(_QWERTY)
#define COLEMAK PDF(_COLEMAK)
#define DVORAK PDF(_DVORAK)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Qwerty
* ,-----------------------------------------------------------------------------------.
@ -140,24 +138,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
layer_state_t layer_state_set_user(layer_state_t state) {
return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
}
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
case COLEMAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLEMAK);
}
return false;
case DVORAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_DVORAK);
}
return false;
}
return true;
}

View File

@ -14,16 +14,14 @@ enum layer_names {
_ADJUST
};
enum custom_keycodes {
QWERTY = SAFE_RANGE,
COLEMAK,
DVORAK
};
#define LOWER MO(_LOWER)
#define RAISE MO(_RAISE)
#define ADJUST MO(_ADJUST)
#define QWERTY PDF(_QWERTY)
#define COLEMAK PDF(_COLEMAK)
#define DVORAK PDF(_DVORAK)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Qwerty
* ,-----------------------------------------------------------------------------------.
@ -139,23 +137,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
layer_state_t layer_state_set_user(layer_state_t state) {
return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
}
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
break;
case COLEMAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLEMAK);
}
break;
case DVORAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_DVORAK);
}
break;
}
return true;
}

View File

@ -14,16 +14,14 @@ enum layer_names {
_ADJUST
};
enum custom_keycodes {
QWERTY = SAFE_RANGE,
COLEMAK,
DVORAK
};
#define LOWER MO(_LOWER)
#define RAISE MO(_RAISE)
#define ADJUST MO(_ADJUST)
#define QWERTY PDF(_QWERTY)
#define COLEMAK PDF(_COLEMAK)
#define DVORAK PDF(_DVORAK)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_QWERTY] = LAYOUT_all(
@ -72,26 +70,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
layer_state_t layer_state_set_user(layer_state_t state) {
return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
}
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
break;
case COLEMAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLEMAK);
}
break;
case DVORAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_DVORAK);
}
break;
}
return true;
}
bool encoder_update_user(uint8_t index, bool clockwise) {
if (clockwise) {

View File

@ -14,16 +14,14 @@ enum layer_names {
_ADJUST
};
enum custom_keycodes {
QWERTY = SAFE_RANGE,
COLEMAK,
DVORAK
};
#define LOWER MO(_LOWER)
#define RAISE MO(_RAISE)
#define ADJUST MO(_ADJUST)
#define QWERTY PDF(_QWERTY)
#define COLEMAK PDF(_COLEMAK)
#define DVORAK PDF(_DVORAK)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_QWERTY] = LAYOUT_all(
@ -72,26 +70,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
layer_state_t layer_state_set_user(layer_state_t state) {
return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
}
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
break;
case COLEMAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLEMAK);
}
break;
case DVORAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_DVORAK);
}
break;
}
return true;
}
bool encoder_update_user(uint8_t index, bool clockwise) {
if (clockwise) {

View File

@ -27,18 +27,13 @@ enum layers {
_ADJUST,
};
enum custom_keycodes {
QWERTY = SAFE_RANGE,
COLEMAK,
DVORAK,
LOWER,
RAISE,
EUCALYN,
ADJUST,
};
#define LOWER MO(_LOWER)
#define RAISE MO(_RAISE)
#define LOWER MO(_LOWER)
#define RAISE MO(_RAISE)
#define QWERTY PDF(_QWERTY)
#define COLEMAK PDF(_COLEMAK)
#define DVORAK PDF(_DVORAK)
#define EUCALYN PDF(_EUCALYN)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
@ -174,33 +169,3 @@ enum layers {
layer_state_t layer_state_set_user(layer_state_t state) {
return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
}
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
break;
case COLEMAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLEMAK);
}
return false;
break;
case DVORAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_DVORAK);
}
return false;
break;
case EUCALYN:
if (record->event.pressed) {
set_single_persistent_default_layer(_EUCALYN);
}
return false;
break;
}
return true;
}

View File

@ -39,11 +39,12 @@ enum layer_names {
#define OS_GUI OSM(MOD_LGUI)
#define OS_ALT OSM(MOD_LALT)
#define QWERTY PDF(_QWERTY)
#define COLEMAK PDF(_COLMAK)
enum keycodes {
QWERTY = SAFE_RANGE,
COLEMAK,
// layers
SYM,
SYM = SAFE_RANGE,
MISC,
// special keys
ENC_PRS,
@ -233,16 +234,6 @@ uint16_t last_rgb_char = 0;
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
case COLEMAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLMAK);
}
return false;
case SYM:
if (record->event.pressed) {
layer_on(_SYM);

View File

@ -13,8 +13,7 @@ enum layer_number {
};
enum custom_keycodes {
QWERTY = SAFE_RANGE,
ADJUST,
ADJUST = SAFE_RANGE,
RGBRST
};
@ -56,13 +55,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
print("mode just switched to qwerty and this is a huge string\n");
set_single_persistent_default_layer(_QWERTY);
}
break;
case ADJUST:
if (record->event.pressed) {
layer_on(_ADJUST);

View File

@ -13,8 +13,7 @@ enum layer_number {
};
enum custom_keycodes {
QWERTY = SAFE_RANGE,
ADJUST,
ADJUST = SAFE_RANGE,
RGBRST
};
@ -56,13 +55,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
print("mode just switched to qwerty and this is a huge string\n");
set_single_persistent_default_layer(_QWERTY);
}
break;
case ADJUST:
if (record->event.pressed) {
layer_on(_ADJUST);

View File

@ -13,8 +13,7 @@ enum layer_number {
};
enum custom_keycodes {
QWERTY = SAFE_RANGE,
ADJUST,
ADJUST = SAFE_RANGE,
RGBRST
};
@ -58,13 +57,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
print("mode just switched to qwerty and this is a huge string\n");
set_single_persistent_default_layer(_QWERTY);
}
break;
case ADJUST:
if (record->event.pressed) {
layer_on(_ADJUST);

View File

@ -13,8 +13,7 @@ enum layer_number {
};
enum custom_keycodes {
QWERTY = SAFE_RANGE,
ADJUST,
ADJUST = SAFE_RANGE,
RGBRST
};
@ -62,13 +61,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
print("mode just switched to qwerty and this is a huge string\n");
set_single_persistent_default_layer(_QWERTY);
}
break;
case ADJUST:
if (record->event.pressed) {
layer_on(_ADJUST);

View File

@ -13,8 +13,7 @@ enum layer_number {
};
enum custom_keycodes {
QWERTY = SAFE_RANGE,
ADJUST,
ADJUST = SAFE_RANGE,
RGBRST
};
@ -62,13 +61,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
print("mode just switched to qwerty and this is a huge string\n");
set_single_persistent_default_layer(_QWERTY);
}
break;
case ADJUST:
if (record->event.pressed) {
layer_on(_ADJUST);

View File

@ -13,8 +13,7 @@ enum layer_number {
};
enum custom_keycodes {
QWERTY = SAFE_RANGE,
ADJUST,
ADJUST = SAFE_RANGE,
RGBRST
};
@ -62,13 +61,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
print("mode just switched to qwerty and this is a huge string\n");
set_single_persistent_default_layer(_QWERTY);
}
break;
case ADJUST:
if (record->event.pressed) {
layer_on(_ADJUST);

View File

@ -13,8 +13,7 @@ enum layer_number {
};
enum custom_keycodes {
QWERTY = SAFE_RANGE,
ADJUST,
ADJUST = SAFE_RANGE,
RGBRST
};
@ -68,13 +67,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
print("mode just switched to qwerty and this is a huge string\n");
set_single_persistent_default_layer(_QWERTY);
}
break;
case ADJUST:
if (record->event.pressed) {
layer_on(_ADJUST);

View File

@ -13,8 +13,7 @@ enum layer_number {
};
enum custom_keycodes {
QWERTY = SAFE_RANGE,
ADJUST,
ADJUST = SAFE_RANGE,
RGBRST
};
@ -68,13 +67,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
print("mode just switched to qwerty and this is a huge string\n");
set_single_persistent_default_layer(_QWERTY);
}
break;
case ADJUST:
if (record->event.pressed) {
layer_on(_ADJUST);

View File

@ -15,8 +15,7 @@ enum layer_number {
};
enum custom_keycodes {
QWERTY = SAFE_RANGE,
ADJUST,
ADJUST = SAFE_RANGE,
RGBRST
};
@ -70,13 +69,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
print("mode just switched to qwerty and this is a huge string\n");
set_single_persistent_default_layer(_QWERTY);
}
break;
case ADJUST:
if (record->event.pressed) {
layer_on(_ADJUST);

View File

@ -13,8 +13,7 @@ enum layer_number {
};
enum custom_keycodes {
QWERTY = SAFE_RANGE,
ADJUST,
ADJUST = SAFE_RANGE,
RGBRST
};
@ -68,13 +67,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
print("mode just switched to qwerty and this is a huge string\n");
set_single_persistent_default_layer(_QWERTY);
}
break;
case ADJUST:
if (record->event.pressed) {
layer_on(_ADJUST);

View File

@ -26,14 +26,15 @@ enum preonic_layers {
};
enum preonic_keycodes {
QWERTY = SAFE_RANGE,
COLEMAK,
DVORAK,
LOWER,
LOWER = SAFE_RANGE,
RAISE,
BACKLIT
};
#define QWERTY PDF(_QWERTY)
#define COLEMAK PDF(_COLEMAK)
#define DVORAK PDF(_DVORAK)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Qwerty
@ -167,21 +168,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
case COLEMAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLEMAK);
}
return false;
case DVORAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_DVORAK);
}
return false;
case LOWER:
if (record->event.pressed) {
layer_on(_LOWER);

View File

@ -34,16 +34,14 @@ enum layer_names {
_ADJUST
};
enum custom_keycodes {
QWERTY = SAFE_RANGE,
COLEMAK,
DVORAK
};
#define LS__SPC MT(MOD_LSFT, KC_SPC)
#define LOWER MO(_LOWER)
#define RAISE MO(_RAISE)
#define QWERTY PDF(_QWERTY)
#define COLEMAK PDF(_COLEMAK)
#define DVORAK PDF(_DVORAK)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_QWERTY] = LAYOUT(
@ -88,27 +86,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
layer_state_t layer_state_set_user(layer_state_t state) {
return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
}
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
break;
case COLEMAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLEMAK);
}
return false;
break;
case DVORAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_DVORAK);
}
return false;
break;
}
return true;
}

View File

@ -19,13 +19,6 @@
#include "lib/oled_helper.h"
#endif
enum custom_keycode {
Mac_CS = SAFE_RANGE,
Mac_PS,
Win_CS,
Win_PS,
IOS_CS,
};
enum layerID {
MAC_CS_1 = 0,
MAC_CS_2,
@ -40,6 +33,12 @@ enum layerID {
SETTING,
};
#define Mac_CS PDF(MAC_CS_1)
#define Mac_PS PDF(MAC_PS_1)
#define Win_CS PDF(WIN_CS_1)
#define Win_PS PDF(WIN_PS_1)
#define IOS_CS PDF(IOS_CS_1)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
// Mac
// Clip Studio
@ -234,44 +233,6 @@ bool encoder_update_user(uint8_t index, bool clockwise) {
return true;
}
// custom keycode
// switch default layer
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case Mac_CS:
if (record->event.pressed) {
set_single_persistent_default_layer(MAC_CS_1);
}
return false;
break;
case Mac_PS:
if (record->event.pressed) {
set_single_persistent_default_layer(MAC_PS_1);
}
return false;
break;
case Win_CS:
if (record->event.pressed) {
set_single_persistent_default_layer(WIN_CS_1);
}
return false;
break;
case Win_PS:
if (record->event.pressed) {
set_single_persistent_default_layer(WIN_PS_1);
}
return false;
break;
case IOS_CS:
if (record->event.pressed) {
set_single_persistent_default_layer(IOS_CS_1);
}
return false;
break;
}
return true;
}
// OLED Display
#ifdef OLED_ENABLE
bool oled_task_user(void) {

View File

@ -31,10 +31,7 @@ enum planck_layers {
};
enum planck_keycodes {
QWERTY = SAFE_RANGE,
COLEMAK,
DVORAK,
PLOVER,
PLOVER = SAFE_RANGE,
BACKLIT,
EXT_PLV
};
@ -42,6 +39,10 @@ enum planck_keycodes {
#define LOWER MO(_LOWER)
#define RAISE MO(_RAISE)
#define QWERTY PDF(_QWERTY)
#define COLEMAK PDF(_COLEMAK)
#define DVORAK PDF(_DVORAK)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Qwerty
@ -184,25 +185,6 @@ layer_state_t layer_state_set_user(layer_state_t state) {
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
print("mode just switched to qwerty and this is a huge string\n");
set_single_persistent_default_layer(_QWERTY);
}
return false;
break;
case COLEMAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLEMAK);
}
return false;
break;
case DVORAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_DVORAK);
}
return false;
break;
case BACKLIT:
if (record->event.pressed) {
register_code(KC_RSFT);

View File

@ -18,11 +18,15 @@
enum planck_layers { _QWERTY, _COLEMAK, _DVORAK, _LOWER, _RAISE, _PLOVER, _ADJUST };
enum planck_keycodes { QWERTY = SAFE_RANGE, COLEMAK, DVORAK, PLOVER, BACKLIT, EXT_PLV };
enum planck_keycodes { PLOVER = SAFE_RANGE, BACKLIT, EXT_PLV };
#define LOWER MO(_LOWER)
#define RAISE MO(_RAISE)
#define QWERTY PDF(_QWERTY)
#define COLEMAK PDF(_COLEMAK)
#define DVORAK PDF(_DVORAK)
/* clang-format off */
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
@ -230,25 +234,6 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
}
#endif
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
print("mode just switched to qwerty and this is a huge string\n");
set_single_persistent_default_layer(_QWERTY);
}
return false;
break;
case COLEMAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLEMAK);
}
return false;
break;
case DVORAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_DVORAK);
}
return false;
break;
case BACKLIT:
if (record->event.pressed) {
register_code(KC_RSFT);

View File

@ -27,14 +27,15 @@ enum preonic_layers {
};
enum preonic_keycodes {
QWERTY = SAFE_RANGE,
COLEMAK,
DVORAK,
LOWER,
LOWER = SAFE_RANGE,
RAISE,
BACKLIT
};
#define QWERTY PDF(_QWERTY)
#define COLEMAK PDF(_COLEMAK)
#define DVORAK PDF(_DVORAK)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Qwerty
@ -168,24 +169,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
break;
case COLEMAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLEMAK);
}
return false;
break;
case DVORAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_DVORAK);
}
return false;
break;
case LOWER:
if (record->event.pressed) {
layer_on(_LOWER);

View File

@ -25,9 +25,7 @@ enum layer_number {
};
enum custom_keycodes {
QWERTY = SAFE_RANGE,
MACROPAD,
FN,
FN = SAFE_RANGE,
ADJ,
BACKLIT,
RGBRST
@ -37,7 +35,8 @@ enum macro_keycodes {
KC_SAMPLEMACRO,
};
#define QWERT PDF(_QWERTY)
#define MACROPAD PDF(_MACROPAD)
#define FN_ESC LT(_FN, KC_ESC)
#define FN_CAPS LT(_FN, KC_CAPS)
@ -109,18 +108,6 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
//uint8_t shifted = get_mods() & (MOD_BIT(KC_LSFT) | MOD_BIT(KC_RSFT));
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
break;
case MACROPAD:
if(record->event.pressed) {
set_single_persistent_default_layer(_MACROPAD);
}
return false;
break;
case FN:
if (record->event.pressed) {
//not sure how to have keyboard check mode and set it to a variable, so my work around

View File

@ -17,15 +17,16 @@ enum layer_number {
};
enum custom_keycodes {
QWERTY = SAFE_RANGE,
COLEMAK,
FN,
FN = SAFE_RANGE,
ADJ,
RGBRST
};
#define FN_CAPS LT(_FN, KC_CAPS)
#define QWERTY PDF(_QWERTY)
#define COLEMAK PDF(_COLEMAK)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* / QWERTY \
* /-----------------------------------------\ /-----------------------------------------\
@ -131,16 +132,6 @@ bool encoder_update_user(uint8_t index, bool clockwise) {
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
case COLEMAK:
if(record->event.pressed) {
set_single_persistent_default_layer(_COLEMAK);
}
return false;
case FN:
if (record->event.pressed) {
layer_on(_FN);

View File

@ -17,15 +17,16 @@ enum layer_number {
};
enum custom_keycodes {
QWERTY = SAFE_RANGE,
COLEMAK,
FN,
FN = SAFE_RANGE,
ADJ,
RGBRST
};
#define FN_CAPS LT(_FN, KC_CAPS)
#define QWERTY PDF(_QWERTY)
#define COLEMAK PDF(_COLEMAK)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* / QWERTY \
* /-----------------------------------------\ /-----------------------------------------\
@ -131,16 +132,6 @@ bool encoder_update_user(uint8_t index, bool clockwise) {
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
case COLEMAK:
if(record->event.pressed) {
set_single_persistent_default_layer(_COLEMAK);
}
return false;
case FN:
if (record->event.pressed) {
layer_on(_FN);

View File

@ -17,17 +17,13 @@ enum comet46_layers
_ADJUST,
};
enum custom_keycodes {
QWERTY = SAFE_RANGE,
COLEMAK,
DVORAK,
LOWER,
RAISE,
};
#define LOWER MO(_LOWER)
#define RAISE MO(_RAISE)
#define QWERTY PDF(_QWERTY)
#define COLEMAK PDF(_COLEMAK)
#define DVORAK PDF(_DVORAK)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Qwerty
@ -175,8 +171,7 @@ void matrix_init_user(void) {
}
void matrix_scan_user(void) {
uint8_t layer = get_highest_layer(layer_state);
uint8_t default_layer = biton32(eeconfig_read_default_layer());
uint8_t layer = get_highest_layer(layer_state | default_layer_state);
switch (layer) {
case _LOWER:
set_led_red;
@ -187,39 +182,14 @@ void matrix_scan_user(void) {
case _ADJUST:
set_led_magenta;
break;
case _COLEMAK:
set_led_white;
break;
case _DVORAK:
set_led_yellow;
break;
default:
switch (default_layer) {
case _COLEMAK:
set_led_white;
break;
case _DVORAK:
set_led_yellow;
break;
default:
set_led_green;
break;
}
set_led_green;
break;
}
};
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
break;
case COLEMAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLEMAK);
}
break;
case DVORAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_DVORAK);
}
break;
}
return true;
}

View File

@ -18,17 +18,13 @@ enum comet46_layers
_ADJUST,
};
enum custom_keycodes {
QWERTY = SAFE_RANGE,
COLEMAK,
DVORAK,
LOWER,
RAISE,
};
#define LOWER MO(_LOWER)
#define RAISE MO(_RAISE)
#define QWERTY PDF(_QWERTY)
#define COLEMAK PDF(_COLEMAK)
#define DVORAK PDF(_DVORAK)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Qwerty
@ -157,24 +153,16 @@ bool oled_task_user(void) {
// Layer state
char layer_str[22];
oled_write_P(PSTR("Layer: "), false);
uint8_t layer = get_highest_layer(layer_state);
uint8_t default_layer = get_highest_layer(eeconfig_read_default_layer());
uint8_t layer = get_highest_layer(layer_state | default_layer_state);
switch (layer) {
case _QWERTY:
switch (default_layer) {
case _QWERTY:
snprintf(layer_str, sizeof(layer_str), "Qwerty");
break;
case _COLEMAK:
snprintf(layer_str, sizeof(layer_str), "Colemak");
break;
case _DVORAK:
snprintf(layer_str, sizeof(layer_str), "Dvorak");
break;
default:
snprintf(layer_str, sizeof(layer_str), "Undef-%d", default_layer);
break;
}
snprintf(layer_str, sizeof(layer_str), "Qwerty");
break;
case _COLEMAK:
snprintf(layer_str, sizeof(layer_str), "Colemak");
break;
case _DVORAK:
snprintf(layer_str, sizeof(layer_str), "Dvorak");
break;
case _RAISE:
snprintf(layer_str, sizeof(layer_str), "Raise");
@ -207,22 +195,5 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
set_keylog(keycode);
}
#endif
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
break;
case COLEMAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLEMAK);
}
break;
case DVORAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_DVORAK);
}
break;
}
return true;
}

View File

@ -12,14 +12,15 @@ enum sofle_layers {
};
enum custom_keycodes {
KC_QWERTY = QK_USER,
KC_COLEMAK,
KC_PRVWD,
KC_PRVWD = QK_USER,
KC_NXTWD,
KC_LSTRT,
KC_LEND
};
#define KC_QWERTY PDF(_QWERTY)
#define KC_COLEMAK PDF(_COLEMAK)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/*
* QWERTY
@ -134,16 +135,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case KC_QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
case KC_COLEMAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLEMAK);
}
return false;
case KC_PRVWD:
if (record->event.pressed) {
if (keymap_config.swap_lctl_lgui) {

View File

@ -76,15 +76,16 @@ enum sofle_layers {
};
enum custom_keycodes {
KC_QWERTY = SAFE_RANGE,
KC_COLEMAK,
KC_COLEMAKDH,
KC_LOWER,
KC_LOWER = SAFE_RANGE,
KC_RAISE,
KC_ADJUST,
KC_D_MUTE
};
#define KC_QWERTY PDF(_QWERTY)
#define KC_COLEMAK PDF(_COLEMAK)
#define KC_COLEMAKDH PDF(_COLEMAKDH)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/*
* QWERTY
@ -478,21 +479,6 @@ bool oled_task_user(void) {
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case KC_QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
case KC_COLEMAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLEMAK);
}
return false;
case KC_COLEMAKDH:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLEMAKDH);
}
return false;
case KC_LOWER:
if (record->event.pressed) {
layer_on(_LOWER);

View File

@ -14,14 +14,15 @@ enum layer_names {
};
enum subatomic_keycodes {
QWERTY = SAFE_RANGE,
COLEMAK,
DVORAK,
LOWER,
LOWER = SAFE_RANGE,
RAISE,
BACKLIT
};
#define QWERTY PDF(_QWERTY)
#define COLEMAK PDF(_COLEMAK)
#define DVORAK PDF(_DVORAK)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Qwerty
@ -154,24 +155,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
break;
case COLEMAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLEMAK);
}
return false;
break;
case DVORAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_DVORAK);
}
return false;
break;
case LOWER:
if (record->event.pressed) {
layer_on(_LOWER);

View File

@ -18,11 +18,9 @@
#define L_CURBR LSFT(KC_LBRC)
#define R_CURBR LSFT(KC_RBRC)
enum custom_keycodes {
DVORAK = SAFE_RANGE,
QWERTY,
COLEMAK
};
#define QWERTY PDF(_QW)
#define COLEMAK PDF(_CM)
#define DVORAK PDF(_DV)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_QW] = LAYOUT( /* Qwerty */
@ -62,26 +60,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
_______, KC_LSFT, KC_B, KC_SPC, KC_C, _______, _______, _______
)
};
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch(keycode) {
case DVORAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_DV);
}
return false;
case QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QW);
}
return false;
case COLEMAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_CM);
}
return false;
default:
return true;
}
return true;
};

View File

@ -26,9 +26,7 @@ enum grandiceps_layers {
};
enum custom_keycodes {
KC_QWERTY = SAFE_RANGE,
KC_COLEMAK,
KC_LOWER,
KC_LOWER = SAFE_RANGE,
KC_RAISE,
KC_ADJUST,
KC_PRVWD,
@ -39,7 +37,8 @@ enum custom_keycodes {
KC_TEAMS
};
#define KC_QWERTY PDF(_QWERTY)
#define KC_COLEMAK PDF(_COLEMAK)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/*
@ -154,19 +153,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
};
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case KC_QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
case KC_COLEMAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLEMAK);
}
return false;
case KC_LOWER:
if (record->event.pressed) {
layer_on(_LOWER);

View File

@ -10,14 +10,15 @@ enum layer_names {
};
enum custom_keycodes {
QWERTY = SAFE_RANGE,
COLEMAK,
DVORAK,
LOWER,
LOWER = SAFE_RANGE,
RAISE,
ADJUST
};
#define QWERTY PDF(_QWERTY)
#define COLEMAK PDF(_COLEMAK)
#define DVORAK PDF(_DVORAK)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Qwerty
@ -134,24 +135,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
break;
case COLEMAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLEMAK);
}
return false;
break;
case DVORAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_DVORAK);
}
return false;
break;
case LOWER:
if (record->event.pressed) {
layer_on(_LOWER);

View File

@ -24,8 +24,7 @@ enum waldo_layers {
};
enum waldo_keycodes {
QWERTY = SAFE_RANGE,
BACKLIT
BACKLIT = SAFE_RANGE,
};
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
@ -78,12 +77,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
break;
case BACKLIT:
if (record->event.pressed) {
#ifdef BACKLIGHT_ENABLE

View File

@ -89,6 +89,11 @@ __attribute__((weak)) bool dynamic_macro_valid_key_user(uint16_t keycode, keyrec
#define DYNAMIC_MACRO_CURRENT_LENGTH(BEGIN, POINTER) ((int)(direction * ((POINTER) - (BEGIN))))
#define DYNAMIC_MACRO_CURRENT_CAPACITY(BEGIN, END2) ((int)(direction * ((END2) - (BEGIN)) + 1))
#ifdef DYNAMIC_MACRO_KEEP_ORIGINAL_LAYER_STATE
static layer_state_t dm1_layer_state;
static layer_state_t dm2_layer_state;
#endif
/**
* Start recording of the dynamic macro.
*
@ -100,8 +105,16 @@ void dynamic_macro_record_start(keyrecord_t **macro_pointer, keyrecord_t *macro_
dynamic_macro_record_start_kb(direction);
clear_keyboard();
#ifdef DYNAMIC_MACRO_KEEP_ORIGINAL_LAYER_STATE
if (direction == 1) {
dm1_layer_state = layer_state;
} else if (direction == -1) {
dm2_layer_state = layer_state;
}
#else
layer_clear();
#endif
clear_keyboard();
*macro_pointer = macro_buffer;
}
@ -118,7 +131,15 @@ void dynamic_macro_play(keyrecord_t *macro_buffer, keyrecord_t *macro_end, int8_
layer_state_t saved_layer_state = layer_state;
clear_keyboard();
#ifdef DYNAMIC_MACRO_KEEP_ORIGINAL_LAYER_STATE
if (direction == 1) {
layer_state_set(dm1_layer_state);
} else if (direction == -1) {
layer_state_set(dm2_layer_state);
}
#else
layer_clear();
#endif
while (macro_buffer != macro_end) {
process_record(macro_buffer);

6
tests/mousekeys/config.h Normal file
View File

@ -0,0 +1,6 @@
// Copyright 2024 Dasky (@daskygit)
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
#include "test_common.h"

1
tests/mousekeys/test.mk Normal file
View File

@ -0,0 +1 @@
MOUSEKEY_ENABLE = yes

View File

@ -0,0 +1,109 @@
// Copyright 2024 Dasky (@daskygit)
// SPDX-License-Identifier: GPL-2.0-or-later
#include "gtest/gtest.h"
#include "mouse_report_util.hpp"
#include "test_common.hpp"
using testing::_;
struct MouseKeyExpectations {
int16_t x;
int16_t y;
int16_t h;
int16_t v;
uint16_t button_mask;
};
class Mousekey : public TestFixture {};
class MousekeyParametrized : public ::testing::WithParamInterface<std::pair<KeymapKey, MouseKeyExpectations>>, public Mousekey {};
TEST_F(Mousekey, SendMouseNotCalledWhenNoKeyIsPressed) {
TestDriver driver;
EXPECT_NO_MOUSE_REPORT(driver);
run_one_scan_loop();
}
TEST_F(Mousekey, PressAndHoldCursorUpIsCorrectlyReported) {
TestDriver driver;
KeymapKey mouse_key = KeymapKey{0, 0, 0, QK_MOUSE_CURSOR_UP};
set_keymap({mouse_key});
EXPECT_MOUSE_REPORT(driver, (0, -8, 0, 0, 0));
mouse_key.press();
run_one_scan_loop();
EXPECT_MOUSE_REPORT(driver, (0, -2, 0, 0, 0));
idle_for(MOUSEKEY_INTERVAL);
EXPECT_EMPTY_MOUSE_REPORT(driver);
mouse_key.release();
run_one_scan_loop();
VERIFY_AND_CLEAR(driver);
}
TEST_F(Mousekey, PressAndHoldButtonOneCorrectlyReported) {
TestDriver driver;
KeymapKey mouse_key = KeymapKey{0, 0, 0, QK_MOUSE_BUTTON_1};
set_keymap({mouse_key});
EXPECT_MOUSE_REPORT(driver, (0, 0, 0, 0, 1));
mouse_key.press();
run_one_scan_loop();
idle_for(MOUSEKEY_INTERVAL);
EXPECT_EMPTY_MOUSE_REPORT(driver);
mouse_key.release();
run_one_scan_loop();
VERIFY_AND_CLEAR(driver);
}
TEST_P(MousekeyParametrized, PressAndReleaseIsCorrectlyReported) {
TestDriver driver;
KeymapKey mouse_key = GetParam().first;
MouseKeyExpectations expectations = GetParam().second;
set_keymap({mouse_key});
EXPECT_MOUSE_REPORT(driver, (expectations.x, expectations.y, expectations.h, expectations.v, expectations.button_mask));
mouse_key.press();
run_one_scan_loop();
EXPECT_EMPTY_MOUSE_REPORT(driver);
mouse_key.release();
run_one_scan_loop();
EXPECT_NO_MOUSE_REPORT(driver);
run_one_scan_loop();
VERIFY_AND_CLEAR(driver);
}
// clang-format off
INSTANTIATE_TEST_CASE_P(
Keys,
MousekeyParametrized,
::testing::Values(
// Key , X, Y, H, V, Buttons Mask
std::make_pair(KeymapKey{0, 0, 0, QK_MOUSE_BUTTON_1}, MouseKeyExpectations{ 0, 0, 0, 0, 1}),
std::make_pair(KeymapKey{0, 0, 0, QK_MOUSE_BUTTON_2}, MouseKeyExpectations{ 0, 0, 0, 0, 2}),
std::make_pair(KeymapKey{0, 0, 0, QK_MOUSE_BUTTON_3}, MouseKeyExpectations{ 0, 0, 0, 0, 4}),
std::make_pair(KeymapKey{0, 0, 0, QK_MOUSE_BUTTON_4}, MouseKeyExpectations{ 0, 0, 0, 0, 8}),
std::make_pair(KeymapKey{0, 0, 0, QK_MOUSE_BUTTON_5}, MouseKeyExpectations{ 0, 0, 0, 0, 16}),
std::make_pair(KeymapKey{0, 0, 0, QK_MOUSE_BUTTON_6}, MouseKeyExpectations{ 0, 0, 0, 0, 32}),
std::make_pair(KeymapKey{0, 0, 0, QK_MOUSE_BUTTON_7}, MouseKeyExpectations{ 0, 0, 0, 0, 64}),
std::make_pair(KeymapKey{0, 0, 0, QK_MOUSE_BUTTON_8}, MouseKeyExpectations{ 0, 0, 0, 0, 128}),
std::make_pair(KeymapKey{0, 0, 0, QK_MOUSE_CURSOR_UP}, MouseKeyExpectations{ 0,-8, 0, 0, 0}),
std::make_pair(KeymapKey{0, 0, 0, QK_MOUSE_CURSOR_DOWN}, MouseKeyExpectations{ 0, 8, 0, 0, 0}),
std::make_pair(KeymapKey{0, 0, 0, QK_MOUSE_CURSOR_LEFT}, MouseKeyExpectations{-8, 0, 0, 0, 0}),
std::make_pair(KeymapKey{0, 0, 0, QK_MOUSE_CURSOR_RIGHT}, MouseKeyExpectations{ 8, 0, 0, 0, 0}),
std::make_pair(KeymapKey{0, 0, 0, QK_MOUSE_WHEEL_UP}, MouseKeyExpectations{ 0, 0, 0, 1, 0}),
std::make_pair(KeymapKey{0, 0, 0, QK_MOUSE_WHEEL_DOWN}, MouseKeyExpectations{ 0, 0, 0,-1, 0}),
std::make_pair(KeymapKey{0, 0, 0, QK_MOUSE_WHEEL_LEFT}, MouseKeyExpectations{ 0, 0,-1, 0, 0}),
std::make_pair(KeymapKey{0, 0, 0, QK_MOUSE_WHEEL_RIGHT}, MouseKeyExpectations{ 0, 0, 1, 0, 0})
));
// clang-format on

6
tests/pointing/config.h Normal file
View File

@ -0,0 +1,6 @@
// Copyright 2024 Dasky (@daskygit)
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
#include "test_common.h"

View File

@ -0,0 +1,9 @@
// Copyright 2024 Dasky (@daskygit)
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
#include "test_common.h"
#define POINTING_DEVICE_INVERT_X
#define POINTING_DEVICE_ROTATION_90

View File

@ -0,0 +1,2 @@
POINTING_DEVICE_ENABLE = yes
POINTING_DEVICE_DRIVER = custom

View File

@ -0,0 +1,59 @@
// Copyright 2024 Dasky (@daskygit)
// SPDX-License-Identifier: GPL-2.0-or-later
#include "gtest/gtest.h"
#include "mouse_report_util.hpp"
#include "test_common.hpp"
#include "test_pointing_device_driver.h"
using testing::_;
struct SimpleReport {
int16_t x;
int16_t y;
int16_t h;
int16_t v;
};
class Pointing : public TestFixture {};
class PointingInvertAndRotateParametrized : public ::testing::WithParamInterface<std::pair<SimpleReport, SimpleReport>>, public Pointing {};
TEST_P(PointingInvertAndRotateParametrized, PointingInvertAndRotateOrder) {
TestDriver driver;
SimpleReport input = GetParam().first;
SimpleReport expectations = GetParam().second;
pd_set_x(input.x);
pd_set_y(input.y);
pd_set_h(input.h);
pd_set_v(input.v);
EXPECT_MOUSE_REPORT(driver, (expectations.x, expectations.y, expectations.h, expectations.v, 0));
run_one_scan_loop();
// EXPECT_EMPTY_MOUSE_REPORT(driver);
pd_clear_movement();
run_one_scan_loop();
EXPECT_NO_MOUSE_REPORT(driver);
run_one_scan_loop();
VERIFY_AND_CLEAR(driver);
}
// clang-format off
INSTANTIATE_TEST_CASE_P(
InvertAndRotate,
PointingInvertAndRotateParametrized,
::testing::Values(
// Input Expected // Actual Result - Rotate 90 then Invert X
std::make_pair(SimpleReport{ -1, 0, 0, 0}, SimpleReport{ 0, 1, 0, 0}), // LEFT - DOWN
std::make_pair(SimpleReport{ 0, -1, 0, 0}, SimpleReport{ 1, 0, 0, 0}), // UP - RIGHT
std::make_pair(SimpleReport{ 1, 0, 0, 0}, SimpleReport{ 0, -1, 0, 0}), // RIGHT - UP
std::make_pair(SimpleReport{ 0, 1, 0, 0}, SimpleReport{ -1, 0, 0, 0}) // DOWN - LEFT
// Input Expected // Invert X then Rotate 90
// std::make_pair(SimpleReport{ -1, 0, 0, 0}, SimpleReport{ 0, -1, 0, 0}), // LEFT - UP
// std::make_pair(SimpleReport{ 0, -1, 0, 0}, SimpleReport{ -1, 0, 0, 0}), // UP - LEFT
// std::make_pair(SimpleReport{ 1, 0, 0, 0}, SimpleReport{ 0, 1, 0, 0}), // RIGHT - DOWN
// std::make_pair(SimpleReport{ 0, 1, 0, 0}, SimpleReport{ 1, 0, 0, 0}) // DOWN - RIGHT
));
// clang-format on

View File

@ -0,0 +1,9 @@
// Copyright 2024 Dasky (@daskygit)
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
#include "test_common.h"
#define POINTING_DEVICE_INVERT_X
#define POINTING_DEVICE_INVERT_Y

View File

@ -0,0 +1,2 @@
POINTING_DEVICE_ENABLE = yes
POINTING_DEVICE_DRIVER = custom

View File

@ -0,0 +1,53 @@
// Copyright 2024 Dasky (@daskygit)
// SPDX-License-Identifier: GPL-2.0-or-later
#include "gtest/gtest.h"
#include "mouse_report_util.hpp"
#include "test_common.hpp"
#include "test_pointing_device_driver.h"
using testing::_;
struct SimpleReport {
int16_t x;
int16_t y;
int16_t h;
int16_t v;
};
class Pointing : public TestFixture {};
class PointingInvertXYParametrized : public ::testing::WithParamInterface<std::pair<SimpleReport, SimpleReport>>, public Pointing {};
TEST_P(PointingInvertXYParametrized, PointingInvertXY) {
TestDriver driver;
SimpleReport input = GetParam().first;
SimpleReport expectations = GetParam().second;
pd_set_x(input.x);
pd_set_y(input.y);
pd_set_h(input.h);
pd_set_v(input.v);
EXPECT_MOUSE_REPORT(driver, (expectations.x, expectations.y, expectations.h, expectations.v, 0));
run_one_scan_loop();
// EXPECT_EMPTY_MOUSE_REPORT(driver);
pd_clear_movement();
run_one_scan_loop();
EXPECT_NO_MOUSE_REPORT(driver);
run_one_scan_loop();
VERIFY_AND_CLEAR(driver);
}
// clang-format off
INSTANTIATE_TEST_CASE_P(
X_Y_XY,
PointingInvertXYParametrized,
::testing::Values(
// Input Expected
std::make_pair(SimpleReport{ 33, 0, 0, 0}, SimpleReport{ -33, 0, 0, 0}),
std::make_pair(SimpleReport{ 0, -127, 0, 0}, SimpleReport{ 0, 127, 0, 0}),
std::make_pair(SimpleReport{ 10, -20, 0, 0}, SimpleReport{ -10, 20, 0, 0})
));
// clang-format on

View File

@ -0,0 +1,8 @@
// Copyright 2024 Dasky (@daskygit)
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
#include "test_common.h"
#define POINTING_DEVICE_ROTATION_180

View File

@ -0,0 +1,2 @@
POINTING_DEVICE_ENABLE = yes
POINTING_DEVICE_DRIVER = custom

View File

@ -0,0 +1,55 @@
// Copyright 2024 Dasky (@daskygit)
// SPDX-License-Identifier: GPL-2.0-or-later
#include "gtest/gtest.h"
#include "mouse_report_util.hpp"
#include "test_common.hpp"
#include "test_pointing_device_driver.h"
using testing::_;
struct SimpleReport {
int16_t x;
int16_t y;
int16_t h;
int16_t v;
};
class Pointing : public TestFixture {};
class PointingRotateParametrized : public ::testing::WithParamInterface<std::pair<SimpleReport, SimpleReport>>, public Pointing {};
TEST_P(PointingRotateParametrized, PointingRotateXY) {
TestDriver driver;
SimpleReport input = GetParam().first;
SimpleReport expectations = GetParam().second;
pd_set_x(input.x);
pd_set_y(input.y);
pd_set_h(input.h);
pd_set_v(input.v);
EXPECT_MOUSE_REPORT(driver, (expectations.x, expectations.y, expectations.h, expectations.v, 0));
run_one_scan_loop();
// EXPECT_EMPTY_MOUSE_REPORT(driver);
pd_clear_movement();
run_one_scan_loop();
EXPECT_NO_MOUSE_REPORT(driver);
run_one_scan_loop();
VERIFY_AND_CLEAR(driver);
}
// clang-format off
INSTANTIATE_TEST_CASE_P(
Rotate180,
PointingRotateParametrized,
::testing::Values(
// Input Expected
// Rotate Clockwise
std::make_pair(SimpleReport{ 0,-1, 0, 0}, SimpleReport{ 0, 1, 0, 0}), // UP - DOWN
std::make_pair(SimpleReport{ 0, 1, 0, 0}, SimpleReport{ 0,-1, 0, 0}), // DOWN - UP
std::make_pair(SimpleReport{ 1, 0, 0, 0}, SimpleReport{-1, 0, 0, 0}), // RIGHT - LEFT
std::make_pair(SimpleReport{ -1, 0, 0, 0}, SimpleReport{ 1, 0, 0, 0}) // LEFT - RIGHT
));
// clang-format on

View File

@ -0,0 +1,8 @@
// Copyright 2024 Dasky (@daskygit)
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
#include "test_common.h"
#define POINTING_DEVICE_ROTATION_270

View File

@ -0,0 +1,2 @@
POINTING_DEVICE_ENABLE = yes
POINTING_DEVICE_DRIVER = custom

View File

@ -0,0 +1,60 @@
// Copyright 2024 Dasky (@daskygit)
// SPDX-License-Identifier: GPL-2.0-or-later
#include "gtest/gtest.h"
#include "mouse_report_util.hpp"
#include "test_common.hpp"
#include "test_pointing_device_driver.h"
using testing::_;
struct SimpleReport {
int16_t x;
int16_t y;
int16_t h;
int16_t v;
};
class Pointing : public TestFixture {};
class PointingRotateParametrized : public ::testing::WithParamInterface<std::pair<SimpleReport, SimpleReport>>, public Pointing {};
TEST_P(PointingRotateParametrized, PointingRotateXY) {
TestDriver driver;
SimpleReport input = GetParam().first;
SimpleReport expectations = GetParam().second;
pd_set_x(input.x);
pd_set_y(input.y);
pd_set_h(input.h);
pd_set_v(input.v);
EXPECT_MOUSE_REPORT(driver, (expectations.x, expectations.y, expectations.h, expectations.v, 0));
run_one_scan_loop();
// EXPECT_EMPTY_MOUSE_REPORT(driver);
pd_clear_movement();
run_one_scan_loop();
EXPECT_NO_MOUSE_REPORT(driver);
run_one_scan_loop();
VERIFY_AND_CLEAR(driver);
}
// clang-format off
INSTANTIATE_TEST_CASE_P(
Rotate270,
PointingRotateParametrized,
::testing::Values(
// Input Expected
// Actual Result - Rotate Anticlockwise
std::make_pair(SimpleReport{ 0,-1, 0, 0}, SimpleReport{ 1, 0, 0, 0}), // UP - RIGHT
std::make_pair(SimpleReport{ 0, 1, 0, 0}, SimpleReport{-1, 0, 0, 0}), // DOWN - LEFT
std::make_pair(SimpleReport{ 1, 0, 0, 0}, SimpleReport{ 0, 1, 0, 0}), // RIGHT - DOWN
std::make_pair(SimpleReport{ -1, 0, 0, 0}, SimpleReport{ 0,-1, 0, 0}) // LEFT - UP
// Rotate Clockwise
// std::make_pair(SimpleReport{ 0,-1, 0, 0}, SimpleReport{-1, 0, 0, 0}), // UP - LEFT
// std::make_pair(SimpleReport{ 0, 1, 0, 0}, SimpleReport{ 1, 0, 0, 0}), // DOWN - RIGHT
// std::make_pair(SimpleReport{ 1, 0, 0, 0}, SimpleReport{ 0,-1, 0, 0}), // RIGHT - UP
// std::make_pair(SimpleReport{ -1, 0, 0, 0}, SimpleReport{ 0, 1, 0, 0}) // LEFT - DOWN
));
// clang-format on

View File

@ -0,0 +1,8 @@
// Copyright 2024 Dasky (@daskygit)
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
#include "test_common.h"
#define POINTING_DEVICE_ROTATION_90

Some files were not shown because too many files have changed in this diff Show More