Fix home row mod timing to prevent false positives - #2
Merged
Conversation
- Increase tapping term from 200ms to 280ms for better hold detection - Add strict hold-tap behavior for shift keys with tap-preferred flavor - Use 300ms tapping term and 200ms prior-idle for shift keys - Apply strict timing to LSHIFT_F, RSHIFT_J, LSHIFT_T, RSHIFT_N - Update README with detailed behavior documentation This should significantly reduce issues like 'fi' appearing instead of 'I' when using home row mods for shift operations.
Contributor
There was a problem hiding this comment.
Pull Request Overview
This PR addresses false positive issues with home row modifiers by implementing differentiated timing configurations to reduce unintended character combinations while maintaining typing responsiveness.
- Increased standard tapping terms and introduced strict timing behavior for problematic shift keys
- Added comprehensive documentation explaining the two-tier hold-tap timing system
- Applied stricter timing specifically to shift modifiers that were causing false positives
Reviewed Changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
| config/include/behaviors.dtsi | Adds new strict hold-tap behavior and increases timing parameters |
| config/corne.keymap | Updates shift key definitions to use strict timing behavior |
| README.md | Documents the dual hold-tap timing system and behavior rationale |
| quick-tap-ms = <QUICK_TAP_TERM>; | ||
| require-prior-idle-ms = <120>; | ||
| require-prior-idle-ms = <150>; | ||
| global-quick-tap; |
There was a problem hiding this comment.
[nitpick] The global-quick-tap; property is duplicated between both hold-tap behaviors. Consider if this duplication is intentional or if the strict behavior should have different quick-tap settings.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
Users experiencing issues where home row mods produce unintended character combinations (e.g., 'fi' instead of 'I' when using Shift+F with I).
Solution
This PR improves home row modifier timing to reduce false positives:
Changes Made
ht_strictbehavior for problematic keysTechnical Details
LSHIFT_F,RSHIFT_J,LSHIFT_T,RSHIFT_Nnow useht_stricttap-preferredflavor to prioritize taps over holdsBenefits
Testing
Please test this configuration and report if you still experience issues with:
Closes #[issue-number-if-exists]