preset

@presetDirective

A reusable attribute bundle. @preset:text(size: 24) is anonymous and applies to every text node; @preset#accent(...) is named and applied by hand with preset: #accent; @preset#accent:text(...) is both named and scoped to one type. The attribute group holds the target type’s attributes — which is why node itself cannot be set by a preset. Presets apply to block nodes only, must be declared before use, cannot reference other presets, and share one identifier namespace with every other #id.

#Attributes

nodeImplicit
The node type the preset scopes to, written as shorthand: @preset:text. Omit it for an unscoped preset applied by id.Can be written as shorthand: @preset:value

#Examples

@preset:text(size: 24)
@preset#accent(colour: orange; text-size: 24)

curve(expression: x^2; preset: #accent)