This morning I was trying to create a Keyboard Maestro macro to automatically send an email to my team members on the last day of each month. I got stymied when I realized the the time schedule trigger is basically limited to “Daily at a certain time”.
I reached out to Peter Lewis, the author of Keyboard Maestro, who provided a solution: Run the macro daily, but then check for a certain date/time calculation to govern the execution of the macro’s actions.
He then provided an example calculation to determine if today is the last day of the month:
One the one hand, I was really happy that a solution exists, and a solution that clearly points the way to all sorts of interesting scheduling possibilities for other periodic email reminders I might want to schedule.
On the other hand, it reminded me of my biggest frustration with Keyboard Maestro—the shallowness of its documentation.
For example, here’s the documentation for year, month and day to be used in calculations:
It didn’t occur to me that these things are actually functions that can be fed arguments constructed from other supported functions. But even realizing this, I still wouldn’t know how to check if today is May 2nd. I just need more usage examples.
Given the immense capabilities of KM, I can’t really blame Peter for not documenting all the possibilities more extensively. So here’s to hoping somebody might take the initiate to start something along the lines of a “Keyboard Maestro Cookbook” community service, where user-contributed usage examples and extended documentation can live.
Matt, do you find that this macro runs dependably even if your computer is turned off at 8:30? Will it run once you turn your computer back on?
Keyboard Maestro only performs macros while the Mac is on and awake. In addition to that, many actions will not work if the display is asleep or screen saving.
You can schedule the Mac to wake up in the System Preferences, and you can use Keyboard Maestro to wake the display or stop screen saving (unless the Mac is locked).