Macros, also known as Shortcuts, are a way of improving your productivity by allowing you to perform repetitive or frequently required actions more quickly and accurately, tailoring your Mac to your usage patterns.
A macro consists of a set of zero or more possible Macro Triggers which define when the macro will be executed, together with an ordered list of Macro Actions to be performed. Sets of Macros are collected together into Macro Groups.
A typical simple Macro consists of a single Hot Key trigger, such as Control-A, together with a single action, such as “type my address” .
To create a Macro, first launch Keyboard Maestro, select the desired Macro Group to contain it, and then click the + button below the Macros list. To edit a Macro, double click it, or select it and press the Edit button. The Macro Editor window will be displayed.
Enter the name of your new Macro (you can skip this and it will be named for you based on the action you select).
You can create a new trigger by clicking on the green ⊕ button. There are several Macro Triggers to choose from, the most common being the Hot Key trigger which allows you to execute the Macro at the press of a key. You can define several different triggers, and any of the triggers will execute the Macro Actions. You can delete a trigger by clicking the red ⊖ button.
You can add a new action by clicking the New Action button or the + button at the bottom of the macro detail view to display the list of actions or by choosing Insert Action By Name from the Edit menu or choosing Insert Action from the Edit menu. There are many Macro Actions to choose from. The actions you include will be executed in order. You can reorder the actions by dragging them around. You can copy actions by Option-Dragging or by using Copy and Paste. You can delete an action by selecting it and pressing the Delete key. You can enable or disable actions by selecting them and clicking the ✓ button at the bottom of the macro detail view.
An easy way to generate macro actions is to turn on recording by clicking the Record button at the bottom of the macro detail view and proceeding to show Keyboard Maestro what you want to do. Then turn recording back off and look through the actions. Chances are you will need to delete or adjust some of the recorded actions to make a robust macro, but this will be quicker than creating each action manually.
Macros are continuously saved, so the macro is live as soon as it is created. It will be available immediately (subject to the restrictions of the Macro Group it is contained in). There is no need to turn off editing, switch to a different macro, or quit the editor (although quitting the editor after you have finished editing all your macros is a good idea).
You can select a macro by clicking on the ⌘ button to select a recently triggered macro or click the ◷ button to select from recently modified macros.
You execute a macro’s action sequence by triggering the macro using any of the Macro Triggers you have defined.
You can share a macro to the Keyboard Maestro Forum, or to a friend via Mail or Messages using the sharing button at the top of the Macros window.
You can also trigger macros by name using the Trigger Macro by Name action, which in turn can be in a macro and triggered any way you desire.
You can trigger a macro using the kmtrigger: scheme with a URL like
kmtrigger://macro=MacroName&value=Value (the value is accessible via the %TriggerValue% Text Token).
If the web server is enabled for remote access, you can trigger a macro remotely after logging in using a web browser or the Keyboard Maestro Control iPhone application.
You can also trigger a macro using AppleScript or another scripting language (select the “Or by script” entry to display script code in various languages such as AppleScript or Perl).
Note that the web server needs to be separately enabled in the Web Server preference pane, and all macros are subject to the restrictions of the Macro Group they are contained in. If the Macro Group is not enabled and active, the macro will not be available.
You can disable or enable a macro by selecting it and clicking the ✓ button at the bottom of the Macros list. You can also disable or enable a Macro using the Set Macro Enable action, or from AppleScript with:
tell application "Keyboard Maestro" setMacroEnable "Macro Name or UID" with/without enable end tell
You can start editing a Macro or Macro Group from AppleScript with:
tell application "Keyboard Maestro" editMacro "Macro Group Name or UID" end tell