Macros
As said in the File types section, you can create .inc files and .macro files. These will both be usable in your pages as macros.
A macro looks like this:
_<name>_
This will be replaced by the contents of the <name>.inc in the current directory scope, or by the value you have put in the output variable in the <name>.macro file in the current directory scope.
Some macros can have arguments:
_<name>_<arg1>_<arg2>_
Passing too few arguments, or bad ones can result in some nasty errors, so watch out for this. Passing too much arguments has no result. See Arguments for more information on passing arguments.
An example of a macro with arguments is the "menu" default macro, see the next section.
Any macro encountered will be replaced by it's value. If that contains macros too, those will also be replaced. There is a slight danger of creating looping macros but those should be detected by the clcms.