Constants

Константы позволяют вам задавать имена значениям и обращаться к ним позже.

Naming

Имена константам можно задавать произвольные, но при этом соблюдать следующие правила:

  1. Имя начинается с буквы латинского алфавита, дальше в произвольном порядке идут буквы латинского алфавита, цифры и символ '_'.
  2. Имя константы не должно совпадать с предопределенными булевыми состояниями, именами макрофункций, именами клавиш и прочими макросостояниями.

Types

Переменные могут быть двух типов - целое число или строка.

Целочисленные константы: NNN - 10-ричная константа, 0NNN - 8-ричная константа, 0xNNN - 16-ричная константа.

Целочисленные константы 64-разрядные.

Area of effect

Область действия констант - текущий сеанс FAR.

Representation in registry

В реестре константы располагаются в специальной ветке [HKEY_CURRENT_USER\Software\Far\[Users\USERNAME\]KeyMacros\Consts].

Каждая константа имеет имя и может быть трех типов REG_SZ (для строковых констант) и REG_DWORD или REG_QDWORD (для целочисленных констант).

Remarks

  1. Элементы макроязыка невозможно использовать во время записи макроса стандартным образом. Добавить элементы языка в макрос можно только путем ручной правки реестра или путем применения специальных программ/плагинов.

Example

Пример применения константы FIB_PASSWORD (0x00000002) для функции prompt
REGEDIT

[HKEY_CURRENT_USER\Software\Far\KeyMacros\Consts]
"FIB_PASSWORD"=dword:00000002

[HKEY_CURRENT_USER\Software\Far\KeyMacros\Editor\CtrlP]
"Sequence"="%s=prompt(\"Password\",\"Input password:\",FIB_PASSWORD); $Text %s"
"DisableOutput"=dword:00000001
See also: