summaryrefslogtreecommitdiffstats
path: root/users/curry/process_records.h
diff options
context:
space:
mode:
authorridingqwerty <george.g.koenig@gmail.com>2020-01-03 13:37:09 -0500
committerGitHub <noreply@github.com>2020-01-03 13:37:09 -0500
commit48eda75c838b786d688bb5066de851ee86937ad6 (patch)
treece41edfee8de7130e3dce730c5bcb4b08573128a /users/curry/process_records.h
parent3951f331c07a66a833d6266ccddfab5fc207e22a (diff)
parent2a7c715bc6f5774a4fa73a0a83f8c3bd44f19e22 (diff)
Merge pull request #7762 from CurryFurious/userspace_curry
Adding custom userspace & 2 keymaps
Diffstat (limited to 'users/curry/process_records.h')
-rw-r--r--users/curry/process_records.h104
1 files changed, 104 insertions, 0 deletions
diff --git a/users/curry/process_records.h b/users/curry/process_records.h
new file mode 100644
index 0000000000..6170ed4c7e
--- /dev/null
+++ b/users/curry/process_records.h
@@ -0,0 +1,104 @@
+#pragma once
+#include "curry.h"
+
+#if defined(KEYMAP_SAFE_RANGE)
+# define PLACEHOLDER_SAFE_RANGE KEYMAP_SAFE_RANGE
+#else
+# define PLACEHOLDER_SAFE_RANGE SAFE_RANGE
+#endif
+
+enum userspace_custom_keycodes {
+ VRSN = PLACEHOLDER_SAFE_RANGE, // Prints QMK Firmware and board info
+ KC_QWERTY, // Sets default layer to QWERTY
+ KC_COLEMAK, // Sets default layer to COLEMAK
+ KC_DVORAK, // Sets default layer to DVORAK
+ KC_MAKE, // Run keyboard's customized make command
+ KC_RGB_T, // Toggles RGB Layer Indication mode
+ RGB_IDL, // RGB Idling animations
+ KC_SECRET_1, // test1
+ KC_SECRET_2, // test2
+ KC_SECRET_3, // test3
+ KC_SECRET_4, // test4
+ KC_SECRET_5, // test5
+ KC_CCCV, // Hold to copy, tap to paste
+ KC_NUKE, // NUCLEAR LAUNCH DETECTED!!!
+ UC_FLIP, // (ಠ痊ಠ)┻━┻
+ UC_TABL, // ┬─┬ノ( º _ ºノ)
+ UC_SHRG, // ¯\_(ツ)_/¯
+ UC_DISA, // ಠ_ಠ
+ KC_DT1,
+ KC_DT2,
+ KC_DT3,
+ KC_DT4,
+ NEW_SAFE_RANGE // use "NEWPLACEHOLDER for keymap specific codes
+};
+
+bool process_record_secrets(uint16_t keycode, keyrecord_t *record);
+bool process_record_keymap(uint16_t keycode, keyrecord_t *record);
+
+#define LOWER MO(_LOWER)
+#define RAISE MO(_RAISE)
+#define ADJUST MO(_ADJUST)
+#define TG_MODS TG(_MODS)
+#define OS_LWR OSL(_LOWER)
+#define OS_RSE OSL(_RAISE)
+
+#define KC_SEC1 KC_SECRET_1
+#define KC_SEC2 KC_SECRET_2
+#define KC_SEC3 KC_SECRET_3
+#define KC_SEC4 KC_SECRET_4
+#define KC_SEC5 KC_SECRET_5
+
+#define QWERTY KC_QWERTY
+#define DVORAK KC_DVORAK
+#define COLEMAK KC_COLEMAK
+
+#define KC_RESET RESET
+#define KC_RST KC_RESET
+
+#ifdef SWAP_HANDS_ENABLE
+# define KC_C1R3 SH_T(KC_TAB)
+#else // SWAP_HANDS_ENABLE
+# define KC_C1R3 KC_TAB
+#endif // SWAP_HANDS_ENABLE
+
+#define BK_LWER LT(_LOWER, KC_BSPC)
+#define SP_LWER LT(_LOWER, KC_SPC)
+#define DL_RAIS LT(_RAISE, KC_DEL)
+#define ET_RAIS LT(_RAISE, KC_ENTER)
+
+/* OSM keycodes, to keep things clean and easy to change */
+#define KC_MLSF OSM(MOD_LSFT)
+#define KC_MRSF OSM(MOD_RSFT)
+
+#define OS_LGUI OSM(MOD_LGUI)
+#define OS_RGUI OSM(MOD_RGUI)
+#define OS_LSFT OSM(MOD_LSFT)
+#define OS_RSFT OSM(MOD_RSFT)
+#define OS_LCTL OSM(MOD_LCTL)
+#define OS_RCTL OSM(MOD_RCTL)
+#define OS_LALT OSM(MOD_LALT)
+#define OS_RALT OSM(MOD_RALT)
+#define OS_MEH OSM(MOD_MEH)
+#define OS_HYPR OSM(MOD_HYPR)
+
+#define M_LALT ALT_T(KC_TAB)
+#define M_RALT RALT_T(KC_QUOT)
+
+#define M_LCTL CTL_T(KC_TAB)
+#define M_RCTL RCTL_T(KC_QUOT)
+
+#define MT_ESC MT(MOD_LCTL, KC_ESC)
+
+#define ALT_APP ALT_T(KC_APP)
+
+#define MG_NKRO MAGIC_TOGGLE_NKRO
+
+#define UC_IRNY UC(0x2E2E)
+#define UC_CLUE UC(0x203D)
+
+// KWin Window Switching
+#define KC_DT1 LCTL(KC_F1)
+#define KC_DT2 LCTL(KC_F2)
+#define KC_DT3 LCTL(KC_F3)
+#define KC_DT4 LCTL(KC_F4)