simple open+close non-active tag in root context:
<tag>x</tag>
simple open+close non-active tag with hardcoded attribute in root context:
<tag attr="foo">x</tag>
simple open+close non-active tag with object accessor attribute value in root context:
<tag attr="{string}">x</tag>
simple open+close non-active tag with value-less object accessor attribute in root context:
<tag {string}>x</tag>
simple open+close non-active tag with object accessor attribute name in root context:
<tag {string}="foo">x</tag>
simple open+close non-active tag with object accessor attribute name and value in root context:
<tag {string}="{string}">x</tag>
simple open+close non-active tag with unquoted object accessor attribute name and value in root context:
<tag {string}={string}>x</tag>
self-closed non-active, space before closing tag, tag in root context:
<tag />
self-closed non-active, no space before closing tag, tag in root context:
<tag/>
simple open+close active tag in root context:
<f:c>x</f:c>
simple open+close active tag with string parameter in root context:
<f:c s="foo">x</f:c>
self-closed active tag, space before tag close, in root context:
<f:c />
self-closed active tag, no space before tag close, in root context:
<f:c/>
self-closed active tag with hardcoded string argument in root context:
<f:c s="foo" />
self-closed active tag with hardcoded string and integer arguments in root context:
<f:c s="foo" i="1" />
self-closed active tag with object accessor string argument in root context:
<f:c s="{string}" />
self-closed active tag with object accessor string argument with string before accessor in root context:
<f:c s="before {string}" />
self-closed active tag with object accessor string argument with string after accessor in root context:
<f:c s="{string} after" />
self-closed active tag with object accessor string argument with string before and after accessor in root context:
<f:c s="before {string} after" />
self-closed active tag with string argument containing different quotes inside in root context:
<f:c s="before 'quoted' after" />
self-closed active tag with string argument containing escaped same type quotes inside in root context:
<f:c s="before \"quoted\" after" />
self-closed active tag with array argument with single unquoted element in root context:
<f:c a="{foo:bar}" />
self-closed active tag with array argument with two unquoted elements with comma and space in root context:
<f:c a="{foo:bar, baz:honk}" />
self-closed active tag with array argument with two unquoted elements with comma without space in root context:
<f:c a="{foo:bar,baz:honk}" />
self-closed active tag with array argument with single double-quoted element (no escaping) in root context:
<f:c a="{foo:"bar"}" />
self-closed active tag with array argument with single single-quoted element (no escaping) in root context:
<f:c a="{foo:'bar'}" />
self-closed active tag with array argument with single integer element in root context:
<f:c a="{foo:1}" />
self-closed active tag with array argument with double-quoted key and single integer element in root context:
<f:c a="{"foo":1}" />
self-closed active tag with square brackets array argument with double-quoted key and single integer element in root context:
<f:c a="["foo":1]" />
self-closed active tag with square brackets array argument with sub-array element with quoted key and object accessor value in root context:
<f:c a="[foo:[baz:'foo']]" />
self-closed active tag with square brackets array argument with multiple sub-array values in root context:
<f:c a="[["foo", "bar"], ["baz", "buzz"]]" />
self-closed active tag with string argument with square bracket start not at first position in root context:
<f:c s="my [a:b]" />
self-closed active tag with value-less ECMA literal shorthand argument in root context:
<f:c s/>
self-closed active tag with two value-less ECMA literal shorthand arguments in root context:
<f:c s i/>
simple open + close active tag with value-less ECMA literal shorthand argument in root context:
<f:c s>x</f:c>
simple open + close active tag with two value-less ECMA literal shorthand arguments in root context:
<f:c s i>x</f:c>
simple inline in root context:
{foo}
accessor with dynamic part last in inline in root context:
{foo.{bar}}
simple inline with text before in root context:
before {foo}
simple inline with text after in root context:
{foo} after
simple inline with text before and after in root context:
before {foo} after
escaped inline with text before and after in root context:
before \{foo} after
simple inline ViewHelper without arguments in root context:
{f:c()}
simple inline ViewHelper with single hardcoded integer argument in root context:
{f:c(i: 1)}
simple inline ViewHelper with single hardcoded integer argument using tag attribute syntax in root context:
{f:c(i="1")}
simple inline ViewHelper with two hardcoded arguments using tag attribute syntax without commas in root context:
{f:c(i="1" s="foo")}
simple inline ViewHelper with two hardcoded arguments using tag attribute syntax with comma in root context:
{f:c(i="1", s="foo")}
simple inline ViewHelper with two hardcoded arguments using tag attribute syntax with comma and tailing comma in root context:
{f:c(i="1", s="foo",)}
simple inline ViewHelper with square brackets array argument using tag attribute syntax and array value using tag attribute syntax in root context:
{f:c(a="[foo="bar"]")}
simple inline ViewHelper with square brackets array argument with implied numeric keys with comma in root context:
{f:c(a="[foo, bar]")}
simple inline ViewHelper with square brackets array argument with two items using implied numeric keys with quoted values using comma in root context:
{f:c(a="["foo", "bar"]")}
simple inline ViewHelper with curly braces array argument with explicit numeric keys in root context:
{f:c(a="{0: foo, 1: bar}")}
simple inline ViewHelper with curly braces array argument with redundant escapes in root context:
{f:c(a: {0: \'foo\'})}
simple inline ViewHelper with curly brackets array argument using tag attribute syntax and array value using tag attribute syntax in root context:
{f:c(a="{foo="bar"}")}
simple inline ViewHelper with value pipe in root context:
{string | f:c()}
simple inline ViewHelper with value pipe to ViewHelper alias in root context:
{string | raw}
inline ViewHelper with single-item quoted static key and value associative array in square brackets piped value in root context:
{["foo": "bar"] | f:format.raw()}
inline ViewHelper with single-item implied numeric index array in square brackets piped value in root context:
{["bar"] | f:format.raw()}
inline ViewHelper with multi-item implied numeric index array in square brackets piped value in root context:
{["foo", "bar", "baz"] | f:format.raw()}
inline ViewHelper with multi-item implied numeric index array with tailing comma in square brackets piped value in root context:
{["foo", "bar", "baz", ] | f:format.raw()}
inline ViewHelper with multi-item associative index array with space-separated key and value pairs in root context:
{[foo "foo", bar "bar"] | f:format.raw()}
complex inline syntax not detected as Fluid in root context:
{string with < raw || something}
likely JS syntax not detected as Fluid in root context:
{"object": "something"}
likely CSS syntax not detected as Fluid in root context:
something { background-color: #000000; }
likely JS syntax not detected as Fluid in inactive attribute value:
<tag prop="if(x.y[f.z].v){w.l.h=(this.o[this.s].v);}" />
inline that might be an expression node:
{inline something foo}