Skip to content

Instantly share code, notes, and snippets.

@NamelessCoder
Last active May 29, 2019 16:35
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save NamelessCoder/334392b13e1ab21acb550c672908c624 to your computer and use it in GitHub Desktop.
Save NamelessCoder/334392b13e1ab21acb550c672908c624 to your computer and use it in GitHub Desktop.
Fluid syntax possibilities with new Sequencer

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}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment