top of page
  • Writer's pictureJoe Chris

Macros, Automation, & Scripting

Many composers use scripts or additional programs to perform complex tasks in a specific order. We call these types of programs “macros”, and are often triggered by “hot keys”. A hot key is essentially a key command, whereas a macro can be thought of as a series of hot keys or actions that are performed within a single execution.

On Mac, the most common application we use for this is Keyboard Maestro. On windows, we have a couple options with auto hotkey being the most common. Many “gaming” peripheral devices (such as keyboards and mice) also come with additional programmable buttons that can be configured with their own proprietary software. Any of these programs can create macros that can be used in any application on the computer (referred to as “global” macros) but also can create macros inside a DAW.

If we are working within a DAW, we also have access to all of the software mentioned in the touchpad section to create and execute macros as well. Some DAWs even have macro editors built in (such as Cubase’s logic editor).

In addition to touch screens, some composers use Keyboard Maestro or Autohot key to set up a secondary (or even tertiary) computer keyboard and use that exclusively for macros (myself being one of them). Others will buy macro devices such as the El Gato Streamdeck and use that. Though keyboard maestro and a $10 keyboard can provide you with over 150 different hot keys with minimal set up, so it is a perfectly viable choice and not just a “budget” option over a stream deck or one of those custom gaming keyboards that give you access to ridiculous keys like F32 to program additional macros.

Macros are typically forms of scripts assigned to some sort of trigger (be it a touch screen, a hot key, or even a midi event). A script is a series of instructions that the computer performs and they tend to go from A to B to C to D. It is read line by line and performed in real time each time you execute it.

Terminal and Command Prompt Scripts

If you know how to navigate via the terminal, this can be an incredibly powerful workflow enhancement as well. Once you learn basic terminal/command prompt programming, any series of tasks you can do in here can be executed by a script as well. For example, I have a script that auto generates a folder structure for projects and that is triggered by a hot key set up in keyboard maestro. So when I get a new project, I hit a single keyboard button and type in the name of my project. A folder tree is set up, named, and placed in the “scores” folder on my desktop. This saves me a lot of time and helps me maintain organization across projects.

!Command line tricks

Inside the terminal/command prompt there are also a ton of “under the hood” features we have access to which allow us to optimize our computer for music production. If you are a techy person and interested in this, I would highly recommend this article for MacOS. I have yet to find an equivalent article for Windows users. Learning the command line basics can be very useful for troubleshooting as well.

With a program like Keyboard Maestro, you can even set your computer up to perform tasks automatically at specific times of day or when certain events are met. This is referred to as “automation”. Automation is essentially a macro that is triggered by specific events occurring rather than a hot key execution. Such as the clock equaling a specific time (ex: time machine on a Mac). These can be incredibly powerful, especially in more “behind the scenes” type work such as back ups and data management.

Additional References:

Recent Posts

See All

Remote Work Software

In the post-covid world, people are working remotely from home (WFH) more than ever. Composers can now assist other composers, video chat and collaborate with directors/musicians, and even record orch

A Basic Approach to Troubleshooting

Knowing how to approach determining and fixing a problem is an incredibly useful skill. Even if you don’t know the exact solution to every problem, knowing how to find that solution can save you a lot


bottom of page