Questions
How to make a macro on a Mac
A macro is a list of actions that runs from one press. macOS already has pieces of this, and for some jobs they are the right answer, so they come first. When you want a timed chain of keystrokes and clicks on a controller button, a mouse side button, a MIDI pad, or a key, InputConfig builds it for free.
What macOS already does
- Typing a phrase: Text Replacements, in the Keyboard section of System Settings, expand a short abbreviation into any text you like, in most apps.
- A new shortcut for a menu command: Keyboard Shortcuts, App Shortcuts, in the same place, gives any menu item the key combination you want.
- Multi-step automations: the Shortcuts app chains actions such as opening apps, resizing windows, and working with files, and a shortcut can have its own key combination.
If a Shortcut already does the job, an InputConfig row can run it from any button with the Siri Shortcuts system function.
InputConfig is free on the Mac App Store. macOS 14 or later, no account, no tracking, open source.
Build a macro in InputConfig
- Install InputConfig from the Mac App Store and allow Accessibility access.
- Add a row, press Scan, and press the control that will run the macro.
- Open the row's Options and tick Run a sequence of steps (macro).
- Add steps. Each step is a key or a mouse click, with a wait before it and how long it is held.
- Close the editor and activate the preset.
The built-in Macros & Turbo preset has a working example to copy: its A button copies, switches app, and pastes.
Key combinations inside a macro
Each step has a kind: Tap presses and releases, Hold down keeps the key held while the next steps run, and Release lets it go. Command C is three steps: Hold down Command, Tap C, Release Command. Anything a macro leaves held when it ends is released for you, so a chord cannot get stuck.
Timing that works
Most apps read a keystroke held for 30 to 50 ms with a 50 ms gap. Switching apps needs 300 to 500 ms before the next step. If a macro drops a key, lengthen the wait before the step that misses. Stop on release ends the macro the moment you let go of the control, and the Repeat field runs the whole chain several times from one press.
What it does not do
InputConfig does not record a macro by watching you; you build it step by step, which also means every step and every wait is visible and easy to change. Macro steps are keys and clicks at the pointer. To type a sentence, put a Type Text output on its own row, or use a Text Replacement. And because the app listens to the keyboard alongside macOS, a key you use as the trigger still types, so the best triggers are controls that type nothing: a controller button, a MIDI pad, a mouse side button, or F13 to F19. The macro deck guide builds a whole deck of them.
Questions
Is there free macro software for Mac?
Yes. InputConfig is free and open source on the Mac App Store, and macros, turbo, and every other feature are included with nothing to unlock.
Can a mouse button run a macro on a Mac?
Yes. A mouse's side buttons can be the input of a macro row, with no vendor software.
Can a macro click the mouse?
Yes. A step can be a left, right, or middle click at wherever the pointer is.
Can a game controller run macros on a Mac?
Yes. Any button on a supported PlayStation, Xbox, Switch, 8BitDo, or other controller can run one. The macro sends keys and clicks, so it works in apps and in games played with keyboard and mouse.
Related
Free. macOS 14 or later. No account, nothing leaves your Mac. Open source on GitHub.