summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJustin Wernick <justin@worthe-it.co.za>2024-01-19 21:44:50 +0200
committerJustin Wernick <justin@worthe-it.co.za>2024-01-19 21:44:50 +0200
commitfe57dd5103efcf77f78cc8b910c55c8dcdea4687 (patch)
tree50b0a21f323b01367620b4a8179664cbc58e9a4f
parentf2cfbc1cb35871f56d654ea54a5e4aa30571b6bc (diff)
All the macro keys
-rw-r--r--keyboards/ergodox_ez/glow/keymaps/jworthe/config.h2
-rw-r--r--keyboards/ergodox_ez/glow/keymaps/jworthe/keymap.c221
2 files changed, 171 insertions, 52 deletions
diff --git a/keyboards/ergodox_ez/glow/keymaps/jworthe/config.h b/keyboards/ergodox_ez/glow/keymaps/jworthe/config.h
index a413175688..26c3c0f514 100644
--- a/keyboards/ergodox_ez/glow/keymaps/jworthe/config.h
+++ b/keyboards/ergodox_ez/glow/keymaps/jworthe/config.h
@@ -5,7 +5,7 @@
#define ORYX_CONFIGURATOR
#define IGNORE_MOD_TAP_INTERRUPT
#define USB_SUSPEND_WAKEUP_DELAY 0
-#define FIRMWARE_VERSION u8"65O6n/NPlra"
+#define FIRMWARE_VERSION u8"65O6n/MEpmb"
#define RAW_USAGE_PAGE 0xFF60
#define RAW_USAGE_ID 0x61
#define LAYER_STATE_8BIT
diff --git a/keyboards/ergodox_ez/glow/keymaps/jworthe/keymap.c b/keyboards/ergodox_ez/glow/keymaps/jworthe/keymap.c
index 7303e0274d..60f3967c8c 100644
--- a/keyboards/ergodox_ez/glow/keymaps/jworthe/keymap.c
+++ b/keyboards/ergodox_ez/glow/keymaps/jworthe/keymap.c
@@ -49,29 +49,43 @@
enum custom_keycodes {
RGB_SLD = EZ_SAFE_RANGE,
- ST_MACRO_0,
- ST_MACRO_1,
- ST_MACRO_2,
- ST_MACRO_3,
- ST_MACRO_4,
+ SMALL_ARROW,
+ FAT_ARROW,
+ EMAIL,
+ WHILE,
+ ENUM,
+ BOOL,
+ IFELSE,
+ PUB,
+ ASYNC,
+ SELF,
+ IMPL,
+ FN,
+ LET,
+ BYE,
+ STRUCT,
+ CRATE,
+ BREAK,
+ MUT,
+ RETURN
};
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = LAYOUT_ergodox_pretty(
KC_GRAVE, KC_1, KC_2, KC_3, KC_4, KC_5, KC_ESCAPE, KC_TRANSPARENT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINUS,
- KC_TRANSPARENT, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_TRANSPARENT, MO(1), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLASH,
+ MO(3), KC_Q, KC_W, KC_E, KC_R, KC_T, KC_TRANSPARENT, MO(1), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLASH,
MO(1), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCOLON, KC_QUOTE,
KC_LSHIFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_TRANSPARENT, MO(2), KC_N, KC_M, KC_COMMA, KC_DOT, KC_SLASH, KC_RSHIFT,
- KC_LCTRL, KC_LGUI, KC_LALT, KC_AMPR, KC_EQUAL, ST_MACRO_0, ST_MACRO_1, KC_RALT, KC_RGUI, KC_RCTRL,
+ KC_LCTRL, KC_LGUI, KC_LALT, KC_AMPR, KC_EQUAL, SMALL_ARROW, FAT_ARROW, KC_RALT, KC_RGUI, KC_RCTRL,
KC_DELETE, KC_F13, KC_LEFT, KC_RIGHT,
KC_TRANSPARENT, KC_UP,
KC_SPACE, KC_BSPACE, KC_TRANSPARENT, KC_DOWN, KC_TAB, KC_ENTER
),
[1] = LAYOUT_ergodox_pretty(
KC_SYSTEM_POWER,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F11, KC_F12, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_TRANSPARENT,
- KC_TRANSPARENT, KC_EXLM, KC_AT, KC_LCBR, KC_RCBR, KC_PIPE, KC_TRANSPARENT, KC_TRANSPARENT, ST_MACRO_2, KC_7, KC_8, KC_9, KC_ASTR, KC_SLASH,
- KC_TRANSPARENT, KC_HASH, KC_DLR, KC_LPRN, KC_RPRN, KC_GRAVE, ST_MACRO_3, KC_4, KC_5, KC_6, KC_PLUS, KC_MINUS,
+ KC_TRANSPARENT, KC_EXLM, KC_AT, KC_LCBR, KC_RCBR, KC_PIPE, KC_TRANSPARENT, KC_TRANSPARENT, SMALL_ARROW, KC_7, KC_8, KC_9, KC_ASTR, KC_SLASH,
+ KC_TRANSPARENT, KC_HASH, KC_DLR, KC_LPRN, KC_RPRN, KC_GRAVE, FAT_ARROW, KC_4, KC_5, KC_6, KC_PLUS, KC_MINUS,
KC_TRANSPARENT, KC_PERC, KC_CIRC, KC_LBRACKET, KC_RBRACKET, KC_TILD, KC_TRANSPARENT, KC_TRANSPARENT, KC_AMPR, KC_1, KC_2, KC_3, KC_TRANSPARENT, KC_TRANSPARENT,
KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_0, KC_DOT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT,
KC_TRANSPARENT, KC_TRANSPARENT, KC_HOME, KC_END,
@@ -80,8 +94,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
),
[2] = LAYOUT_ergodox_pretty(
KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT,
- KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_MS_UP, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT,
- KC_TRANSPARENT, KC_TRANSPARENT, KC_MS_LEFT, KC_MS_DOWN, KC_MS_RIGHT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT,
+ KC_TRANSPARENT, KC_TRANSPARENT, KC_MS_UP, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT,
+ KC_TRANSPARENT, KC_MS_LEFT, KC_MS_DOWN, KC_MS_RIGHT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT,
KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT,
KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT,
KC_TRANSPARENT, KC_TRANSPARENT, KC_MEDIA_PREV_TRACK,KC_MEDIA_NEXT_TRACK,
@@ -89,34 +103,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_MS_BTN1, KC_MS_BTN2, KC_TRANSPARENT, KC_AUDIO_VOL_DOWN,KC_MEDIA_STOP, KC_MEDIA_PLAY_PAUSE
),
[3] = LAYOUT_ergodox_pretty(
- KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT,
- KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT,
- KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT,
- KC_TRANSPARENT, ST_MACRO_4, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT,
- KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT,
- KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT,
- KC_TRANSPARENT, KC_TRANSPARENT,
- KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT
- ),
- [4] = LAYOUT_ergodox_pretty(
- KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT,
- KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT,
- KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT,
- KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT,
+ KC_TRANSPARENT, KC_TRANSPARENT, EMAIL, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT,
+ KC_TRANSPARENT, KC_TRANSPARENT, WHILE, ENUM, KC_TRANSPARENT, BOOL, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, IFELSE, KC_TRANSPARENT, PUB, KC_TRANSPARENT,
+ KC_TRANSPARENT, ASYNC, SELF, IMPL, FN, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, LET, KC_TRANSPARENT, KC_TRANSPARENT,
+ KC_TRANSPARENT, BYE, STRUCT, CRATE, KC_TRANSPARENT, BREAK, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, MUT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT,
KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT,
KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT,
KC_TRANSPARENT, KC_TRANSPARENT,
- KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT
- ),
- [5] = LAYOUT_ergodox_pretty(
- KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT,
- KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT,
- KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT,
- KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT,
- KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT,
- KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT,
- KC_TRANSPARENT, KC_TRANSPARENT,
- KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT
+ KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, KC_TRANSPARENT, RETURN
),
};
@@ -166,37 +160,162 @@ void rgb_matrix_indicators_user(void) {
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
- case ST_MACRO_0:
+ case SMALL_ARROW:
if (record->event.pressed) {
- SEND_STRING(SS_TAP(X_MINUS) SS_DELAY(100) SS_RSFT(SS_TAP(X_DOT)));
+ SEND_STRING("->");
}
break;
- case ST_MACRO_1:
+ case FAT_ARROW:
if (record->event.pressed) {
- SEND_STRING(SS_TAP(X_EQUAL) SS_DELAY(100) SS_RSFT(SS_TAP(X_DOT)));
+ SEND_STRING("=>");
}
break;
- case ST_MACRO_2:
+ case EMAIL:
if (record->event.pressed) {
- SEND_STRING(SS_TAP(X_MINUS) SS_DELAY(100) SS_RSFT(SS_TAP(X_DOT)));
+ if (get_mods() == MOD_BIT(MOD_MASK_SHIFT)) {
+ SEND_STRING("justin.worthe@gmail.com");
+ } else {
+ SEND_STRING("justin@worthe-it.co.za");
+ }
}
break;
- case ST_MACRO_3:
+ case WHILE:
if (record->event.pressed) {
- SEND_STRING(SS_TAP(X_EQUAL) SS_DELAY(100) SS_RSFT(SS_TAP(X_DOT)));
+ if (get_mods() == MOD_BIT(MOD_MASK_SHIFT)) {
+ SEND_STRING("for");
+ } else {
+ SEND_STRING("while");
+ }
+ SEND_STRING();
}
break;
- case ST_MACRO_4:
+ case ENUM:
if (record->event.pressed) {
- SEND_STRING(SS_TAP(X_K));
+ SEND_STRING("enum");
}
break;
-
- case RGB_SLD:
- if (record->event.pressed) {
- rgblight_mode(1);
+ case BOOL:
+ if (record->event.pressed) {
+ if (get_mods() == MOD_BIT(MOD_MASK_SHIFT)) {
+ SEND_STRING("false");
+ } else {
+ SEND_STRING("true");
+ }
+ }
+ break;
+ case IFELSE:
+ if (record->event.pressed) {
+ if (get_mods() == MOD_BIT(MOD_MASK_SHIFT)) {
+ SEND_STRING("else");
+ } else {
+ SEND_STRING("if");
+ }
+ }
+ break;
+ case PUB:
+ if (record->event.pressed) {
+ if (get_mods() == MOD_BIT(MOD_MASK_SHIFT)) {
+ SEND_STRING("pub(crate)");
+ } else {
+ SEND_STRING("pub");
+ }
+ }
+ break;
+ case ASYNC:
+ if (record->event.pressed) {
+ if (get_mods() == MOD_BIT(MOD_MASK_SHIFT)) {
+ SEND_STRING("await");
+ } else {
+ SEND_STRING("async");
+ }
+ }
+ break;
+ case SELF:
+ if (get_mods() == MOD_BIT(MOD_MASK_SHIFT)) {
+ SEND_STRING("Self");
+ } else {
+ SEND_STRING("self");
+ }
+ break;
+ case IMPL:
+ if (record->event.pressed) {
+ if (get_mods() == MOD_BIT(MOD_MASK_SHIFT)) {
+ SEND_STRING("dyn");
+ } else {
+ SEND_STRING("impl");
+ }
+ }
+ break;
+ case FN:
+ if (record->event.pressed) {
+ if (get_mods() == MOD_BIT(MOD_MASK_SHIFT)) {
+ SEND_STRING("function");
+ } else {
+ SEND_STRING("fn");
+ }
+ }
+ break;
+ case LET:
+ if (record->event.pressed) {
+ if (get_mods() == MOD_BIT(MOD_MASK_SHIFT)) {
+ SEND_STRING("const");
+ } else {
+ SEND_STRING("let");
}
- return false;
+ }
+ break;
+ case BYE:
+ if (record->event.pressed) {
+ if (get_mods() == MOD_BIT(MOD_MASK_SHIFT)) {
+ SEND_STRING("Cheers," SS_TAP(X_ENTER) "Justin");
+ } else {
+ SEND_STRING("Kind regards," SS_TAP(X_ENTER) "Justin Wernick");
+ }
+ }
+ break;
+ case STRUCT:
+ if (record->event.pressed) {
+ if (get_mods() == MOD_BIT(MOD_MASK_SHIFT)) {
+ SEND_STRING("trait");
+ } else {
+ SEND_STRING("struct");
+ }
+ }
+ break;
+ case CRATE:
+ if (record->event.pressed) {
+ if (get_mods() == MOD_BIT(MOD_MASK_SHIFT)) {
+ SEND_STRING("super");
+ } else {
+ SEND_STRING("crate");
+ }
+ }
+ break;
+ case BREAK:
+ if (record->event.pressed) {
+ if (get_mods() == MOD_BIT(MOD_MASK_SHIFT)) {
+ SEND_STRING("continue");
+ } else {
+ SEND_STRING("break");
+ }
+ }
+ break;
+ case MUT:
+ if (record->event.pressed) {
+ SEND_STRING("mut");
+ }
+ break;
+ case RETURN:
+ if (record->event.pressed) {
+ SEND_STRING("return");
+ }
+ break;
+
+ case RGB_SLD:
+ if (record->event.pressed) {
+ rgblight_mode(1);
+ }
+ return false;
}
return true;
}