UNPKG

tm-grammars

Version:
262 lines (261 loc) 5.68 kB
{ "displayName": "Turtle", "fileTypes": [ "turtle", "ttl", "acl" ], "name": "turtle", "patterns": [ { "include": "#rule-constraint" }, { "include": "#iriref" }, { "include": "#prefix" }, { "include": "#prefixed-name" }, { "include": "#comment" }, { "include": "#special-predicate" }, { "include": "#literals" }, { "include": "#language-tag" } ], "repository": { "boolean": { "match": "\\b(?i:true|false)\\b", "name": "constant.language.sparql" }, "comment": { "match": "#.*$", "name": "comment.line.number-sign.turtle" }, "integer": { "match": "[-+]?(?:\\d+|[0-9]+\\.[0-9]*|\\.[0-9]+(?:[Ee][-+]?\\d+)?)", "name": "constant.numeric.turtle" }, "iriref": { "match": "<[^ \"<>\\\\^`{|}]*>", "name": "entity.name.type.iriref.turtle" }, "language-tag": { "captures": { "1": { "name": "entity.name.class.turtle" } }, "match": "@(\\w+)", "name": "meta.string-literal-language-tag.turtle" }, "literals": { "patterns": [ { "include": "#string" }, { "include": "#numeric" }, { "include": "#boolean" } ] }, "numeric": { "patterns": [ { "include": "#integer" } ] }, "prefix": { "match": "(?i:@?base|@?prefix)\\s", "name": "keyword.operator.turtle" }, "prefixed-name": { "captures": { "1": { "name": "storage.type.PNAME_NS.turtle" }, "2": { "name": "support.variable.PN_LOCAL.turtle" } }, "match": "(\\w*:)(\\w*)", "name": "constant.complex.turtle" }, "rule-constraint": { "begin": "(rule:content) (\"\"\")", "beginCaptures": { "1": { "patterns": [ { "include": "#prefixed-name" } ] }, "2": { "name": "string.quoted.triple.turtle" } }, "end": "\"\"\"", "endCaptures": { "0": { "name": "string.quoted.triple.turtle" } }, "name": "meta.rule-constraint.turtle", "patterns": [ { "include": "source.srs" } ] }, "single-dquote-string-literal": { "begin": "\"", "beginCaptures": { "0": { "name": "punctuation.definition.string.begin.turtle" } }, "end": "\"", "endCaptures": { "0": { "name": "punctuation.definition.string.end.turtle" } }, "name": "string.quoted.double.turtle", "patterns": [ { "include": "#string-character-escape" } ] }, "single-squote-string-literal": { "begin": "'", "beginCaptures": { "0": { "name": "punctuation.definition.string.begin.turtle" } }, "end": "'", "endCaptures": { "1": { "name": "punctuation.definition.string.end.turtle" }, "2": { "name": "invalid.illegal.newline.turtle" } }, "name": "string.quoted.single.turtle", "patterns": [ { "include": "#string-character-escape" } ] }, "special-predicate": { "captures": { "1": { "name": "keyword.control.turtle" } }, "match": "\\s(a)\\s", "name": "meta.specialPredicate.turtle" }, "string": { "patterns": [ { "include": "#triple-squote-string-literal" }, { "include": "#triple-dquote-string-literal" }, { "include": "#single-squote-string-literal" }, { "include": "#single-dquote-string-literal" }, { "include": "#triple-tick-string-literal" } ] }, "string-character-escape": { "match": "\\\\(x\\h{2}|[012][0-7]{0,2}|3[0-6][0-7]?|37[0-7]?|[4-7][0-7]?|.|$)", "name": "constant.character.escape.turtle" }, "triple-dquote-string-literal": { "begin": "\"\"\"", "beginCaptures": { "0": { "name": "punctuation.definition.string.begin.turtle" } }, "end": "\"\"\"", "endCaptures": { "0": { "name": "punctuation.definition.string.end.turtle" } }, "name": "string.quoted.triple.turtle", "patterns": [ { "include": "#string-character-escape" } ] }, "triple-squote-string-literal": { "begin": "'''", "beginCaptures": { "0": { "name": "punctuation.definition.string.begin.turtle" } }, "end": "'''", "endCaptures": { "0": { "name": "punctuation.definition.string.end.turtle" } }, "name": "string.quoted.triple.turtle", "patterns": [ { "include": "#string-character-escape" } ] }, "triple-tick-string-literal": { "begin": "```", "beginCaptures": { "0": { "name": "punctuation.definition.string.begin.turtle" } }, "end": "```", "endCaptures": { "0": { "name": "punctuation.definition.string.end.turtle" } }, "name": "string.quoted.triple.turtle", "patterns": [ { "include": "#string-character-escape" } ] } }, "scopeName": "source.turtle" }