User Tools

Site Tools


manual:Variables

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
manual:Variables [2019/09/14 18:16]
JMichaelTX
manual:Variables [2021/08/26 03:11]
peternlewis [Instance Variables (v8+)]
Line 24: Line 24:
 | **Password**,​ Semi-permanent variables | • Available to macros but not displayed.\\ • Not directly accessible via AppleScript.\\ • Concealed in password fields in Prompt For User Input actions.\\ • Not saved to disk. | | **Password**,​ Semi-permanent variables | • Available to macros but not displayed.\\ • Not directly accessible via AppleScript.\\ • Concealed in password fields in Prompt For User Input actions.\\ • Not saved to disk. |
 | **[[#​Instance_Variables_v8|Instance]]** Variables (v8+)\\ Auto-deleted when Macro terminates | • Name must begin with "​instance"​ (case insensitive).\\ • Restricted ​ to a specific execution sequence.\\ • Available to the Macro where it was created and Sub-Macros of that Macro, for a given execution instance of the main macro.\\ • These Variables are private to each execution of the same Macro, even when running simultaneously.\\ • Accessible by [[action:​Prompt_for_User_Input|Prompt For User Input]]\\ • As of v8.0.3, is accessible by scripts (when used in an Execute Script Action).\\ • Accessible by [[action:​Custom_HTML_Prompt|Custom HTML Prompt]] (v8.0.3+).\\ • Accessible by AppleScript with the instance specifier. | | **[[#​Instance_Variables_v8|Instance]]** Variables (v8+)\\ Auto-deleted when Macro terminates | • Name must begin with "​instance"​ (case insensitive).\\ • Restricted ​ to a specific execution sequence.\\ • Available to the Macro where it was created and Sub-Macros of that Macro, for a given execution instance of the main macro.\\ • These Variables are private to each execution of the same Macro, even when running simultaneously.\\ • Accessible by [[action:​Prompt_for_User_Input|Prompt For User Input]]\\ • As of v8.0.3, is accessible by scripts (when used in an Execute Script Action).\\ • Accessible by [[action:​Custom_HTML_Prompt|Custom HTML Prompt]] (v8.0.3+).\\ • Accessible by AppleScript with the instance specifier. |
-| **[[#local_variables_v8|Local]]** Variables (v8+)\\ Auto-deleted when Macro terminates | • Name must begin with "​local"​ (case insensitive)\\ • Restricted to the specific Macro it is in.\\ • //Not// available to any of its Sub-Macros\\ • Same accessibility as Instance Variables. |+| **[[#Local_Variables_v8|Local]]** Variables (v8+)\\ Auto-deleted when Macro terminates | • Name must begin with "​local"​ (case insensitive)\\ • Restricted to the specific Macro it is in.\\ • //Not// available to any of its Sub-Macros\\ • Same accessibility as Instance Variables. |
 | **[[manual:​Dictionaries|Dictionary]]**,​ Permanent, global in scope. | • Accessible basically Everywhere, including Scripts.\\ • Dictionaries consist of the //​Dictionary Name//, One or more pairs of //Key Name//, and //​Value//​.\\ • Although Dictionaries are sort of like structured //​Variables//,​ they are kept in a separate category called //​[[manual:​Dictionaries|Dictionaries]]//​. | | **[[manual:​Dictionaries|Dictionary]]**,​ Permanent, global in scope. | • Accessible basically Everywhere, including Scripts.\\ • Dictionaries consist of the //​Dictionary Name//, One or more pairs of //Key Name//, and //​Value//​.\\ • Although Dictionaries are sort of like structured //​Variables//,​ they are kept in a separate category called //​[[manual:​Dictionaries|Dictionaries]]//​. |
  
Line 45: Line 45:
 ==== Instance Variables (v8+) ==== ==== Instance Variables (v8+) ====
  
-Variables with names that start with "​Instance"​ (case insensitive,​ trailing space not necessary) are considered private to a specific execution sequence. ​ Each time the macro is run, they will start empty but their value can be seen and changed by other macros within the same execution sequence (for example, if you execute a macro using the [[action:​Execute_a_Macro|Execute Macro]] action, that macro can see and change the instance variable). ​ Since two instances of a macro can be running at the same time, this is useful to ensure they each have their own version of the variable.+Variables with names that start with "​Instance"​ (case insensitive,​ trailing space not necessary) are considered private to a specific execution sequence. ​ Each time the macro is run, they will start empty but their value can be seen and changed by other macros within the same execution sequence (for example, if you execute a macro using the [[action:​Execute_a_Macro|Execute Macro]] action, that macro can see and change the instance variable ​(unless you execute it asynchronously which would create a new instance)).  Since two instances of a macro can be running at the same time, this is useful to ensure they each have their own version of the variable.
  
 Since Local and Instance variables are transient, they are not shown in the [[manual:​Preferences#​Variables_Preferences| Variables preferences pane]]. Since Local and Instance variables are transient, they are not shown in the [[manual:​Preferences#​Variables_Preferences| Variables preferences pane]].
manual/Variables.txt · Last modified: 2023/09/29 04:44 by peternlewis