{ "name": "Antlers (Statamic Syntax)", "fileTypes": ["antlers.html", "html", "htm", "xhtml"], "scopeName": "text.html.statamic", "injections": { "text.html.statamic - (meta.embedded | meta.tag), L:((text.html.statamic meta.tag) - (meta.embedded.block.php | meta.embedded.line.php)), L:(source.js - (meta.embedded.block.php | meta.embedded.line.php)), L:(source.css - (meta.embedded.block.php | meta.embedded.line.php))": { "patterns": [ { "include": "#php-tag" } ] }, "text.html.statamic": { "patterns": [ { "include": "#statamic-comments" }, { "include": "#antlers-tags" } ] }, "text.html.statamic - (meta.embedded | meta.tag | comment.block.statamic), L:(text.html.statamic meta.tag - (comment.block.statamic | meta.embedded.statamic))": { "patterns": [ { "comment": "This is set to use XHTML standards, but you can change that by changing .strict to .basic for HTML standards", "include": "text.html.basic" } ] } }, "patterns": [ { "include": "#php-tag" }, { "include": "#statamic-comments" }, { "include": "#frontMatter" }, { "include": "#antlers-tags" } ], "repository": { "php-tag": { "patterns": [ { "begin": "<\\?(?i:php|=)?(?![^?]*\\?>)", "beginCaptures": { "0": { "name": "punctuation.section.embedded.begin.statamic" } }, "end": "(\\?)>", "endCaptures": { "0": { "name": "punctuation.section.embedded.end.statamic" }, "1": { "name": "source.php" } }, "name": "meta.embedded.block.statamic", "contentName": "source.php", "patterns": [ { "include": "source.php" } ] }, { "begin": "(?", "endCaptures": { "0": { "name": "punctuation.section.embedded.end.statamic" }, "1": { "name": "source.php" } }, "name": "meta.embedded.line.statamic", "contentName": "source.php", "patterns": [ { "include": "source.php" } ] } ] }, "frontMatter": { "begin": "\\A-{3}\\s*$", "contentName": "meta.embedded.block.frontmatter", "patterns": [ { "include": "source.yaml" } ], "end": "(^|\\G)-{3}|\\.{3}\\s*$" }, "statamic-comments": { "begin": "{{#", "end": "#}}", "name": "comment.block.statamic" }, "antlers-tags": { "begin": "(?", "name": "keyword.operator.key.statamic" }, { "match": "->", "name": "keyword.operator.class.statamic" }, { "include": "#statamic-explicit-tags" }, { "include": "#statamic-core-tags" }, { "match": "===|==|!==|!=|<>", "name": "keyword.operator.comparison.statamic" }, { "match": "\\&=?", "name": "keyword.operator.string.statamic" }, { "match": "=|\\+=|\\-=|\\*\\*?=|/=|%=|\\|=|\\^=|<<=|>>=", "name": "keyword.operator.assignment.statamic" }, { "match": "(?i)(!|\\?\\?|\\?=|\\?|&&|&|\\|\\|)|\\b(and|or|xor)\\b", "name": "keyword.operator.logical.statamic" }, { "match": "(?i)\\b(bwa|bwo|bxor|bnot|bsl|bsr)\\b", "name": "keyword.operator.bitwise.statamic" }, { "match": "<=>|<=|>=|<|>", "name": "keyword.operator.comparison.statamic" }, { "match": "\\-|\\+|\\*\\*?|/|%", "name": "keyword.operator.arithmetic.statamic" }, { "begin": "(arr|list|switch)\\s*(\\()", "beginCaptures": { "1": { "name": "support.function.construct.statamic" }, "2": { "name": "punctuation.definition.array.begin.bracket.round.statamic" } }, "end": "\\)|(?=\\?>)", "endCaptures": { "0": { "name": "punctuation.definition.array.end.bracket.round.statamic" } }, "name": "meta.array.statamic", "patterns": [ { "include": "#antlers-expression" } ] }, { "begin": "(?