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 | ||
action:Execute_a_JavaScript_For_Automation [2017/04/05 17:04] JMichaelTX Replaced example script, added script for dialogs |
action:Execute_a_JavaScript_For_Automation [2017/11/16 20:11] JMichaelTX [Get/Set Keyboard Maestro Variables] |
||
---|---|---|---|
Line 18: | Line 18: | ||
===== Get/Set Keyboard Maestro Variables ===== | ===== Get/Set Keyboard Maestro Variables ===== | ||
+ | |||
+ | ==== Global Variables ==== | ||
- | ** Example JXA Script shows how to Get/Set Keyboard Maestro Variables, and Get/Set the System Clipboard.** | + | ** Example JXA Script shows how to Get/Set Keyboard Maestro //Global// Variables, and Get/Set the System Clipboard.** |
```javascript | ```javascript | ||
Line 62: | Line 64: | ||
``` | ``` | ||
+ | --- | ||
+ | |||
+ | ==== Get/Set Local & Instance Variables ==== | ||
+ | |||
+ | Keyboard Maestro Ver 8 introduced [[manual:Variables#Instance_Variables_v8|Local and Instance Variables]]. In order to get or set these, you need to use different parameters in the JXA get/set methods. Here is an example. | ||
+ | |||
+ | ```javascript | ||
+ | var app = Application.currentApplication() | ||
+ | app.includeStandardAdditions = true | ||
+ | |||
+ | var kmInst = app.systemAttribute("KMINSTANCE"); | ||
+ | var kmeApp = Application("Keyboard Maestro Engine") | ||
+ | |||
+ | var myLocalVar = kmeApp.getvariable("Local__MyVar", {instance: kmInst}); | ||
+ | kmeApp.setvariable("Local__FromJXA", {instance: kmInst, to: "Set in JXA Script"}) | ||
+ | ``` | ||
+ | |||
--- | --- | ||