This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
Scripting_the_Keyboard_Maestro_editor [2017/09/20 16:29] JMichaelTX ADD example to get current macro |
Scripting_the_Keyboard_Maestro_editor [2017/10/13 22:07] JMichaelTX Move script for Macro Groups to here |
||
---|---|---|---|
Line 4: | Line 4: | ||
The Keyboard Maestro Scripting Definition (sdef) describes all the support, and you can open in in the Script Editor to see more details. Here are some examples of what you can do: | The Keyboard Maestro Scripting Definition (sdef) describes all the support, and you can open in in the Script Editor to see more details. Here are some examples of what you can do: | ||
+ | |||
+ | FIXME Just adding this until I can provide a more complete script. | ||
+ | |||
+ | ===== Selecting Lists of Objects in KM8 ===== | ||
+ | |||
+ | ```applescript | ||
+ | tell application "Keyboard Maestro" | ||
+ | set selList to selection | ||
+ | set macroList to selected macros | ||
+ | set grpList to selected macro groups | ||
+ | end tell | ||
+ | ``` | ||
+ | |||
===== 1. Get Current Macro Object ===== | ===== 1. Get Current Macro Object ===== | ||
Line 10: | Line 23: | ||
tell application "Keyboard Maestro" | tell application "Keyboard Maestro" | ||
+ | # Ver 1.1 2017-09-20 | ||
+ | | ||
+ | set macroList to every macro whose selected is true | ||
+ | | ||
+ | --- Make Sure Only ONE Macro is Selected --- | ||
+ | | ||
+ | if ((count of macroList) = 1) then | ||
+ | set oMacro to item 1 of macroList | ||
+ | else | ||
+ | error "Multiple Macros are selected. Select only ONE and re-execute this script." | ||
+ | end if | ||
+ | | ||
+ | --- Now We can Get/Set Macro Properties --- | ||
| | ||
- | set oMacro to first macro whose selected is true | ||
set macroName to name of oMacro | set macroName to name of oMacro | ||
| | ||
Line 19: | Line 44: | ||
``` | ``` | ||
- | ===== 2. Get and Create Variety of Editor Objects ===== | + | ===== 2. Macro Groups ===== |
+ | |||
+ | **Disable a Macro Group** | ||
+ | |||
+ | <code applescript> | ||
+ | tell application "Keyboard Maestro" | ||
+ | set enabled of macro group "Macro Group Name" to false | ||
+ | end tell | ||
+ | </code> | ||
+ | |||
+ | **Edit a Macro Group** | ||
+ | |||
+ | <code applescript> | ||
+ | tell application "Keyboard Maestro" | ||
+ | editMacro "Macro Group Name or UID" | ||
+ | end tell | ||
+ | </code> | ||
+ | |||
+ | **Get the list of currently selected macro groups** | ||
+ | |||
+ | <code applescript> | ||
+ | tell application "Keyboard Maestro" | ||
+ | set groupList to selected macro groups | ||
+ | end tell | ||
+ | </code> | ||
+ | |||
+ | ===== 3. Get and Create Variety of Editor Objects ===== | ||
Line 60: | Line 111: | ||
``` | ``` | ||
- | ===== 3. Create Macro Group and Macros ===== | + | ===== 4. Create Macro Group and Macros ===== |
Here is a full example that creates a macro group called "Multiple Clipboards" and then creates 9 macros with hot Control-C and action to copy the clipboard to a named clipboard with name "Clipboard N" (where N is 1-9) and another set of 9 macros with hot key Control-V and action to paste from the named clipboard "Clipboard N" | Here is a full example that creates a macro group called "Multiple Clipboards" and then creates 9 macros with hot Control-C and action to copy the clipboard to a named clipboard with name "Clipboard N" (where N is 1-9) and another set of 9 macros with hot key Control-V and action to paste from the named clipboard "Clipboard N" |