I agree, it would be cool if it could be integrated in to va.
If you would like a press and hold function though. Here is my well tested one. It allows for single taps, and press and hold actions.
Set small int (condition) [Seconds] value to 0
Start Loop While : Keyboard Key 'F14' Is Pressed
Set small int (condition) [Seconds] value as incremented by 1
Write [Blue] '{SMALL:Seconds}' to log
Pause 0.1 seconds
Begin Small Integer Compare : [Seconds] Is Greater Than 3
Put here the press and hold command to be run!
End Condition - Exit when condition met
End Loop
Begin Small Integer Compare : [Seconds] Is Less Than 3
Here for single tap commands
End Condition - Exit when condition met
Begin Small Integer Compare : [Seconds] Is Less Than 3
End Condition - Exit when condition met
^ This really isn't needed, because it will happen by default if Seconds never reaches 4. 4 would be 0.4 seconds. Most normal single key presses are under 0.3 seconds. Fast key presses are under 0.1 seconds.
The time delay, is just long enough, that you never accidentally trigger the press and hold command, but also, that you don't feel like you're holding the key down for a long time either. I've been using this for a long time, and works great. I actually have a command just with this command in it, so I can copy and paste it into other commands. I use a 20 button mouse, and most every button now has 2 possible trigger actions.
I decided to make a profile for just this command, and attached it for download. Hope it comes in handy for you, and others. Very useful command.