I assume this is QMK, because changing the settings clears or introduces the issue. Iβm using Vial for the programming/configuration.
I have a key configured tap-dance, like many others: - on tap, and ctrl on hold. The issue is that most of the time when I type something like -p
, I get only the -
. Then, the next time I type p
, I get 2 of them. So something like this will happen:
I type foo -p bar baz
, but donβt notice the p
is missing until after baz
, cursor left and type p
again, and end up with -pp
Most of my keys are tap-dance of some pattern: <char> on tap, layer shift in hold, <char> on tap-hold. Iβve noticed this buffered character after -
on other characters; it isnβt just p
. Changing the timeout does affect the frequency, but doesnβt entirely eliminate it. I havenβt noticed it on any other combo, although theyβre all of the same pattern; it seems to be only happening with the -/ctrl tap-dance. Removing the multitap on -
eliminates the issue.
This is my first QMK. Iβd been using an Ergodox for years, and kmonad
on my laptop for a year or so, although I recently switched to kanata
(fantastic piece of software, incidentally), so Iβm more or less familiar with the world of layers, multi-tap/tap-dance, combos, and so on. This one has me stumped, though.
Iβve checked and thereβs no combo defined that involves dash. Iβve never created a QMK macro, but it occurs to me that I didnβt check if there are any defined.
Does anyone have a suggestion of how I can debug this? Could there be some bug, some bit that I accidentally set, thatβs causing this? Is there some QMK feature that does exactly this thing, and Iβve somehow enabled it? Iβve power cycled the keyboard, although I havenβt yet tried a hard or factory reset.
Any ideas would be appreciated!
Edit corrected βmulti-tapβ to βtap-danceβ, as QMK calls it the one thing and not tβother
Thanks for the link. I am using tap-hold quite a bit.
I made a mistake going straight for a 36 board. I was a pretty fast touch typer, but I canβt seem to get the settings tweaked such that Iβm not either having annoying delays waiting for layer shifts, or getting accidental layer shifts. And because (I know itβs not the most minimal) so many keys have to be in layers, itβs really put a cramp both in my speed, and my confidence (that I typed what I think I typed, especially when Iβm transposing).
I have less trouble with kanata, even with very similar layer configurations. After I got this board configured, I changed my kanata layout to match, and I get much more accuracy out of kanata. Iβve started thinking maybe I should just go to a minimal QMK layout - no layers, etc - and use kanata instead. Or, if thereβs a way to extrapolate a QMK config from how kanataβs behavior is programmed.
Personally, most of my 36 and below boards are programmed such that iβd rely on tap dance less. Iβd rather put it in a layer, explode it inside the layer for things like parantheses and brackets, or arrange a combo for things that are frequently used but cannot be assigned into a designated first layer.
Partially because I already have a layout that works on a bigger 40% boards, but another factor of it is how awkward tapdance have always felt to me.
As for the kanata thing: canβt say I can comment further as Iβve never used it before.
I tend to use tap-dance for modifiers, like my thumb Esc is also Alt, because one I tap (and never hold) and the other I always hold (and has no use taped). Having (e.g.) a key only dedicated to Alt is a wasted key; Alt isnβt a good key to have on a layer; and it would be not only annoying to have to tap a layer switch key to get to Alt, and even then thereβd be a chording issue where you still need to have access to all your keys and Alt so you can type chords like Ctrl-Alt-X.
How do you manage the four(-ish) modifier keys without tap-dance, or having dedicated, single-purpose keys for them? On a 36, thatβs 11% of the keyboard dedicated to modifiers (Ctrl, Shift, Meta, Alt) at best, or 19% if you make use of the fact that there are left/right distinctions for three of those keys (is there a Right Meta?).
Honestly, Iβd be happy with a different solution. Modifier keys are hard enough; I still have trouble with accuracy with only three thumb keys. I had an ErgoDox for years and never really used all twelve of the thumb keys; it was just too hard to reliable hit that inner column.
For that matter, how do you do layer switches without tap dance, or dedicated keys? Are you using momentary layers, or layer switch? Are they dedicated layer keys, and if so, where are your modifiers keys and things like space/return? Can you post your config so I can load it in Vial and look at it?
I might misunderstood some terms here, but I feel like our understanding of what tap-dance is might be different.
That said, hereβs an ilustration of what I got on my Minidox. I also use something similar on my QAZ, although that one got 32 keys instead of 36.
Edit: actually, I think the latest version got the whole semicolon and Backspace switched. The semicolon button is backspace by default and P + Backspace gives me semicolon. Main reasoning are: rarely use semicolon and fighting the primal urge of pinky finger to backspace is hard (I rotate between sub40s and 40s at least once a week)