aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStephan Seitz <stephan.seitz@fau.de>2021-09-11 17:26:06 +0200
committerStephan Seitz <stephan.seitz@fau.de>2021-09-17 20:52:13 +0200
commitdea66fb4ce5cd87a7a0be5057246e07a2e2402a9 (patch)
treeff39b7186e99de98c101e8250ff020fd3725eb4b
parentUpdate lockfile.json (diff)
downloadnvim-treesitter-dea66fb4ce5cd87a7a0be5057246e07a2e2402a9.tar
nvim-treesitter-dea66fb4ce5cd87a7a0be5057246e07a2e2402a9.tar.gz
nvim-treesitter-dea66fb4ce5cd87a7a0be5057246e07a2e2402a9.tar.bz2
nvim-treesitter-dea66fb4ce5cd87a7a0be5057246e07a2e2402a9.tar.lz
nvim-treesitter-dea66fb4ce5cd87a7a0be5057246e07a2e2402a9.tar.xz
nvim-treesitter-dea66fb4ce5cd87a7a0be5057246e07a2e2402a9.tar.zst
nvim-treesitter-dea66fb4ce5cd87a7a0be5057246e07a2e2402a9.zip
parsers: add glsl parser
-rw-r--r--lua/nvim-treesitter/parsers.lua9
-rw-r--r--queries/glsl/folds.scm1
-rw-r--r--queries/glsl/highlights.scm37
-rw-r--r--queries/glsl/indents.scm1
-rw-r--r--queries/glsl/injections.scm3
-rw-r--r--queries/glsl/locals.scm1
6 files changed, 52 insertions, 0 deletions
diff --git a/lua/nvim-treesitter/parsers.lua b/lua/nvim-treesitter/parsers.lua
index eab78b134..9ad17fec4 100644
--- a/lua/nvim-treesitter/parsers.lua
+++ b/lua/nvim-treesitter/parsers.lua
@@ -85,6 +85,15 @@ list.cuda = {
maintainers = { "@theHamsta" },
}
+list.glsl = {
+ install_info = {
+ url = "https://github.com/theHamsta/tree-sitter-glsl",
+ files = { "src/parser.c" },
+ generate_requires_npm = true,
+ },
+ maintainers = { "@theHamsta" },
+}
+
list.dockerfile = {
install_info = {
url = "https://github.com/camdencheek/tree-sitter-dockerfile",
diff --git a/queries/glsl/folds.scm b/queries/glsl/folds.scm
new file mode 100644
index 000000000..a5a5208ca
--- /dev/null
+++ b/queries/glsl/folds.scm
@@ -0,0 +1 @@
+; inherits: c
diff --git a/queries/glsl/highlights.scm b/queries/glsl/highlights.scm
new file mode 100644
index 000000000..af2a049fb
--- /dev/null
+++ b/queries/glsl/highlights.scm
@@ -0,0 +1,37 @@
+; inherits: c
+
+[
+ "in"
+ "out"
+ "inout"
+ "uniform"
+ "shared"
+ "layout"
+ "attribute"
+ "varying"
+ "buffer"
+ "coherent"
+ "readonly"
+ "writeonly"
+ "precision"
+ "highp"
+ "mediump"
+ "lowp"
+ "centroid"
+ "sample"
+ "patch"
+ "smooth"
+ "flat"
+ "noperspective"
+ "invariant"
+ "precise"
+] @keyword
+
+"subroutine" @keyword.function
+
+(extension_storage_class) @attribute
+
+(
+ (identifier) @variable.builtin
+ (#match? @variable.builtin "^gl_")
+)
diff --git a/queries/glsl/indents.scm b/queries/glsl/indents.scm
new file mode 100644
index 000000000..a5a5208ca
--- /dev/null
+++ b/queries/glsl/indents.scm
@@ -0,0 +1 @@
+; inherits: c
diff --git a/queries/glsl/injections.scm b/queries/glsl/injections.scm
new file mode 100644
index 000000000..7d3323b16
--- /dev/null
+++ b/queries/glsl/injections.scm
@@ -0,0 +1,3 @@
+(preproc_arg) @glsl
+
+(comment) @comment
diff --git a/queries/glsl/locals.scm b/queries/glsl/locals.scm
new file mode 100644
index 000000000..a5a5208ca
--- /dev/null
+++ b/queries/glsl/locals.scm
@@ -0,0 +1 @@
+; inherits: c