summaryrefslogtreecommitdiff
path: root/keyboards
diff options
context:
space:
mode:
authorRyan <fauxpark@gmail.com>2021-07-15 03:52:45 +1000
committerGitHub <noreply@github.com>2021-07-15 03:52:45 +1000
commitfd8628ccdc97482aae1814cec5c2059c2978daad (patch)
treeb4cb8d8811023236254ddd631bc45120bcd2bb84 /keyboards
parente69c325a9ce84bc144dbc89978f800fc7560757d (diff)
Migrate more `fn_actions` stuff (#13502)
Diffstat (limited to 'keyboards')
-rw-r--r--keyboards/atreus/keymaps/erlandsona/keymap.c15
-rw-r--r--keyboards/atreus/keymaps/khitsule/keymap.c24
-rw-r--r--keyboards/bpiphany/kitten_paw/keymaps/ickerwx/keymap.c154
-rw-r--r--keyboards/clueboard/66/keymaps/magicmonty/keymap.c30
-rw-r--r--keyboards/clueboard/66/keymaps/tetris/keymap.c126
-rw-r--r--keyboards/gh60/revc/keymaps/dbroqua_7U/keymap.c33
-rw-r--r--keyboards/infinity60/keymaps/jpetermans/keymap.c101
-rw-r--r--keyboards/whitefox/keymaps/kim-kim/keymap.c15
-rw-r--r--keyboards/whitefox/keymaps/matt3o/keymap.c60
9 files changed, 206 insertions, 352 deletions
diff --git a/keyboards/atreus/keymaps/erlandsona/keymap.c b/keyboards/atreus/keymaps/erlandsona/keymap.c
index 151288edc2..c261e892d4 100644
--- a/keyboards/atreus/keymaps/erlandsona/keymap.c
+++ b/keyboards/atreus/keymaps/erlandsona/keymap.c
@@ -1,6 +1,3 @@
-// this is the style you want to emulate.
-// This is the canonical layout file for the Quantum project. If you want to add another keyboard,
-
#include QMK_KEYBOARD_H
// Each layer gets a name for readability, which is then used in the keymap matrix below.
@@ -23,21 +20,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_GRV , KC_1 , KC_2 , KC_3 , KC_4 , KC_LPRN, KC_RPRN, KC_MINS, KC_EQL , KC_LBRC,
KC_TAB , KC_5 , KC_6 , KC_7 , KC_8 , KC_LEFT, KC_DOWN, KC_UP , KC_RGHT, KC_RBRC,
_______, KC_9 , KC_0 , KC_DOT , KC_COMM, KC_HOME, KC_PGDN, KC_PGUP, KC_END , _______,
- _______, _______, _______, _______, KC_DEL , F(MOUS), _______, _______, _______, _______, _______, _______
+ _______, _______, _______, _______, KC_DEL , TG(MOUS), _______, _______, _______, _______, _______, _______
),
[MOUS] = LAYOUT( /* Mouse and Media Keys */
KC_SLCK, KC_PAUSE, KC_F11 , KC_F10 , KC_F9 , KC_F8 , KC_F7 , KC_F6 , KC_F5 , KC_F4,
KC_VOLD, KC_ACL0 , KC_ACL1, KC_ACL2, KC_VOLU, KC_MS_L, KC_MS_D, KC_MS_U, KC_MS_R, KC_F3,
KC_MUTE, KC_MPRV , KC_MPLY, KC_MNXT, KC_MUTE, KC_WH_R, KC_WH_U, KC_WH_D, KC_WH_L, KC_F2,
- _______, _______ , _______, _______, _______, _______, _______, KC_BTN1, F(BASE), RESET , KC_F12 , KC_F1
+ _______, _______ , _______, _______, _______, _______, _______, KC_BTN1, TO(BASE), RESET , KC_F12 , KC_F1
),
};
-
-
-// I prefer this layer switching strategy to the TG and MO functions.
-// so that I can get out of mouse mode just by tapping/holding my base layer FN key.
-const uint16_t PROGMEM fn_actions[] = {
- [BASE] = ACTION_LAYER_OFF(2, 1), // switch back to layer 0
- [MOUS] = ACTION_LAYER_ON(2, 1) // switch to layer 2
-};
diff --git a/keyboards/atreus/keymaps/khitsule/keymap.c b/keyboards/atreus/keymaps/khitsule/keymap.c
index e6a5366916..1190efa3cb 100644
--- a/keyboards/atreus/keymaps/khitsule/keymap.c
+++ b/keyboards/atreus/keymaps/khitsule/keymap.c
@@ -16,12 +16,6 @@ enum layers {
#define KM_DRIGHT LGUI(LCTL(KC_RIGHT))
#define TSKMGR LCTL(LSFT(KC_ESC))
-#define tap_mod_macro(record, mod, macro) ( ((record)->event.pressed) ? \
- ( ((record)->tap.count <= 0 || (record)->tap.interrupted) ? MACRO(D(mod), END) : MACRO_NONE ) : \
- ( ((record)->tap.count > 0 && !((record)->tap.interrupted)) ? (macro) : MACRO(U(mod), END) ) )
-
-
-
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[ALPH] = LAYOUT(
KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P,
@@ -54,21 +48,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
)
};
-
-const uint16_t PROGMEM fn_actions[] = {
- [1] = ACTION_MACRO_TAP(1),
- [2] = ACTION_MACRO_TAP(2)
-};
-
-const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {
- switch(id) {
- case 1:
- return tap_mod_macro(record, LGUI, MACRO( D(LSFT), T(9), U(LSFT), END));
- break;
- case 2:
- return tap_mod_macro(record, LALT, MACRO( D(LSFT), T(0), U(LSFT), END));
- break;
-
- }
- return MACRO_NONE;
-};
diff --git a/keyboards/bpiphany/kitten_paw/keymaps/ickerwx/keymap.c b/keyboards/bpiphany/kitten_paw/keymaps/ickerwx/keymap.c
index e2b56132bf..cc4d0bca63 100644
--- a/keyboards/bpiphany/kitten_paw/keymaps/ickerwx/keymap.c
+++ b/keyboards/bpiphany/kitten_paw/keymaps/ickerwx/keymap.c
@@ -1,12 +1,6 @@
#include QMK_KEYBOARD_H
#include "mousekey.h"
-#undef C
-#undef S
-#define C(kc) LCTL(KC_##kc)
-#define S(kc) LSFT(KC_##kc)
-#define RA(kc) RALT(KC_##kc)
-#define KC_SLCT KC_SELECT
#define MEDAPP LT(MEDIA, KC_APP)
uint8_t current_layer_global = 255;
@@ -21,19 +15,16 @@ enum layers {
MISC,
};
-enum function_id {
- LSHFT_PAREN,
+enum custom_keycodes {
+ LSHFT_PAREN = SAFE_RANGE,
RSHFT_PAREN,
LCTRL_BRACKET,
RCTRL_BRACKET,
LALT_CURLY,
RALT_CURLY,
- CTRL_CLICK
-};
-
-enum macro_id {
- GRV,
- CFLEX
+ CTRL_CLICK,
+ M_GRV,
+ M_CFLEX
};
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
@@ -42,25 +33,25 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0,KC_MINS, KC_EQL,KC_BSPC, KC_INS,KC_HOME,KC_PGUP, KC_NLCK,KC_PSLS,KC_PAST,KC_PMNS, \
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, KC_DEL, KC_END,KC_PGDN, KC_P7, KC_P8, KC_P9,KC_PPLS, \
TT(MOUSE1), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L,KC_SCLN,KC_QUOT, KC_ENT, KC_P4, KC_P5, KC_P6, \
- F(8),KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M,KC_COMM, KC_DOT,KC_SLSH, F(9), KC_UP, KC_P1, KC_P2, KC_P3,KC_PENT, \
- F(1),KC_LGUI, F(3), LT(MISC, KC_SPC), F(4),TT(PROG1), MEDAPP, F(2), KC_LEFT,KC_DOWN,KC_RGHT, KC_P0,KC_PDOT),
+ LSHFT_PAREN,KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M,KC_COMM, KC_DOT,KC_SLSH, RSHFT_PAREN, KC_UP, KC_P1, KC_P2, KC_P3,KC_PENT, \
+ LCTRL_BRACKET,KC_LGUI, LALT_CURLY, LT(MISC, KC_SPC), RALT_CURLY,TT(PROG1), MEDAPP, RCTRL_BRACKET, KC_LEFT,KC_DOWN,KC_RGHT, KC_P0,KC_PDOT),
/* Layer 1: Programming Layer 1, emulating US l ayout */
[PROG1] = LAYOUT(\
KC_ESC,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______,_______,_______, \
- M(GRV),_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,KC_SLSH, S(0),_______, _______,_______,_______, _______,_______,_______,_______, \
- _______,_______,_______,_______,_______,_______, KC_Z,_______,_______,_______,_______, RA(8), RA(9),RA(MINS), _______,_______,_______, _______,_______,_______,_______, \
- _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,S(COMM),S(BSLS), _______, _______,_______,_______, \
- MO(PROG2),_______, KC_Y,_______,_______,_______,_______,_______,_______,_______,_______, S(7), MO(PROG2), _______, _______,_______,_______,_______, \
+ M_GRV,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,KC_SLSH,S(KC_0),_______, _______,_______,_______, _______,_______,_______,_______, \
+ _______,_______,_______,_______,_______,_______, KC_Z,_______,_______,_______,_______,ALGR(KC_8),ALGR(KC_9),ALGR(KC_MINS), _______,_______,_______, _______,_______,_______,_______, \
+ _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,S(KC_COMM),S(KC_BSLS), _______, _______,_______,_______, \
+ MO(PROG2),_______, KC_Y,_______,_______,_______,_______,_______,_______,_______,_______, S(KC_7), MO(PROG2), _______, _______,_______,_______,_______, \
_______,_______,_______, _______, _______,_______,_______,_______, _______,_______,_______, _______,_______),
/* Layer 2: programming layer 2
all keys that are not FN keys are sent as LSFT+key on this layer
*/
[PROG2] = LAYOUT(\
_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______,_______,_______, \
- RA(RBRC),_______, RA(Q),KC_BSLS,_______,_______,M(CFLEX), S(6),S(RBRC), S(8), S(9),S(SLSH),KC_RBRC,_______, _______,_______,_______, _______,_______,_______,_______, \
- _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, RA(7), RA(0),RA(NUBS), _______,_______,_______, _______,_______,_______,_______, \
- _______,_______,_______,_______,_______,_______,_______,_______,_______,_______, S(DOT), S(2), _______, _______,_______,_______, \
- _______,S(NUBS),_______,_______,_______,_______,_______,_______,_______,KC_NUBS,S(NUBS),S(MINS), _______, _______, _______,_______,_______,_______, \
+ ALGR(KC_RBRC),_______, ALGR(KC_Q),KC_BSLS,_______,_______,M_CFLEX, S(KC_6),S(KC_RBRC), S(KC_8),S(KC_9),S(KC_SLSH),KC_RBRC,_______, _______,_______,_______, _______,_______,_______,_______, \
+ _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, ALGR(KC_7),ALGR(KC_0),ALGR(KC_NUBS), _______,_______,_______, _______,_______,_______,_______, \
+ _______,_______,_______,_______,_______,_______,_______,_______,_______,_______, S(KC_DOT), S(KC_2), _______, _______,_______,_______, \
+ _______,S(KC_NUBS),_______,_______,_______,_______,_______,_______,_______,KC_NUBS,S(KC_NUBS),S(KC_MINS), _______, _______, _______,_______,_______,_______, \
_______,_______,_______, _______, _______,_______,_______,_______, _______,_______,_______, _______,_______),
/* Layer 3: media layer */
[MEDIA] = LAYOUT(\
@@ -72,11 +63,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX, XXXXXXX,XXXXXXX,_______,XXXXXXX, KC_MRWD,KC_MSTP,KC_MFFD, XXXXXXX,XXXXXXX),
/* Layer 4: Mouse layer */
[MOUSE1] = LAYOUT(\
- F(6),_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______,_______,_______, \
+ TO(DEFAULT),_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______,_______,_______, \
_______,KC_ACL0,KC_ACL1,KC_ACL2,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______,_______,_______, _______,_______,_______,_______, \
- _______,KC_BTN4,KC_WH_D,KC_MS_U,KC_WH_U,_______, C(Z),_______,_______,_______,_______,_______,_______,_______, _______,_______,_______, _______,_______,_______,_______, \
- _______,KC_BTN5,KC_MS_L,KC_MS_D,KC_MS_R, F(7),KC_WH_L,KC_WH_D,KC_WH_U,KC_WH_R,_______,_______, _______, _______,_______,_______, \
- MO(MOUSE2),_______, C(Y), C(X), C(C), C(V),_______,KC_BTN2,KC_BTN3,C(PGUP),C(PGDN),_______, KC_RSFT, _______, _______,_______,_______,_______, \
+ _______,KC_BTN4,KC_WH_D,KC_MS_U,KC_WH_U,_______, C(KC_Z),_______,_______,_______,_______,_______,_______,_______, _______,_______,_______, _______,_______,_______,_______, \
+ _______,KC_BTN5,KC_MS_L,KC_MS_D,KC_MS_R, CTRL_CLICK,KC_WH_L,KC_WH_D,KC_WH_U,KC_WH_R,_______,_______, _______, _______,_______,_______, \
+ MO(MOUSE2),_______,C(KC_Y),C(KC_X),C(KC_C),C(KC_V),_______,KC_BTN2,KC_BTN3,C(KC_PGUP),C(KC_PGDN),_______, KC_RSFT, _______, _______,_______,_______,_______, \
KC_LCTL,_______,KC_LALT, KC_BTN1, KC_RALT,KC_RGUI, KC_APP,KC_RCTL, _______,_______,_______, _______,_______),
/* Layer 5: Mouse layer 2*/
[MOUSE2] = LAYOUT(\
@@ -90,44 +81,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[MISC] = LAYOUT(\
_______, KC_F13, KC_F14, KC_F15, KC_F16, KC_F17, KC_F18, KC_F19, KC_F20, KC_F21, KC_F22, KC_F23, KC_F24, _______,_______,_______, \
_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______,_______,_______, _______,_______,_______,_______, \
- _______,KC_SLCT, C(W), KC_UP,_______,_______,_______,_______,KC_BSPC, KC_DEL,_______,_______,_______,_______, _______,_______,_______, _______,_______,_______,_______, \
+ _______,KC_SLCT, C(KC_W), KC_UP,_______,_______,_______,_______,KC_BSPC, KC_DEL,_______,_______,_______,_______, _______,_______,_______, _______,_______,_______,_______, \
_______,_______,KC_LEFT,KC_DOWN,KC_RGHT,_______,KC_HOME,KC_PGDN,KC_PGUP,_______,_______,_______, _______, _______,_______,_______, \
- KC_LSFT,_______, C(Y), C(X), C(C), C(V), KC_SPC, KC_END,_______,C(PGUP),C(PGDN),_______, _______, _______, _______,_______,_______,_______, \
+ KC_LSFT,_______,C(KC_Y),C(KC_X),C(KC_C),C(KC_V), KC_SPC, KC_END,_______,C(KC_PGUP),C(KC_PGDN),_______, _______, _______, _______,_______,_______,_______, \
_______,_______,_______, LT(MISC, KC_SPC), _______,_______,_______,_______, _______,_______,_______, _______,_______),
};
-const uint16_t PROGMEM fn_actions[] = {
- [1] = ACTION_FUNCTION_TAP(LCTRL_BRACKET), // tap to print [
- [2] = ACTION_FUNCTION_TAP(RCTRL_BRACKET), // tap to print ]
- [3] = ACTION_FUNCTION_TAP(LALT_CURLY), // tap to print {
- [4] = ACTION_FUNCTION_TAP(RALT_CURLY), // tap to print }
- [6] = ACTION_LAYER_SET_CLEAR(DEFAULT),
- [7] = ACTION_FUNCTION_TAP(CTRL_CLICK),
- [8] = ACTION_FUNCTION_TAP(LSHFT_PAREN), // tap to print (
- [9] = ACTION_FUNCTION_TAP(RSHFT_PAREN), // tap to print )
-};
-
-const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
-{
- // MACRODOWN only works in this function
- switch(id) {
- case GRV: // macro to print accent grave
- return (record->event.pressed ?
- MACRO( D(LSFT), T(EQL), U(RALT), T(SPC), END) :
- MACRO_NONE );
- case CFLEX: // print accent circonflex
- return (record->event.pressed ?
- MACRO( T(GRV), T(SPC), END ) :
- MACRO_NONE );
- }
- return MACRO_NONE;
-};
-
-
-void matrix_init_user(void) {
-
-}
-
void matrix_scan_user(void) {
uint8_t layer;
layer = biton32(layer_state);
@@ -147,10 +106,6 @@ void matrix_scan_user(void) {
}
}
-void led_set_user(uint8_t usb_led) {
-
-}
-
void tap_helper(keyrecord_t *record, uint16_t orig_mod, uint16_t macro_mod, uint16_t macro_kc ) {
if (record->event.pressed) {
if (record->tap.count > 0 && !record->tap.interrupted) {
@@ -175,28 +130,45 @@ void tap_helper(keyrecord_t *record, uint16_t orig_mod, uint16_t macro_mod, uint
}
}
-/* if LCTRL is tabbed, print (, or ) if RCTRL is tabbed, same for LALT/RALT and [/] */
-void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
- // The code is copied from keymap_hasu.c in the tmk keyboards hhkb folder
- switch (id) {
+bool process_record_user(uint16_t keycode, keyrecord_t *record) {
+ uint8_t layer;
+ layer = biton32(layer_state);
+ if (layer == PROG2) {
+ if (keycode >= KC_A && keycode <= KC_EXSEL && \
+ !( // do not send LSFT + these keycodes, they are needed for emulating the US layout
+ keycode == KC_NONUS_BSLASH ||
+ keycode == KC_RBRC ||
+ keycode == KC_BSLS ||
+ keycode == KC_GRV
+ )) {
+ // LSFT is the modifier for this layer, so we set LSFT for every key to get the expected behavior
+ if (record->event.pressed) {
+ register_mods(MOD_LSFT);
+ } else {
+ unregister_mods(MOD_LSFT);
+ }
+ }
+ }
+
+ switch (keycode) {
case LCTRL_BRACKET:
tap_helper(record, KC_LCTL, KC_RALT, KC_8);
- break;
+ return false;
case RCTRL_BRACKET:
tap_helper(record, KC_RCTL, KC_RALT, KC_9);
- break;
+ return false;
case LALT_CURLY:
tap_helper(record, KC_LALT, KC_RALT, KC_7);
- break;
+ return false;
case RALT_CURLY:
tap_helper(record, KC_RALT, KC_RALT, KC_0);
- break;
+ return false;
case LSHFT_PAREN:
tap_helper(record, KC_LSFT, KC_LSFT, KC_8);
- break;
+ return false;
case RSHFT_PAREN:
tap_helper(record, KC_RSFT, KC_LSFT, KC_9);
- break;
+ return false;
case CTRL_CLICK:
if (record->event.pressed) {
mousekey_clear();
@@ -212,28 +184,16 @@ void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
unregister_mods(MOD_BIT(KC_LCTL));
send_keyboard_report();
}
- break;
+ return false;
+ case M_GRV:
+ tap_code16(S(KC_EQL));
+ tap_code(KC_SPC);
+ return false;
+ case M_CFLEX:
+ tap_code(KC_GRV);
+ tap_code(KC_SPC);
+ return false;
}
-}
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- uint8_t layer;
- layer = biton32(layer_state);
- if (layer == PROG2) {
- if (keycode >= KC_A && keycode <= KC_EXSEL && \
- !( // do not send LSFT + these keycodes, they are needed for emulating the US layout
- keycode == KC_NONUS_BSLASH ||
- keycode == KC_RBRC ||
- keycode == KC_BSLS ||
- keycode == KC_GRV
- )) {
- // LSFT is the modifier for this layer, so we set LSFT for every key to get the expected behavior
- if (record->event.pressed) {
- register_mods(MOD_LSFT);
- } else {
- unregister_mods(MOD_LSFT);
- }
- }
- }
return true;
}
diff --git a/keyboards/clueboard/66/keymaps/magicmonty/keymap.c b/keyboards/clueboard/66/keymaps/magicmonty/keymap.c
index 54420d31b6..56d4c47071 100644
--- a/keyboards/clueboard/66/keymaps/magicmonty/keymap.c
+++ b/keyboards/clueboard/66/keymaps/magicmonty/keymap.c
@@ -40,8 +40,9 @@
// CTRL when held, ESC when tapped
#define CTL_ESC CTL_T(KC_ESC)
-// Reset RGB mode to layer signalling
-#define RGB_RST F(0)
+enum custom_keycodes {
+ RGB_RST = SAFE_RANGE
+};
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Keymap _BL: Base Layer (Default Layer) */
@@ -103,21 +104,16 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
#endif
};
-/* This is a list of user defined functions. F(N) corresponds to item N
- of this list.
- */
-const uint16_t PROGMEM fn_actions[] = {
- [0] = ACTION_FUNCTION(0), // Calls action_function()
-};
-
-void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
- switch (id) {
- case 0:
- if (record->event.pressed) {
- rgblight_mode(1);
- rgblight_sethsv(206, 255, 255);
- }
- }
+bool process_record_user(uint16_t keycode, keyrecord_t *record) {
+ switch (keycode) {
+ case RGB_RST:
+ if (record->event.pressed) {
+ rgblight_mode(1);
+ rgblight_sethsv(206, 255, 255);
+ }
+ return false;
+ }
+ return true;
}
enum layer_id {
diff --git a/keyboards/clueboard/66/keymaps/tetris/keymap.c b/keyboards/clueboard/66/keymaps/tetris/keymap.c
index ef3abd6672..26dd97feec 100644
--- a/keyboards/clueboard/66/keymaps/tetris/keymap.c
+++ b/keyboards/clueboard/66/keymaps/tetris/keymap.c
@@ -1,9 +1,6 @@
#include QMK_KEYBOARD_H
#include "tetris_text.h"
-// Helpful defines
-#define GRAVE_MODS (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT)|MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI)|MOD_BIT(KC_LALT)|MOD_BIT(KC_RALT))
-
// Each layer gets a name for readability, which is then used in the keymap matrix below.
// The underscores don't mean anything - you can have a layer called STUFF or any other name.
// Layer names don't all need to be of the same length, obviously, and you can also skip them
@@ -12,11 +9,15 @@
#define _FL 1
#define _CL 2
+enum custom_keycodes {
+ TETRIS_START = SAFE_RANGE
+};
+
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Keymap _BL: Base Layer (Default Layer)
*/
[_BL] = LAYOUT(
- 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_GRV, KC_BSPC, KC_PGUP,
+ KC_GESC, 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, KC_BSPC, KC_PGUP,
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, KC_PGDN,
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_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RO, KC_RSFT, KC_UP,
@@ -41,71 +42,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
_______, _______, _______,_______, RGB_MOD, RGB_MOD, _______, _______, _______, _______, RGB_HUD, RGB_SAD, RGB_HUI),
};
-/* This is a list of user defined functions. F(N) corresponds to item N
- of this list.
- */
-const uint16_t PROGMEM fn_actions[] = {
- [0] = ACTION_FUNCTION(0), // Calls action_function()
- [1] = ACTION_FUNCTION(1)
-};
-
static uint8_t tetris_key_presses = 0;
static uint16_t tetris_timer = 0;
static uint8_t tetris_running = 0;
static int tetris_keypress = 0;
-void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
- static uint8_t mods_pressed;
- static bool mod_flag;
-
- switch (id) {
- case 0:
- // clueboard specific hook to make escape quite tetris
- if (tetris_running) {
- tetris_running = 0;
- return;
- }
-
- /* Handle the combined Grave/Esc key
- */
- mods_pressed = get_mods()&GRAVE_MODS; // Check to see what mods are pressed
-
- if (record->event.pressed) {
- /* The key is being pressed.
- */
- if (mods_pressed) {
- mod_flag = true;
- add_key(KC_GRV);
- send_keyboard_report();
- } else {
- add_key(KC_ESC);
- send_keyboard_report();
- }
- } else {
- /* The key is being released.
- */
- if (mod_flag) {
- mod_flag = false;
- del_key(KC_GRV);
- send_keyboard_report();
- } else {
- del_key(KC_ESC);
- send_keyboard_report();
- }
- }
- break;
- case 1:
- if (record->event.pressed) {
- tetris_running = 1;
- tetris_timer = 0;
- tetris_keypress = 0;
- // set randomness using total number of key presses
- tetris_start(tetris_key_presses);
- }
- break;
- }
-}
-
/*
* Set up tetris
*/
@@ -130,6 +71,25 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
}
}
+ switch (keycode) {
+ case KC_GESC:
+ // clueboard specific hook to make escape quite tetris
+ if (tetris_running) {
+ tetris_running = 0;
+ return false;
+ }
+ break;
+ case TETRIS_START:
+ if (record->event.pressed) {
+ tetris_running = 1;
+ tetris_timer = 0;
+ tetris_keypress = 0;
+ // set randomness using total number of key presses
+ tetris_start(tetris_key_presses);
+ }
+ return false;
+ }
+
return true;
}
@@ -148,57 +108,45 @@ void matrix_scan_user(void) {
}
}
-void send_keycode(uint16_t keycode) {
- register_code(keycode);
- unregister_code(keycode);
-}
-
-void send_keycode_shift(uint16_t keycode) {
- register_code(KC_LSFT);
- register_code(keycode);
- unregister_code(keycode);
- unregister_code(KC_LSFT);
-}
-
void tetris_send_up(void) {
- send_keycode(KC_UP);
+ tap_code(KC_UP);
}
void tetris_send_left(void) {
- send_keycode(KC_LEFT);
+ tap_code(KC_LEFT);
}
void tetris_send_down(void) {
- send_keycode(KC_DOWN);
+ tap_code(KC_DOWN);
}
void tetris_send_right(void) {
- send_keycode(KC_RGHT);
+ tap_code(KC_RGHT);
}
void tetris_send_backspace(void) {
- send_keycode(KC_BSPC);
+ tap_code(KC_BSPC);
}
void tetris_send_delete(void) {
- send_keycode(KC_DEL);
+ tap_code(KC_DEL);
}
void tetris_send_string(const char *s) {
for (int i = 0; s[i] != 0; i++) {
if (s[i] >= 'a' && s[i] <= 'z') {
- send_keycode(KC_A + (s[i] - 'a'));
+ tap_code(KC_A + (s[i] - 'a'));
} else if (s[i] >= 'A' && s[i] <= 'Z') {
- send_keycode_shift(KC_A + (s[i] - 'A'));
+ tap_code16(S(KC_A + (s[i] - 'A')));
} else if (s[i] >= '1' && s[i] <= '9') {
- send_keycode(KC_1 + (s[i] - '1'));
+ tap_code(KC_1 + (s[i] - '1'));
} else {
switch (s[i]) {
- case ' ': send_keycode(KC_SPACE); break;
- case '.': send_keycode(KC_DOT); break;
- case '0': send_keycode(KC_0); break;
+ case ' ': tap_code(KC_SPACE); break;
+ case '.': tap_code(KC_DOT); break;
+ case '0': tap_code(KC_0); break;
}
}
}
}
void tetris_send_newline(void) {
- send_keycode(KC_ENT);
+ tap_code(KC_ENT);
}
int tetris_get_keypress(void) {
diff --git a/keyboards/gh60/revc/keymaps/dbroqua_7U/keymap.c b/keyboards/gh60/revc/keymaps/dbroqua_7U/keymap.c
index 5b58d7686a..a79b89e9c2 100644
--- a/keyboards/gh60/revc/keymaps/dbroqua_7U/keymap.c
+++ b/keyboards/gh60/revc/keymaps/dbroqua_7U/keymap.c
@@ -3,6 +3,10 @@
#define _DEFAULT 0
#define _FN 1
+enum custom_keycodes {
+ LED_TOGGLE = SAFE_RANGE
+};
+
int esc_led = 0;
// Fillers to make layering more clear
@@ -44,7 +48,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* `-----------------------------------------------------------------'
*/
[_FN] = LAYOUT_60_ansi_split_bs_rshift( /* Layer 1 */
- F(0), 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_INS, KC_DEL, \
+ LED_TOGGLE,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_INS, KC_DEL, \
KC_CAPS, ______, ______, ______, ______, ______, ______, ______, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, ______, ______, \
______, KC_VOLD, KC_VOLU, KC_MUTE, ______, ______, KC_PAST, KC_PSLS, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT,______, \
______, KC_MPRV, KC_MPLY, KC_MNXT, ______, ______, KC_PPLS, KC_PMNS, KC_END, KC_PGDN, KC_DOWN, ______, ______, \
@@ -52,14 +56,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
)
};
-enum function_id {
- LED_TOGGLE
-};
-
-const uint16_t PROGMEM fn_actions[] = {
- [0] = ACTION_FUNCTION(LED_TOGGLE)
-};
-
void esc_led_toggle(void) {
if (esc_led == 0){
esc_led = 1;
@@ -70,12 +66,13 @@ void esc_led_toggle(void) {
}
}
-void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
- switch (id) {
- case LED_TOGGLE:
- if (record->event.pressed) {
- esc_led_toggle();
- }
- break;
- }
-} \ No newline at end of file
+bool process_record_user(uint16_t keycode, keyrecord_t *record) {
+ switch (keycode) {
+ case LED_TOGGLE:
+ if (record->event.pressed) {
+ esc_led_toggle();
+ }
+ return false;
+ }
+ return true;
+}
diff --git a/keyboards/infinity60/keymaps/jpetermans/keymap.c b/keyboards/infinity60/keymaps/jpetermans/keymap.c
index c34d56ec85..3c2e0d4da8 100644
--- a/keyboards/infinity60/keymaps/jpetermans/keymap.c
+++ b/keyboards/infinity60/keymaps/jpetermans/keymap.c
@@ -11,20 +11,25 @@
//IS31 chip has 8 available led pages, using 0 for all leds and 7 for single toggles
#define max_pages 6
-enum ic60_keycodes {
- NUMPAD,
- FNAV,
- MEDIA,
- BACKLIGHT,
- BRIGHT,
- DIM,
- ALL,
- GAME,
+enum led_modes {
+ MODE_ALL,
+ MODE_GAME,
MODE_SINGLE,
MODE_PAGE,
MODE_FLASH
};
+enum macro_id {
+ LED_ALL = SAFE_RANGE,
+ LED_GAME,
+ LED_BACKLIGHT,
+ LED_BRIGHT,
+ LED_DIM,
+ LED_SINGLE,
+ LED_PAGE,
+ LED_FLASH
+};
+
uint8_t current_layer_global = 0;
uint8_t led_mode_global = MODE_SINGLE;
uint8_t backlight_status_global = 1; //init on/off state of backlight
@@ -77,10 +82,10 @@ const uint16_t keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* media */
[_MEDIA] = LAYOUT_60_ansi_split_bs_rshift( \
- _______,F(MODE_SINGLE),F(MODE_PAGE),F(MODE_FLASH),_______,_______,_______, _______, _______, _______,KC_MUTE, KC_VOLD, KC_VOLU,_______,KC_NO,\
+ _______,LED_SINGLE,LED_PAGE,LED_FLASH,_______,_______,_______, _______, _______, _______,KC_MUTE, KC_VOLD, KC_VOLU,_______,KC_NO,\
_______,_______,_______,_______,_______,_______,_______, _______, _______, _______,_______, _______,_______,_______,\
- _______,_______,_______,_______,_______,F(GAME),_______, _______, _______, _______,_______, _______,_______, \
- _______,_______,F(ALL) ,F(BRIGHT),F(DIM),F(BACKLIGHT),_______, _______, KC_MPRV, KC_MNXT,KC_MSTP, _______,KC_NO, \
+ _______,_______,_______,_______,_______,LED_GAME,_______, _______, _______, _______,_______, _______,_______, \
+ _______,_______,LED_ALL ,LED_BRIGHT,LED_DIM,LED_BACKLIGHT,_______, _______, KC_MPRV, KC_MNXT,KC_MSTP, _______,KC_NO, \
_______,_______,_______, KC_MPLY, _______,_______, _______,_______ \
),
/* ~ */
@@ -101,22 +106,6 @@ const uint16_t keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
),
};
-//id for user defined functions and macros
-enum function_id {
- NONE,
-};
-
-enum macro_id {
- ACTION_LEDS_ALL,
- ACTION_LEDS_GAME,
- ACTION_LEDS_BACKLIGHT,
- ACTION_LEDS_BRIGHT,
- ACTION_LEDS_DIM,
- ACTION_LEDS_SINGLE,
- ACTION_LEDS_PAGE,
- ACTION_LEDS_FLASH
-};
-
/* ==================================
* LED MAPPING
* ==================================*/
@@ -158,74 +147,62 @@ uint8_t led_game[5] = {
47,48,51
};
-//======== qmk functions =========
-const uint16_t fn_actions[] = {
- [ALL] = ACTION_FUNCTION(ACTION_LEDS_ALL),
- [GAME] = ACTION_FUNCTION(ACTION_LEDS_GAME),
- [BACKLIGHT] = ACTION_FUNCTION(ACTION_LEDS_BACKLIGHT),
- [BRIGHT] = ACTION_FUNCTION(ACTION_LEDS_BRIGHT),
- [DIM] = ACTION_FUNCTION(ACTION_LEDS_DIM),
- [MODE_SINGLE] = ACTION_FUNCTION(ACTION_LEDS_SINGLE),
- [MODE_PAGE] = ACTION_FUNCTION(ACTION_LEDS_PAGE),
- [MODE_FLASH] = ACTION_FUNCTION(ACTION_LEDS_FLASH),
-};
-
-/* custom action function */
-void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
+bool process_record_user(uint16_t keycode, keyrecord_t *record) {
msg_t msg;
- switch(id) {
- case ACTION_LEDS_ALL:
+ switch(keycode) {
+ case LED_ALL:
if(record->event.pressed) {
- led_mode_global = led_mode_global == ALL ? MODE_SINGLE : ALL;
+ led_mode_global = led_mode_global == MODE_ALL ? MODE_SINGLE : MODE_ALL;
msg=TOGGLE_ALL;
chMBPost(&led_mailbox, msg, TIME_IMMEDIATE);
}
- break;
+ return false;
- case ACTION_LEDS_BACKLIGHT:
+ case LED_BACKLIGHT:
if(record->event.pressed) {
backlight_status_global ^= 1;
msg=(backlight_status_global << 8) | TOGGLE_BACKLIGHT;
chMBPost(&led_mailbox, msg, TIME_IMMEDIATE);
}
- break;
+ return false;
- case ACTION_LEDS_GAME:
+ case LED_GAME:
if(record->event.pressed) {
- led_mode_global = led_mode_global == GAME ? MODE_SINGLE : GAME;
+ led_mode_global = led_mode_global == MODE_GAME ? MODE_SINGLE : MODE_GAME;
msg=(4 << 8) | DISPLAY_PAGE;
chMBPost(&led_mailbox, msg, TIME_IMMEDIATE);
}
- break;
+ return false;
- case ACTION_LEDS_BRIGHT:
+ case LED_BRIGHT:
if(record->event.pressed) {
msg=(1 << 8) | STEP_BRIGHTNESS;
chMBPost(&led_mailbox, msg, TIME_IMMEDIATE);
}
- break;
+ return false;
- case ACTION_LEDS_DIM:
+ case LED_DIM:
if(record->event.pressed) {
msg=(0 << 8) | STEP_BRIGHTNESS;
chMBPost(&led_mailbox, msg, TIME_IMMEDIATE);
}
- break;
+ return false;
//set led_mode for matrix_scan to toggle leds
- case ACTION_LEDS_SINGLE:
+ case LED_SINGLE:
led_mode_global = MODE_SINGLE;
- break;
- case ACTION_LEDS_PAGE:
+ return false;
+ case LED_PAGE:
led_mode_global = MODE_PAGE;
- break;
- case ACTION_LEDS_FLASH:
+ return false;
+ case LED_FLASH:
led_mode_global = MODE_FLASH;
- break;
+ return false;
}
+ return true;
}
// Runs just one time when the keyboard initializes.
@@ -257,7 +234,7 @@ void matrix_scan_user(void) {
return;
}
- if (led_layer_state != layer_state && led_mode_global != GAME && led_mode_global != ALL) {
+ if (led_layer_state != layer_state && led_mode_global != MODE_GAME && led_mode_global != MODE_ALL) {
//check mode
//Turn on layer indicator or page depending on mode
switch(led_mode_global) {
diff --git a/keyboards/whitefox/keymaps/kim-kim/keymap.c b/keyboards/whitefox/keymaps/kim-kim/keymap.c
index a254067582..baaa136873 100644
--- a/keyboards/whitefox/keymaps/kim-kim/keymap.c
+++ b/keyboards/whitefox/keymaps/kim-kim/keymap.c
@@ -51,18 +51,3 @@ const uint16_t keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
_______,_______,_______, _______, _______,_______,_______, KC_HOME,_______,KC_END \
),
};
-
-/* Give numbers some descriptive names */
-#define ACTION_LEDS_ALL 1
-#define ACTION_LEDS_GAME 2
-
-const uint16_t fn_actions[] = {
- [2] = ACTION_FUNCTION(ACTION_LEDS_ALL),
- [3] = ACTION_FUNCTION(ACTION_LEDS_GAME),
-
- [4] = ACTION_USAGE_CONSUMER(0x1B4),
- [5] = ACTION_USAGE_CONSUMER(0x196),
- [6] = ACTION_USAGE_CONSUMER(0x1A6),
- [7] = ACTION_USAGE_CONSUMER(0x1A0),
-
-};
diff --git a/keyboards/whitefox/keymaps/matt3o/keymap.c b/keyboards/whitefox/keymaps/matt3o/keymap.c
index f6987fe1aa..bb84196684 100644
--- a/keyboards/whitefox/keymaps/matt3o/keymap.c
+++ b/keyboards/whitefox/keymaps/matt3o/keymap.c
@@ -16,6 +16,13 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include QMK_KEYBOARD_H
+enum custom_keycodes {
+ AL_FILE = SAFE_RANGE,
+ AL_WWW,
+ AL_HELP,
+ AL_CMD
+};
+
const uint16_t keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Layer 0: Default Layer
* ,---------------------------------------------------------------.
@@ -45,25 +52,44 @@ const uint16_t keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS, KC_HOME,KC_PGDN,KC_END \
),
[2] = LAYOUT( \
- KC_SLEP,KC_P1, KC_P2, KC_P3, KC_P4, KC_P5, KC_P6, KC_P7, KC_P8, KC_P9, KC_P0, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_FN2, \
- KC_TRNS,KC_TRNS,KC_FN5 ,KC_FN6 ,KC_TRNS,KC_FN7 ,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_PSCR,KC_TRNS,KC_TRNS,KC_TRNS, KC_FN3, \
- KC_CAPS,KC_TRNS,KC_TRNS,KC_TRNS,KC_FN4 ,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS,\
+ KC_SLEP,KC_P1, KC_P2, KC_P3, KC_P4, KC_P5, KC_P6, KC_P7, KC_P8, KC_P9, KC_P0, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_NO, \
+ KC_TRNS,KC_TRNS,AL_WWW ,AL_HELP ,KC_TRNS,AL_CMD ,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_PSCR,KC_TRNS,KC_TRNS,KC_TRNS, KC_NO, \
+ KC_CAPS,KC_TRNS,KC_TRNS,KC_TRNS,AL_FILE ,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,KC_TRNS,KC_CALC,KC_TRNS,KC_TRNS,KC_TRNS,KC_MAIL,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, KC_TRNS,KC_TRNS,KC_TRNS \
),
};
-/* Give numbers some descriptive names */
-#define ACTION_LEDS_ALL 1
-#define ACTION_LEDS_GAME 2
-
-const uint16_t fn_actions[] = {
- [2] = ACTION_FUNCTION(ACTION_LEDS_ALL),
- [3] = ACTION_FUNCTION(ACTION_LEDS_GAME),
-
- [4] = ACTION_USAGE_CONSUMER(0x1B4),
- [5] = ACTION_USAGE_CONSUMER(0x196),
- [6] = ACTION_USAGE_CONSUMER(0x1A6),
- [7] = ACTION_USAGE_CONSUMER(0x1A0),
-
-};
+bool process_record_user(uint16_t keycode, keyrecord_t *record) {
+ switch (keycode) {
+ case AL_FILE:
+ if (record->event.pressed) {
+ host_consumer_send(0x1B4); // AL File Browser
+ } else {
+ host_consumer_send(0);
+ }
+ return false;
+ case AL_WWW:
+ if (record->event.pressed) {
+ host_consumer_send(0x196); // AL Internet Browser
+ } else {
+ host_consumer_send(0);
+ }
+ return false;
+ case AL_HELP:
+ if (record->event.pressed) {
+ host_consumer_send(0x1A6); // AL Integrated Help Center
+ } else {
+ host_consumer_send(0);
+ }
+ return false;
+ case AL_CMD:
+ if (record->event.pressed) {
+ host_consumer_send(0x1A0); // AL Command Line Processor/Run
+ } else {
+ host_consumer_send(0);
+ }
+ return false;
+ }
+ return true;
+}