Keyboard Maestro 8

Keyboard Maestro 8.0 enhances the editor, expands MIDI support, adds comprehensive AppleScript support, revamps the clipboard switchers, adds Gesture, Cron and Remote triggers, lots of new actions and additions to the engine, and much more.

Keyboard Maestro 8.0 requires OS X Yosemite 10.10.0 or later.

Version 8 is a paid upgrade for everyone who purchased before March 1, 2017.

Version 8 is a free upgrade for anyone who purchased after March 1, 2017.

Watch the What’s New Video to see some of the new features, or the Introduction video if you are new to Keyboard Maestro.

Version 8 refines the editor in a variety of ways, adding more help, text size control, machine learning, more drag & drop, Touch Bar support, context sensitive assistance and much more.

Version 8 continues the long tradition of putting more power at your finger tips, introducing the Cron trigger for calendar based macros, Gesture triggers drawn with the mouse, Remote triggering for integration with web services, Clipboard filtering and more.

The new version expands on the MIDI support to allow far deeper control both in triggering macros and sending packets.

With the addition of Dictionaries, you can now store structured information, and Macro-local variables allow you to write cleaner macros.

The editor now has full Open Scripting Architecture support, allowing you to construct, control and adjust macros programmatically.

And, of course, version 8 lets you do even more, adding many new input actions, more Control Flow options, actions to send messages, more user interface control and further enhancements to the Custom HTML windows. There are plenty of new conditions, collections, tokens and functions as well.

With over a hundred other improvements, there is bound to be something for everyone.

Editor Improvements

  • Added new Assistance system to help novices trouble shoot any early issues.
  • Large Text size support in editor lists (Macros, Groups, Library, etc).
  • Added Machine Learning system to By Name selectors.
  • Support dragging macros and macro groups into the macro action list.
    • No modifiers: Execute the Macro / Show the Macro Group
    • Option: insert a copy of the macro’s actions
    • Command-Shift: Enable the Macro / Macro Group
    • Option-Shift: Mark the Macro
  • Added dragging of macros/macro groups to action macro selector popup menus.
  • Support dragging files in as macros or actions.
    • Applications as Activate Application action.
    • Scripts as the appropriate Execute Script action.
    • Other files as Open File actions.
  • Added basic Touch Bar support.
  • Added Actions menu.
  • Added Run Macro menu and toolbar item to run the currently selected macro.
  • Added Engroup Actions (into a new Group, Macro, For Each, While, etc).
  • Added Degroup Actions.
  • Added Paste Replacing for actions.
  • Added Select Macro by Name.
  • Added Insert Function by Name.
  • Added Insert Token by Name.
  • Added Insert Variable by Name.
  • Added File -> Share menu.
  • Added Import Macros Disabled menu command.
  • Adjusted Import Macros menu command to require the Option key.
  • Added Edit -> Insert Token -> Named Clipboard hierarchical menu.
  • Added %Delete% to the Insert Token menu.
  • Show an indiciator of the kind (token, variable, calculation) of each field in the editor.
  • Support negation (-) in the search fields.
  • Default to last used variable when creating new actions.
  • Support changing Safari actions to/from Google Chrome actions.
  • Support styled text in comments.
  • Added an option to hide disabled macro groups.
  • Added wiki search to Help menu.
  • Added Make Alias for macros (and command-option dragging macros to groups).
  • Play Sound supports sounds in ~/Library/Sounds and ~/Sounds.
  • Click on macro group label (top right) to select the enclosing macro group.
  • Adjusted the disclosure behaviour of Execute Macro action.
  • Added Space, Escape, and Help to the Hot Key selection menu.
  • Added a disabled color to the action color menu to indicate the color means a matched search.
  • Added Copy as XML to copy macro groups, macros or actions as XML.
  • Added View -> Select Groups Column menu item.
  • Added View -> Select Macros Column menu item.
  • Added View -> Edit Name menu item.
  • Added View -> Reveal Parent Group menu item.
  • Added View -> Last Used, Last Edited, Previous Edited, Next Edited menu items.
  • Added Select Macro option to macro selector popup menu.
  • Added Philippe Martin’s Multiple Clipboards to the Macro Library.
  • Added Rename Finder Files to the Macro Library.
  • Show a warning on “Press and Hold” actions that are the last action of the macro.
  • Show a warning when using Open File to open applications with the Default Application.
  • Show a warning when an Application trigger cannot fire because of the macro group’s settings.
  • Show a warning when a For Each action does not use its variable.
  • Show a warning when a string containing test looks like it should be a string matching test.
  • Support pasting XML actions.
  • Changed to a patterned color for the search matching indicator.
  • Color invalid Calculation conditions.
  • Adjusted the appearance of disabled actions to make them more clearly disabled.
  • Support quitting the editor by closing the editor window.
  • When showing a mapping from an empty variable show italic “empty”.
  • Show “No Forms Found” (etc) when Safari/Chrome popups cannot find any valid entries.
  • Minor tweaks to the overall appearance.
  • Removed misleading “Matching” from Search & Replace “String” search.
  • Double clicking icon image wells opens and sets the Icon Chooser.
  • The Modifiers condition no longer allows setting a modifier to be both pressed and not pressed.

Full AppleScript Support in the Editor

  • Macro Groups, Smart Groups, Macros, Triggers, Actions are all AppleScirpt OSA objects. Examples:
    • properties of smart group “Enabled”
    • make new smart group with properties {name:“Enabled”, search strings:{“enabled:yes”}}
    • set search strings of smart group “Test2” to {“ABC”, “DEF”}
    • set name of macro 1 to “Great!”
    • tell macro group “New Stuff” to make new macro
    • select action 1 through 3 of action 2 of macro “Working”
    • set enable of macro group “Turn Off” to false
    • set color of action 1 of macro “Bright” to “red”
    • set selection to global macro group
    • move first action of macro “Source Macro” to end of actions of macro “Dest Macro”
    • delete second action of macro “Target Macro”
    • duplicate every macro group whose name starts with “Test”
    • set m to duplicate action 1 of macro “Macro33” to after action 2 of macro “Macro32”
    • duplicate (selected macros) to macro group “Test4”

Revamp Clipboard History Switcher & Named Clipboard Switcher

  • New combined appearance.
  • Additional information (source, type, size, pixel size, time, index).
  • Drag Reordering.
  • Drag from the switcher to image or text fields.
  • Contextual menu to Paste, Paste Plain, or Paste Image, Duplicate.
  • Contextual menu to just set the current clipboard without pasting.
  • Large Text size support in Clipboard Switchers.
  • Support excluding applications from the clipboard history.

Expanded MIDI Support

  • Added MIDI Control Change trigger.
  • Added MIDI raw packet trigger (SysEx, HUI protocol, etc).
  • Support MIDI trigger recording when the text fields are focused in background.
  • Added Send MIDI raw packets so you can send any kind of MIDI packet.
  • Send MIDI action uses calculations so you can send varying notes and control changes.
  • Handle and split multiple MIDI packets received in a single system MIDI packet.

Added Local and Instance Variables

  • Added the concept of Local Variables, local to the macro they are in.
  • Added the concept of Instance Variables, local to macro execution group they are in.

Added Dictionaries

  • Added the concept of dictionaries, mapping (case insensitively) a dictionary name and key name to a value.
  • Added Set Dictionary Value action.
  • Added %Dictionary[Dict,Key]% text token.
  • Added collection of Dictionaries and Keys in a Dictionary.
  • Added full AppleScript support for accessing Dictionaries.

New Triggers

  • Added Cron trigger.
  • Added Gesture triggers drawn with the trackpad or mouse.
  • Added Audio Output Changed triggers drawn with the trackpad or mouse.
  • Added Remote trigger via a Keyboard Maestro server.
  • Added Clipboard Filter trigger.
  • Added Audio Output Device Changed trigger.
  • Added Idle trigger (trigger after the Mac is idle for N minutes).
  • Added Export Trigger File which lets you trigger a macro by opening a file.

New Actions

  • Added Show Palette of Macros action with (optional) Touch Bar action.
  • Added Get Touch Bar Selection action.
  • Added Prompt With List action.
  • Added Get a URL action (including getting images).
  • Added Remote Trigger action.
  • Added Trigger Macros by Hot Key action.
  • Added Front Browser actions that work on the most front Safari or Chrome browser.
  • Added stdin input for Execute a Shell Script action.
  • Send SMS/iMessage Action.
  • Added Prompt For File/Folder action.
  • Added Continue Loop action (continues on to the next iteration).
  • Added Retry This Loop action (restarts the current iteration).
  • Added Assert action.
  • Added Split Path action to split a path into its component parts.
  • Added File as an input/output to many text actions.
  • Added File and Text as an input option to Lines In & Substrings In collections.
  • Added initial value to Trigger Macro by Name action.
  • Added option to restrict the macros in the Trigger Macro by Name action.
  • Added option to include inactive or disabled macros in Trigger Macro by Name action.
  • Added option to Play Sound action to play asynchronously.
  • Added option to Alert action to play a sound.
  • Added option to New Folder action to create intermediate folders.
  • Added asynchronous option to Custom HTML Prompt action.
  • Added resizable option to Custom HTML Prompt window.
  • Added non-floating option for Custom HTML Prompt window.
  • Added data-kmhandleschemes/KMHandleSchemes() to Custom HTML Prompt action.
  • Added Notify/Stop on Error to execute script actions.
  • Set %ActionResult% token to stderr for execute script actions.
  • Pass parameters to Trigger Macro by Name.
  • Support XPath in all the Web Browser actions.
  • Generalized Filter action inputs and outputs.
  • Generalized Search using Regular Expression action inputs and outputs.
  • Generalized Search and Replace action inputs and outputs.
  • Simulate Keystroke can send the key to a non-front application.
  • Insert Text by Typing can send the keys to a non-front application.
  • Support Search and Replace action processing the input for each replacement.
  • Added Full Screen test to Front Window condition.
  • Added title matches option to Manipulate Window action.

New Conditions

  • Added numeric conditions.
  • Added “starts with” and “ends with” to string conditions.
  • Added “is before” and “is after” to string conditions that were missing them.
  • Added Action Result condition.
  • Added Mouse Button condition.
  • Added “is hidden” et al to the Application condition.
  • Added Trigger Clipboard and Named Clipboard options to the Clipboard condition.

New Collections

  • Added collection of Variables.
  • Added collection of Dictionaries.
  • Added collection of Keys in a Dictionary.
  • Added sort order to the Folder Contents collection.

New Tokens

  • Added %TriggerClipboard% token to return the text of the triggered clipboard.
  • Added %KeyboardLayout% token to return the current input source.
  • Added weekday option to %ICUDateTimePlus/Minus% tokens to find next occurrence of a specific day of the week.
  • Added %Hex2%, %Oct3%, %Dec5%, %Bin8% tokens to convert calculations to other bases.
  • Added %CalculateFormat% token with selected or specified format.
  • Added %RandomUUID% token to generate a random Unique ID.
  • Added %AudioOutputDevice% token to return the currently selected Audio Output Device.
  • Support XPath in the %SafariField% (and other) tokens.
  • Added %FrontBrowserTitle%, %FrontBrowserURL%, etc tokens.
  • Added %FoundImage% token to return the results of the last attempt to find an image.
  • Added %AlertButton%, %PromptButton%, %HTMLResult% tokens. Deprecated equivalent variables.

New Functions

  • Added FRONTBROWSERTABCOUNT, FRONTBROWSERTABINDEX, FRONTBROWSERISCOMPLETE functions.
  • Added Black,x,y) color function.
  • Added context sensitive Y) and Y) functions.

Engine Improvements

  • Added preference to show Conflict Palettes in the Touch Bar.
  • Support text with percent characters in text functions in token fields.
  • Only require Shift-Option-Control click on status menu to cancel all macros.
  • Added Machine Learning system to Trigger Macro by Name selector.
  • Added options to macro groups to be always active and show a palette sometimes.
  • Variables used in calculations can themselves contain calculations that are implicitly evaluated.
  • Support as a synonym for = in calculations.
  • Support negative array indices for access from end of an array (calculation or Variable token).
  • Support 0 array indices for count of the elements in an array (calculation or Variable token).
  • Support executing an array of actions from AppleScript “do script” commands.
  • Restore front application before executing kmtrigger: macros.
  • Display Text window closes immediately if Return is hit once.
  • Added an option to turn off notifications of macro groups being activated/deactivated.
  • Adjusted Typed String triggers with “affects actions” option to only uppercase the first letter.
  • Added “Activate Clipboard Switcher” to the Paste status menu.
  • Periodically write the clipboard history to disk.

Minor Improvements and Changes

  • Removed or renamed confusing use of “Default Clipboard”.
  • Prefer %SystemClipboard% over the older %CurrentClipboard%.
  • Support Home/End in Trigger Macro By Name and Add Action windows.
  • Adjusted the Select Menu action to return a failed ActionResult if the menu item is disabled.
  • Turning on/off the iOS web server preference properly changes the Rendezvous publications.
  • Changing any web browser settings kills all existing connections.
  • Added “disabled” option to importMacros AppleScript command.
  • Default to importing macros disabled unless the Option key is held down.
  • Adjusted a case where a “for one action” palette opens a Conflict Palette.
  • Adjusted the iTunes Control AppleScripts.
  • Added “exit”, “break”, “loop” as search strings to various actions.
  • Added “ask”, “input”, “InputBox” as search strings to prompt actions.
  • Added the Keyboard Maestro version number to the Share text.
  • Resolved display of executing macros for asynchronously executed macros.
  • Improved error message for File Action.
  • Fixed Fast User Switch action.
  • Disallow return characters in macro/group names.
  • Updated Share to Forum category names to match forum changes.
  • Removed Growl support.
  • Removed Always Hide Other Applications support.

Bug Fixes

  • Fixed behaviour of Close After Action when you Command-V in the Clipboard Switcher.
  • Fixed Corsair K95 RGB Gaming Keyboard Device Key name display.
  • Fixed width issue with various scrolling lists.
  • Fixed a possible crash with Folder change triggers.
  • Fixed an issue compiling scripts that reference Keyboard Maestro itself.
  • Fixed an issue cropping images with non-nominal (72) DPIs.
  • Fixed an issue composing on to images with non-nominal (72) DPIs.
  • Fixed an issue if macros hold multiple semaphore locks.
  • Fixed an issue with Set Network Location and non-ASCII names.
  • Fixed a possible issue with columns resizing unexpectedly.
  • Fixed consistency of arrows for meaning left, right, width, height in actions.
  • Fixed unlocalized display of Focused Window trigger in non-edit mode.
  • Fixed issue with number steppers and empty fields.
  • Fixed inconsistent “Exit From Loop” menu name to “Break From Loop”.
  • Fixed icon centering in Icon Chooser.
  • Fixed double clicking macro names to select the title field.
  • Fixed some cases where popup menus occluded text fields.

Keyboard Maestro is engineered by Stairways Software Pty Ltd and distributed by FastSpring. Keyboard Maestro is licensed on a per user basis, and an individual user can use it on five Macs.

New customers can purchase Keyboard Maestro from https://purchase.keyboardmaestro.com/ for US$36. Customers with five or more users should contact us for a volume discount quote.

Customers who purchased Keyboard Maestro directly from us after March 1, 2017 have been issued a free upgrade to Keyboard Maestro 8. If you have not received your free license, you can find your free license upgrade at https://enquiry.stairways.com/.

Customers who purchased Keyboard Maestro version 7 prior to March 1, 2017 can upgrade to Keyboard Maestro 8 for US$18 until 19 November 2017 and for US$25 after that date. Customers who purchased older versions of Keyboard Maestro can upgrade to Keyboard Maestro 8 for US$25. If you have not received your instructions on how to upgrade, you can find details by looking up your Keyboard_Maestro license at https://enquiry.stairways.com/.

Keyboard Maestro 8 is not available from the Mac App Store (and probably never will be).

A fully-functional unlicensed trial version of Keyboard Maestro can be downloaded from https://download.keyboardmaestro.com/.

For sales enquires, volume purchases, customer service, technical support, or to contact project management, our current contact information is listed at https://contact.stairways.com/.

Extensive online documentation on Keyboard Maestro can be found at https://documentation.keyboardmaestro.com/ and on the wiki at https://wiki.keyboardmaestro.com and forum at https://forum.keyboardmaestro.com.

A brief taste of Keyboard Maestro in action can be found at https://screenshots.keyboardmaestro.com/.

For more information about anything to do with Keyboard Maestro visit https://www.keyboardmaestro.com/.

19 Likes