The tt(SUBST) macro is a general-purpose substitution mechanism for strings in
the input. It takes two arguments: a search string and a substitution string.
E.g., after

verb(\
SUBST(VERSION)(1.00))

the tt(yodl) program will output tt(1.00) for each occurence of tt(VERSION) in
its input. 

The tt(SUBST) macro is also useful in situations where multi-character
sequeces should be converted to accent characters. E.g., a LaTeX converter
might define:

verb(\
SUBST('e)(NOTRANS(\'{e})))

Each tt(')tt(e) in the input would then be converted to \'e. 

The tt(SUBST) macro may also be useful in combination with the command line 
flag tt(-P), as in a invocation

verb(yodl2html -P'SUBST(VERSION)(1.00)' myfile.yo)

A further useful substitution may be the following:

verb(\
SUBST(_OP_)(CHAR(C)HAR(40))
SUBST(_CP_)(CHAR(C)HAR(41)))

which defines an opening parenthesis (tt(_OP_)) and a closing parenthesis 
(tt(_CP_)) as mapped to the tt(CHAR) macro. The strings tt(_OP_) and tt(_CP_) 
might then be used in unbalanced parameter lists.

Note that:

itemize(

    it() The first argument of the tt(SUBST) command, the search string, is
    taken literally. Yodl does not expand it; the string must be literally
    matched in the input.
    
    it() The second argument, the replacement, is further processed by Yodl. 
    Protect this text by tt(NOTRANS) or tt(NOEXPAND) where appropriate.

)
