vial-kb / vial-gui

Vial is an open-source cross-platform (Windows, Linux and Mac) GUI and a QMK fork for configuring your keyboard in real time.
https://get.vial.today
GNU General Public License v2.0
906 stars 172 forks source link

Update Tap-Hold QMK settings #180

Open refact0r opened 1 year ago

refact0r commented 1 year ago

QMK has updated some of the Tap-Hold settings. https://github.com/qmk/qmk_firmware/blob/master/docs/tap_hold.md

There is a new Hold on Other Key Press option: https://github.com/qmk/qmk_firmware/commit/610035dce8f4f7010779e61e1cb590eebc8cea46

Tapping Force Hold has been replaced with Quick Tap Term: https://github.com/qmk/qmk_firmware/commit/cbabc8dbe6a8476d3082e8bc649d330f87e7b904

arrowtype commented 1 year ago

I am newly using a 30% keyboard, and wow, I really need "hold on other key press" as an option to make the Z-shift work as my muscle memory demands. Just commenting to say that I would love for this option to be in Vial! (Overall, I am loving the software, btw – thank you!)

arrowtype commented 1 year ago

Okay, after more research, I was able to solve most of my problem. This issue still seems valid, I think, but in case other new folks arrive at this issue, as I have, here's how I made shift work for me...

Instead of using tap-dance for e.g. Z/shift, use the "quantum" key settings wherever possible. It seems that these have the "Hold on Other Key Press" applied by default.

image
Malefaro commented 12 months ago

I would also really like Hold on Other Key Press feature. For example, to normally bind esc as MO(..) to another layer.


UPD: Just realized that there is special code LT at layers tab. With that I can easly setup esc on tap -> change layer on hold without tap-dance tapping term issues!

LyraelRayne commented 8 months ago

What actually seems to be the case is that IGNORE_MOD_TAP_INTERRUPT was replaced with HOLD_ON_OTHER_KEY_PRESS. It appears Vial implemented this by implementing get_hold_on_other_key_press as the negation of the old get_ignore_mod_tap_interrupt (i.e. !(QS.tapping & 2)) instead of inverting the meaning of the flag in Vial and re-wording it in Vial GUI. So Hold on Other Key Press is actually present in Vial, it just has its value inverted and the wrong label.

andreikonsen commented 8 months ago

I would also really like Hold on Other Key Press feature. For example, to normally bind esc as MO(..) to another layer.

UPD: Just realized that there is special code LT at layers tab. With that I can easly setup esc on tap -> change layer on hold without tap-dance tapping term issues!

Thanks for mentioning this! The LT(layer) does indeed seem to work as "Hold on Other Key Press." Using this instead of tapdance just doubled my one-handed typing WPM and reduced errors with half-QWERTY!

refact0r commented 6 months ago

So Hold on Other Key Press is actually present in Vial, it just has its value inverted and the wrong label.

Yeah, at least for the layer/mod tap keys, it seems like Hold On Other Key Press works when Ignore Mod Tap Interrupt is disabled, and does not work when it is enabled.

I think the Tapping Force Hold setting is also inverted in Vial, it only seems to work when I uncheck the setting.