From 0c03811d6affb31d9952e9b4c9c0f5e10fddee8a Mon Sep 17 00:00:00 2001 From: ridingqwerty Date: Fri, 16 Aug 2019 19:54:16 -0400 Subject: [Keymap] add "ridingqwerty" user and keymap for atreus keyboard (#6533) * add userspace and atreus keymap * cleaning up notes/comments * Update keyboards/atreus/keymaps/ridingqwerty/atreus.c Co-Authored-By: Joel Challis * Update keyboards/atreus/keymaps/ridingqwerty/atreus.c Co-Authored-By: Joel Challis * Create readme.md * remove reference to matrix_init_kb from atreus.c * correct atreus.c * remove unnecessary defines * merge register/unregister sequence into single tapcode * move 'LAYOUT to keymap.c; remove atreus.h * remove TAPPING_TERM from keyboard-level config.h --- users/ridingqwerty/process_records.c | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 users/ridingqwerty/process_records.c (limited to 'users/ridingqwerty/process_records.c') diff --git a/users/ridingqwerty/process_records.c b/users/ridingqwerty/process_records.c new file mode 100644 index 0000000000..be72883ecb --- /dev/null +++ b/users/ridingqwerty/process_records.c @@ -0,0 +1,33 @@ +#include "ridingqwerty.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; +} + +uint16_t user_key_timer; +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch(keycode) { + case RG_QUOT: + if (record->event.pressed) { + user_key_timer = timer_read(); + layer_on(_NUMBER); + register_mods(MOD_BIT(KC_RGUI)); + } else { + unregister_mods(MOD_BIT(KC_RGUI)); + layer_off(_NUMBER); + if (timer_elapsed(user_key_timer) < TAPPING_TERM) { + register_code(KC_QUOT); + unregister_code(KC_QUOT); + } + } + return false; break; + } + return process_record_keymap(keycode, record) && + process_record_secrets(keycode, record); +} -- cgit v1.2.3