aboutsummaryrefslogtreecommitdiffstats
path: root/queries/bash/highlights.scm
diff options
context:
space:
mode:
authorSantos Gallegos <stsewd@protonmail.com>2020-09-12 18:32:48 -0500
committerStephan Seitz <stephan.lauf@yahoo.de>2020-09-19 13:33:05 +0200
commit76c00934a653b0b66d4bb3f747dd95ade276c6a4 (patch)
tree25abcb538942b1c45d2ec8a9c9f8468a781153fd /queries/bash/highlights.scm
parentAdd @keyword.operator for operators that are English words and add @exception... (diff)
downloadnvim-treesitter-76c00934a653b0b66d4bb3f747dd95ade276c6a4.tar
nvim-treesitter-76c00934a653b0b66d4bb3f747dd95ade276c6a4.tar.gz
nvim-treesitter-76c00934a653b0b66d4bb3f747dd95ade276c6a4.tar.bz2
nvim-treesitter-76c00934a653b0b66d4bb3f747dd95ade276c6a4.tar.lz
nvim-treesitter-76c00934a653b0b66d4bb3f747dd95ade276c6a4.tar.xz
nvim-treesitter-76c00934a653b0b66d4bb3f747dd95ade276c6a4.tar.zst
nvim-treesitter-76c00934a653b0b66d4bb3f747dd95ade276c6a4.zip
Bash: update highlights
Following some of our conventions and some bits from atom https://github.com/atom/language-shellscript/blob/master/grammars/tree-sitter-bash.cson: - Uppercase var are constants - `$` is a special symbol, not part of the name - Builtin constants and functions
Diffstat (limited to 'queries/bash/highlights.scm')
-rw-r--r--queries/bash/highlights.scm17
1 files changed, 10 insertions, 7 deletions
diff --git a/queries/bash/highlights.scm b/queries/bash/highlights.scm
index 783b149e8..187197dc3 100644
--- a/queries/bash/highlights.scm
+++ b/queries/bash/highlights.scm
@@ -63,13 +63,10 @@
"unset"
] @keyword
-[
- (special_variable_name)
- ("$" (special_variable_name))
- ] @constant
+(special_variable_name) @constant
-((word) @constant
- (#vim-match? @constant "SIG(INT|TERM|QUIT|TIN|TOU|STP|HUP)"))
+((word) @constant.builtin
+ (#vim-match? @constant.builtin "SIG(INT|TERM|QUIT|TIN|TOU|STP|HUP)"))
((word) @boolean
(#vim-match? @boolean "true|false"))
@@ -87,7 +84,10 @@
(function_definition
name: (word) @function)
-(command_name (word)) @function
+(command_name (word) @function)
+
+((command_name (word) @function.builtin)
+ (#match? @function.builtin "^(cd|echo|eval|exit|getopts|pushd|popd|return|set|shift)$"))
(command
argument: [
@@ -106,6 +106,9 @@
(variable_name) @variable
+((variable_name) @constant
+ (#match? @constant "^[A-Z][A-Z_0-9]*$"))
+
(case_item
value: (word) @parameter)