Troubleshooting
Contents |
Timing
Here's a common situation: You've written your macro, you're sure you've included all the steps, but the macro fails in some way, e.g. it seems to skip steps. This is often caused by timing issues: Keyboard Maestro executes an action in the macro before the receiving program is ready for that action.
Most of the actions in a script are immediate: Keyboard Maestro will execute them and then attempts to wait until they are completed, but for some actions it is not possible to tell when the action is completed. So Keyboard Maestro will move on to the next step immediately. If Keyboard Maestro does not wait sufficiently long for the result of an action, you must tell it to explicitly.
To make the macro wait, there are two options:
- Pause: this adds a pause of a fixed length
- Pause Until: this tells Keyboard Maestro to wait until something happens (e.g. a new window opens, a key is pressed, and a dozen more options).
Often, adding pauses to your macro will solve the timing issues. A pause of 0.3 seconds is often enough, but in some cases (e.g. a 'Switch to application' action when there are many applications open and your system is running out of memory) longer pauses (several seconds) may be necessary.
Not Firing
Another common situation, a macro you expect to fire is not firing. Here is what to do:
- Ensure the Keyboard Maestro Engine is running - the Keyboard Maestro status menu should show in the menu bar on the right hand side (unless you've turned it off).
- Ensure the Macro Group is enabled, and is active in the application in question.
- Ensure the macro is active.
- Add a status menu trigger, and verify that the macro is active by checking for its name in the Keyboard Maestro status menu.
- Add a growl action to the macro to verify that the macro is firing.
Not Working With Parallels
In Parallels, make sure the ”Enabled Mac OS X system shortcuts” preference is enabled, which will ensure Parallels reads the keyboard from the keyboard queue.
Other troubleshooting information
See also the Troubleshooting page of the KM documentation.