summaryrefslogtreecommitdiff
path: root/common
diff options
context:
space:
mode:
Diffstat (limited to 'common')
-rw-r--r--common/config.h4
-rw-r--r--common/keymap.h36
2 files changed, 13 insertions, 27 deletions
diff --git a/common/config.h b/common/config.h
index 63364b9..7212a3e 100644
--- a/common/config.h
+++ b/common/config.h
@@ -35,5 +35,5 @@
// Enable rapid switch from tap to hold, disables double tap hold auto-repeat.
#define QUICK_TAP_TERM 0
-// try to be more permissive with holds
-#define PERMISSIVE_HOLD
+// allow that thumb buttons have permissive hold
+#define PERMISSIVE_HOLD_PER_KEY
diff --git a/common/keymap.h b/common/keymap.h
index f42da27..8b5fa46 100644
--- a/common/keymap.h
+++ b/common/keymap.h
@@ -71,30 +71,16 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
};
-//
-// improve home row modifiers via achordion
-//
-
-#include "achordion.h"
-
-bool process_record_user(uint16_t keycode, keyrecord_t* record)
-{
- if (!process_achordion(keycode, record)) {
- return false;
+bool get_permissive_hold(uint16_t keycode, keyrecord_t *record) {
+ switch (keycode) {
+ case LT(_SYM, KC_SCLN):
+ case LT(_NUM, KC_SPC):
+ case LT(_NAV, KC_E):
+ case LT(_FN, KC_MINS):
+ // Immediately select the hold action when another key is tapped.
+ return true;
+ default:
+ // Do not select the hold action when another key is tapped.
+ return false;
}
-
- return true;
-}
-
-void matrix_scan_user(void)
-{
- achordion_task();
-}
-
-bool achordion_chord(uint16_t tap_hold_keycode,
- keyrecord_t* tap_hold_record,
- uint16_t other_keycode,
- keyrecord_t* other_record)
-{
- return my_on_left_hand(tap_hold_record->event.key) != my_on_left_hand(other_record->event.key);
}