Here's a very basic macro that will do this task in a simplistic manner.
One could build more keys into the scheme.
The method could be played with.
This is a task just waiting for someone with sufficient web programming skills.
I suspect a Custom HTML Prompt action could be set up with a key listener that would actually display the key of the activation chord as they were pressed.
This might also be accomplished with a Keyboard Maestro palette, but I'm not going to dive in that far.
QuicKeys 4.5 used to do asynchronous key chord triggers wonderfully well, and I wish Keyboard Maestro would do it natively. Alas β the developer doesn't want to go there (so far).
BTT is developing very fast. Completely new features are added every week. This has a price. The developer of BTT releases an update almost every day. So almost all bugs are removed very quickly.
The question is, would you rather wait 3 years for a new feature until everything is completely stable? Or do you want it much faster with the risk of bugs?
And what does "frequently" mean? I have been using BTT for years and almost never have crashes. I suggest to use the regular updates. Index of /releases
That is certainly a possibility. But BTTs "Key Sequences" are MUCH more powerful.
I would also recommend that. A shortcut opens the palette, then a single key trigger is sufficient.
Actually I was talking about displaying the secondary, tertiary⦠keystrokes.
But what Frank is suggesting is eminently possible.
It would not be difficult to use one or more conflict palettes or a purpose-designed palette with specific keystrokes.
It would also be possible to layer them, so palette 1 is displayed by the initial hotkey trigger β palette 2 is displayed by activating a macro on palette 1 β and go as deep as you want.
Thank you. But I would like to achieve a bit more flexible keystrokes. For example, triggering without using modifier keys. I thought of using Alfred as an alternative. But it also depends on the modifier key, just like km. I want to use Photoshop and Illustrator, so having them really helps.
I think there is a misunderstanding. What @noisneil suggested works without modifiers. With KM "typed string triggers" you can (to stay with your example) type "01" and expand it to something else. This feature is basically the same as a BTT "key sequence" just less powerful.
It uses a normal Hot Key trigger to start the macro and then accepts additional keystrokes β in this case 'J' and 'L' in succession.
The macro activates System Events (an invisible background app) to prevent keystrokes from disturbing other apps.
Typed string triggers are for text insertion macros. Although some people use them more generally, there are pitfalls to doing that β because the keystrokes flow through to whatever app you're working in.
Understood. Thank you. It's a macro for bug fixes, isn't it? I learned a lot. This macro was really difficult for me, so it was a very good learning opportunity
Probably a stupid question. Is there any way to see what you are typing? I was thinking of a prompt or "trigger macro by name", but after that you always have to press enter, which is not desired.
To stay with the example, type "j" and "l" and see it and once KM has recognized that this string "makes sense" (is a trigger) run the macro. So, similar to a "typed string trigger".
I think @noisneil's idea is about as good as it gets.
It would probably be possible to do this with a Custom HTML Prompt action, but you'd have to have some serious web programming chops.
I think using it as an input device has some real possibilities.
The only other way I can think of that's reasonably simple is to use palettes that give the user visual cues of pressable hotkeys and offer unlimited depth of travel.
I.e. the primary macro opens a palette β the secondary keypress closes the first palette and opens another palette β ... until you reach your destination action(s).