fix: some highlight error
/ build_and_publish (release) Successful in 29s

This commit is contained in:
2025-08-11 21:36:04 +02:00
parent b141818251
commit feba88212f
+59 -214
View File
@@ -1,30 +1,19 @@
{ {
"fileTypes": [ "fileTypes": [ "tcl" ],
"tcl"
],
"name": "tcl", "name": "tcl",
"patterns": [ "patterns": [
{ { "include": "#main" }
"include": "#main"
}
], ],
"scopeName": "source.tcl", "scopeName": "source.tcl",
"uuid": "c7017136-2ff2-48e9-bdb0-570cf238b4a2",
"repository": { "repository": {
"main": { "main": {
"patterns": [ "patterns": [ { "include": "#command" } ]
{
"include": "#command"
}
]
}, },
"args": { "args": {
"patterns": [ "patterns": [
{ { "include": "#quoted_args" },
"include": "#quoted_args" { "include": "#numeric" },
},
{
"include": "#numeric"
},
{ {
"match": "((?<=;)\\s*#.*$)", "match": "((?<=;)\\s*#.*$)",
"name": "comment.tcl", "name": "comment.tcl",
@@ -36,22 +25,10 @@
"patterns": [ "patterns": [
{ {
"begin": "((?<!\\\\)\\{)", "begin": "((?<!\\\\)\\{)",
"beginCaptures": { "beginCaptures": { "1": { "name": "punctuation.tcl" } },
"1": { "patterns": [ { "include": "#braced__1" } ],
"name": "punctuation.tcl" "end": "(\\}([^\\s\\]\\x{0022}]*))",
} "endCaptures": { "1": { "name": "punctuation.tcl" } }
},
"patterns": [
{
"include": "#braced__1"
}
],
"end": "(\\}([^\\s\\]]*))",
"endCaptures": {
"1": {
"name": "punctuation.tcl"
}
}
} }
] ]
}, },
@@ -61,42 +38,24 @@
"match": "(\\\\(?:\\d{1,3}|x[a-fA-F0-9]{1,2}|u[a-fA-F0-9]{1,4}|U[a-fA-F0-9]{1,8}|.))", "match": "(\\\\(?:\\d{1,3}|x[a-fA-F0-9]{1,2}|u[a-fA-F0-9]{1,4}|U[a-fA-F0-9]{1,8}|.))",
"name": "constant.character.escape.tcl" "name": "constant.character.escape.tcl"
}, },
{ { "include": "#keywords" },
"include": "#keywords"
},
{ {
"match": "((?<={)\\s*(?:after|append|apply|array|auto_execok|auto_import|auto_load|auto_mkindex|auto_qualify|auto_reset|bgerror|binary|break|catch|cd|chan|clock|close|concat|continue|coroutine|dde|dict|encoding|eof|error|eval|exec|exit|expr|fblocked|fconfigure|fcopy|fileevent|file|flush|foreach|for|format|gets|global|glob|history|http|if|incr|info|interp|join|lappend|lassign|lindex|linsert|list|llength|lmap|load|lrange|lrepeat|lreplace|lreverse|lsearch|lset|lsort|memory|my|namespace|nextto|next|oo::class|oo::copy|oo::define|oo::objdefine|oo::object|open|package|parray|pid|pkg::create|pkg_mkIndex|platform::shell|proc|puts|pwd|read|regexp|registry|regsub|rename|return|scan|seek|self|set|socket|source|split|string|subst|switch|tailcall|tcl::prefix|tcl_endOfWord|tcl_findLibrary|tcl_startOfNextWord|tcl_startOfPreviousWord|tcl_wordBreakAfter|tcl_wordBreakBefore|tell|throw|time|trace|try|unknown|unload|unset|update|uplevel|upvar|variable|vwait|while|yieldto|yield)\\s+)", "match": "((?<={)\\s*(?:after|append|apply|array|auto_execok|auto_import|auto_load|auto_mkindex|auto_qualify|auto_reset|bgerror|binary|break|catch|cd|chan|clock|close|concat|continue|coroutine|dde|dict|encoding|eof|error|eval|exec|exit|expr|fblocked|fconfigure|fcopy|fileevent|file|flush|foreach|for|format|gets|global|glob|history|http|if|incr|info|interp|join|lappend|lassign|lindex|linsert|list|llength|lmap|load|lrange|lrepeat|lreplace|lreverse|lsearch|lset|lsort|memory|my|namespace|nextto|next|oo::class|oo::copy|oo::define|oo::objdefine|oo::object|open|package|parray|pid|pkg::create|pkg_mkIndex|platform::shell|proc|puts|pwd|read|regexp|registry|regsub|rename|return|scan|seek|self|set|socket|source|split|string|subst|switch|tailcall|tcl::prefix|tcl_endOfWord|tcl_findLibrary|tcl_startOfNextWord|tcl_startOfPreviousWord|tcl_wordBreakAfter|tcl_wordBreakBefore|tell|throw|time|trace|try|unknown|unload|unset|update|uplevel|upvar|variable|vwait|while|yieldto|yield)\\s+)",
"name": "keyword.tcl", "name": "keyword.tcl",
"comment": "Special handling for known commands." "comment": "Special handling for known commands."
}, },
{ { "include": "#braced_inner" },
"include": "#braced_inner" { "include": "#args" }
},
{
"include": "#args"
}
] ]
}, },
"braced_inner": { "braced_inner": {
"patterns": [ "patterns": [
{ {
"begin": "(\\{)", "begin": "(\\{)",
"beginCaptures": { "beginCaptures": { "1": { "name": "punctuation.tcl" } },
"1": { "patterns": [ { "include": "#braced_inner__1" } ],
"name": "punctuation.tcl"
}
},
"patterns": [
{
"include": "#braced_inner__1"
}
],
"end": "(\\})", "end": "(\\})",
"endCaptures": { "endCaptures": { "1": { "name": "punctuation.tcl" } }
"1": {
"name": "punctuation.tcl"
}
}
} }
] ]
}, },
@@ -106,15 +65,9 @@
"match": "(\\\\[\\x{007b}\\x{007d}])", "match": "(\\\\[\\x{007b}\\x{007d}])",
"name": "constant.character.escape.tcl" "name": "constant.character.escape.tcl"
}, },
{ { "include": "#numeric" },
"include": "#numeric" { "include": "#braced_inner" },
}, { "include": "#args" }
{
"include": "#braced_inner"
},
{
"include": "#args"
}
] ]
}, },
"braced_lit": { "braced_lit": {
@@ -139,22 +92,10 @@
"patterns": [ "patterns": [
{ {
"begin": "(\\\\\\s*$)", "begin": "(\\\\\\s*$)",
"beginCaptures": { "beginCaptures": { "1": { "name": "constant.character.escape.tcl" } },
"1": { "patterns": [ { "include": "#command__1" } ],
"name": "constant.character.escape.tcl"
}
},
"patterns": [
{
"include": "#command__1"
}
],
"end": "((?<!\\\\\\s)$)", "end": "((?<!\\\\\\s)$)",
"endCaptures": { "endCaptures": { "1": { "name": "none.tcl" } }
"1": {
"name": "none.tcl"
}
}
}, },
{ {
"match": "(^\\s*#.*)", "match": "(^\\s*#.*)",
@@ -169,73 +110,41 @@
{ {
"match": "(?<=^|{)(\\s*proc\\s+)(\\S+\\s+)((?:(?<!\\\\){)(?:[^\\x{007b}\\x{007d}\\n]*(?:\\g<1>(?:\\\\{|\\\\}|[^\\x{007b}\\x{007d}])*)*)})", "match": "(?<=^|{)(\\s*proc\\s+)(\\S+\\s+)((?:(?<!\\\\){)(?:[^\\x{007b}\\x{007d}\\n]*(?:\\g<1>(?:\\\\{|\\\\}|[^\\x{007b}\\x{007d}])*)*)})",
"captures": { "captures": {
"1": { "1": { "name": "keyword.tcl" },
"name": "keyword.tcl" "2": { "name": "entity.name.function.tcl" },
}, "3": { "name": "none.tcl" }
"2": {
"name": "entity.name.function.tcl"
},
"3": {
"name": "none.tcl"
}
}, },
"comment": "Proc command." "comment": "Proc command."
}, },
{ "include": "#regexp" },
{ "include": "#keywords" },
{ {
"include": "#regexp" "match": "(^\\s*[^\\s\\x{0022}]+|(?:(?<=[^\\x{005c}]\\[)[^\\s\\]]+))",
},
{
"include": "#keywords"
},
{
"match": "(^\\s*\\S+|(?:(?<=[^\\x{005c}]\\[)[^\\s\\]]++(?!\\])))",
"name": "keyword.tcl", "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!)" "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" }
"include": "#args"
}
] ]
}, },
"command__1": { "command__1": {
"patterns": [ "patterns": [
{ { "include": "#keywords" },
"include": "#keywords" { "include": "#args" }
},
{
"include": "#args"
}
] ]
}, },
"embedded": { "embedded": {
"patterns": [ "patterns": [
{ {
"begin": "((?<!\\\\)\\[)", "begin": "((?<!\\\\)\\[)",
"beginCaptures": { "beginCaptures": { "1": { "name": "punctuation.tcl" } },
"1": { "patterns": [ { "include": "#embedded__1" } ],
"name": "punctuation.tcl"
}
},
"patterns": [
{
"include": "#embedded__1"
}
],
"end": "((?<!\\\\)\\])", "end": "((?<!\\\\)\\])",
"endCaptures": { "endCaptures": { "1": { "name": "punctuation.tcl" } }
"1": {
"name": "punctuation.tcl"
}
}
} }
] ]
}, },
"embedded__1": { "embedded__1": {
"patterns": [ "patterns": [ { "include": "#command" } ]
{
"include": "#command"
}
]
}, },
"keywords": { "keywords": {
"patterns": [ "patterns": [
@@ -263,30 +172,16 @@
"patterns": [ "patterns": [
{ {
"begin": "((?<!\\\\)\")", "begin": "((?<!\\\\)\")",
"beginCaptures": { "beginCaptures": { "1": { "name": "string.tcl" } },
"1": { "patterns": [ { "include": "#quoted__1" } ],
"name": "string.tcl"
}
},
"patterns": [
{
"include": "#quoted__1"
}
],
"end": "(\")", "end": "(\")",
"endCaptures": { "endCaptures": { "1": { "name": "string.tcl" } }
"1": {
"name": "string.tcl"
}
}
} }
] ]
}, },
"quoted__1": { "quoted__1": {
"patterns": [ "patterns": [
{ { "include": "#quoted_args" },
"include": "#quoted_args"
},
{ {
"match": "([^\\x{0024}\\x{005b}\\x{0022}\\x{005c}]+)", "match": "([^\\x{0024}\\x{005b}\\x{0022}\\x{005c}]+)",
"name": "string.tcl" "name": "string.tcl"
@@ -295,22 +190,14 @@
}, },
"quoted_args": { "quoted_args": {
"patterns": [ "patterns": [
{ { "include": "#braced" },
"include": "#braced" { "include": "#quoted" },
}, { "include": "#embedded" },
{
"include": "#quoted"
},
{
"include": "#embedded"
},
{ {
"match": "(\\\\(?:\\d{1,3}|x[a-fA-F0-9]{1,2}|u[a-fA-F0-9]{1,4}|U[a-fA-F0-9]{1,8}|.))", "match": "(\\\\(?:\\d{1,3}|x[a-fA-F0-9]{1,2}|u[a-fA-F0-9]{1,4}|U[a-fA-F0-9]{1,8}|.))",
"name": "constant.character.escape.tcl" "name": "constant.character.escape.tcl"
}, },
{ { "include": "#variable" }
"include": "#variable"
}
] ]
}, },
"regexp": { "regexp": {
@@ -318,57 +205,27 @@
{ {
"begin": "((?<=^|[\\[\\x{007b}\\x{003b}])\\s*(?:regexp|regsub)\\s+)((?:(?:(?:-about|-all|-expanded|-indices|-inline|-lineanchor|-linestop|-line|-nocase|(?:-index\\s+(?:end|\\d+)(?:[\\+\\-]-?\\d+)?))\\s+)*(?:--\\s+)?)?)", "begin": "((?<=^|[\\[\\x{007b}\\x{003b}])\\s*(?:regexp|regsub)\\s+)((?:(?:(?:-about|-all|-expanded|-indices|-inline|-lineanchor|-linestop|-line|-nocase|(?:-index\\s+(?:end|\\d+)(?:[\\+\\-]-?\\d+)?))\\s+)*(?:--\\s+)?)?)",
"beginCaptures": { "beginCaptures": {
"1": { "1": { "name": "keyword.tcl" },
"name": "keyword.tcl" "2": { "name": "none.tcl" }
},
"2": {
"name": "none.tcl"
}
}, },
"patterns": [ "patterns": [ { "include": "#regexp__1" } ],
{
"include": "#regexp__1"
}
],
"end": "(\\s+)", "end": "(\\s+)",
"endCaptures": { "endCaptures": { "1": { "name": "none.tcl" } }
"1": {
"name": "none.tcl"
}
}
}, },
{ { "include": "#args" }
"include": "#args"
}
] ]
}, },
"regexp__1": { "regexp__1": {
"patterns": [ "patterns": [
{ { "include": "#braced_lit_re" },
"include": "#braced_lit_re"
},
{ {
"begin": "((?:(?<!\\\\)\"))", "begin": "((?:(?<!\\\\)\"))",
"beginCaptures": { "beginCaptures": { "1": { "name": "string.regexp.tcl" } },
"1": { "patterns": [ { "include": "#regexp__2" } ],
"name": "string.regexp.tcl"
}
},
"patterns": [
{
"include": "#regexp__2"
}
],
"end": "((?:(?<!\\\\)\"))", "end": "((?:(?<!\\\\)\"))",
"endCaptures": { "endCaptures": { "1": { "name": "string.regexp.tcl" } }
"1": {
"name": "string.regexp.tcl"
}
}
},
{
"include": "#variable"
}, },
{ "include": "#variable" },
{ {
"match": "(\\S+)", "match": "(\\S+)",
"name": "string.regexp.tcl", "name": "string.regexp.tcl",
@@ -378,15 +235,9 @@
}, },
"regexp__2": { "regexp__2": {
"patterns": [ "patterns": [
{ { "include": "#braced_lit_re" },
"include": "#braced_lit_re" { "include": "#embedded" },
}, { "include": "#variable" },
{
"include": "#embedded"
},
{
"include": "#variable"
},
{ {
"match": "(\\\\\"|[^\\x{0022}])", "match": "(\\\\\"|[^\\x{0022}])",
"name": "string.regexp.tcl", "name": "string.regexp.tcl",
@@ -404,15 +255,9 @@
}, },
"word_lit__1": { "word_lit__1": {
"patterns": [ "patterns": [
{ { "include": "#braced_lit" },
"include": "#braced_lit" { "include": "#embedded" },
}, { "include": "#variable" },
{
"include": "#embedded"
},
{
"include": "#variable"
},
{ {
"match": "(\\\\\"|[^\\x{0022}])", "match": "(\\\\\"|[^\\x{0022}])",
"name": "string.tcl", "name": "string.tcl",