Docs

Compatibility and Ignored Input

The parser is deliberately permissive so older files and forward-looking source load without failing. This page records what's accepted but not doing anything yet; read it before assuming that parsing a line means it renders.

Input Parser behavior Scene/runtime behavior
Unknown statement line Skipped. No effect.
Unknown leading @directive Skipped. No effect.
Unknown property: value Retained as a generic property. No guaranteed consumer.
for block Recognized AST node. Not compiled into Scene.
when block Recognized AST node. Not compiled into Scene.
maskMode, maskInvert, blendMode Retained generic properties. No object masking/blending implementation.
shadow, outline, displacement, custom effect Parsed effect node. No registered effect renderer.
Animation selector, stagger Parsed as generic block properties. Dropped from LumiDSL animation data.
Text stroke, strokeWidth Retained properties. Text renderer ignores them.
Image fill on text Retained as the fill property. Text renderer ignores it; use a color fill.
Arrays Parsed and retained. Compiler does not preserve square-array syntax.
N% percent literals Parsed as a percent value. Previously parsed as a broken modulo expression and resolved to nothing. It now resolves against the parent on position, size, width, and height, or as a fraction of 1 on opacity.

Compatibility behavior is useful when inspecting imported files. New scenes should prefer the renderer-backed properties and effects in the generated references.

imagine card
  shape: rectangle
  maskMode: alpha
  blendMode: screen

create card