Temporarily Disable All Keyboard Maestro Hotkey Triggers?

Sometimes I hit a native hotkey and wonder "Is there a macro running right now instead?".

I'd like to be able to hit a hotkey that disables all hotkeys for X seconds.

The only way I can think of is to put all my macros into groups and make another macro that disables them for X seconds and then enables them again.

Are there other options?

Why not quit the engine. KM-->File-->Quit Engine

This is what a lot of people do for this purpose:

That almost works. Unfortunately I'd have to start the engine manually again. Maybe there is a way to schedule the restart on the OS level somehow?

For sure I have one of those and use it all the time.

To further specify, I would want to use it in cases where I want to rule out that a KM trigger is interfering.

For example, I was trying to use Cmd-Shift+G today in Finder to go to a specific location. Unfortunately I had recently assigned a macro to that hotkey, so I got the macro instead.

I'm looking for a way to temporarily override hotkeys.

I've not tried it but I wonder if you could create a MacOS Shortcut to kill the KM engine, pause for some time period then restart the engine.

You can definitely kill the engine in a macro like so:
Screen Shot 2022-03-30 at 7.35.54 PM

Have to add it by adding the path: /Applications/Keyboard Maestro.app/Contents/MacOS/Keyboard Maestro Engine.app

I've been trying various ways to run a shell script asynchronously and then open the Engine:

No luck yet. Engine isn't launching

Did you intend for the macro you assigned to Cmd-Shift+G to be available in the Finder? If that's the case, I'd suggest you pick a different hotkey for that macro. If not, then put that macro in a group that isn't available when the Finder has focus. Why make life difficult for yourself?

Sidenote: if you find it hard to remember lots of hotkeys, you might want to experiment with conflict palettes.

I wanted the Cmd-Shift+G macro to be global because I use it a lot.

It's true I could put this particular macro in a group that gets disabled when I focus Finder – but then I'd have to do that for EVERY native macro conflict that I run across. That's going to stop me from doing whatever task I'm doing at the time and those times all add up.

Being able to disable KM at those times seems easier than going into KM and making a configuration.

How much can you customize conflict palettes? Lately I've been trying to avoid having to use them

I'm not really the guy to ask about palettes as I don't really use them myself. I would if I didn't have a Stream Deck though.

It looks like you can edit the color schemes but I don't see much after that.

Stream Deck again! One day...

@peternlewis - Any idea how to temporarily kill the KM Engine for X seconds and bring it back again without doing it manually? I've been trying to use asynchronous shell scripts but they never seem to return

You can use the Execute a Shell Script action, executing asynchronously (otherwise the engine will kill the task when it quits).

I have a script to quit the Keyboard Maestro Engine, but it is very complicated for a variety of reasons.

In your case, you can probably just use a script like

osascript -e "tell application \"Keyboard Maestro Engine\" to quit"

and

open -a "/Applications/Keyboard Maestro.app/Contents/MacOS/Keyboard Maestro Engine.app"

Probably.

3 Likes

Yep! This works:

Many thanks.

Not sure where I went wrong in my previous post as I was using the asynchronous option - probably syntax somehow.

1 Like