I found the css variables quite powerful to be used in TiddlyWiki. There is a small issue with
-- in TiddlyWiki when you use them in tiddler of type
text/vnd.tiddlywiki , but seems the pragma
\rules except dash helps to resolve this issue.
It is more robust to use
\rules only to specify precisely which parser rules are required; otherwise any future parse rules that are introduced will automatically be enabled, possibly leading to unexpected results. The core uses the following rule to allow macros and transclusions:
\rules only filteredtranscludeinline transcludeinline macrodef macrocallinline macrocallblock
Very interesting. New ways of encapsulating functionality are always welcome. Something I don’t like so much is that using it efficiently relies on a bundler process of some kind (developers wouldn’t usually want the overhead of setting up all the available CSS variables).
In some areas, it is opinionated without being customisable. For example, there is a fixed set of gradient designs built-in (numbered from 0 to30, with no meaningful names). The colours, angles etc are all fixed for each design. If you take that particular example, it seems to make more sense to me to use an interactive gradient designer rather than relying on such a small canned set.
Another area that I don’t quite understand is the need to name font sizes as indexes from 00 through 0 to 8. The actual sizes corresponding to those indexes are fixed which seems strange; the usual reason for referring to things by name is so that access can be indirected.