{ "fileTypes": [ "tcl" ], "name": "tcl", "patterns": [ { "include": "#main" } ], "scopeName": "source.tcl", "uuid": "c7017136-2ff2-48e9-bdb0-570cf238b4a2", "repository": { "main": { "patterns": [ { "include": "#command" } ] }, "args": { "patterns": [ { "include": "#quoted_args" }, { "include": "#numeric" }, { "match": "((?<=;)\\s*#.*$)", "name": "comment.tcl", "comment": "Inline comments." } ] }, "braced": { "patterns": [ { "begin": "((?(?:\\\\{|\\\\}|[^\\x{007b}\\x{007d}])*)*)})", "name": "none.tcl", "comment": "Handle braced literal." } ] }, "braced_lit_re": { "patterns": [ { "match": "((?:(?(?:\\\\{|\\\\}|[^\\x{007b}\\x{007d}])*)*)})", "name": "string.regexp.tcl", "comment": "Handle braced regex pattern." } ] }, "command": { "patterns": [ { "begin": "(\\\\\\s*$)", "beginCaptures": { "1": { "name": "constant.character.escape.tcl" } }, "patterns": [ { "include": "#command__1" } ], "end": "((?(?:\\\\{|\\\\}|[^\\x{007b}\\x{007d}])*)*)})", "captures": { "1": { "name": "keyword.tcl" }, "2": { "name": "entity.name.function.tcl" }, "3": { "name": "none.tcl" } }, "comment": "Proc command." }, { "include": "#regexp" }, { "include": "#keywords" }, { "match": "(^\\s*[^\\s\\x{0022}]+|(?:(?<=[^\\x{005c}]\\[)[^\\s\\]]+))", "name": "keyword.tcl", "comment": "All other commands. (NOTE: Iro doesn't support possessive quantifiers, but the grammar does; be sure to replace the second + with ++ after regenerating!)" }, { "include": "#args" } ] }, "command__1": { "patterns": [ { "include": "#keywords" }, { "include": "#args" } ] }, "embedded": { "patterns": [ { "begin": "((?