Local variable name begins with the '%' sign followed by the alpha characters, numbers or '_' characters.
Global variable name begins with the '%%' signs followed by the alpha characters, numbers or '_' characters.
Variable value assignment should be ended with ';'
Variable names are not case sensitive thus '%myStr' and '%MYstr' is the same variable.
Variables can be either string or integer.
Integer constants can be represented by: NNN - decimal constant, 0NNN - octal constant, 0xNNN - hexadecimal constant.
Integers are of 64 bit width.
The scope for the local variables is the current macro sequence.
The scope for the global variables is a current FAR Manager session. Global variables can be stored in the Vars execution area. Every time FAR starts up it restores the global variables stored in this area.
In the registry, global variables are stored in the special key [HKEY_CURRENT_USER\Software\Far\[Users\USERNAME\]KeyMacros\Vars].
Every global variable has a name and can be of three types REG_SZ (for string variables) and REG_DWORD or REG_QDWORD (for integer variables). If a variable had REG_DWORD type initially, it changes type to REG_QDWORD during saving with msave function.