UltimateHackingKeyboard / agent

Ultimate Hacking Keyboard configurator
https://ultimatehackingkeyboard.github.io/agent/
Other
692 stars 77 forks source link

can UHK have a "Repeat key" ? #2181

Closed farzher closed 4 months ago

farzher commented 4 months ago

hello, is it possible to create a "repeat key" a key which will repeat the last pressed key. to allow me to write hello world programs faster for example h e l {repeat key} o to type hello

https://getreuer.info/posts/keyboards/repeat-key/index.html

kareltucek commented 4 months ago

Well, as for solutions that are possible now:


You can create a macro similar to the following for every key:

setVar lastKey $thisKeyId
holdKey a

and then have the repeat macro:

activateKeyPostponed $lastKey

Or move your base layer mappings to say fn2 layer and have the following macro bound on all base layer keys. If I am not mistaken, this may prevent you from being able to hold the keys.:

setVar lastKey $thisKeyId
activateKeyPostponed atLayer fn2 $thisKeyId

and then the repeat macro again:

activateKeyPostponed $lastKey

Third options is that we might add a $lastKeyId variable that would provide you with the needed keyid. However, I am reluctant to do that as it is a quite niche usecase.

kareltucek commented 4 months ago

Another option is to modify the functionality so that you press your "repeat key" before the character that is to be repeated.

Then following macro should be sufficient:

ifNotPending 1 goTo 0
activateKeyPostponed append $queuedKeyId.0
farzher commented 4 months ago

it is a quite niche usecase

yeah it is. thank you for the information and work arounds.

and autohotkey seems to work well for windows users F13::Send %A_PriorKey%