Forest
Reference
3.19 Standard node¶
\ forestStandardNode⟨node⟩⟨environment fingerprint⟩⟨calibration procedure⟩⟨exported options⟩(macro)¶
This macro defines the current standard node. The standard node declares some options as exported. When a new node is created, the values of the exported options are initialized from the standard node. At the beginning of every forest environment, it is checked whether the environment fingerprint of the standard node has changed. If it did, the standard node is calibrated, adjusting the values of exported options. The raison d’etre for such a system is given in §2.4.1.
In ⟨node⟩, the standard node’s content and possibly other options are specified, using the usual bracket representation. The ⟨node⟩, however, must not contain children. The default: [dj].
The ⟨environment fingerprint⟩ must be an expandable macro definition. It’s expansion should change whenever the calibration is necessary.
⟨calibration procedure⟩ is a keylist (processed in the /forest path) which calculates the values of exported options.
⟨exported options⟩ is a comma-separated list of exported options.
This is how the default standard node is created:
\forestStandardNode[dj]
{%
\forestOve{\csname forest@id@of@standard node\endcsname}{content},%
\the\ht\strutbox,\the\pgflinewidth,%
\pgfkeysvalueof{/pgf/inner ysep},\pgfkeysvalueof{/pgf/outer ysep},%
\pgfkeysvalueof{/pgf/inner xsep},\pgfkeysvalueof{/pgf/outer xsep}%
}
{
l sep={\the\ht\strutbox+\pgfkeysvalueof{/pgf/inner ysep}},
l={l_sep()+abs(max_y()-min_y())+2*\pgfkeysvalueof{/pgf/outer ysep}},
s sep={2*\pgfkeysvalueof{/pgf/inner xsep}}
}
{l sep,l,s sep}