aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--keyboards/acr60/keymaps/default/keymap.c34
-rwxr-xr-xkeyboards/amj40/keymaps/default/keymap.c20
-rw-r--r--keyboards/amj60/keymaps/iso_split_rshift/keymap.c14
-rw-r--r--keyboards/clueboard/card/keymaps/default/keymap.c56
-rw-r--r--keyboards/do60/keymaps/default/keymap.c11
-rw-r--r--keyboards/do60/keymaps/test/keymap.c9
-rw-r--r--keyboards/ergodone/keymaps/default/keymap.c6
-rw-r--r--keyboards/ergodox_ez/keymaps/default/keymap.c6
-rw-r--r--keyboards/ergodox_ez/keymaps/default_osx/keymap.c6
-rw-r--r--keyboards/ergodox_infinity/keymaps/default/keymap.c6
-rw-r--r--keyboards/gh60/keymaps/default/keymap.c7
-rw-r--r--keyboards/handwired/dactyl/keymaps/default/keymap.c6
-rw-r--r--keyboards/handwired/dactyl/keymaps/dvorak/keymap.c6
-rw-r--r--keyboards/handwired/gamenum/keymaps/default/keymap.c56
-rw-r--r--keyboards/handwired/kbod/keymaps/default/keymap.c37
-rw-r--r--keyboards/handwired/space_oddity/keymaps/default/keymap.c2
-rw-r--r--keyboards/handwired/terminus_mini/keymaps/default/keymap.c15
-rw-r--r--keyboards/handwired/traveller/keymaps/default/keymap.c55
-rw-r--r--keyboards/kona_classic/keymaps/ansi/keymap.c38
-rw-r--r--keyboards/kona_classic/keymaps/ansi_arrows/keymap.c38
-rw-r--r--keyboards/kona_classic/keymaps/ansi_arrows_lcap/keymap.c38
-rw-r--r--keyboards/kona_classic/keymaps/ansi_split/keymap.c38
-rw-r--r--keyboards/kona_classic/keymaps/ansi_split_arrows/keymap.c38
-rw-r--r--keyboards/kona_classic/keymaps/default/keymap.c38
-rw-r--r--keyboards/kona_classic/keymaps/iso/keymap.c38
-rw-r--r--keyboards/kona_classic/keymaps/iso_arrows/keymap.c38
-rw-r--r--keyboards/kona_classic/keymaps/iso_split/keymap.c38
-rw-r--r--keyboards/kona_classic/keymaps/iso_split_arrows/keymap.c38
-rwxr-xr-xkeyboards/mechmini/v2/keymaps/default/keymap.c38
-rw-r--r--keyboards/org60/keymaps/default/keymap.c11
-rw-r--r--keyboards/satan/keymaps/colemak/keymap.c36
-rw-r--r--keyboards/satan/keymaps/default/keymap.c34
-rw-r--r--keyboards/satan/keymaps/iso_split_rshift/keymap.c75
-rw-r--r--keyboards/satan/keymaps/poker/keymap.c34
-rw-r--r--keyboards/sentraq/s60_x/keymaps/default/keymap.c8
-rw-r--r--keyboards/sentraq/s60_x/keymaps/default_rgb/keymap.c8
-rw-r--r--keyboards/sentraq/s60_x/keymaps/iso/keymap.c8
-rw-r--r--keyboards/sentraq/s60_x/keymaps/iso_rgb/keymap.c8
-rw-r--r--keyboards/vision_division/keymaps/default/keymap.c11
-rw-r--r--keyboards/whitefox/keymaps/default/keymap.c6
-rw-r--r--keyboards/xd60/keymaps/default/keymap.c9
-rw-r--r--keyboards/xd60/keymaps/iso/keymap.c9
42 files changed, 373 insertions, 654 deletions
diff --git a/keyboards/acr60/keymaps/default/keymap.c b/keyboards/acr60/keymaps/default/keymap.c
index a07e0ddc5..aafc1dfe6 100644
--- a/keyboards/acr60/keymaps/default/keymap.c
+++ b/keyboards/acr60/keymaps/default/keymap.c
@@ -1,6 +1,10 @@
1#include QMK_KEYBOARD_H 1#include QMK_KEYBOARD_H
2 2
3#define MODS_CTRL_MASK (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT)) 3#define MODS_SHIFT_MASK (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT))
4
5enum custom_keycodes {
6 SFT_ESC = SAFE_RANGE
7};
4 8
5const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 9const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
6 10
@@ -13,7 +17,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
13 * via the function actions code at the bottom. 17 * via the function actions code at the bottom.
14 */ 18 */
15 LAYOUT( 19 LAYOUT(
16 F(0), KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_NO, KC_BSPC, 20 SFT_ESC,KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_NO, KC_BSPC,
17 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, 21 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
18 KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, 22 KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
19 KC_LSFT, KC_NO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_NO, 23 KC_LSFT, KC_NO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_NO,
@@ -34,21 +38,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
34 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), 38 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
35}; 39};
36 40
37enum function_id { 41bool process_record_user(uint16_t keycode, keyrecord_t *record) {
38 SHIFT_ESC, 42 switch (keycode) {
39}; 43 case SFT_ESC:
40
41const uint16_t PROGMEM fn_actions[] = {
42 [0] = ACTION_FUNCTION(SHIFT_ESC),
43};
44
45void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
46 static uint8_t shift_esc_shift_mask;
47 switch (id) {
48 case SHIFT_ESC:
49 shift_esc_shift_mask = get_mods()&MODS_CTRL_MASK;
50 if (record->event.pressed) { 44 if (record->event.pressed) {
51 if (shift_esc_shift_mask) { 45 if (get_mods() & MODS_SHIFT_MASK) {
52 add_key(KC_GRV); 46 add_key(KC_GRV);
53 send_keyboard_report(); 47 send_keyboard_report();
54 } else { 48 } else {
@@ -56,7 +50,7 @@ void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
56 send_keyboard_report(); 50 send_keyboard_report();
57 } 51 }
58 } else { 52 } else {
59 if (shift_esc_shift_mask) { 53 if (get_mods() & MODS_SHIFT_MASK) {
60 del_key(KC_GRV); 54 del_key(KC_GRV);
61 send_keyboard_report(); 55 send_keyboard_report();
62 } else { 56 } else {
@@ -64,6 +58,10 @@ void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
64 send_keyboard_report(); 58 send_keyboard_report();
65 } 59 }
66 } 60 }
67 break; 61
62 return false;
63
64 default:
65 return true;
68 } 66 }
69} 67}
diff --git a/keyboards/amj40/keymaps/default/keymap.c b/keyboards/amj40/keymaps/default/keymap.c
index c81317b84..406ea8d25 100755
--- a/keyboards/amj40/keymaps/default/keymap.c
+++ b/keyboards/amj40/keymaps/default/keymap.c
@@ -45,7 +45,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
45 KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,\ 45 KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,\
46 KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_ENT,\ 46 KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_ENT,\
47 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH,\ 47 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH,\
48 KC_LCTL, KC_LGUI, KC_LALT, F(0), F(1), F(2), KC_RALT, KC_RCTL \ 48 KC_LCTL, KC_LGUI, KC_LALT, LT(_LOWER, KC_SPC),LT(_RAISE, KC_SPC),LT(_ADJUST, KC_LGUI), KC_RALT, KC_RCTL \
49 ), 49 ),
50 50
51 /* Function Layer 1 HHKB style 51 /* Function Layer 1 HHKB style
@@ -106,24 +106,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
106 106
107}; 107};
108 108
109
110
111
112enum function_id {
113 LAUNCH,
114 RGBLED_TOGGLE,
115};
116
117const uint16_t PROGMEM fn_actions[] = {
118 [0] = ACTION_LAYER_TAP_KEY(_LOWER, KC_SPC),
119 [1] = ACTION_LAYER_TAP_KEY(_RAISE, KC_SPC),
120 [2] = ACTION_LAYER_TAP_KEY(_ADJUST, KC_LGUI),
121
122};
123
124
125
126
127const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) 109const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
128{ 110{
129 // MACRODOWN only works in this function 111 // MACRODOWN only works in this function
diff --git a/keyboards/amj60/keymaps/iso_split_rshift/keymap.c b/keyboards/amj60/keymaps/iso_split_rshift/keymap.c
index b5fd731dd..ca5fa92be 100644
--- a/keyboards/amj60/keymaps/iso_split_rshift/keymap.c
+++ b/keyboards/amj60/keymaps/iso_split_rshift/keymap.c
@@ -111,21 +111,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
111 [_SFX] = LAYOUT_iso_splitrshift( 111 [_SFX] = LAYOUT_iso_splitrshift(
112 RESET, _______, _______, _______, _______, _______, _______, KC_7, KC_8, KC_9, _______, _______, _______, KC_BSPC, \ 112 RESET, _______, _______, _______, _______, _______, _______, KC_7, KC_8, KC_9, _______, _______, _______, KC_BSPC, \
113 _______, _______, _______, _______, _______, _______, _______, KC_4, KC_5, KC_6, _______, _______, _______, KC_BSLS, \ 113 _______, _______, _______, _______, _______, _______, _______, KC_4, KC_5, KC_6, _______, _______, _______, KC_BSLS, \
114 _______, F(2), F(3), _______, _______, _______, _______, KC_1, KC_2, KC_3, _______, _______, XXXXXXX, KC_ENT, \ 114 _______, _______, _______, _______, _______, _______, _______, KC_1, KC_2, KC_3, _______, _______, XXXXXXX, KC_ENT, \
115 _______, F(4), F(5), F(6), F(7), F(8), F(9), _______, _______, KC_0, _______, KC_SLSH, KC_UP, _______, \ 115 _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_0, _______, KC_SLSH, KC_UP, _______, \
116 _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT), 116 _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT),
117}; 117};
118 118
119enum function_id {
120 LAUNCH,
121 RGBLED_TOGGLE,
122};
123
124const uint16_t PROGMEM fn_actions[] = {
125 [1] = ACTION_FUNCTION(LAUNCH),
126 [10] = ACTION_MODS_TAP_KEY(MOD_LCTL, KC_ENT),
127};
128
129const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) 119const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
130{ 120{
131 // MACRODOWN only works in this function 121 // MACRODOWN only works in this function
diff --git a/keyboards/clueboard/card/keymaps/default/keymap.c b/keyboards/clueboard/card/keymaps/default/keymap.c
index 687343e1b..0fa1d9d98 100644
--- a/keyboards/clueboard/card/keymaps/default/keymap.c
+++ b/keyboards/clueboard/card/keymaps/default/keymap.c
@@ -1,12 +1,18 @@
1#include QMK_KEYBOARD_H 1#include QMK_KEYBOARD_H
2 2
3enum custom_keycodes {
4 SONG_SU = SAFE_RANGE,
5 SONG_SC,
6 SONG_GB
7};
8
3const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 9const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
4 [0] = LAYOUT( 10 [0] = LAYOUT(
5 RGB_TOG, RGB_SAI, RGB_VAI, \ 11 RGB_TOG, RGB_SAI, RGB_VAI, \
6 RGB_HUD, RGB_HUI, \ 12 RGB_HUD, RGB_HUI, \
7 RGB_MOD, RGB_SAD, RGB_VAD, \ 13 RGB_MOD, RGB_SAD, RGB_VAD, \
8 BL_STEP, \ 14 BL_STEP, \
9 F(0), F(1), F(2) \ 15 SONG_SU,SONG_SC,SONG_GB \
10 ) 16 )
11}; 17};
12 18
@@ -23,28 +29,6 @@ float music_scale[][2] = SONG(MUSIC_SCALE_SOUND);
23float tone_goodbye[][2] = SONG(GOODBYE_SOUND); 29float tone_goodbye[][2] = SONG(GOODBYE_SOUND);
24#endif 30#endif
25 31
26const uint16_t PROGMEM fn_actions[] = {
27 [0] = ACTION_FUNCTION(0),
28 [1] = ACTION_FUNCTION(1),
29 [2] = ACTION_FUNCTION(2)
30};
31
32void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
33 if (record->event.pressed) {
34 switch (id) {
35 case 0:
36 PLAY_SONG(tone_startup);
37 break;
38 case 1:
39 PLAY_SONG(music_scale);
40 break;
41 case 2:
42 PLAY_SONG(tone_goodbye);
43 break;
44 }
45 }
46};
47
48void matrix_init_user(void) { 32void matrix_init_user(void) {
49} 33}
50 34
@@ -53,7 +37,31 @@ void matrix_scan_user(void) {
53} 37}
54 38
55bool process_record_user(uint16_t keycode, keyrecord_t *record) { 39bool process_record_user(uint16_t keycode, keyrecord_t *record) {
56 return true; 40 switch (keycode) {
41 case SONG_SU:
42 if (record->event.pressed) {
43 PLAY_SONG(tone_startup);
44 }
45
46 return false;
47
48 case SONG_SC:
49 if (record->event.pressed) {
50 PLAY_SONG(music_scale);
51 }
52
53 return false;
54
55 case SONG_GB:
56 if (record->event.pressed) {
57 PLAY_SONG(tone_goodbye);
58 }
59
60 return false;
61
62 default:
63 return true;
64 }
57} 65}
58 66
59void led_set_user(uint8_t usb_led) { 67void led_set_user(uint8_t usb_led) {
diff --git a/keyboards/do60/keymaps/default/keymap.c b/keyboards/do60/keymaps/default/keymap.c
index 7c66f0ac0..75afb7a34 100644
--- a/keyboards/do60/keymaps/default/keymap.c
+++ b/keyboards/do60/keymaps/default/keymap.c
@@ -9,7 +9,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
9 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, \ 9 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, \
10 KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NO, KC_ENT, \ 10 KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NO, KC_ENT, \
11 KC_LSFT, KC_NO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_RSFT, KC_SLSH, KC_UP, KC_SLSH, \ 11 KC_LSFT, KC_NO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_RSFT, KC_SLSH, KC_UP, KC_SLSH, \
12 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_NO, KC_BSPC, KC_RGUI, F(0), KC_LEFT, KC_DOWN, KC_RIGHT), 12 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_NO, KC_BSPC, KC_RGUI, MO(1), KC_LEFT, KC_DOWN, KC_RIGHT),
13 13
14 // 1: Function Layer 14 // 1: Function Layer
15 [1] = LAYOUT_all( 15 [1] = LAYOUT_all(
@@ -17,15 +17,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
17 KC_NO, RGB_HUI, RGB_SAI, RGB_VAI, RGB_MOD, BL_TOGG,BL_ON, BL_INC, KC_INS, KC_NO, KC_PSCR, KC_SLCK, KC_PAUS, KC_DEL, \ 17 KC_NO, RGB_HUI, RGB_SAI, RGB_VAI, RGB_MOD, BL_TOGG,BL_ON, BL_INC, KC_INS, KC_NO, KC_PSCR, KC_SLCK, KC_PAUS, KC_DEL, \
18 KC_NO, RGB_HUD, RGB_SAD, RGB_VAD, RGB_RMOD, BL_STEP,BL_OFF, BL_DEC, KC_NO, KC_NO, KC_HOME, KC_PGUP, KC_NO, KC_ENT, \ 18 KC_NO, RGB_HUD, RGB_SAD, RGB_VAD, RGB_RMOD, BL_STEP,BL_OFF, BL_DEC, KC_NO, KC_NO, KC_HOME, KC_PGUP, KC_NO, KC_ENT, \
19 KC_LSFT, KC_NO, KC_NO, KC_APP, BL_STEP, KC_NO, KC_NO, KC_VOLD,KC_VOLU,KC_MUTE, KC_END, KC_RSFT, KC_NO , KC_PGUP, KC_INS, \ 19 KC_LSFT, KC_NO, KC_NO, KC_APP, BL_STEP, KC_NO, KC_NO, KC_VOLD,KC_VOLU,KC_MUTE, KC_END, KC_RSFT, KC_NO , KC_PGUP, KC_INS, \
20 KC_LCTL, KC_LGUI, KC_LALT, KC_BSPC,KC_SPC, KC_DEL, KC_RGUI, F(0), KC_HOME, KC_PGDOWN,KC_END), 20 KC_LCTL, KC_LGUI, KC_LALT, KC_BSPC,KC_SPC, KC_DEL, KC_RGUI, MO(1), KC_HOME, KC_PGDOWN,KC_END),
21 21
22}; 22};
23 23
24// Custom Actions
25const uint16_t PROGMEM fn_actions[] = {
26 [0] = ACTION_LAYER_MOMENTARY(1), // to Fn overlay
27 };
28
29// Macros 24// Macros
30/* 25/*
31const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) { 26const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {
@@ -44,4 +39,4 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {
44// Loop 39// Loop
45void matrix_scan_user(void) { 40void matrix_scan_user(void) {
46 // Empty 41 // Empty
47}; \ No newline at end of file 42};
diff --git a/keyboards/do60/keymaps/test/keymap.c b/keyboards/do60/keymaps/test/keymap.c
index 6bac713fd..f145177b0 100644
--- a/keyboards/do60/keymaps/test/keymap.c
+++ b/keyboards/do60/keymaps/test/keymap.c
@@ -9,7 +9,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
9 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, \ 9 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, \
10 KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NO, KC_ENT, \ 10 KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NO, KC_ENT, \
11 KC_LSFT, KC_NO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_SLSH, \ 11 KC_LSFT, KC_NO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_SLSH, \
12 KC_LCTL, KC_LGUI, KC_LALT, KC_BSPC,KC_SPC, KC_DEL, KC_RGUI, F(0), KC_LEFT, KC_DOWN, KC_RIGHT), 12 KC_LCTL, KC_LGUI, KC_LALT, KC_BSPC,KC_SPC, KC_DEL, KC_RGUI, MO(1), KC_LEFT, KC_DOWN, KC_RIGHT),
13 13
14 // 1: Function Layer 14 // 1: Function Layer
15 [1] = LAYOUT_all( 15 [1] = LAYOUT_all(
@@ -17,15 +17,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
17 KC_NO, RGB_HUI, RGB_SAI, RGB_VAI, RGB_MOD, KC_HOME,KC_CALC,KC_NO, KC_INS, KC_NO, KC_PSCR, KC_SLCK, KC_PAUS, KC_DEL, \ 17 KC_NO, RGB_HUI, RGB_SAI, RGB_VAI, RGB_MOD, KC_HOME,KC_CALC,KC_NO, KC_INS, KC_NO, KC_PSCR, KC_SLCK, KC_PAUS, KC_DEL, \
18 KC_NO, RGB_HUD, RGB_SAD, RGB_VAD, RGB_RMOD, KC_END, KC_PGDN,KC_NO, KC_NO, KC_NO, KC_HOME, KC_PGUP, KC_NO, KC_ENT, \ 18 KC_NO, RGB_HUD, RGB_SAD, RGB_VAD, RGB_RMOD, KC_END, KC_PGDN,KC_NO, KC_NO, KC_NO, KC_HOME, KC_PGUP, KC_NO, KC_ENT, \
19 KC_LSFT, KC_NO, KC_NO, KC_APP, BL_STEP, KC_NO, KC_NO, KC_VOLD,KC_VOLU,KC_MUTE, KC_END, KC_RSFT, KC_NO , KC_PGUP, KC_INS, \ 19 KC_LSFT, KC_NO, KC_NO, KC_APP, BL_STEP, KC_NO, KC_NO, KC_VOLD,KC_VOLU,KC_MUTE, KC_END, KC_RSFT, KC_NO , KC_PGUP, KC_INS, \
20 KC_LCTL, KC_LGUI, KC_LALT, KC_BSPC,KC_SPC, KC_DEL, KC_RGUI, F(0), KC_HOME, KC_PGDOWN,KC_END), 20 KC_LCTL, KC_LGUI, KC_LALT, KC_BSPC,KC_SPC, KC_DEL, KC_RGUI, MO(1), KC_HOME, KC_PGDOWN,KC_END),
21 21
22}; 22};
23 23
24// Custom Actions
25 const uint16_t PROGMEM fn_actions[] = {
26 [0] = ACTION_LAYER_MOMENTARY(1), // to Fn overlay
27 };
28
29// Macros 24// Macros
30/* 25/*
31const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) { 26const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {
diff --git a/keyboards/ergodone/keymaps/default/keymap.c b/keyboards/ergodone/keymaps/default/keymap.c
index cbc180d6a..92c140f26 100644
--- a/keyboards/ergodone/keymaps/default/keymap.c
+++ b/keyboards/ergodone/keymaps/default/keymap.c
@@ -53,7 +53,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
53 TG(SYMB), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, 53 TG(SYMB), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
54 KC_H, KC_J, KC_K, KC_L, LT(MDIA, KC_SCLN),GUI_T(KC_QUOT), 54 KC_H, KC_J, KC_K, KC_L, LT(MDIA, KC_SCLN),GUI_T(KC_QUOT),
55 MEH_T(KC_NO),KC_N, KC_M, KC_COMM,KC_DOT, CTL_T(KC_SLSH), KC_RSFT, 55 MEH_T(KC_NO),KC_N, KC_M, KC_COMM,KC_DOT, CTL_T(KC_SLSH), KC_RSFT,
56 KC_UP, KC_DOWN,KC_LBRC,KC_RBRC, KC_FN1, 56 KC_UP, KC_DOWN,KC_LBRC,KC_RBRC, TT(SYMB),
57 KC_LALT, CTL_T(KC_ESC), 57 KC_LALT, CTL_T(KC_ESC),
58 KC_PGUP, 58 KC_PGUP,
59 KC_PGDN,KC_TAB, KC_ENT 59 KC_PGDN,KC_TAB, KC_ENT
@@ -143,10 +143,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
143), 143),
144}; 144};
145 145
146const uint16_t PROGMEM fn_actions[] = {
147 [1] = ACTION_LAYER_TAP_TOGGLE(SYMB) // FN1 - Momentary Layer 1 (Symbols)
148};
149
150const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) 146const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
151{ 147{
152 // MACRODOWN only works in this function 148 // MACRODOWN only works in this function
diff --git a/keyboards/ergodox_ez/keymaps/default/keymap.c b/keyboards/ergodox_ez/keymaps/default/keymap.c
index 5834fa43a..40d0a1eaf 100644
--- a/keyboards/ergodox_ez/keymaps/default/keymap.c
+++ b/keyboards/ergodox_ez/keymaps/default/keymap.c
@@ -48,7 +48,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
48 TG(SYMB), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, 48 TG(SYMB), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
49 KC_H, KC_J, KC_K, KC_L, LT(MDIA, KC_SCLN), GUI_T(KC_QUOT), 49 KC_H, KC_J, KC_K, KC_L, LT(MDIA, KC_SCLN), GUI_T(KC_QUOT),
50 MEH_T(KC_NO), KC_N, KC_M, KC_COMM, KC_DOT, CTL_T(KC_SLSH), KC_RSFT, 50 MEH_T(KC_NO), KC_N, KC_M, KC_COMM, KC_DOT, CTL_T(KC_SLSH), KC_RSFT,
51 KC_UP, KC_DOWN, KC_LBRC, KC_RBRC, KC_FN1, 51 KC_UP, KC_DOWN, KC_LBRC, KC_RBRC, TT(SYMB),
52 KC_LALT, CTL_T(KC_ESC), 52 KC_LALT, CTL_T(KC_ESC),
53 KC_PGUP, 53 KC_PGUP,
54 KC_PGDN, KC_TAB, KC_ENT 54 KC_PGDN, KC_TAB, KC_ENT
@@ -137,10 +137,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
137), 137),
138}; 138};
139 139
140const uint16_t PROGMEM fn_actions[] = {
141 [1] = ACTION_LAYER_TAP_TOGGLE(SYMB) // FN1 - Momentary Layer 1 (Symbols)
142};
143
144bool process_record_user(uint16_t keycode, keyrecord_t *record) { 140bool process_record_user(uint16_t keycode, keyrecord_t *record) {
145 if (record->event.pressed) { 141 if (record->event.pressed) {
146 switch (keycode) { 142 switch (keycode) {
diff --git a/keyboards/ergodox_ez/keymaps/default_osx/keymap.c b/keyboards/ergodox_ez/keymaps/default_osx/keymap.c
index 038940772..864c62a47 100644
--- a/keyboards/ergodox_ez/keymaps/default_osx/keymap.c
+++ b/keyboards/ergodox_ez/keymaps/default_osx/keymap.c
@@ -48,7 +48,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
48 TG(SYMB), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, 48 TG(SYMB), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
49 KC_H, KC_J, KC_K, KC_L, LT(MDIA, KC_SCLN),KC_LGUI, 49 KC_H, KC_J, KC_K, KC_L, LT(MDIA, KC_SCLN),KC_LGUI,
50 MEH_T(KC_NO),KC_N, KC_M, KC_COMM,KC_DOT, CTL_T(KC_SLSH), KC_RSFT, 50 MEH_T(KC_NO),KC_N, KC_M, KC_COMM,KC_DOT, CTL_T(KC_SLSH), KC_RSFT,
51 KC_UP, KC_DOWN,KC_LBRC,KC_RBRC, KC_FN1, 51 KC_UP, KC_DOWN,KC_LBRC,KC_RBRC, TT(SYMB),
52 KC_LALT, CTL_T(KC_ESC), 52 KC_LALT, CTL_T(KC_ESC),
53 KC_PGUP, 53 KC_PGUP,
54 KC_PGDN,KC_TAB, KC_ENT 54 KC_PGDN,KC_TAB, KC_ENT
@@ -138,10 +138,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
138), 138),
139}; 139};
140 140
141const uint16_t PROGMEM fn_actions[] = {
142 [1] = ACTION_LAYER_TAP_TOGGLE(SYMB) // FN1 - Momentary Layer 1 (Symbols)
143};
144
145const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) 141const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
146{ 142{
147 // MACRODOWN only works in this function 143 // MACRODOWN only works in this function
diff --git a/keyboards/ergodox_infinity/keymaps/default/keymap.c b/keyboards/ergodox_infinity/keymaps/default/keymap.c
index cbc180d6a..92c140f26 100644
--- a/keyboards/ergodox_infinity/keymaps/default/keymap.c
+++ b/keyboards/ergodox_infinity/keymaps/default/keymap.c
@@ -53,7 +53,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
53 TG(SYMB), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, 53 TG(SYMB), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
54 KC_H, KC_J, KC_K, KC_L, LT(MDIA, KC_SCLN),GUI_T(KC_QUOT), 54 KC_H, KC_J, KC_K, KC_L, LT(MDIA, KC_SCLN),GUI_T(KC_QUOT),
55 MEH_T(KC_NO),KC_N, KC_M, KC_COMM,KC_DOT, CTL_T(KC_SLSH), KC_RSFT, 55 MEH_T(KC_NO),KC_N, KC_M, KC_COMM,KC_DOT, CTL_T(KC_SLSH), KC_RSFT,
56 KC_UP, KC_DOWN,KC_LBRC,KC_RBRC, KC_FN1, 56 KC_UP, KC_DOWN,KC_LBRC,KC_RBRC, TT(SYMB),
57 KC_LALT, CTL_T(KC_ESC), 57 KC_LALT, CTL_T(KC_ESC),
58 KC_PGUP, 58 KC_PGUP,
59 KC_PGDN,KC_TAB, KC_ENT 59 KC_PGDN,KC_TAB, KC_ENT
@@ -143,10 +143,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
143), 143),
144}; 144};
145 145
146const uint16_t PROGMEM fn_actions[] = {
147 [1] = ACTION_LAYER_TAP_TOGGLE(SYMB) // FN1 - Momentary Layer 1 (Symbols)
148};
149
150const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) 146const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
151{ 147{
152 // MACRODOWN only works in this function 148 // MACRODOWN only works in this function
diff --git a/keyboards/gh60/keymaps/default/keymap.c b/keyboards/gh60/keymaps/default/keymap.c
index f8ca9a35c..14a71af29 100644
--- a/keyboards/gh60/keymaps/default/keymap.c
+++ b/keyboards/gh60/keymaps/default/keymap.c
@@ -10,7 +10,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
10 KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_GRV, 10 KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_GRV,
11 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC, 11 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC,
12 KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NO, KC_ENT, 12 KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NO, KC_ENT,
13 KC_LSFT, F(1), KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, F(0), KC_RSFT, 13 KC_LSFT, TG(2), KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, MO(1), KC_RSFT,
14 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_BSLS, KC_RALT, KC_RGUI, KC_APP, KC_RCTL 14 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_BSLS, KC_RALT, KC_RGUI, KC_APP, KC_RCTL
15 ), 15 ),
16 /* 1: fn */ 16 /* 1: fn */
@@ -33,11 +33,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
33 33
34}; 34};
35 35
36const uint16_t PROGMEM fn_actions[] = {
37 [0] = ACTION_LAYER_MOMENTARY(1), // to Fn overlay
38 [1] = ACTION_LAYER_TOGGLE(2), // toggle arrow overlay
39};
40
41const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) 36const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
42{ 37{
43 // MACRODOWN only works in this function 38 // MACRODOWN only works in this function
diff --git a/keyboards/handwired/dactyl/keymaps/default/keymap.c b/keyboards/handwired/dactyl/keymaps/default/keymap.c
index c4a638c2a..db666f43f 100644
--- a/keyboards/handwired/dactyl/keymaps/default/keymap.c
+++ b/keyboards/handwired/dactyl/keymaps/default/keymap.c
@@ -47,7 +47,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
47 KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, 47 KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
48 KC_H, KC_J, KC_K, KC_L, LT(MDIA, KC_SCLN), GUI_T(KC_QUOT), 48 KC_H, KC_J, KC_K, KC_L, LT(MDIA, KC_SCLN), GUI_T(KC_QUOT),
49 KC_N, KC_M, KC_COMM, KC_DOT, CTL_T(KC_SLSH), KC_RSFT, 49 KC_N, KC_M, KC_COMM, KC_DOT, CTL_T(KC_SLSH), KC_RSFT,
50 KC_UP, KC_DOWN, KC_LBRC, KC_RBRC, KC_FN1, 50 KC_UP, KC_DOWN, KC_LBRC, KC_RBRC, TT(SYMB),
51 KC_RALT, CTL_T(KC_ESC), 51 KC_RALT, CTL_T(KC_ESC),
52 KC_PGUP, 52 KC_PGUP,
53 KC_PGDN, KC_TAB, KC_ENT 53 KC_PGDN, KC_TAB, KC_ENT
@@ -137,10 +137,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
137), 137),
138}; 138};
139 139
140const uint16_t PROGMEM fn_actions[] = {
141 [1] = ACTION_LAYER_TAP_TOGGLE(SYMB) // FN1 - Momentary Layer 1 (Symbols)
142};
143
144const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) 140const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
145{ 141{
146 // MACRODOWN only works in this function 142 // MACRODOWN only works in this function
diff --git a/keyboards/handwired/dactyl/keymaps/dvorak/keymap.c b/keyboards/handwired/dactyl/keymaps/dvorak/keymap.c
index 56762d1b6..7c44f78a6 100644
--- a/keyboards/handwired/dactyl/keymaps/dvorak/keymap.c
+++ b/keyboards/handwired/dactyl/keymaps/dvorak/keymap.c
@@ -47,7 +47,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
47 KC_F, KC_G, KC_C, KC_R, KC_L, KC_BSLS, 47 KC_F, KC_G, KC_C, KC_R, KC_L, KC_BSLS,
48 KC_D, KC_H, KC_T, KC_N, LT(MDIA, KC_S), GUI_T(KC_SLSH), 48 KC_D, KC_H, KC_T, KC_N, LT(MDIA, KC_S), GUI_T(KC_SLSH),
49 KC_B, KC_M, KC_W, KC_V, CTL_T(KC_Z), KC_RSFT, 49 KC_B, KC_M, KC_W, KC_V, CTL_T(KC_Z), KC_RSFT,
50 KC_UP, KC_DOWN, KC_LBRC, KC_RBRC, KC_FN1, 50 KC_UP, KC_DOWN, KC_LBRC, KC_RBRC, TT(SYMB),
51 KC_RALT, CTL_T(KC_ESC), 51 KC_RALT, CTL_T(KC_ESC),
52 KC_PGUP, 52 KC_PGUP,
53 KC_PGDN, KC_TAB, KC_ENT 53 KC_PGDN, KC_TAB, KC_ENT
@@ -137,10 +137,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
137), 137),
138}; 138};
139 139
140const uint16_t PROGMEM fn_actions[] = {
141 [1] = ACTION_LAYER_TAP_TOGGLE(SYMB) // FN1 - Momentary Layer 1 (Symbols)
142};
143
144const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) 140const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
145{ 141{
146 // MACRODOWN only works in this function 142 // MACRODOWN only works in this function
diff --git a/keyboards/handwired/gamenum/keymaps/default/keymap.c b/keyboards/handwired/gamenum/keymaps/default/keymap.c
index a18ffc89b..7d667cd39 100644
--- a/keyboards/handwired/gamenum/keymaps/default/keymap.c
+++ b/keyboards/handwired/gamenum/keymaps/default/keymap.c
@@ -7,21 +7,21 @@
7 7
8const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 8const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
9 [DEF] = LAYOUT( 9 [DEF] = LAYOUT(
10 KC_FN0, KC_SLSH, KC_ASTR, KC_MINS, \ 10 TO(HDN), KC_SLSH, KC_ASTR, KC_MINS, \
11 KC_7, KC_8, KC_9, KC_PLUS, \ 11 KC_7, KC_8, KC_9, KC_PLUS, \
12 KC_4, KC_5, KC_6, \ 12 KC_4, KC_5, KC_6, \
13 KC_1, KC_2, KC_3, \ 13 KC_1, KC_2, KC_3, \
14 KC_0, KC_DOT, KC_ENT \ 14 KC_0, KC_DOT, KC_ENT \
15 ), 15 ),
16 [HDN] = LAYOUT( 16 [HDN] = LAYOUT(
17 KC_FN1, KC_1, KC_2, KC_3, \ 17 TO(OSY), KC_1, KC_2, KC_3, \
18 KC_Q, KC_W, KC_E, KC_R, \ 18 KC_Q, KC_W, KC_E, KC_R, \
19 KC_A, KC_S, KC_D, \ 19 KC_A, KC_S, KC_D, \
20 KC_Z, KC_X, KC_C, \ 20 KC_Z, KC_X, KC_C, \
21 KC_LSFT, KC_LALT, KC_SPC \ 21 KC_LSFT, KC_LALT, KC_SPC \
22 ), 22 ),
23 [OSY] = LAYOUT( 23 [OSY] = LAYOUT(
24 KC_A, KC_Q, KC_1, KC_FN2, \ 24 KC_A, KC_Q, KC_1, TO(DEF), \
25 KC_S, KC_W, KC_2, KC_LALT, \ 25 KC_S, KC_W, KC_2, KC_LALT, \
26 KC_D, KC_E, KC_3, \ 26 KC_D, KC_E, KC_3, \
27 KC_F, KC_R, KC_4, \ 27 KC_F, KC_R, KC_4, \
@@ -29,36 +29,36 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
29 ) 29 )
30}; 30};
31 31
32
33const uint16_t PROGMEM fn_actions[] = {
34 [0] = ACTION_LAYER_SET(HDN, ON_PRESS),
35 [1] = ACTION_LAYER_SET(OSY, ON_PRESS),
36 [2] = ACTION_LAYER_SET(DEF, ON_PRESS),
37};
38
39const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) { 32const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {
40 return MACRO_NONE; 33 return MACRO_NONE;
41}; 34};
42 35
43 36
44bool process_record_user (uint16_t keycode, keyrecord_t *record) { 37bool process_record_user(uint16_t keycode, keyrecord_t *record) {
45 switch(keycode) { 38 switch(keycode) {
46 case KC_FN0: 39 case TO(HDN):
47 if (record->event.pressed) { 40 if (record->event.pressed) {
48 PORTC |= (1 << 6); // PC6 goes high 41 PORTC |= (1 << 6); // PC6 goes high
49 } 42 }
50 break; 43
51 case KC_FN1: 44 return true;
52 if (record->event.pressed) { 45
53 PORTC &= ~(1 << 6); // PC6 goes high 46 case TO(OSY):
54 PORTD |= (1<<4); 47 if (record->event.pressed) {
55 } 48 PORTC &= ~(1 << 6); // PC6 goes high
56 break; 49 PORTD |= (1<<4);
57 case KC_FN2: 50 }
58 if (record->event.pressed) { 51
59 PORTD &= ~(1 << 4); // PC6 goes high 52 return true;
60 } 53
61 break; 54 case TO(DEF):
55 if (record->event.pressed) {
56 PORTD &= ~(1 << 4); // PC6 goes high
57 }
58
59 return true;
60
61 default:
62 return true;
62 } 63 }
63 return true;
64} 64}
diff --git a/keyboards/handwired/kbod/keymaps/default/keymap.c b/keyboards/handwired/kbod/keymaps/default/keymap.c
index 063a94b4d..49083820a 100644
--- a/keyboards/handwired/kbod/keymaps/default/keymap.c
+++ b/keyboards/handwired/kbod/keymaps/default/keymap.c
@@ -2,6 +2,11 @@
2 2
3#define MODS_PRESSED(btn) (get_mods() & (MOD_BIT(KC_L##btn)|MOD_BIT(KC_R##btn))) 3#define MODS_PRESSED(btn) (get_mods() & (MOD_BIT(KC_L##btn)|MOD_BIT(KC_R##btn)))
4 4
5enum custom_keycodes {
6 SFT_ESC = SAFE_RANGE,
7 ALT_F4
8};
9
5#define SET_WHETHER(mask, btn1, btn2) \ 10#define SET_WHETHER(mask, btn1, btn2) \
6if (record->event.pressed) { \ 11if (record->event.pressed) { \
7 if (mask) { \ 12 if (mask) { \
@@ -24,7 +29,7 @@ if (record->event.pressed) { \
24 29
25const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 30const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
26 LAYOUT( /* Base */ 31 LAYOUT( /* Base */
27 F(0), KC_1, KC_2, KC_3, F(1), KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, \ 32 SFT_ESC, KC_1, KC_2, KC_3, ALT_F4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, \
28 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, \ 33 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, \
29 KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, \ 34 KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, \
30 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, \ 35 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, \
@@ -38,7 +43,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
38 _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT \ 43 _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT \
39 ), 44 ),
40 LAYOUT( /* Keypad layer */ 45 LAYOUT( /* Keypad layer */
41 TO(0), KC_1, KC_2, KC_3, F(1), KC_5, KC_6, KC_P7, KC_P8, KC_P9, KC_P0, KC_PMNS, KC_PPLS, KC_BSPC, \ 46 TO(0), KC_1, KC_2, KC_3, ALT_F4, KC_5, KC_6, KC_P7, KC_P8, KC_P9, KC_P0, KC_PMNS, KC_PPLS, KC_BSPC, \
42 _______, _______, _______, _______, _______, _______, _______, KC_P4, KC_P5, KC_P6, _______, _______, _______, _______, \ 47 _______, _______, _______, _______, _______, _______, _______, KC_P4, KC_P5, KC_P6, _______, _______, _______, _______, \
43 _______, _______, _______, _______, _______, _______, _______, KC_P1, KC_P2, KC_P3, _______, _______, _______, \ 48 _______, _______, _______, _______, _______, _______, _______, KC_P1, KC_P2, KC_P3, _______, _______, _______, \
44 _______, _______, _______, _______, _______, _______, _______, KC_P0, KC_PDOT, KC_BTN1, KC_MS_U, KC_BTN2, \ 49 _______, _______, _______, _______, _______, _______, _______, KC_P0, KC_PDOT, KC_BTN1, KC_MS_U, KC_BTN2, \
@@ -53,24 +58,20 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
53 ), 58 ),
54}; 59};
55 60
56const uint16_t PROGMEM fn_actions[] = { 61bool process_record_user(uint16_t keycode, keyrecord_t *record) {
57 [0] = ACTION_FUNCTION(0), 62 switch (keycode) {
58 [1] = ACTION_FUNCTION(1), 63 case SFT_ESC:
59}; 64 SET_WHETHER(MODS_PRESSED(SHIFT), KC_ESC, KC_GRAVE);
65
66 return false;
67
68 case ALT_F4:
69 SET_WHETHER(MODS_PRESSED(ALT), KC_4, KC_F4);
60 70
71 return false;
61 72
62void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) { 73 default:
63 static uint8_t shift_esc_mask; 74 return true;
64 static uint8_t alt_mask;
65 switch (id) {
66 case 0:
67 shift_esc_mask = MODS_PRESSED(SHIFT);
68 SET_WHETHER(shift_esc_mask, KC_ESC, KC_GRAVE);
69 break;
70 case 1:
71 alt_mask = MODS_PRESSED(ALT);
72 SET_WHETHER(alt_mask, KC_4, KC_F4);
73 break;
74 } 75 }
75} 76}
76 77
diff --git a/keyboards/handwired/space_oddity/keymaps/default/keymap.c b/keyboards/handwired/space_oddity/keymaps/default/keymap.c
index 6e42a2815..e7836353e 100644
--- a/keyboards/handwired/space_oddity/keymaps/default/keymap.c
+++ b/keyboards/handwired/space_oddity/keymaps/default/keymap.c
@@ -38,8 +38,6 @@ enum {
38 38
39#include "dynamic_macro.h" 39#include "dynamic_macro.h"
40 40
41#define MOUSE_LAYER 2
42
43// Tap dance actions - double tap for Caps Lock. 41// Tap dance actions - double tap for Caps Lock.
44qk_tap_dance_action_t tap_dance_actions[] = { 42qk_tap_dance_action_t tap_dance_actions[] = {
45 43
diff --git a/keyboards/handwired/terminus_mini/keymaps/default/keymap.c b/keyboards/handwired/terminus_mini/keymaps/default/keymap.c
index 1c4af5f46..556b96c88 100644
--- a/keyboards/handwired/terminus_mini/keymaps/default/keymap.c
+++ b/keyboards/handwired/terminus_mini/keymaps/default/keymap.c
@@ -53,17 +53,10 @@ enum custom_macros {
53 R_POINT 53 R_POINT
54}; 54};
55 55
56 // Enable these functions using FUNC(n) macro. 56#define SPC_LW LT(_LOWER, KC_SPC)
57 const uint16_t PROGMEM fn_actions[] = { //ACTION_LAYER_TAP_TOGGLE requires that number of taps be defined in *config.h* - default set to 5 57#define ENT_RS LT(_RAISE, KC_ENT)
58 [0] = ACTION_LAYER_TAP_KEY(_LOWER, KC_SPC), //Hold for momentary Lower layer, Tap for Space, 58#define FNC MO(_FUNCTION)
59 [1] = ACTION_LAYER_TAP_KEY(_RAISE, KC_ENT), //Hold for momentary Mouse layer, Tap for Enter, 59#define MSE MO(_MOUSE)
60 [2] = ACTION_LAYER_MOMENTARY(_FUNCTION), //Hold for momentary Function
61 [3] = ACTION_LAYER_MOMENTARY(_MOUSE) //Hold for momentary MOUSE
62 };
63#define SPC_LW FUNC(0)
64#define ENT_RS FUNC(1)
65#define FNC FUNC(2)
66#define MSE FUNC(3)
67#define PIPE M(R_PIPE) 60#define PIPE M(R_PIPE)
68#define POINT M(R_POINT) 61#define POINT M(R_POINT)
69 62
diff --git a/keyboards/handwired/traveller/keymaps/default/keymap.c b/keyboards/handwired/traveller/keymaps/default/keymap.c
index f7f08268f..1b1038fd7 100644
--- a/keyboards/handwired/traveller/keymaps/default/keymap.c
+++ b/keyboards/handwired/traveller/keymaps/default/keymap.c
@@ -38,9 +38,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
38 * 38 *
39 */ 39 */
40[_QW] = KEYMAP( 40[_QW] = KEYMAP(
41 F(_NAV), KC_GRV, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_MINS, KC_EQL, 41 TG(_NAV), KC_GRV, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_MINS, KC_EQL,
42 KC_TAB, KC_Q, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_P, KC_BSLS, 42 KC_TAB, KC_Q, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_P, KC_BSLS,
43 CTL_T(KC_ESC), KC_A, KC_X, KC_C, KC_V, KC_B, KC_RCTL, KC_N, KC_M, KC_COMM, KC_DOT, KC_SCLN, KC_QUOT, 43 CTL_T(KC_ESC), KC_A, KC_X, KC_C, KC_V, KC_B, KC_RCTL, KC_N, KC_M, KC_COMM, KC_DOT, KC_SCLN, KC_QUOT,
44 KC_LSFT, KC_Z, KC_DEL, KC_LGUI, MO(_LW), KC_BSPC, KC_ENTER, KC_SPC, MO(_HI), KC_RGUI, KC_RALT, KC_SLSH, KC_RSFT 44 KC_LSFT, KC_Z, KC_DEL, KC_LGUI, MO(_LW), KC_BSPC, KC_ENTER, KC_SPC, MO(_HI), KC_RGUI, KC_RALT, KC_SLSH, KC_RSFT
45 ), 45 ),
46 46
@@ -59,7 +59,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
59 */ 59 */
60 60
61[_LW] = KEYMAP( 61[_LW] = KEYMAP(
62 F(_FKEYS), KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, LCTL(LALT(KC_DEL)) , 62 TG(_FKEYS), KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, LCTL(LALT(KC_DEL)) ,
63 KC_TRNS, KC_1, KC_RBRC, KC_LPRN, KC_RPRN, KC_NO, KC_ASTR, KC_LPRN, KC_RPRN, KC_LBRC, KC_NO, KC_NO, 63 KC_TRNS, KC_1, KC_RBRC, KC_LPRN, KC_RPRN, KC_NO, KC_ASTR, KC_LPRN, KC_RPRN, KC_LBRC, KC_NO, KC_NO,
64 KC_CAPS, KC_LBRC, KC_NO, KC_LCBR, KC_RCBR, KC_TILD, KC_TRNS, KC_HASH, KC_LCBR, KC_RCBR, KC_NO, KC_RBRC, KC_NO, 64 KC_CAPS, KC_LBRC, KC_NO, KC_LCBR, KC_RCBR, KC_TILD, KC_TRNS, KC_HASH, KC_LCBR, KC_RCBR, KC_NO, KC_RBRC, KC_NO,
65 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS 65 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
@@ -81,11 +81,11 @@ Right hand nav keys work pretty well chorded with the Right hand Hi Key
81 */ 81 */
82 82
83[_HI] = KEYMAP( 83[_HI] = KEYMAP(
84 F(_FKEYS), KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_PLUS, 84 TG(_FKEYS),KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_PLUS,
85 KC_TRNS, KC_EXLM, KC_AMPR, KC_PIPE, KC_DLR, KC_PERC, KC_VOLU, KC_MUTE, KC_NO, KC_NO, KC_NO, KC_NO, 85 KC_TRNS, KC_EXLM, KC_AMPR, KC_PIPE, KC_DLR, KC_PERC, KC_VOLU, KC_MUTE, KC_NO, KC_NO, KC_NO, KC_NO,
86 KC_CAPS, KC_CIRC, KC_COLN, KC_DOT, KC_ASTR, KC_MINS, KC_TRNS, KC_VOLD, KC_PPLS, KC_PGUP, KC_HOME, KC_UP, KC_END, 86 KC_CAPS, KC_CIRC, KC_COLN, KC_DOT, KC_ASTR, KC_MINS, KC_TRNS, KC_VOLD, KC_PPLS, KC_PGUP, KC_HOME, KC_UP, KC_END,
87 KC_TRNS, KC_SLSH, KC_TRNS, KC_TRNS, F(_LW), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGDN, KC_LEFT, KC_DOWN, KC_RIGHT 87 KC_TRNS, KC_SLSH, KC_TRNS, KC_TRNS, TT(_LW), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGDN, KC_LEFT, KC_DOWN, KC_RIGHT
88), 88),
89 89
90/* NAV - mouse & navigation 90/* NAV - mouse & navigation
91//gui left and right are line home/end, or fore & back in browser 91//gui left and right are line home/end, or fore & back in browser
@@ -103,7 +103,7 @@ Right hand nav keys work pretty well chorded with the Right hand Hi Key
103*/ 103*/
104 104
105[_NAV] = KEYMAP( 105[_NAV] = KEYMAP(
106 F(_NAV), KC_NO, KC_NO, KC_UP, KC_NO, RGUI(KC_RIGHT), KC_WH_U, M(MUL), KC_MS_U, M(MUR), KC_NO, KC_ACL2, 106 TG(_NAV), KC_NO, KC_NO, KC_UP, KC_NO, RGUI(KC_RIGHT), KC_WH_U, M(MUL), KC_MS_U, M(MUR), KC_NO, KC_ACL2,
107 KC_TRNS, RGUI(KC_LEFT), KC_LEFT, KC_DOWN, KC_RIGHT, LCTL(KC_E), KC_BTN3, KC_MS_L, KC_MS_U, KC_MS_R, KC_NO, KC_ACL1, 107 KC_TRNS, RGUI(KC_LEFT), KC_LEFT, KC_DOWN, KC_RIGHT, LCTL(KC_E), KC_BTN3, KC_MS_L, KC_MS_U, KC_MS_R, KC_NO, KC_ACL1,
108 KC_TRNS, LCTL(KC_A), LGUI(KC_X),RGUI(KC_C), RGUI(KC_V),KC_NO, KC_ENTER, KC_WH_D, M(MDL), KC_MS_D, M(MDR), KC_UP, KC_ACL0, 108 KC_TRNS, LCTL(KC_A), LGUI(KC_X),RGUI(KC_C), RGUI(KC_V),KC_NO, KC_ENTER, KC_WH_D, M(MDL), KC_MS_D, M(MDR), KC_UP, KC_ACL0,
109 KC_TRNS, RGUI(KC_Z), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN2, KC_BTN1, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT 109 KC_TRNS, RGUI(KC_Z), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN2, KC_BTN1, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT
@@ -123,10 +123,10 @@ Right hand nav keys work pretty well chorded with the Right hand Hi Key
123 */ 123 */
124 124
125[_FKEYS] = KEYMAP( 125[_FKEYS] = KEYMAP(
126 F(_FKEYS), KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_RCTL, 126 TG(_FKEYS),KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_RCTL,
127 KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_F11, KC_F12, KC_F13, KC_F14, KC_F15, KC_LALT , 127 KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_F11, KC_F12, KC_F13, KC_F14, KC_F15, KC_LALT ,
128 F(_QW), KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_DEL, 128 TO(_QW), KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_DEL,
129 KC_TRNS, F(RGBLED_TOGGLE), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS 129 KC_TRNS, RGB_TOG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
130), 130),
131 131
132 132
@@ -145,26 +145,14 @@ Right hand nav keys work pretty well chorded with the Right hand Hi Key
145 145
146[_TRNS] = { 146[_TRNS] = {
147 {KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS}, 147 {KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS},
148 {KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS}, 148 {KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS},
149 {KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS}, 149 {KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS},
150 {KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS} 150 {KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS}
151 } 151 }
152 152
153 153
154}; 154};
155 155
156
157const uint16_t PROGMEM fn_actions[] = {
158 [_QW] = ACTION_LAYER_ON(_QW,ON_RELEASE), // return to QWERTY layer
159 [_LW] = ACTION_LAYER_TAP_TOGGLE(_LW), // Turn on LW when holding, or tap 3 times to switch
160 [_NAV] = ACTION_LAYER_TOGGLE(_NAV),
161 [_FKEYS] = ACTION_LAYER_TOGGLE(_FKEYS),
162
163 // Functions
164 [RGBLED_TOGGLE] = ACTION_FUNCTION(RGBLED_TOGGLE),
165
166};
167
168const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) 156const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
169{ 157{
170 // MACRODOWN only works in this function 158 // MACRODOWN only works in this function
@@ -230,21 +218,6 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
230 return MACRO_NONE; 218 return MACRO_NONE;
231}; 219};
232 220
233
234
235void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
236 switch (id) {
237 case RGBLED_TOGGLE:
238 //led operations
239 if (record->event.pressed) {
240 rgblight_toggle();
241 }
242 break;
243 }
244}
245
246
247
248void LayerLEDSet(uint8_t layr) { 221void LayerLEDSet(uint8_t layr) {
249 222
250 switch (layr) { 223 switch (layr) {
diff --git a/keyboards/kona_classic/keymaps/ansi/keymap.c b/keyboards/kona_classic/keymaps/ansi/keymap.c
index 3d2061e80..3eba76d63 100644
--- a/keyboards/kona_classic/keymaps/ansi/keymap.c
+++ b/keyboards/kona_classic/keymaps/ansi/keymap.c
@@ -15,9 +15,13 @@
15 */ 15 */
16#include QMK_KEYBOARD_H 16#include QMK_KEYBOARD_H
17 17
18#define MODS_SHFT_MASK (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT)|MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI)) 18#define MODS_SHIFT_GUI_MASK (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT)|MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI))
19#define MODS_GUI_MASK (MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI)) 19#define MODS_GUI_MASK (MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI))
20 20
21enum custom_keycodes {
22 SFT_ESC = SAFE_RANGE
23};
24
21// Helpful defines 25// Helpful defines
22#define _______ KC_TRNS 26#define _______ KC_TRNS
23#define XXXXXXX KC_NO 27#define XXXXXXX KC_NO
@@ -29,7 +33,7 @@
29 33
30const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 34const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
31 [_DEFAULT] = LAYOUT_ansi( 35 [_DEFAULT] = LAYOUT_ansi(
32 KC_F1, KC_F2, F(0), KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, \ 36 KC_F1, KC_F2, SFT_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, \
33 KC_F3, KC_F4, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, \ 37 KC_F3, KC_F4, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, \
34 KC_F5, KC_F6, KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, \ 38 KC_F5, KC_F6, KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, \
35 KC_F7, KC_F8, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, \ 39 KC_F7, KC_F8, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, \
@@ -55,29 +59,15 @@ void matrix_scan_user(void) {
55 59
56} 60}
57 61
58bool process_record_user(uint16_t keycode, keyrecord_t *record) {
59 return true;
60}
61
62void led_set_user(uint8_t usb_led) { 62void led_set_user(uint8_t usb_led) {
63 63
64} 64}
65 65
66enum function_id { 66bool process_record_user(uint16_t keycode, keyrecord_t *record) {
67 ESCAPE, 67 switch (keycode) {
68}; 68 case SFT_ESC:
69
70const uint16_t PROGMEM fn_actions[] = {
71 [0] = ACTION_FUNCTION(ESCAPE),
72};
73
74void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
75 static uint8_t shift_esc_shift_mask;
76 switch (id) {
77 case ESCAPE:
78 shift_esc_shift_mask = get_mods()&MODS_SHFT_MASK;
79 if (record->event.pressed) { 69 if (record->event.pressed) {
80 if (shift_esc_shift_mask) { 70 if (get_mods() & MODS_SHIFT_GUI_MASK) {
81 add_key(KC_GRV); 71 add_key(KC_GRV);
82 send_keyboard_report(); 72 send_keyboard_report();
83 } else { 73 } else {
@@ -85,7 +75,7 @@ void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
85 send_keyboard_report(); 75 send_keyboard_report();
86 } 76 }
87 } else { 77 } else {
88 if (shift_esc_shift_mask) { 78 if (get_mods() & MODS_SHIFT_GUI_MASK) {
89 del_key(KC_GRV); 79 del_key(KC_GRV);
90 send_keyboard_report(); 80 send_keyboard_report();
91 } else { 81 } else {
@@ -93,6 +83,10 @@ void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
93 send_keyboard_report(); 83 send_keyboard_report();
94 } 84 }
95 } 85 }
96 break; 86
87 return false;
88
89 default:
90 return true;
97 } 91 }
98} 92}
diff --git a/keyboards/kona_classic/keymaps/ansi_arrows/keymap.c b/keyboards/kona_classic/keymaps/ansi_arrows/keymap.c
index 6e281f951..43c27c503 100644
--- a/keyboards/kona_classic/keymaps/ansi_arrows/keymap.c
+++ b/keyboards/kona_classic/keymaps/ansi_arrows/keymap.c
@@ -15,9 +15,13 @@
15 */ 15 */
16#include QMK_KEYBOARD_H 16#include QMK_KEYBOARD_H
17 17
18#define MODS_SHFT_MASK (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT)|MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI)) 18#define MODS_SHIFT_GUI_MASK (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT)|MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI))
19#define MODS_GUI_MASK (MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI)) 19#define MODS_GUI_MASK (MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI))
20 20
21enum custom_keycodes {
22 SFT_ESC = SAFE_RANGE
23};
24
21// Helpful defines 25// Helpful defines
22#define _______ KC_TRNS 26#define _______ KC_TRNS
23#define XXXXXXX KC_NO 27#define XXXXXXX KC_NO
@@ -29,7 +33,7 @@
29 33
30const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 34const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
31 [_DEFAULT] = LAYOUT_ansi_arrows( 35 [_DEFAULT] = LAYOUT_ansi_arrows(
32 KC_F1, KC_F2, F(0), KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, \ 36 KC_F1, KC_F2, SFT_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, \
33 KC_F3, KC_F4, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, \ 37 KC_F3, KC_F4, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, \
34 KC_F5, KC_F6, KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, \ 38 KC_F5, KC_F6, KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, \
35 KC_F7, KC_F8, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_UP, MO(_FN), \ 39 KC_F7, KC_F8, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_UP, MO(_FN), \
@@ -55,29 +59,15 @@ void matrix_scan_user(void) {
55 59
56} 60}
57 61
58bool process_record_user(uint16_t keycode, keyrecord_t *record) {
59 return true;
60}
61
62void led_set_user(uint8_t usb_led) { 62void led_set_user(uint8_t usb_led) {
63 63
64} 64}
65 65
66enum function_id { 66bool process_record_user(uint16_t keycode, keyrecord_t *record) {
67 ESCAPE, 67 switch (keycode) {
68}; 68 case SFT_ESC:
69
70const uint16_t PROGMEM fn_actions[] = {
71 [0] = ACTION_FUNCTION(ESCAPE),
72};
73
74void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
75 static uint8_t shift_esc_shift_mask;
76 switch (id) {
77 case ESCAPE:
78 shift_esc_shift_mask = get_mods()&MODS_SHFT_MASK;
79 if (record->event.pressed) { 69 if (record->event.pressed) {
80 if (shift_esc_shift_mask) { 70 if (get_mods() & MODS_SHIFT_GUI_MASK) {
81 add_key(KC_GRV); 71 add_key(KC_GRV);
82 send_keyboard_report(); 72 send_keyboard_report();
83 } else { 73 } else {
@@ -85,7 +75,7 @@ void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
85 send_keyboard_report(); 75 send_keyboard_report();
86 } 76 }
87 } else { 77 } else {
88 if (shift_esc_shift_mask) { 78 if (get_mods() & MODS_SHIFT_GUI_MASK) {
89 del_key(KC_GRV); 79 del_key(KC_GRV);
90 send_keyboard_report(); 80 send_keyboard_report();
91 } else { 81 } else {
@@ -93,6 +83,10 @@ void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
93 send_keyboard_report(); 83 send_keyboard_report();
94 } 84 }
95 } 85 }
96 break; 86
87 return false;
88
89 default:
90 return true;
97 } 91 }
98} 92}
diff --git a/keyboards/kona_classic/keymaps/ansi_arrows_lcap/keymap.c b/keyboards/kona_classic/keymaps/ansi_arrows_lcap/keymap.c
index b74a6c3d7..47f8d625b 100644
--- a/keyboards/kona_classic/keymaps/ansi_arrows_lcap/keymap.c
+++ b/keyboards/kona_classic/keymaps/ansi_arrows_lcap/keymap.c
@@ -15,9 +15,13 @@
15 */ 15 */
16#include QMK_KEYBOARD_H 16#include QMK_KEYBOARD_H
17 17
18#define MODS_SHFT_MASK (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT)|MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI)) 18#define MODS_SHIFT_GUI_MASK (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT)|MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI))
19#define MODS_GUI_MASK (MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI)) 19#define MODS_GUI_MASK (MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI))
20 20
21enum custom_keycodes {
22 SFT_ESC = SAFE_RANGE
23};
24
21// Helpful defines 25// Helpful defines
22#define _______ KC_TRNS 26#define _______ KC_TRNS
23#define XXXXXXX KC_NO 27#define XXXXXXX KC_NO
@@ -29,7 +33,7 @@
29 33
30const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 34const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
31 [_DEFAULT] = LAYOUT_ansi_arrows( 35 [_DEFAULT] = LAYOUT_ansi_arrows(
32 KC_F1, KC_F2, F(0), KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, \ 36 KC_F1, KC_F2, SFT_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, \
33 KC_F3, KC_F4, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, \ 37 KC_F3, KC_F4, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, \
34 KC_F5, KC_F6, KC_LCAP, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, \ 38 KC_F5, KC_F6, KC_LCAP, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, \
35 KC_F7, KC_F8, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_UP, MO(_FN), \ 39 KC_F7, KC_F8, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_UP, MO(_FN), \
@@ -55,29 +59,15 @@ void matrix_scan_user(void) {
55 59
56} 60}
57 61
58bool process_record_user(uint16_t keycode, keyrecord_t *record) {
59 return true;
60}
61
62void led_set_user(uint8_t usb_led) { 62void led_set_user(uint8_t usb_led) {
63 63
64} 64}
65 65
66enum function_id { 66bool process_record_user(uint16_t keycode, keyrecord_t *record) {
67 ESCAPE, 67 switch (keycode) {
68}; 68 case SFT_ESC:
69
70const uint16_t PROGMEM fn_actions[] = {
71 [0] = ACTION_FUNCTION(ESCAPE),
72};
73
74void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
75 static uint8_t shift_esc_shift_mask;
76 switch (id) {
77 case ESCAPE:
78 shift_esc_shift_mask = get_mods()&MODS_SHFT_MASK;
79 if (record->event.pressed) { 69 if (record->event.pressed) {
80 if (shift_esc_shift_mask) { 70 if (get_mods() & MODS_SHIFT_GUI_MASK) {
81 add_key(KC_GRV); 71 add_key(KC_GRV);
82 send_keyboard_report(); 72 send_keyboard_report();
83 } else { 73 } else {
@@ -85,7 +75,7 @@ void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
85 send_keyboard_report(); 75 send_keyboard_report();
86 } 76 }
87 } else { 77 } else {
88 if (shift_esc_shift_mask) { 78 if (get_mods() & MODS_SHIFT_GUI_MASK) {
89 del_key(KC_GRV); 79 del_key(KC_GRV);
90 send_keyboard_report(); 80 send_keyboard_report();
91 } else { 81 } else {
@@ -93,6 +83,10 @@ void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
93 send_keyboard_report(); 83 send_keyboard_report();
94 } 84 }
95 } 85 }
96 break; 86
87 return false;
88
89 default:
90 return true;
97 } 91 }
98} 92}
diff --git a/keyboards/kona_classic/keymaps/ansi_split/keymap.c b/keyboards/kona_classic/keymaps/ansi_split/keymap.c
index d60e162f6..f3c0dd707 100644
--- a/keyboards/kona_classic/keymaps/ansi_split/keymap.c
+++ b/keyboards/kona_classic/keymaps/ansi_split/keymap.c
@@ -15,7 +15,7 @@
15 */ 15 */
16#include QMK_KEYBOARD_H 16#include QMK_KEYBOARD_H
17 17
18#define MODS_SHFT_MASK (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT)|MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI)) 18#define MODS_SHIFT_GUI_MASK (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT)|MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI))
19#define MODS_GUI_MASK (MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI)) 19#define MODS_GUI_MASK (MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI))
20 20
21// Helpful defines 21// Helpful defines
@@ -25,11 +25,15 @@
25#define _DEFAULT 0 25#define _DEFAULT 0
26#define _FN 1 26#define _FN 1
27 27
28enum custom_keycodes {
29 SFT_ESC = SAFE_RANGE
30};
31
28//RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD 32//RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD
29 33
30const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 34const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
31 [_DEFAULT] = LAYOUT_ansi_split( 35 [_DEFAULT] = LAYOUT_ansi_split(
32 KC_F1, KC_F2, F(0), KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, \ 36 KC_F1, KC_F2, SFT_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, \
33 KC_F3, KC_F4, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, \ 37 KC_F3, KC_F4, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, \
34 KC_F5, KC_F6, KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, \ 38 KC_F5, KC_F6, KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, \
35 KC_F7, KC_F8, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, \ 39 KC_F7, KC_F8, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, \
@@ -55,29 +59,15 @@ void matrix_scan_user(void) {
55 59
56} 60}
57 61
58bool process_record_user(uint16_t keycode, keyrecord_t *record) {
59 return true;
60}
61
62void led_set_user(uint8_t usb_led) { 62void led_set_user(uint8_t usb_led) {
63 63
64} 64}
65 65
66enum function_id { 66bool process_record_user(uint16_t keycode, keyrecord_t *record) {
67 ESCAPE, 67 switch (keycode) {
68}; 68 case SFT_ESC:
69
70const uint16_t PROGMEM fn_actions[] = {
71 [0] = ACTION_FUNCTION(ESCAPE),
72};
73
74void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
75 static uint8_t shift_esc_shift_mask;
76 switch (id) {
77 case ESCAPE:
78 shift_esc_shift_mask = get_mods()&MODS_SHFT_MASK;
79 if (record->event.pressed) { 69 if (record->event.pressed) {
80 if (shift_esc_shift_mask) { 70 if (get_mods() & MODS_SHIFT_GUI_MASK) {
81 add_key(KC_GRV); 71 add_key(KC_GRV);
82 send_keyboard_report(); 72 send_keyboard_report();
83 } else { 73 } else {
@@ -85,7 +75,7 @@ void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
85 send_keyboard_report(); 75 send_keyboard_report();
86 } 76 }
87 } else { 77 } else {
88 if (shift_esc_shift_mask) { 78 if (get_mods() & MODS_SHIFT_GUI_MASK) {
89 del_key(KC_GRV); 79 del_key(KC_GRV);
90 send_keyboard_report(); 80 send_keyboard_report();
91 } else { 81 } else {
@@ -93,6 +83,10 @@ void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
93 send_keyboard_report(); 83 send_keyboard_report();
94 } 84 }
95 } 85 }
96 break; 86
87 return false;
88
89 default:
90 return true;
97 } 91 }
98} 92}
diff --git a/keyboards/kona_classic/keymaps/ansi_split_arrows/keymap.c b/keyboards/kona_classic/keymaps/ansi_split_arrows/keymap.c
index 181f2f14c..9a6f7421c 100644
--- a/keyboards/kona_classic/keymaps/ansi_split_arrows/keymap.c
+++ b/keyboards/kona_classic/keymaps/ansi_split_arrows/keymap.c
@@ -15,7 +15,7 @@
15 */ 15 */
16#include QMK_KEYBOARD_H 16#include QMK_KEYBOARD_H
17 17
18#define MODS_SHFT_MASK (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT)|MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI)) 18#define MODS_SHIFT_GUI_MASK (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT)|MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI))
19#define MODS_GUI_MASK (MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI)) 19#define MODS_GUI_MASK (MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI))
20 20
21// Helpful defines 21// Helpful defines
@@ -25,11 +25,15 @@
25#define _DEFAULT 0 25#define _DEFAULT 0
26#define _FN 1 26#define _FN 1
27 27
28enum custom_keycodes {
29 SFT_ESC = SAFE_RANGE
30};
31
28//RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD 32//RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD
29 33
30const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 34const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
31 [_DEFAULT] = LAYOUT_ansi_split_arrows( 35 [_DEFAULT] = LAYOUT_ansi_split_arrows(
32 KC_F1, KC_F2, F(0), KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, \ 36 KC_F1, KC_F2, SFT_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, \
33 KC_F3, KC_F4, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, \ 37 KC_F3, KC_F4, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, \
34 KC_F5, KC_F6, KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, \ 38 KC_F5, KC_F6, KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, \
35 KC_F7, KC_F8, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_UP, MO(_FN), \ 39 KC_F7, KC_F8, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_UP, MO(_FN), \
@@ -55,29 +59,15 @@ void matrix_scan_user(void) {
55 59
56} 60}
57 61
58bool process_record_user(uint16_t keycode, keyrecord_t *record) {
59 return true;
60}
61
62void led_set_user(uint8_t usb_led) { 62void led_set_user(uint8_t usb_led) {
63 63
64} 64}
65 65
66enum function_id { 66bool process_record_user(uint16_t keycode, keyrecord_t *record) {
67 ESCAPE, 67 switch (keycode) {
68}; 68 case SFT_ESC:
69
70const uint16_t PROGMEM fn_actions[] = {
71 [0] = ACTION_FUNCTION(ESCAPE),
72};
73
74void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
75 static uint8_t shift_esc_shift_mask;
76 switch (id) {
77 case ESCAPE:
78 shift_esc_shift_mask = get_mods()&MODS_SHFT_MASK;
79 if (record->event.pressed) { 69 if (record->event.pressed) {
80 if (shift_esc_shift_mask) { 70 if (get_mods() & MODS_SHIFT_GUI_MASK) {
81 add_key(KC_GRV); 71 add_key(KC_GRV);
82 send_keyboard_report(); 72 send_keyboard_report();
83 } else { 73 } else {
@@ -85,7 +75,7 @@ void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
85 send_keyboard_report(); 75 send_keyboard_report();
86 } 76 }
87 } else { 77 } else {
88 if (shift_esc_shift_mask) { 78 if (get_mods() & MODS_SHIFT_GUI_MASK) {
89 del_key(KC_GRV); 79 del_key(KC_GRV);
90 send_keyboard_report(); 80 send_keyboard_report();
91 } else { 81 } else {
@@ -93,6 +83,10 @@ void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
93 send_keyboard_report(); 83 send_keyboard_report();
94 } 84 }
95 } 85 }
96 break; 86
87 return false;
88
89 default:
90 return true;
97 } 91 }
98} 92}
diff --git a/keyboards/kona_classic/keymaps/default/keymap.c b/keyboards/kona_classic/keymaps/default/keymap.c
index 84a2f9cbd..74f138d2c 100644
--- a/keyboards/kona_classic/keymaps/default/keymap.c
+++ b/keyboards/kona_classic/keymaps/default/keymap.c
@@ -15,9 +15,13 @@
15 */ 15 */
16#include QMK_KEYBOARD_H 16#include QMK_KEYBOARD_H
17 17
18#define MODS_SHFT_MASK (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT)|MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI)) 18#define MODS_SHIFT_GUI_MASK (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT)|MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI))
19#define MODS_GUI_MASK (MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI)) 19#define MODS_GUI_MASK (MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI))
20 20
21enum custom_keycodes {
22 SFT_ESC = SAFE_RANGE
23};
24
21// Helpful defines 25// Helpful defines
22#define _______ KC_TRNS 26#define _______ KC_TRNS
23#define XXXXXXX KC_NO 27#define XXXXXXX KC_NO
@@ -29,7 +33,7 @@
29 33
30const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 34const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
31 [_DEFAULT] = LAYOUT_all( 35 [_DEFAULT] = LAYOUT_all(
32 KC_F1, KC_F2, F(0), KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, \ 36 KC_F1, KC_F2, SFT_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, \
33 KC_F3, KC_F4, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, \ 37 KC_F3, KC_F4, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, \
34 KC_F5, KC_F6, MO(_FN), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, \ 38 KC_F5, KC_F6, MO(_FN), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, \
35 KC_F7, KC_F8, KC_LSFT, _______, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_UP, MO(_FN), \ 39 KC_F7, KC_F8, KC_LSFT, _______, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_UP, MO(_FN), \
@@ -55,29 +59,15 @@ void matrix_scan_user(void) {
55 59
56} 60}
57 61
58bool process_record_user(uint16_t keycode, keyrecord_t *record) {
59 return true;
60}
61
62void led_set_user(uint8_t usb_led) { 62void led_set_user(uint8_t usb_led) {
63 63
64} 64}
65 65
66enum function_id { 66bool process_record_user(uint16_t keycode, keyrecord_t *record) {
67 ESCAPE, 67 switch (keycode) {
68}; 68 case SFT_ESC:
69
70const uint16_t PROGMEM fn_actions[] = {
71 [0] = ACTION_FUNCTION(ESCAPE),
72};
73
74void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
75 static uint8_t shift_esc_shift_mask;
76 switch (id) {
77 case ESCAPE:
78 shift_esc_shift_mask = get_mods()&MODS_SHFT_MASK;
79 if (record->event.pressed) { 69 if (record->event.pressed) {
80 if (shift_esc_shift_mask) { 70 if (get_mods() & MODS_SHIFT_GUI_MASK) {
81 add_key(KC_GRV); 71 add_key(KC_GRV);
82 send_keyboard_report(); 72 send_keyboard_report();
83 } else { 73 } else {
@@ -85,7 +75,7 @@ void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
85 send_keyboard_report(); 75 send_keyboard_report();
86 } 76 }
87 } else { 77 } else {
88 if (shift_esc_shift_mask) { 78 if (get_mods() & MODS_SHIFT_GUI_MASK) {
89 del_key(KC_GRV); 79 del_key(KC_GRV);
90 send_keyboard_report(); 80 send_keyboard_report();
91 } else { 81 } else {
@@ -93,6 +83,10 @@ void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
93 send_keyboard_report(); 83 send_keyboard_report();
94 } 84 }
95 } 85 }
96 break; 86
87 return false;
88
89 default:
90 return true;
97 } 91 }
98} 92}
diff --git a/keyboards/kona_classic/keymaps/iso/keymap.c b/keyboards/kona_classic/keymaps/iso/keymap.c
index ff9d3dcb8..3ce8255e8 100644
--- a/keyboards/kona_classic/keymaps/iso/keymap.c
+++ b/keyboards/kona_classic/keymaps/iso/keymap.c
@@ -15,7 +15,7 @@
15 */ 15 */
16#include QMK_KEYBOARD_H 16#include QMK_KEYBOARD_H
17 17
18#define MODS_SHFT_MASK (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT)|MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI)) 18#define MODS_SHIFT_GUI_MASK (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT)|MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI))
19#define MODS_GUI_MASK (MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI)) 19#define MODS_GUI_MASK (MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI))
20 20
21// Helpful defines 21// Helpful defines
@@ -25,11 +25,15 @@
25#define _DEFAULT 0 25#define _DEFAULT 0
26#define _FN 1 26#define _FN 1
27 27
28enum custom_keycodes {
29 SFT_ESC = SAFE_RANGE
30};
31
28//RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD 32//RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD
29 33
30const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 34const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
31 [_DEFAULT] = LAYOUT_iso( 35 [_DEFAULT] = LAYOUT_iso(
32 KC_F1, KC_F2, F(0), KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, \ 36 KC_F1, KC_F2, SFT_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, \
33 KC_F3, KC_F4, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_ENT, \ 37 KC_F3, KC_F4, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_ENT, \
34 KC_F5, KC_F6, KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, \ 38 KC_F5, KC_F6, KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, \
35 KC_F7, KC_F8, KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, \ 39 KC_F7, KC_F8, KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, \
@@ -55,29 +59,15 @@ void matrix_scan_user(void) {
55 59
56} 60}
57 61
58bool process_record_user(uint16_t keycode, keyrecord_t *record) {
59 return true;
60}
61
62void led_set_user(uint8_t usb_led) { 62void led_set_user(uint8_t usb_led) {
63 63
64} 64}
65 65
66enum function_id { 66bool process_record_user(uint16_t keycode, keyrecord_t *record) {
67 ESCAPE, 67 switch (keycode) {
68}; 68 case SFT_ESC:
69
70const uint16_t PROGMEM fn_actions[] = {
71 [0] = ACTION_FUNCTION(ESCAPE),
72};
73
74void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
75 static uint8_t shift_esc_shift_mask;
76 switch (id) {
77 case ESCAPE:
78 shift_esc_shift_mask = get_mods()&MODS_SHFT_MASK;
79 if (record->event.pressed) { 69 if (record->event.pressed) {
80 if (shift_esc_shift_mask) { 70 if (get_mods() & MODS_SHIFT_GUI_MASK) {
81 add_key(KC_GRV); 71 add_key(KC_GRV);
82 send_keyboard_report(); 72 send_keyboard_report();
83 } else { 73 } else {
@@ -85,7 +75,7 @@ void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
85 send_keyboard_report(); 75 send_keyboard_report();
86 } 76 }
87 } else { 77 } else {
88 if (shift_esc_shift_mask) { 78 if (get_mods() & MODS_SHIFT_GUI_MASK) {
89 del_key(KC_GRV); 79 del_key(KC_GRV);
90 send_keyboard_report(); 80 send_keyboard_report();
91 } else { 81 } else {
@@ -93,6 +83,10 @@ void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
93 send_keyboard_report(); 83 send_keyboard_report();
94 } 84 }
95 } 85 }
96 break; 86
87 return false;
88
89 default:
90 return true;
97 } 91 }
98} 92}
diff --git a/keyboards/kona_classic/keymaps/iso_arrows/keymap.c b/keyboards/kona_classic/keymaps/iso_arrows/keymap.c
index 79e52360c..44fb94fd9 100644
--- a/keyboards/kona_classic/keymaps/iso_arrows/keymap.c
+++ b/keyboards/kona_classic/keymaps/iso_arrows/keymap.c
@@ -15,7 +15,7 @@
15 */ 15 */
16#include QMK_KEYBOARD_H 16#include QMK_KEYBOARD_H
17 17
18#define MODS_SHFT_MASK (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT)|MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI)) 18#define MODS_SHIFT_GUI_MASK (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT)|MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI))
19#define MODS_GUI_MASK (MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI)) 19#define MODS_GUI_MASK (MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI))
20 20
21// Helpful defines 21// Helpful defines
@@ -25,11 +25,15 @@
25#define _DEFAULT 0 25#define _DEFAULT 0
26#define _FN 1 26#define _FN 1
27 27
28enum custom_keycodes {
29 SFT_ESC = SAFE_RANGE
30};
31
28//RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD 32//RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD
29 33
30const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 34const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
31 [_DEFAULT] = LAYOUT_iso_arrows( 35 [_DEFAULT] = LAYOUT_iso_arrows(
32 KC_F1, KC_F2, F(0), KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, \ 36 KC_F1, KC_F2, SFT_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, \
33 KC_F3, KC_F4, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_ENT, \ 37 KC_F3, KC_F4, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_ENT, \
34 KC_F5, KC_F6, KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, \ 38 KC_F5, KC_F6, KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, \
35 KC_F7, KC_F8, KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_UP, MO(_FN), \ 39 KC_F7, KC_F8, KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_UP, MO(_FN), \
@@ -55,29 +59,15 @@ void matrix_scan_user(void) {
55 59
56} 60}
57 61
58bool process_record_user(uint16_t keycode, keyrecord_t *record) {
59 return true;
60}
61
62void led_set_user(uint8_t usb_led) { 62void led_set_user(uint8_t usb_led) {
63 63
64} 64}
65 65
66enum function_id { 66bool process_record_user(uint16_t keycode, keyrecord_t *record) {
67 ESCAPE, 67 switch (keycode) {
68}; 68 case SFT_ESC:
69
70const uint16_t PROGMEM fn_actions[] = {
71 [0] = ACTION_FUNCTION(ESCAPE),
72};
73
74void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
75 static uint8_t shift_esc_shift_mask;
76 switch (id) {
77 case ESCAPE:
78 shift_esc_shift_mask = get_mods()&MODS_SHFT_MASK;
79 if (record->event.pressed) { 69 if (record->event.pressed) {
80 if (shift_esc_shift_mask) { 70 if (get_mods() & MODS_SHIFT_GUI_MASK) {
81 add_key(KC_GRV); 71 add_key(KC_GRV);
82 send_keyboard_report(); 72 send_keyboard_report();
83 } else { 73 } else {
@@ -85,7 +75,7 @@ void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
85 send_keyboard_report(); 75 send_keyboard_report();
86 } 76 }
87 } else { 77 } else {
88 if (shift_esc_shift_mask) { 78 if (get_mods() & MODS_SHIFT_GUI_MASK) {
89 del_key(KC_GRV); 79 del_key(KC_GRV);
90 send_keyboard_report(); 80 send_keyboard_report();
91 } else { 81 } else {
@@ -93,6 +83,10 @@ void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
93 send_keyboard_report(); 83 send_keyboard_report();
94 } 84 }
95 } 85 }
96 break; 86
87 return false;
88
89 default:
90 return true;
97 } 91 }
98} 92}
diff --git a/keyboards/kona_classic/keymaps/iso_split/keymap.c b/keyboards/kona_classic/keymaps/iso_split/keymap.c
index 51d329773..425a4c980 100644
--- a/keyboards/kona_classic/keymaps/iso_split/keymap.c
+++ b/keyboards/kona_classic/keymaps/iso_split/keymap.c
@@ -15,7 +15,7 @@
15 */ 15 */
16#include QMK_KEYBOARD_H 16#include QMK_KEYBOARD_H
17 17
18#define MODS_SHFT_MASK (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT)|MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI)) 18#define MODS_SHIFT_GUI_MASK (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT)|MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI))
19#define MODS_GUI_MASK (MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI)) 19#define MODS_GUI_MASK (MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI))
20 20
21// Helpful defines 21// Helpful defines
@@ -25,11 +25,15 @@
25#define _DEFAULT 0 25#define _DEFAULT 0
26#define _FN 1 26#define _FN 1
27 27
28enum custom_keycodes {
29 SFT_ESC = SAFE_RANGE
30};
31
28//RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD 32//RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD
29 33
30const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 34const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
31 [_DEFAULT] = LAYOUT_iso_split( 35 [_DEFAULT] = LAYOUT_iso_split(
32 KC_F1, KC_F2, F(0), KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, \ 36 KC_F1, KC_F2, SFT_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, \
33 KC_F3, KC_F4, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_ENT, \ 37 KC_F3, KC_F4, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_ENT, \
34 KC_F5, KC_F6, KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, \ 38 KC_F5, KC_F6, KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, \
35 KC_F7, KC_F8, KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, \ 39 KC_F7, KC_F8, KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, \
@@ -55,29 +59,15 @@ void matrix_scan_user(void) {
55 59
56} 60}
57 61
58bool process_record_user(uint16_t keycode, keyrecord_t *record) {
59 return true;
60}
61
62void led_set_user(uint8_t usb_led) { 62void led_set_user(uint8_t usb_led) {
63 63
64} 64}
65 65
66enum function_id { 66bool process_record_user(uint16_t keycode, keyrecord_t *record) {
67 ESCAPE, 67 switch (keycode) {
68}; 68 case SFT_ESC:
69
70const uint16_t PROGMEM fn_actions[] = {
71 [0] = ACTION_FUNCTION(ESCAPE),
72};
73
74void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
75 static uint8_t shift_esc_shift_mask;
76 switch (id) {
77 case ESCAPE:
78 shift_esc_shift_mask = get_mods()&MODS_SHFT_MASK;
79 if (record->event.pressed) { 69 if (record->event.pressed) {
80 if (shift_esc_shift_mask) { 70 if (get_mods() & MODS_SHIFT_GUI_MASK) {
81 add_key(KC_GRV); 71 add_key(KC_GRV);
82 send_keyboard_report(); 72 send_keyboard_report();
83 } else { 73 } else {
@@ -85,7 +75,7 @@ void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
85 send_keyboard_report(); 75 send_keyboard_report();
86 } 76 }
87 } else { 77 } else {
88 if (shift_esc_shift_mask) { 78 if (get_mods() & MODS_SHIFT_GUI_MASK) {
89 del_key(KC_GRV); 79 del_key(KC_GRV);
90 send_keyboard_report(); 80 send_keyboard_report();
91 } else { 81 } else {
@@ -93,6 +83,10 @@ void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
93 send_keyboard_report(); 83 send_keyboard_report();
94 } 84 }
95 } 85 }
96 break; 86
87 return false;
88
89 default:
90 return true;
97 } 91 }
98} 92}
diff --git a/keyboards/kona_classic/keymaps/iso_split_arrows/keymap.c b/keyboards/kona_classic/keymaps/iso_split_arrows/keymap.c
index ea81de4bc..ba74a2512 100644
--- a/keyboards/kona_classic/keymaps/iso_split_arrows/keymap.c
+++ b/keyboards/kona_classic/keymaps/iso_split_arrows/keymap.c
@@ -15,7 +15,7 @@
15 */ 15 */
16#include QMK_KEYBOARD_H 16#include QMK_KEYBOARD_H
17 17
18#define MODS_SHFT_MASK (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT)|MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI)) 18#define MODS_SHIFT_GUI_MASK (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT)|MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI))
19#define MODS_GUI_MASK (MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI)) 19#define MODS_GUI_MASK (MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI))
20 20
21// Helpful defines 21// Helpful defines
@@ -25,11 +25,15 @@
25#define _DEFAULT 0 25#define _DEFAULT 0
26#define _FN 1 26#define _FN 1
27 27
28enum custom_keycodes {
29 SFT_ESC = SAFE_RANGE
30};
31
28//RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD 32//RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD
29 33
30const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 34const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
31 [_DEFAULT] = LAYOUT_iso_split_arrows( 35 [_DEFAULT] = LAYOUT_iso_split_arrows(
32 KC_F1, KC_F2, F(0), KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, \ 36 KC_F1, KC_F2, SFT_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, \
33 KC_F3, KC_F4, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_ENT, \ 37 KC_F3, KC_F4, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_ENT, \
34 KC_F5, KC_F6, KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, \ 38 KC_F5, KC_F6, KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, \
35 KC_F7, KC_F8, KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_UP, MO(_FN), \ 39 KC_F7, KC_F8, KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_UP, MO(_FN), \
@@ -55,29 +59,15 @@ void matrix_scan_user(void) {
55 59
56} 60}
57 61
58bool process_record_user(uint16_t keycode, keyrecord_t *record) {
59 return true;
60}
61
62void led_set_user(uint8_t usb_led) { 62void led_set_user(uint8_t usb_led) {
63 63
64} 64}
65 65
66enum function_id { 66bool process_record_user(uint16_t keycode, keyrecord_t *record) {
67 ESCAPE, 67 switch (keycode) {
68}; 68 case SFT_ESC:
69
70const uint16_t PROGMEM fn_actions[] = {
71 [0] = ACTION_FUNCTION(ESCAPE),
72};
73
74void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
75 static uint8_t shift_esc_shift_mask;
76 switch (id) {
77 case ESCAPE:
78 shift_esc_shift_mask = get_mods()&MODS_SHFT_MASK;
79 if (record->event.pressed) { 69 if (record->event.pressed) {
80 if (shift_esc_shift_mask) { 70 if (get_mods() & MODS_SHIFT_GUI_MASK) {
81 add_key(KC_GRV); 71 add_key(KC_GRV);
82 send_keyboard_report(); 72 send_keyboard_report();
83 } else { 73 } else {
@@ -85,7 +75,7 @@ void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
85 send_keyboard_report(); 75 send_keyboard_report();
86 } 76 }
87 } else { 77 } else {
88 if (shift_esc_shift_mask) { 78 if (get_mods() & MODS_SHIFT_GUI_MASK) {
89 del_key(KC_GRV); 79 del_key(KC_GRV);
90 send_keyboard_report(); 80 send_keyboard_report();
91 } else { 81 } else {
@@ -93,6 +83,10 @@ void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
93 send_keyboard_report(); 83 send_keyboard_report();
94 } 84 }
95 } 85 }
96 break; 86
87 return false;
88
89 default:
90 return true;
97 } 91 }
98} 92}
diff --git a/keyboards/mechmini/v2/keymaps/default/keymap.c b/keyboards/mechmini/v2/keymaps/default/keymap.c
index e35f25ee4..23f61f918 100755
--- a/keyboards/mechmini/v2/keymaps/default/keymap.c
+++ b/keyboards/mechmini/v2/keymaps/default/keymap.c
@@ -4,11 +4,15 @@
4#define _FN1 1 4#define _FN1 1
5#define _FN2 2 5#define _FN2 2
6 6
7#define MODS_CTRL_MASK (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT)) 7enum custom_keycodes {
8 SFT_ESC
9};
10
11#define MODS_SHIFT_MASK (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT))
8const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 12const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
9 13
10 [_BL] = LAYOUT_split_space( 14 [_BL] = LAYOUT_split_space(
11 F(0), KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, 15 SFT_ESC,KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
12 KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_ENT, 16 KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_ENT,
13 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_RSFT, KC_DOT, 17 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_RSFT, KC_DOT,
14 KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_SPC, KC_RCTL, MO(1), MO(2)), 18 KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_SPC, KC_RCTL, MO(1), MO(2)),
@@ -42,10 +46,6 @@ void matrix_init_user(void) {
42void matrix_scan_user(void) { 46void matrix_scan_user(void) {
43} 47}
44 48
45bool process_record_user(uint16_t keycode, keyrecord_t *record) {
46 return true;
47}
48
49void led_set_user(uint8_t usb_led) { 49void led_set_user(uint8_t usb_led) {
50 50
51 if (usb_led & (1 << USB_LED_NUM_LOCK)) { 51 if (usb_led & (1 << USB_LED_NUM_LOCK)) {
@@ -80,21 +80,11 @@ void led_set_user(uint8_t usb_led) {
80 80
81} 81}
82 82
83enum function_id { 83bool process_record_user(uint16_t keycode, keyrecord_t *record) {
84 SHIFT_ESC, 84 switch (keycode) {
85}; 85 case SFT_ESC:
86
87const uint16_t PROGMEM fn_actions[] = {
88 [0] = ACTION_FUNCTION(SHIFT_ESC),
89};
90
91void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
92 static uint8_t shift_esc_shift_mask;
93 switch (id) {
94 case SHIFT_ESC:
95 shift_esc_shift_mask = get_mods()&MODS_CTRL_MASK;
96 if (record->event.pressed) { 86 if (record->event.pressed) {
97 if (shift_esc_shift_mask) { 87 if (get_mods() & MODS_SHIFT_MASK) {
98 add_key(KC_GRV); 88 add_key(KC_GRV);
99 send_keyboard_report(); 89 send_keyboard_report();
100 } else { 90 } else {
@@ -102,7 +92,7 @@ void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
102 send_keyboard_report(); 92 send_keyboard_report();
103 } 93 }
104 } else { 94 } else {
105 if (shift_esc_shift_mask) { 95 if (get_mods() & MODS_SHIFT_MASK) {
106 del_key(KC_GRV); 96 del_key(KC_GRV);
107 send_keyboard_report(); 97 send_keyboard_report();
108 } else { 98 } else {
@@ -110,6 +100,10 @@ void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
110 send_keyboard_report(); 100 send_keyboard_report();
111 } 101 }
112 } 102 }
113 break; 103
104 return false;
105
106 default:
107 return true;
114 } 108 }
115} 109}
diff --git a/keyboards/org60/keymaps/default/keymap.c b/keyboards/org60/keymaps/default/keymap.c
index ebb377d1d..a15800497 100644
--- a/keyboards/org60/keymaps/default/keymap.c
+++ b/keyboards/org60/keymaps/default/keymap.c
@@ -9,7 +9,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
9 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, \ 9 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, \
10 KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NO, KC_ENT, \ 10 KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NO, KC_ENT, \
11 KC_LSFT, KC_NO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_NO, KC_RSFT ,KC_UP, KC_DEL, \ 11 KC_LSFT, KC_NO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_NO, KC_RSFT ,KC_UP, KC_DEL, \
12 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RGUI, F(0), KC_LEFT, KC_DOWN, KC_RIGHT), 12 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RGUI, MO(1), KC_LEFT, KC_DOWN, KC_RIGHT),
13 13
14 // 1: Function Layer 14 // 1: Function Layer
15 LAYOUT( 15 LAYOUT(
@@ -17,15 +17,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
17 KC_NO, KC_WH_U, KC_UP, KC_WH_D, KC_BSPC,KC_HOME,KC_CALC,KC_NO, KC_INS, KC_NO, KC_PSCR, KC_SLCK, KC_PAUS, KC_DEL, \ 17 KC_NO, KC_WH_U, KC_UP, KC_WH_D, KC_BSPC,KC_HOME,KC_CALC,KC_NO, KC_INS, KC_NO, KC_PSCR, KC_SLCK, KC_PAUS, KC_DEL, \
18 KC_NO, KC_LEFT, KC_DOWN, KC_RIGHT,KC_DEL, KC_END, KC_PGDN,KC_NO, KC_NO, KC_NO, KC_HOME, KC_PGUP, KC_NO, KC_ENT, \ 18 KC_NO, KC_LEFT, KC_DOWN, KC_RIGHT,KC_DEL, KC_END, KC_PGDN,KC_NO, KC_NO, KC_NO, KC_HOME, KC_PGUP, KC_NO, KC_ENT, \
19 KC_LSFT, KC_NO, KC_NO, KC_APP, BL_STEP,KC_NO, KC_NO, KC_VOLD,KC_VOLU,KC_MUTE, KC_END, KC_RSFT, KC_NO ,KC_PGUP, KC_INS, \ 19 KC_LSFT, KC_NO, KC_NO, KC_APP, BL_STEP,KC_NO, KC_NO, KC_VOLD,KC_VOLU,KC_MUTE, KC_END, KC_RSFT, KC_NO ,KC_PGUP, KC_INS, \
20 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RGUI, F(0), KC_HOME, KC_PGDOWN,KC_END), 20 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RGUI, MO(1), KC_HOME, KC_PGDOWN,KC_END),
21 21
22}; 22};
23 23
24// Custom Actions
25const uint16_t PROGMEM fn_actions[] = {
26 [0] = ACTION_LAYER_MOMENTARY(1), // to Fn overlay
27};
28
29// Macros 24// Macros
30const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) { 25const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {
31 26
@@ -43,4 +38,4 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {
43// Loop 38// Loop
44void matrix_scan_user(void) { 39void matrix_scan_user(void) {
45 // Empty 40 // Empty
46}; \ No newline at end of file 41};
diff --git a/keyboards/satan/keymaps/colemak/keymap.c b/keyboards/satan/keymaps/colemak/keymap.c
index d81ca0893..a772e92c7 100644
--- a/keyboards/satan/keymaps/colemak/keymap.c
+++ b/keyboards/satan/keymaps/colemak/keymap.c
@@ -3,7 +3,7 @@
3 3
4 4
5// Used for SHIFT_ESC 5// Used for SHIFT_ESC
6#define MODS_CTRL_MASK (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT)) 6#define MODS_SHIFT_MASK (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT))
7 7
8// Each layer gets a name for readability, which is then used in the keymap matrix below. 8// Each layer gets a name for readability, which is then used in the keymap matrix below.
9// The underscores don't mean anything - you can have a layer called STUFF or any other name. 9// The underscores don't mean anything - you can have a layer called STUFF or any other name.
@@ -14,6 +14,10 @@
14 14
15#define _______ KC_TRNS 15#define _______ KC_TRNS
16 16
17enum custom_keycodes {
18 SFT_ESC = SAFE_RANGE
19};
20
17const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 21const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
18 /* Keymap _BL: (Base Layer) Default Layer 22 /* Keymap _BL: (Base Layer) Default Layer
19 * ,-----------------------------------------------------------. 23 * ,-----------------------------------------------------------.
@@ -29,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
29 * `-----------------------------------------------------------' 33 * `-----------------------------------------------------------'
30 */ 34 */
31[_BL] = LAYOUT_60_ansi( 35[_BL] = LAYOUT_60_ansi(
32 F(0), KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, \ 36 SFT_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, \
33 KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_LBRC, KC_RBRC,KC_BSLS, \ 37 KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_LBRC, KC_RBRC,KC_BSLS, \
34 KC_BSPC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O,KC_QUOT, KC_ENT, \ 38 KC_BSPC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O,KC_QUOT, KC_ENT, \
35 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM,KC_DOT, KC_SLSH, KC_RSFT, \ 39 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM,KC_DOT, KC_SLSH, KC_RSFT, \
@@ -40,7 +44,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
40 * | | | | | | | | | | | | | | RESET| 44 * | | | | | | | | | | | | | | RESET|
41 * |-----------------------------------------------------------| 45 * |-----------------------------------------------------------|
42 * | | | | | | | | | | | |BL-|BL+|BL | 46 * | | | | | | | | | | | |BL-|BL+|BL |
43 * |--------------------------------------------ΩΩ---------------| 47 * |-----------------------------------------------------------|
44 * | | | | | | | | | | | | | 48 * | | | | | | | | | | | | |
45 * |-----------------------------------------------------------| 49 * |-----------------------------------------------------------|
46 * | | F1|F2 | F3|F4 | F5| F6| F7| F8| | | | 50 * | | F1|F2 | F3|F4 | F5| F6| F7| F8| | | |
@@ -64,21 +68,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
64 #endif 68 #endif
65}; 69};
66 70
67enum function_id { 71bool process_record_user(uint16_t keycode, keyrecord_t *record) {
68 SHIFT_ESC, 72 switch (keycode) {
69}; 73 case SFT_ESC:
70
71const uint16_t PROGMEM fn_actions[] = {
72 [0] = ACTION_FUNCTION(SHIFT_ESC),
73};
74
75void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
76 static uint8_t shift_esc_shift_mask;
77 switch (id) {
78 case SHIFT_ESC:
79 shift_esc_shift_mask = get_mods()&MODS_CTRL_MASK;
80 if (record->event.pressed) { 74 if (record->event.pressed) {
81 if (shift_esc_shift_mask) { 75 if (get_mods() & MODS_SHIFT_MASK) {
82 add_key(KC_GRV); 76 add_key(KC_GRV);
83 send_keyboard_report(); 77 send_keyboard_report();
84 } else { 78 } else {
@@ -86,7 +80,7 @@ void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
86 send_keyboard_report(); 80 send_keyboard_report();
87 } 81 }
88 } else { 82 } else {
89 if (shift_esc_shift_mask) { 83 if (get_mods() & MODS_SHIFT_MASK) {
90 del_key(KC_GRV); 84 del_key(KC_GRV);
91 send_keyboard_report(); 85 send_keyboard_report();
92 } else { 86 } else {
@@ -94,6 +88,10 @@ void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
94 send_keyboard_report(); 88 send_keyboard_report();
95 } 89 }
96 } 90 }
97 break; 91
92 return false;
93
94 default:
95 return true;
98 } 96 }
99} 97}
diff --git a/keyboards/satan/keymaps/default/keymap.c b/keyboards/satan/keymaps/default/keymap.c
index 76bb8bfcf..ac15dd55a 100644
--- a/keyboards/satan/keymaps/default/keymap.c
+++ b/keyboards/satan/keymaps/default/keymap.c
@@ -1,9 +1,11 @@
1#include QMK_KEYBOARD_H 1#include QMK_KEYBOARD_H
2 2
3 3enum custom_keycodes {
4 SFT_ESC = SAFE_RANGE
5};
4 6
5// Used for SHIFT_ESC 7// Used for SHIFT_ESC
6#define MODS_CTRL_MASK (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT)) 8#define MODS_SHIFT_MASK (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT))
7 9
8// Each layer gets a name for readability, which is then used in the keymap matrix below. 10// Each layer gets a name for readability, which is then used in the keymap matrix below.
9// The underscores don't mean anything - you can have a layer called STUFF or any other name. 11// The underscores don't mean anything - you can have a layer called STUFF or any other name.
@@ -29,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
29 * `-----------------------------------------------------------' 31 * `-----------------------------------------------------------'
30 */ 32 */
31[_BL] = LAYOUT_60_ansi( 33[_BL] = LAYOUT_60_ansi(
32 F(0), KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, \ 34 SFT_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, \
33 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC,KC_BSLS, \ 35 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC,KC_BSLS, \
34 KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN,KC_QUOT, KC_ENT, \ 36 KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN,KC_QUOT, KC_ENT, \
35 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH, KC_RSFT, \ 37 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH, KC_RSFT, \
@@ -64,21 +66,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
64 #endif 66 #endif
65}; 67};
66 68
67enum function_id { 69bool process_record_user(uint16_t keycode, keyrecord_t *record) {
68 SHIFT_ESC, 70 switch (keycode) {
69}; 71 case SFT_ESC:
70
71const uint16_t PROGMEM fn_actions[] = {
72 [0] = ACTION_FUNCTION(SHIFT_ESC),
73};
74
75void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
76 static uint8_t shift_esc_shift_mask;
77 switch (id) {
78 case SHIFT_ESC:
79 shift_esc_shift_mask = get_mods()&MODS_CTRL_MASK;
80 if (record->event.pressed) { 72 if (record->event.pressed) {
81 if (shift_esc_shift_mask) { 73 if (get_mods() & MODS_SHIFT_MASK) {
82 add_key(KC_GRV); 74 add_key(KC_GRV);
83 send_keyboard_report(); 75 send_keyboard_report();
84 } else { 76 } else {
@@ -86,7 +78,7 @@ void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
86 send_keyboard_report(); 78 send_keyboard_report();
87 } 79 }
88 } else { 80 } else {
89 if (shift_esc_shift_mask) { 81 if (get_mods() & MODS_SHIFT_MASK) {
90 del_key(KC_GRV); 82 del_key(KC_GRV);
91 send_keyboard_report(); 83 send_keyboard_report();
92 } else { 84 } else {
@@ -94,6 +86,10 @@ void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
94 send_keyboard_report(); 86 send_keyboard_report();
95 } 87 }
96 } 88 }
97 break; 89
90 return false;
91
92 default:
93 return true;
98 } 94 }
99} 95}
diff --git a/keyboards/satan/keymaps/iso_split_rshift/keymap.c b/keyboards/satan/keymaps/iso_split_rshift/keymap.c
index d73a01aea..156515673 100644
--- a/keyboards/satan/keymaps/iso_split_rshift/keymap.c
+++ b/keyboards/satan/keymaps/iso_split_rshift/keymap.c
@@ -113,36 +113,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
113 [_SFX] = LAYOUT_60_iso_split_rshift( 113 [_SFX] = LAYOUT_60_iso_split_rshift(
114 RESET, _______, _______, _______, _______, _______, _______, KC_7, KC_8, KC_9, _______, _______, _______, KC_BSPC, \ 114 RESET, _______, _______, _______, _______, _______, _______, KC_7, KC_8, KC_9, _______, _______, _______, KC_BSPC, \
115 _______, _______, _______, _______, _______, _______, _______, KC_4, KC_5, KC_6, _______, _______, _______, \ 115 _______, _______, _______, _______, _______, _______, _______, KC_4, KC_5, KC_6, _______, _______, _______, \
116 _______, F(2), F(3), _______, _______, _______, _______, KC_1, KC_2, KC_3, _______, _______, XXXXXXX, KC_ENT, \ 116 _______, RGB_TOG, RGB_MOD, _______, _______, _______, _______, KC_1, KC_2, KC_3, _______, _______, XXXXXXX, KC_ENT, \
117 _______, F(4), F(5), F(6), F(7), F(8), F(9), _______, _______, KC_0, _______, KC_SLSH, KC_UP, _______, \ 117 _______, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, KC_0, _______, KC_SLSH, KC_UP, _______, \
118 _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT), 118 _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT),
119}; 119};
120 120
121enum function_id {
122 LAUNCH,
123 RGBLED_TOGGLE,
124 RGBLED_STEP_MODE,
125 RGBLED_INCREASE_HUE,
126 RGBLED_DECREASE_HUE,
127 RGBLED_INCREASE_SAT,
128 RGBLED_DECREASE_SAT,
129 RGBLED_INCREASE_VAL,
130 RGBLED_DECREASE_VAL,
131};
132
133const uint16_t PROGMEM fn_actions[] = {
134 [1] = ACTION_FUNCTION(LAUNCH),
135 [2] = ACTION_FUNCTION(RGBLED_TOGGLE),
136 [3] = ACTION_FUNCTION(RGBLED_STEP_MODE),
137 [4] = ACTION_FUNCTION(RGBLED_INCREASE_HUE),
138 [5] = ACTION_FUNCTION(RGBLED_DECREASE_HUE),
139 [6] = ACTION_FUNCTION(RGBLED_INCREASE_SAT),
140 [7] = ACTION_FUNCTION(RGBLED_DECREASE_SAT),
141 [8] = ACTION_FUNCTION(RGBLED_INCREASE_VAL),
142 [9] = ACTION_FUNCTION(RGBLED_DECREASE_VAL),
143 [10] = ACTION_MODS_TAP_KEY(MOD_LCTL, KC_ENT),
144};
145
146const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) 121const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
147{ 122{
148 // MACRODOWN only works in this function 123 // MACRODOWN only works in this function
@@ -160,49 +135,3 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
160 } 135 }
161 return MACRO_NONE; 136 return MACRO_NONE;
162}; 137};
163
164void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
165 switch (id) {
166 case RGBLED_TOGGLE:
167 //led operations
168 if (record->event.pressed) {
169 rgblight_toggle();
170 }
171 break;
172 case RGBLED_INCREASE_HUE:
173 if (record->event.pressed) {
174 rgblight_increase_hue();
175 }
176 break;
177 case RGBLED_DECREASE_HUE:
178 if (record->event.pressed) {
179 rgblight_decrease_hue();
180 }
181 break;
182 case RGBLED_INCREASE_SAT:
183 if (record->event.pressed) {
184 rgblight_increase_sat();
185 }
186 break;
187 case RGBLED_DECREASE_SAT:
188 if (record->event.pressed) {
189 rgblight_decrease_sat();
190 }
191 break;
192 case RGBLED_INCREASE_VAL:
193 if (record->event.pressed) {
194 rgblight_increase_val();
195 }
196 break;
197 case RGBLED_DECREASE_VAL:
198 if (record->event.pressed) {
199 rgblight_decrease_val();
200 }
201 break;
202 case RGBLED_STEP_MODE:
203 if (record->event.pressed) {
204 rgblight_step();
205 }
206 break;
207 }
208}
diff --git a/keyboards/satan/keymaps/poker/keymap.c b/keyboards/satan/keymaps/poker/keymap.c
index b908e8c4a..e244aced1 100644
--- a/keyboards/satan/keymaps/poker/keymap.c
+++ b/keyboards/satan/keymaps/poker/keymap.c
@@ -2,7 +2,7 @@
2 2
3 3
4// Used for SHIFT_ESC 4// Used for SHIFT_ESC
5#define MODS_CTRL_MASK (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT)) 5#define MODS_SHIFT_MASK (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT))
6 6
7// Each layer gets a name for readability, which is then used in the keymap matrix below. 7// Each layer gets a name for readability, which is then used in the keymap matrix below.
8// The underscores don't mean anything - you can have a layer called STUFF or any other name. 8// The underscores don't mean anything - you can have a layer called STUFF or any other name.
@@ -16,6 +16,10 @@
16#define _______ KC_TRNS 16#define _______ KC_TRNS
17#define XXXXXXX KC_NO 17#define XXXXXXX KC_NO
18 18
19enum custom_keycodes {
20 SFT_ESC = SAFE_RANGE
21};
22
19const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 23const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
20 /* Keymap _BL: (Base Layer) Default Layer 24 /* Keymap _BL: (Base Layer) Default Layer
21 * ,-----------------------------------------------------------. 25 * ,-----------------------------------------------------------.
@@ -31,7 +35,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
31 * `-----------------------------------------------------------' 35 * `-----------------------------------------------------------'
32 */ 36 */
33 [_BL] = LAYOUT_60_ansi( 37 [_BL] = LAYOUT_60_ansi(
34 F(0), KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, \ 38 SFT_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, \
35 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, \ 39 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, \
36 KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, \ 40 KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, \
37 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, \ 41 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, \
@@ -89,21 +93,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
89 ), 93 ),
90}; 94};
91 95
92enum function_id { 96bool process_record_user(uint16_t keycode, keyrecord_t *record) {
93 SHIFT_ESC, 97 switch (keycode) {
94}; 98 case SFT_ESC:
95
96const uint16_t PROGMEM fn_actions[] = {
97 [0] = ACTION_FUNCTION(SHIFT_ESC),
98};
99
100void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
101 static uint8_t shift_esc_shift_mask;
102 switch (id) {
103 case SHIFT_ESC:
104 shift_esc_shift_mask = get_mods()&MODS_CTRL_MASK;
105 if (record->event.pressed) { 99 if (record->event.pressed) {
106 if (shift_esc_shift_mask) { 100 if (get_mods() & MODS_SHIFT_MASK) {
107 add_key(KC_GRV); 101 add_key(KC_GRV);
108 send_keyboard_report(); 102 send_keyboard_report();
109 } else { 103 } else {
@@ -111,7 +105,7 @@ void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
111 send_keyboard_report(); 105 send_keyboard_report();
112 } 106 }
113 } else { 107 } else {
114 if (shift_esc_shift_mask) { 108 if (get_mods() & MODS_SHIFT_MASK) {
115 del_key(KC_GRV); 109 del_key(KC_GRV);
116 send_keyboard_report(); 110 send_keyboard_report();
117 } else { 111 } else {
@@ -119,6 +113,10 @@ void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
119 send_keyboard_report(); 113 send_keyboard_report();
120 } 114 }
121 } 115 }
122 break; 116
117 return false;
118
119 default:
120 return true;
123 } 121 }
124} 122}
diff --git a/keyboards/sentraq/s60_x/keymaps/default/keymap.c b/keyboards/sentraq/s60_x/keymaps/default/keymap.c
index c730505cd..5ea40bf89 100644
--- a/keyboards/sentraq/s60_x/keymaps/default/keymap.c
+++ b/keyboards/sentraq/s60_x/keymaps/default/keymap.c
@@ -16,7 +16,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
16 * β”œβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€ 16 * β”œβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€
17 * β”‚LSHFTβ”‚β–’β–’β–’β–’β–’β”‚ Z β”‚ X β”‚ C β”‚ V β”‚ B β”‚ N β”‚ M β”‚ , β”‚ . β”‚ / β”‚β–’β–’β–’β–’β–’β”‚RSHFTβ”‚β–’β–’β–’β–’β–’β”‚ 17 * β”‚LSHFTβ”‚β–’β–’β–’β–’β–’β”‚ Z β”‚ X β”‚ C β”‚ V β”‚ B β”‚ N β”‚ M β”‚ , β”‚ . β”‚ / β”‚β–’β–’β–’β–’β–’β”‚RSHFTβ”‚β–’β–’β–’β–’β–’β”‚
18 * β”œβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€ 18 * β”œβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€
19 * β”‚LCTRLβ”‚L_GUIβ”‚L_ALTβ”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚ SPC β”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚R_ALTβ”‚ FN0 β”‚ APP β”‚RCTRLβ”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚ 19 * β”‚LCTRLβ”‚L_GUIβ”‚L_ALTβ”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚ SPC β”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚R_ALTβ”‚ MO1 β”‚ APP β”‚RCTRLβ”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚
20 * β””β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”˜ 20 * β””β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”˜
21 */ 21 */
22 /* 0: ANSI qwerty */ 22 /* 0: ANSI qwerty */
@@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
25 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, \ 25 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, \
26 KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, \ 26 KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, \
27 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, \ 27 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, \
28 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_FN0, KC_APP, KC_RCTL \ 28 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_APP, KC_RCTL \
29 ), 29 ),
30 30
31 /* 1: Fn layer 31 /* 1: Fn layer
@@ -49,7 +49,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
49 _______, _______, _______, _______, _______, _______, _______, _______ \ 49 _______, _______, _______, _______, _______, _______, _______, _______ \
50 ), 50 ),
51}; 51};
52
53const uint16_t PROGMEM fn_actions[] = {
54 [0] = ACTION_LAYER_MOMENTARY(1), // to Fn overlay
55};
diff --git a/keyboards/sentraq/s60_x/keymaps/default_rgb/keymap.c b/keyboards/sentraq/s60_x/keymaps/default_rgb/keymap.c
index fdaa6065b..8f10ad046 100644
--- a/keyboards/sentraq/s60_x/keymaps/default_rgb/keymap.c
+++ b/keyboards/sentraq/s60_x/keymaps/default_rgb/keymap.c
@@ -16,7 +16,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
16 * β”œβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€ 16 * β”œβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€
17 * β”‚LSHFTβ”‚β–’β–’β–’β–’β–’β”‚ Z β”‚ X β”‚ C β”‚ V β”‚ B β”‚ N β”‚ M β”‚ , β”‚ . β”‚ / β”‚β–’β–’β–’β–’β–’β”‚RSHFTβ”‚β–’β–’β–’β–’β–’β”‚ 17 * β”‚LSHFTβ”‚β–’β–’β–’β–’β–’β”‚ Z β”‚ X β”‚ C β”‚ V β”‚ B β”‚ N β”‚ M β”‚ , β”‚ . β”‚ / β”‚β–’β–’β–’β–’β–’β”‚RSHFTβ”‚β–’β–’β–’β–’β–’β”‚
18 * β”œβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€ 18 * β”œβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€
19 * β”‚LCTRLβ”‚L_GUIβ”‚L_ALTβ”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚ SPC β”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚R_ALTβ”‚ FN0 β”‚ APP β”‚RCTRLβ”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚ 19 * β”‚LCTRLβ”‚L_GUIβ”‚L_ALTβ”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚ SPC β”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚R_ALTβ”‚ MO1 β”‚ APP β”‚RCTRLβ”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚
20 * β””β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”˜ 20 * β””β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”˜
21 */ 21 */
22 /* 0: ANSI qwerty */ 22 /* 0: ANSI qwerty */
@@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
25 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, \ 25 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, \
26 KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, \ 26 KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, \
27 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, \ 27 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, \
28 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_FN0, KC_APP, KC_RCTL \ 28 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_APP, KC_RCTL \
29 ), 29 ),
30 30
31 /* 1: Fn layer 31 /* 1: Fn layer
@@ -51,7 +51,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
51 _______, _______, _______, _______, _______, _______, _______, _______ \ 51 _______, _______, _______, _______, _______, _______, _______, _______ \
52 ), 52 ),
53}; 53};
54
55const uint16_t PROGMEM fn_actions[] = {
56 [0] = ACTION_LAYER_MOMENTARY(1), // to Fn overlay
57};
diff --git a/keyboards/sentraq/s60_x/keymaps/iso/keymap.c b/keyboards/sentraq/s60_x/keymaps/iso/keymap.c
index d10bfcc13..aec23f1ae 100644
--- a/keyboards/sentraq/s60_x/keymaps/iso/keymap.c
+++ b/keyboards/sentraq/s60_x/keymaps/iso/keymap.c
@@ -10,7 +10,7 @@
10β”œβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€ 10β”œβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€
11β”‚LSHFTβ”‚ \ β”‚ Z β”‚ X β”‚ C β”‚ V β”‚ B β”‚ N β”‚ M β”‚ , β”‚ . β”‚ / β”‚β–’β–’β–’β–’β–’β”‚RSHFTβ”‚β–’β–’β–’β–’β–’β”‚ 11β”‚LSHFTβ”‚ \ β”‚ Z β”‚ X β”‚ C β”‚ V β”‚ B β”‚ N β”‚ M β”‚ , β”‚ . β”‚ / β”‚β–’β–’β–’β–’β–’β”‚RSHFTβ”‚β–’β–’β–’β–’β–’β”‚
12β”œβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€ 12β”œβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€
13β”‚LCTRLβ”‚L_GUIβ”‚L_ALTβ”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚ SPC β”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚R_ALTβ”‚ FN0 β”‚ APP β”‚RCTRLβ”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚ 13β”‚LCTRLβ”‚L_GUIβ”‚L_ALTβ”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚ SPC β”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚R_ALTβ”‚ MO1 β”‚ APP β”‚RCTRLβ”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚
14β””β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”˜ 14β””β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”˜
15*/ 15*/
16 16
@@ -20,7 +20,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
20 TAB, Q, W, E, R, T, Y, U, I, O, P, LBRC, RBRC, NO, \ 20 TAB, Q, W, E, R, T, Y, U, I, O, P, LBRC, RBRC, NO, \
21 CAPS, A, S, D, F, G, H, J, K, L, SCLN, QUOT, NUHS, ENT , \ 21 CAPS, A, S, D, F, G, H, J, K, L, SCLN, QUOT, NUHS, ENT , \
22 LSFT, BSLS, Z, X, C, V, B, N, M, COMM, DOT, SLSH, NO, RSFT, NO, \ 22 LSFT, BSLS, Z, X, C, V, B, N, M, COMM, DOT, SLSH, NO, RSFT, NO, \
23 LCTL, LGUI, LALT, SPC, RALT, FN0, APP, RCTL), 23 LCTL, LGUI, LALT, SPC, RALT, MO(1),APP, RCTL),
24 24
25/* 1: Fn layer 25/* 1: Fn layer
26β”Œβ”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β” 26β”Œβ”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”
@@ -42,7 +42,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
42 TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, \ 42 TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, \
43 TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS), 43 TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS),
44}; 44};
45
46const uint16_t PROGMEM fn_actions[] = {
47 [0] = ACTION_LAYER_MOMENTARY(1), // to Fn overlay
48};
diff --git a/keyboards/sentraq/s60_x/keymaps/iso_rgb/keymap.c b/keyboards/sentraq/s60_x/keymaps/iso_rgb/keymap.c
index d76055a82..22651885d 100644
--- a/keyboards/sentraq/s60_x/keymaps/iso_rgb/keymap.c
+++ b/keyboards/sentraq/s60_x/keymaps/iso_rgb/keymap.c
@@ -10,7 +10,7 @@
10β”œβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€ 10β”œβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€
11β”‚LSHFTβ”‚ \ β”‚ Z β”‚ X β”‚ C β”‚ V β”‚ B β”‚ N β”‚ M β”‚ , β”‚ . β”‚ / β”‚β–’β–’β–’β–’β–’β”‚RSHFTβ”‚β–’β–’β–’β–’β–’β”‚ 11β”‚LSHFTβ”‚ \ β”‚ Z β”‚ X β”‚ C β”‚ V β”‚ B β”‚ N β”‚ M β”‚ , β”‚ . β”‚ / β”‚β–’β–’β–’β–’β–’β”‚RSHFTβ”‚β–’β–’β–’β–’β–’β”‚
12β”œβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€ 12β”œβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€
13β”‚LCTRLβ”‚L_GUIβ”‚L_ALTβ”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚ SPC β”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚R_ALTβ”‚ FN0 β”‚ APP β”‚RCTRLβ”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚ 13β”‚LCTRLβ”‚L_GUIβ”‚L_ALTβ”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚ SPC β”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚R_ALTβ”‚ MO1 β”‚ APP β”‚RCTRLβ”‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ”‚
14β””β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”˜ 14β””β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”˜
15*/ 15*/
16 16
@@ -20,7 +20,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
20 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_NO, \ 20 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_NO, \
21 KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT , \ 21 KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT , \
22 KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_NO, \ 22 KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_NO, \
23 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_FN0, KC_APP, KC_RCTL), 23 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_APP, KC_RCTL),
24 24
25/* 1: Fn layer 25/* 1: Fn layer
26UG = Underglow = RGB Backlighting 26UG = Underglow = RGB Backlighting
@@ -44,7 +44,3 @@ BL = Backlighting = In-Switch LED
44 KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, KC_TRNS, BL_DEC, BL_TOGG, BL_INC, KC_TRNS, KC_TRNS, \ 44 KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, KC_TRNS, BL_DEC, BL_TOGG, BL_INC, KC_TRNS, KC_TRNS, \
45 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), 45 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
46}; 46};
47
48const uint16_t PROGMEM fn_actions[] = {
49 [0] = ACTION_LAYER_MOMENTARY(1), // to Fn overlay
50};
diff --git a/keyboards/vision_division/keymaps/default/keymap.c b/keyboards/vision_division/keymaps/default/keymap.c
index 31b107661..314eaff98 100644
--- a/keyboards/vision_division/keymaps/default/keymap.c
+++ b/keyboards/vision_division/keymaps/default/keymap.c
@@ -121,7 +121,7 @@ enum keyboard_macros {
121 121
122#define M_CP_CT M(MACRO_COPY_CUT) 122#define M_CP_CT M(MACRO_COPY_CUT)
123 123
124#define M_COPY KC_FN1 124#define M_COPY MACROTAP(MACRO_COPY_CUT)
125 125
126#define SC_UNDO LCTL(KC_Z) 126#define SC_UNDO LCTL(KC_Z)
127#define SC_REDO LCTL(KC_Y) 127#define SC_REDO LCTL(KC_Y)
@@ -135,7 +135,7 @@ enum keyboard_macros {
135#define SC_CCLS LCTL(KC_F4) 135#define SC_CCLS LCTL(KC_F4)
136 136
137#define TG_NKRO MAGIC_TOGGLE_NKRO 137#define TG_NKRO MAGIC_TOGGLE_NKRO
138#define OS_SHFT KC_FN0 138#define OS_SHFT OSM(MOD_LSFT)
139 139
140#define _______ KC_TRNS 140#define _______ KC_TRNS
141#define XXXXXXX KC_NO 141#define XXXXXXX KC_NO
@@ -305,11 +305,6 @@ void persistent_default_layer_set(uint16_t default_layer)
305 default_layer_set(default_layer); 305 default_layer_set(default_layer);
306} 306}
307 307
308const uint16_t PROGMEM fn_actions[] = {
309 [0] = ACTION_MODS_ONESHOT(MOD_LSFT),
310 [1] = ACTION_MACRO_TAP(MACRO_COPY_CUT),
311};
312
313const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) 308const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
314{ 309{
315 310
@@ -619,4 +614,4 @@ void music_scale_user(void)
619 PLAY_SONG(music_scale); 614 PLAY_SONG(music_scale);
620} 615}
621 616
622#endif /* AUDIO_ENABLE */ \ No newline at end of file 617#endif /* AUDIO_ENABLE */
diff --git a/keyboards/whitefox/keymaps/default/keymap.c b/keyboards/whitefox/keymaps/default/keymap.c
index ad66ec103..61cc4eca0 100644
--- a/keyboards/whitefox/keymaps/default/keymap.c
+++ b/keyboards/whitefox/keymaps/default/keymap.c
@@ -35,7 +35,7 @@ const uint16_t keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
35 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC,KC_RBRC,KC_BSPC, KC_DEL, \ 35 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC,KC_RBRC,KC_BSPC, KC_DEL, \
36 KC_CAPS,KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN,KC_QUOT,KC_NUHS,KC_ENT, KC_PGUP,\ 36 KC_CAPS,KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN,KC_QUOT,KC_NUHS,KC_ENT, KC_PGUP,\
37 KC_LSFT,KC_NUBS,KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH,KC_RSFT, KC_UP, KC_PGDN,\ 37 KC_LSFT,KC_NUBS,KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH,KC_RSFT, KC_UP, KC_PGDN,\
38 KC_LCTL,KC_LGUI,KC_LALT, KC_SPC, KC_RALT,KC_FN0, KC_RCTL, KC_LEFT,KC_DOWN,KC_RGHT \ 38 KC_LCTL,KC_LGUI,KC_LALT, KC_SPC, KC_RALT,MO(1), KC_RCTL, KC_LEFT,KC_DOWN,KC_RGHT \
39 ), 39 ),
40 [1] = LAYOUT( \ 40 [1] = LAYOUT( \
41 KC_TRNS,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS,KC_TRNS,KC_MUTE,\ 41 KC_TRNS,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS,KC_TRNS,KC_MUTE,\
@@ -45,7 +45,3 @@ const uint16_t keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
45 KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS, KC_HOME,KC_PGDN,KC_END \ 45 KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS, KC_HOME,KC_PGDN,KC_END \
46 ), 46 ),
47}; 47};
48
49const uint16_t fn_actions[] = {
50 [0] = ACTION_LAYER_MOMENTARY(1),
51};
diff --git a/keyboards/xd60/keymaps/default/keymap.c b/keyboards/xd60/keymaps/default/keymap.c
index f8b44dc0a..868ca632e 100644
--- a/keyboards/xd60/keymaps/default/keymap.c
+++ b/keyboards/xd60/keymaps/default/keymap.c
@@ -9,7 +9,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
9 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, \ 9 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, \
10 KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NO, KC_ENT, \ 10 KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NO, KC_ENT, \
11 KC_LSFT, KC_NO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_DEL, \ 11 KC_LSFT, KC_NO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_DEL, \
12 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RGUI, F(0), KC_LEFT, KC_DOWN, KC_RIGHT), 12 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RGUI, MO(1), KC_LEFT, KC_DOWN, KC_RIGHT),
13 13
14 // 1: Function Layer 14 // 1: Function Layer
15 LAYOUT_all( 15 LAYOUT_all(
@@ -17,15 +17,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
17 KC_NO, KC_WH_U, KC_UP, KC_WH_D, KC_BSPC,KC_HOME,KC_CALC,KC_NO, KC_INS, KC_NO, KC_PSCR, KC_SLCK, KC_PAUS, KC_DEL, \ 17 KC_NO, KC_WH_U, KC_UP, KC_WH_D, KC_BSPC,KC_HOME,KC_CALC,KC_NO, KC_INS, KC_NO, KC_PSCR, KC_SLCK, KC_PAUS, KC_DEL, \
18 KC_NO, KC_LEFT, KC_DOWN, KC_RIGHT,KC_DEL, KC_END, KC_PGDN,KC_NO, KC_NO, KC_NO, KC_HOME, KC_PGUP, KC_NO, KC_ENT, \ 18 KC_NO, KC_LEFT, KC_DOWN, KC_RIGHT,KC_DEL, KC_END, KC_PGDN,KC_NO, KC_NO, KC_NO, KC_HOME, KC_PGUP, KC_NO, KC_ENT, \
19 KC_LSFT, KC_NO, KC_NO, KC_APP, BL_STEP,KC_NO, KC_NO, KC_VOLD,KC_VOLU,KC_MUTE, KC_END, KC_PGDN, KC_RSFT, KC_PGUP, KC_INS, \ 19 KC_LSFT, KC_NO, KC_NO, KC_APP, BL_STEP,KC_NO, KC_NO, KC_VOLD,KC_VOLU,KC_MUTE, KC_END, KC_PGDN, KC_RSFT, KC_PGUP, KC_INS, \
20 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RGUI, F(0), KC_HOME, KC_PGDOWN,KC_END), 20 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RGUI, MO(1), KC_HOME, KC_PGDOWN,KC_END),
21 21
22}; 22};
23 23
24// Custom Actions
25const uint16_t PROGMEM fn_actions[] = {
26 [0] = ACTION_LAYER_MOMENTARY(1), // to Fn overlay
27};
28
29// Macros 24// Macros
30const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) { 25const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {
31 26
diff --git a/keyboards/xd60/keymaps/iso/keymap.c b/keyboards/xd60/keymaps/iso/keymap.c
index 2ca2ea807..4ece241ef 100644
--- a/keyboards/xd60/keymaps/iso/keymap.c
+++ b/keyboards/xd60/keymaps/iso/keymap.c
@@ -12,7 +12,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
12 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_NO, \ 12 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_NO, \
13 KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT, \ 13 KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT, \
14 KC_LSFT, KC_BSLS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP,KC_DEL, \ 14 KC_LSFT, KC_BSLS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP,KC_DEL, \
15 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RGUI, F(0), KC_LEFT, KC_DOWN, KC_RIGHT), 15 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RGUI, MO(1), KC_LEFT, KC_DOWN, KC_RIGHT),
16 16
17 // 1: Function Layer 17 // 1: Function Layer
18 [_FL] = LAYOUT_all( 18 [_FL] = LAYOUT_all(
@@ -20,15 +20,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
20 KC_NO, KC_VOLD, KC_MUTE, KC_VOLU, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, BL_TOGG, BL_DEC, BL_INC, KC_NO, \ 20 KC_NO, KC_VOLD, KC_MUTE, KC_VOLU, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, BL_TOGG, BL_DEC, BL_INC, KC_NO, \
21 KC_NO, KC_MPLY, KC_MSTP, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_ENT, \ 21 KC_NO, KC_MPLY, KC_MSTP, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_ENT, \
22 KC_LSFT, RGB_TOG, RGB_MOD, KC_CUT, KC_COPY,KC_PASTE,RGB_HUI,RGB_HUD,RGB_SAI,RGB_SAD,RGB_VAI,RGB_VAD, KC_HOME, KC_PGUP, KC_END, \ 22 KC_LSFT, RGB_TOG, RGB_MOD, KC_CUT, KC_COPY,KC_PASTE,RGB_HUI,RGB_HUD,RGB_SAI,RGB_SAD,RGB_VAI,RGB_VAD, KC_HOME, KC_PGUP, KC_END, \
23 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RGUI, F(0), KC_NO, KC_PGDOWN, KC_NO), 23 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RGUI, MO(1), KC_NO, KC_PGDOWN, KC_NO),
24 24
25}; 25};
26 26
27// Custom Actions
28const uint16_t PROGMEM fn_actions[] = {
29 [0] = ACTION_LAYER_MOMENTARY(1), // to Fn overlay
30};
31
32// Macros 27// Macros
33const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) { 28const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {
34 29