@@ -0,0 +1,156 @@
29+] @keyword.control.conditional)
35+] @keyword.control.conditional)
40+] @keyword.control.conditional)
45+] @keyword.control.conditional)
51+] @keyword.control.conditional)
59+] @keyword.control.repeat)
65+] @keyword.control.repeat)
71+] @keyword.control.repeat)
81+"return" @keyword.control.return
92+] @punctuation.bracket
94+"," @punctuation.delimiter
100+ (word) @variable.parameter (#match? @variable.parameter "^-")
104+; non-bultin command names
105+(command name: (word) @function)
107+; derived from builtin -n (fish 3.2.2)
110+ (word) @function.builtin
111+ (#match? @function.builtin "^(\.|:|_|alias|argparse|bg|bind|block|breakpoint|builtin|cd|command|commandline|complete|contains|count|disown|echo|emit|eval|exec|exit|fg|functions|history|isatty|jobs|math|printf|pwd|random|read|realpath|set|set_color|source|status|string|test|time|type|ulimit|wait)$")
115+(test_command "test" @function.builtin)
119+(function_definition ["function" "end"] @keyword.function)
123+ (word) (concatenation)
130+ (concatenation (word))
131+ ] @variable.parameter (#match? @variable.parameter "^-")
136+[(double_quote_string) (single_quote_string)] @string
137+(escape_sequence) @constant.character.escape
141+(variable_name) @variable
142+(variable_expansion) @constant
146+(integer) @constant.numeric.integer
147+(float) @constant.numeric.float
149+(test_option) @string
151+((word) @constant.builtin.boolean
152+(#match? @constant.builtin.boolean "^(true|false)$"))