The maximum is 5. This could be increased by adjusting the submacro.
If this value is left blank or set to less than 2, then multiple taps will not be detected. This is recommended if you only want to detect short/long presses, as it will make things slightly more responsive.
Long Press:
If this is set to any value except 0 or No, then long presses will be detected.
Tap Gap:
This sets the maximum length of the gap between multiple taps. Increase this value if you would like slower taps to be accepted.
NB: The Caller serves as a template for your macros that can be duplicated. The Press Detection macro is a submacro that all callers will reference.
You will need to select the Caller macro in KM Link's macro selection dropdown. If you add a Parameter value to the plugin, it will be accessible as Local__KMLinkParameter in the Caller.
Momentarily watches for MIDI release triggers. Any MIDI multi-press macros you create from the above template will reference this single detection macro; there's no need to duplicate it.
Repeats an action until the trigger is released, at which time another action can be triggered. The speed at which the first action repeats increases the longer the key is held.
The limitation of tapped triggers that if, for example, you have one macro that triggers on tapped once and another on tapped twice, tapping twice will trigger both macros. The templates above are a neat way around that problem.
Maybe I'm dense, but I can't seem to figure out how to change the timing of the long press interval to be longer, when using the USB Device Keys macro you've created.
In other words, I end up triggering the long press sometimes, when I'm just trying to use the short press, so I'd like to increase the timing a little longer so I don't accidentally trigger long press when pushing the button on my Stream Deck. But I can't seem to figure out how to increase the time required for long press to trigger. How do I correctly do that? Great macro, by the way.
Edit:
I swear I had tried it before, and it didn't seem to work at the time, but is it just as simple as changing the timeout interval in the "Wait for Release" section of the macro to something longer than 0.2 seconds? I just tried changing it to 1 full second, and it does seem to increase the interval to the point that I'm now no longer accidentally triggering the long press (maybe I'll try 0.5 seconds to see how that treats me). Is that all that is needed to adjust the the macro to behave as I require?
I have one macro that can do short and long press actions, based on whether it was triggered by a short press or a long press. I use your macro to discern whether a short press or long press was used, and then in turn do one set of actions or another, depending on the type of press.
I'm kind of wondering if the new native long press functionality you highlighted in KM 11 would be able to be used in the fashion that I described above. I'm sort of inclined to think I'd still need your macro for my particular use case, but maybe not?
Also, is the new native long press functionality in KM 11 able to be modified to a particular time interval, or does it have only one preset time interval, and you take it or leave it?
Ah, yeah, I guess the %trigger% could work as a differentiator. I'll have to look into the command line thing. I haven't messed with that in KM before. I guess it's fairly simple.
Are you asking for the macro to trigger before the user releases the mouse button? And what do you expect to trigger if the user immediately follows the long tab with a short tap? Remember, the design of the multi-tap system can’t trigger any macro until after the final tap is released, plus a short period of extra time to ensure another tap isn’t happening.
If you completely understood my statement that it cannot trigger a macro “until after the final tap is released” then why did you say that you wanted the macro to trigger, as I asked, “before the user releases the mouse button”? Those two statements are opposed to each other.
Not in its current incarnation. You might be able to do it using an interstitial macro that logs the trigger types and the time they arrived (appended lines in a global variable), and then calculate whether a long press was received within a certain interval of a multiple tap.