From 959b9989c2de48e46b6e355b09bba4375237488e Mon Sep 17 00:00:00 2001 From: drashna Date: Fri, 12 Nov 2021 22:16:03 +0000 Subject: [PATCH] =?UTF-8?q?Deploying=20to=20gh-pages=20from=20master=20@?= =?UTF-8?q?=2057f63e43d862d3c36ee1e530920f7ee40e9713a2=20=F0=9F=9A=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- mod_tap.md | 23 ++++++++++------------- 1 file changed, 10 insertions(+), 13 deletions(-) diff --git a/mod_tap.md b/mod_tap.md index b69500f9c99..dc11b0dea9d 100644 --- a/mod_tap.md +++ b/mod_tap.md @@ -83,32 +83,29 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { ### Changing hold function -Likewise, the same custom code can also be used to intercept the hold function to send custom user key code. The following example uses `LT(0, kc)` (layer-tap key with no practical use because layer 0 is always active) to add cut, copy and paste function to X,C and V keys when they are held down: +Likewise, similar custom code can also be used to intercept the hold function to send custom user key code. The following example uses `LT(0, kc)` (layer-tap key with no practical use because layer 0 is always active) to add cut, copy and paste function to X,C and V keys when they are held down: ```c bool process_record_user(uint16_t keycode, keyrecord_t *record) { switch (keycode) { case LT(0,KC_X): - if (record->tap.count && record->event.pressed) { - return true; // Return true for normal processing of tap keycode - } else if (record->event.pressed) { + if (!record->tap.count && record->event.pressed) { tap_code16(C(KC_X)); // Intercept hold function to send Ctrl-X + return false; } - return false; + return true; // Return true for normal processing of tap keycode case LT(0,KC_C): - if (record->tap.count && record->event.pressed) { - return true; // Return true for normal processing of tap keycode - } else if (record->event.pressed) { + if (!record->tap.count && record->event.pressed) { tap_code16(C(KC_C)); // Intercept hold function to send Ctrl-C + return false; } - return false; + return true; // Return true for normal processing of tap keycode case LT(0,KC_V): - if (record->tap.count && record->event.pressed) { - return true; // Return true for normal processing of tap keycode - } else if (record->event.pressed) { + if (!record->tap.count && record->event.pressed) { tap_code16(C(KC_V)); // Intercept hold function to send Ctrl-V + return false; } - return false; + return true; // Return true for normal processing of tap keycode } return true; }