# Macro-language

FAR implements a simple macro-language that brings logic into the keystroke sequence and raises macro commands to the higher level turning the macros in combination with the plugins into a powerful tool that extends FAR Manager functionality. Macro-language is highly specialized and thus cannot be considered as an universal language.

Macro-language functionality:

- Macro-commands
- Conditional operators
- Boolean object states
- Functions
- Operations
- Object states
- Variables
- Constants

### Notes

1. It is impossible to use macro-language elements while recording a macro in a usual way. Macro-language elements can be added to the sequence only by editing the registry manually or by using special applications or FAR plugins.
2. Named keys (e.g. CtrlK) can be present in any expressions; in this case they are treated as numbers.

See also:
General background, Using macros, Technical details, Examples