SET -- set a preference setting during runtime
A preference setting created via a
%SET
macro is usable by the topic containing the
%SET
statement, and in any other topics
%INCLUDing
or
%INCLUDEd
when
rendering the topic TML. This is unlike list or META style
PreferenceSettings which are only set when the base topic is loaded, and never set during macro expension when
an
%INCLUDEd
topic is processed.
A
TMPL:DEF
template definition containing
%SET
macros will also add those values to the current scope as if these settings have been
parsed as part of the base topic's text.
Setting a preference setting in a list like in
* Set foo = %SEARCH{...
or in META settings will store the
text of the TML expression.
The equivalent %SET statement:
%SET{"foo" value="%SEARCH{..."}%
will store the
result of the TML expression as a consequence of the parser processing
macros inside-out-left-to-right.
Parameters
Parameter |
Description |
Default |
"name" |
Name of preference to set |
|
value |
Value to set it to |
|
Examples
To cache the result of another macro use
%SET{"search_result" value="%SEARCH{...}%"}%
. The result of the
value
expression will be temporarily bound to the variable
%search_result%
and might be used within the scope of the current topic being processed, or in
%INCLUDing
or other
%INCLUDEd
topics.
Note that this macro does NOT expand
FormatTokens that are used to alter the macro processing sequence. ($percent, $dollar, …).
PreferenceSettings