Completely disable KM when opening a certain app?

Hi there!

Is there a way to completely disable KM's keyboard processing and all macros when opening/switching to a certain app, and re-enable it when quitting that app or switching away from it with CMD+Tab?

Background is that I'm a blind VoiceOver user, and whenever I launch REAPER, with an extension for blind people that adds many more keyboard bindings to actions than REAPER offers by default, I'd like Keyboard Maestro to free up all and any key bindings it might have until I exit or switch away from REAPER again. So basically, kind of a "go to sleep when I'm in REAPER" mode.

Any tipps would be greatly appreciated!

Thanks!

Hi @MarcoZehe, welcome to the forum.

Here are some ideas.

  1. In case you didn't know: you can exclude applications from groups of macros. In the Keyboard Maestro editor:

a) Select a macro group in the first (most left-hand) column. Options for that group will now be available in the third (most right-hand) column.
b) In that third column, the first dropdown menu from the top shows the default setting of "available in all applications". You can change that to "available except in these applications" and then select Reaper.

If you are happy to take a "fine-grained" approach like that, it would in theory mean that you had to exclude Reaper in each macro group.

  1. You could have a macro to quit the Keyboard Maestro engine whenever Reaper is made active. However, you would then need a way to restart the engine when switching away from Reaper... which presents a conundrum. Perhaps you could have some other form of automation to do this, but it would need to detect when Reaper is no longer the active application. I do wonder whether some clever people here might be able to help with that!
1 Like

Hi, you can do the following:

To have macros active everywhere except specific applications, set the Macro Group to be “Available except in the following applications” and add the desired applications to the list

https://wiki.keyboardmaestro.com/manual/Macro_Groups

Do this for all relevant groups