summaryrefslogtreecommitdiff
path: root/users/miketronic/process_records.c
diff options
context:
space:
mode:
Diffstat (limited to 'users/miketronic/process_records.c')
-rw-r--r--users/miketronic/process_records.c151
1 files changed, 151 insertions, 0 deletions
diff --git a/users/miketronic/process_records.c b/users/miketronic/process_records.c
new file mode 100644
index 0000000000..5c60ddf100
--- /dev/null
+++ b/users/miketronic/process_records.c
@@ -0,0 +1,151 @@
+// Copyright 2023 @miketronic -- Mike B <mxb540@gmail.com>
+// SPDX-License-Identifier: GPL-2.0+
+
+#include "miketronic.h"
+#include "process_records.h"
+
+__attribute__((weak)) bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
+ return true;
+}
+
+__attribute__((weak)) bool process_record_secrets(uint16_t keycode, keyrecord_t *record) {
+ return true;
+}
+
+
+bool process_record_user(uint16_t keycode, keyrecord_t *record) {
+
+ switch (keycode) {
+ case VERSION:
+ if (!record->event.pressed) {
+ send_string_with_delay_P(PSTR(QMK_KEYBOARD ":" QMK_KEYMAP "\nVersion:" QMK_VERSION ", built: " QMK_BUILDDATE "\n"), MACRO_TIMER);
+ }
+ break;
+
+ case M01:
+ if (record->event.pressed) {
+ SEND_STRING("//a11");
+ }
+ break;
+
+ case M02:
+ if (record->event.pressed) {
+ SEND_STRING("//a12");
+ }
+ break;
+
+ case M03:
+ if (record->event.pressed) {
+ SEND_STRING("//a08");
+ }
+ break;
+
+ case M04:
+ if (record->event.pressed) {
+ SEND_STRING("//a09");
+ }
+ break;
+
+ case M05:
+ if (record->event.pressed) {
+ SEND_STRING("//th");
+ }
+ break;
+
+ case M06:
+ if (record->event.pressed) {
+ SEND_STRING("//re");
+ }
+ break;
+
+ case M07:
+ if (record->event.pressed) {
+ SEND_STRING("//yw");
+ }
+ break;
+
+ case M08:
+ if (record->event.pressed) {
+ tap_random_base64();
+ }
+ break;
+
+ case CCCV: // One key copy/paste
+ if (record->event.pressed) {
+ copy_paste_timer = timer_read();
+ } else {
+ if (timer_elapsed(copy_paste_timer) > TAPPING_TERM) { // Hold, copy
+ tap_code16(LCTL(KC_C));
+ } else { // Tap, paste
+ tap_code16(LCTL(KC_V));
+ }
+ }
+ break;
+
+ case IENTER: // Tap for letter "i", slight hold for "enter"
+ if (record->event.pressed) {
+ copy_paste_timer = timer_read();
+ } else {
+ if (timer_elapsed(copy_paste_timer) > TAPPING_TERM) { // Hold, enter
+ tap_code16(KC_ENT);
+ } else { // Tap, "i"
+ tap_code16(KC_I);
+ }
+ }
+ break;
+
+ case PRN:
+ if (record->event.pressed) {
+ SEND_STRING("()");
+ tap_code(KC_LEFT);
+ }
+ break;
+
+ case BRACES:
+ if (record->event.pressed) {
+ uint8_t shifted = get_mods() & (MOD_MASK_SHIFT);
+ if (shifted) {
+ unregister_code(KC_LSFT);
+ unregister_code(KC_RSFT);
+ SEND_STRING("<>"SS_TAP(X_LEFT));
+ }
+ else {
+ SEND_STRING("[]"SS_TAP(X_LEFT));
+ }
+ }
+ break;
+
+#if defined(RGBLIGHT_ENABLE)
+ case RGB1:
+ if (record->event.pressed) {
+ rgblight_sethsv_noeeprom(HSV_BLUE);
+ }
+ break;
+
+ case RGB2:
+ if (record->event.pressed) {
+ rgblight_sethsv_noeeprom(HSV_RED);
+ }
+ break;
+
+ case RGB3:
+ if (record->event.pressed) {
+ rgblight_sethsv_noeeprom(HSV_ORANGE);
+ }
+ break;
+
+ case RGB4:
+ if (record->event.pressed) {
+ rgblight_sethsv_noeeprom(HSV_WHITE);
+ }
+ break;
+
+ case RGB5:
+ if (record->event.pressed) {
+ rgblight_sethsv_noeeprom(HSV_GREEN);
+ }
+ break;
+#endif
+ }
+ return process_record_keymap(keycode, record) && process_record_secrets(keycode, record);
+}