There are two classes of TML tags:
- function tags: built in and those registered with
registerTagHandler()
- plugin tags: served by
commonTagsHandler()
Since SVN 8345 of TWiki.pm both classes are expanded in separate rendering passes:
- function tags
- plugin tags
- function tags again
Each pass renders TML left-to-right-inside-out. This order (and any other)
forces the plugin author to know when the inside-out rule holds and when not.
And there's no way to ease the situation. The least we can do is to have as many
plugins use the dakar api to register their tags properly. This holds especially for
the plugins shipped with dakar.
(See also
Item1432,
Item1422)
MD
While I agree in principle, it is too late to start doing this now. Deferred to Edinburgh.
CC
Undeferred, post Dakar
CC
On review, it seems to me that none (or very few) of the default plugins benefit from tag registration. This is because the tags are not taken as isolated things, but are used to decorate the topic text, which also has to be parsed. I may be wrong; if so, please open specific items to address individual plugins.
Discarded.
CC
The most prominent plugin that does not use the new tag registration mechanism
is the
SpreadSheetPlugin. And exactly that is the reason it is mentioned
in the
PluginsOrder
: to evaluate it before any other plugin. If it was
using tag registration this would not be necessary anymore.
Reopening.
MD
Actually, the
SpreadSheetPlugin is an example where variable registration does not make sense because the CALC has to look at the table at/before the CALC variable.
Closing this since it is not specific. Please create a requests for each Plugin that should make use of the variable registration feature.
--
PTh