Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'runtime/queries/tcl/highlights.scm')
| -rw-r--r-- | runtime/queries/tcl/highlights.scm | 153 |
1 files changed, 153 insertions, 0 deletions
diff --git a/runtime/queries/tcl/highlights.scm b/runtime/queries/tcl/highlights.scm new file mode 100644 index 00000000..27b2d81e --- /dev/null +++ b/runtime/queries/tcl/highlights.scm @@ -0,0 +1,153 @@ + +(comment) @comment + +(command name: (simple_word) @function) + +"proc" @keyword.function + +(procedure + name: (_) @variable +) + +(set (simple_word) @variable) + +(argument + name: (_) @variable.parameter +) + +((simple_word) @variable.builtin + (#any-of? @variable.builtin + "argc" + "argv" + "argv0" + "auto_path" + "env" + "errorCode" + "errorInfo" + "tcl_interactive" + "tcl_library" + "tcl_nonwordchars" + "tcl_patchLevel" + "tcl_pkgPath" + "tcl_platform" + "tcl_precision" + "tcl_rcFileName" + "tcl_traceCompile" + "tcl_traceExec" + "tcl_wordchars" + "tcl_version")) + + +"expr" @function.builtin + +(command + name: (simple_word) @function.builtin + (#any-of? @function.builtin + "cd" + "exec" + "exit" + "incr" + "info" + "join" + "puts" + "regexp" + "regsub" + "split" + "subst" + "trace" + "source")) + +(command name: (simple_word) @keyword + (#any-of? @keyword + "append" + "break" + "catch" + "continue" + "default" + "dict" + "error" + "eval" + "global" + "lappend" + "lassign" + "lindex" + "linsert" + "list" + "llength" + "lmap" + "lrange" + "lrepeat" + "lreplace" + "lreverse" + "lsearch" + "lset" + "lsort" + "package" + "return" + "switch" + "throw" + "unset" + "variable")) + +[ + "error" + "namespace" + "on" + "set" + "try" + ] @keyword + +(unpack) @operator + +[ + "while" + "foreach" + ; "for" + ] @keyword.control.repeat + +[ + "if" + "else" + "elseif" + ] @keyword.control.conditional + +[ + "**" + "/" "*" "%" "+" "-" + "<<" ">>" + ">" "<" ">=" "<=" + "==" "!=" + "eq" "ne" + "in" "ni" + "&" + "^" + "|" + "&&" + "||" + ] @operator + +(variable_substitution) @variable +(quoted_word) @string +(escaped_character) @constant.character.escape + +[ + "{" "}" + "[" "]" + ";" + ] @punctuation.delimiter + +((simple_word) @constant.numeric + (#match? @constant.numeric "^[0-9]+$")) + +((simple_word) @constant.builtin.boolean + (#any-of? @constant.builtin.boolean "true" "false")) + +; after apply array auto_execok auto_import auto_load auto_mkindex auto_qualify +; auto_reset bgerror binary chan clock close coroutine dde encoding eof fblocked +; fconfigure fcopy file fileevent filename flush format gets glob history http +; interp load mathfunc mathop memory msgcat my next nextto open parray pid +; pkg::create pkg_mkIndex platform platform::shell pwd re_syntax read refchan +; registry rename safe scan seek self socket source string tailcall tcl::prefix +; tcl_endOfWord tcl_findLibrary tcl_startOfNextWord tcl_startOfPreviousWord +; tcl_wordBreakAfter tcl_wordBreakBefore tcltest tell time timerate tm +; transchan unknown unload update uplevel upvar vwait yield yieldto zlib |