diff options
| author | sogaiu <983021772@users.noreply.github.com> | 2023-04-25 22:34:56 +0900 |
|---|---|---|
| committer | Amaan Qureshi <amaanq12@gmail.com> | 2023-04-30 22:06:17 -0400 |
| commit | 6fe60587d1a75bfc4c8cf3a029910cfe65372a2e (patch) | |
| tree | 2e2071af96b3351ad41b8c41a1545063e9e83bf5 /queries | |
| parent | Update list of functions (diff) | |
| download | nvim-treesitter-6fe60587d1a75bfc4c8cf3a029910cfe65372a2e.tar nvim-treesitter-6fe60587d1a75bfc4c8cf3a029910cfe65372a2e.tar.gz nvim-treesitter-6fe60587d1a75bfc4c8cf3a029910cfe65372a2e.tar.bz2 nvim-treesitter-6fe60587d1a75bfc4c8cf3a029910cfe65372a2e.tar.lz nvim-treesitter-6fe60587d1a75bfc4c8cf3a029910cfe65372a2e.tar.xz nvim-treesitter-6fe60587d1a75bfc4c8cf3a029910cfe65372a2e.tar.zst nvim-treesitter-6fe60587d1a75bfc4c8cf3a029910cfe65372a2e.zip | |
Remove some sections and add some missing things
The original approach was to emulate what was in Clojure's
highlights.scm file, but it appears that there were a number of
questionable items, so some sections were removed.
As a consequence, there were some items that ended up unmentioned. An
attempt was made to rescue most of these and add some missing items to
a renamed "Special forms and builtin macros" section.
Five items were removed entirely. These are:
* Single quote
* Tilde
* Pipe
* Comma
* Semicolon
It was unclear where to put these and it's also unclear whether
highlighting them would really be beneficial. Perhaps what to do, if
anything, will become clear in the future.
Diffstat (limited to 'queries')
| -rw-r--r-- | queries/janet_simple/highlights.scm | 81 |
1 files changed, 20 insertions, 61 deletions
diff --git a/queries/janet_simple/highlights.scm b/queries/janet_simple/highlights.scm index eafbc8c94..fdd65adc5 100644 --- a/queries/janet_simple/highlights.scm +++ b/queries/janet_simple/highlights.scm @@ -1,16 +1,3 @@ -;; >> Explanation -;; Parsers for lisps are a bit weird in that they just return the raw forms. -;; This means we have to do a bit of extra work in the queries to get things -;; highlighted as they should be. -;; -;; For the most part this means that some things have to be assigned multiple -;; groups. -;; By doing this we can add a basic capture and then later refine it with more -;; specialized captures. -;; This can mean that sometimes things are highlighted weirdly because they -;; have multiple highlight groups applied to them. - - ;; >> Literals (kwd_lit) @symbol @@ -23,10 +10,6 @@ (nil_lit) @constant.builtin (comment) @comment @spell -["'" "~"] @string.escape - -["|" "," ";"] @punctuation.special - ["{" "@{" "}" "[" "@[" "]" "(" "@(" ")"] @punctuation.bracket @@ -46,6 +29,7 @@ (sym_lit) @function.call) ;; Quoted symbols + (quote_lit (sym_lit) @symbol) @@ -53,64 +37,38 @@ (sym_lit) @symbol) ;; Dynamic variables + ((sym_lit) @variable.builtin (#lua-match? @variable.builtin "^[*].+[*]$")) -;; Operators -((sym_lit) @operator - (#any-of? @operator - "%" "*" "+" "-" "/" - "<" "<=" "=" "==" ">" ">=")) - -((sym_lit) @keyword.operator - (#any-of? @keyword.operator - "not" "not=" "and" "or")) - -;; Definition -((sym_lit) @keyword - (#any-of? @keyword - "def" "def-" "defdyn" "defglobal" "defmacro" "defmacro-" - "var" "var-" "varglobal")) - -((sym_lit) @keyword.function - (#match? @keyword.function "^(defn|defn-|fn|varfn)$")) - ;; Comment + ((sym_lit) @comment (#any-of? @comment "comment")) -;; Conditionals -((sym_lit) @conditional - (#any-of? @conditional - "case" "cond")) - -((sym_lit) @conditional - (#match? @conditional "^if(\\-.*)?$")) - -((sym_lit) @conditional - (#match? @conditional "^when(\\-.*)?$")) - -;; Repeats -((sym_lit) @repeat - (#any-of? @repeat - "for" "forever" "forv" "loop" "repeat" "while")) - -;; Exception -((sym_lit) @exception - (#any-of? @exception "error" "errorf" "try")) - -;; Includes -((sym_lit) @include - (#any-of? @include "import" "require" "use")) - -;; Builtin macros +;; Special forms and builtin macros +;; +;; # special forms were manually added at the beginning ;; +;; # for macros ;; (each name (all-bindings) ;; (when-let [info (dyn (symbol name))] ;; (when (info :macro) ;; (print name)))) + ((sym_lit) @function.macro (#any-of? @function.macro + ;; special forms + "break" + "def" "do" + "fn" + "if" + "quasiquote" "quote" + "set" "splice" + "unquote" "upscope" + "var" + "while" + ;; macros "%=" "*=" "++" "+=" "--" "-=" @@ -152,6 +110,7 @@ ;; (or (function? (info :value)) ;; (cfunction? (info :value)))) ;; (print name)))) + ((sym_lit) @function.builtin (#any-of? @function.builtin "%" "*" "+" "-" "/" |
