summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lua/nvim-treesitter/parsers.lua9
-rw-r--r--queries/hlsl/folds.scm1
-rw-r--r--queries/hlsl/highlights.scm23
-rw-r--r--queries/hlsl/indents.scm1
-rw-r--r--queries/hlsl/injections.scm3
-rw-r--r--queries/hlsl/locals.scm1
6 files changed, 38 insertions, 0 deletions
diff --git a/lua/nvim-treesitter/parsers.lua b/lua/nvim-treesitter/parsers.lua
index 7aab74e9..2031e69b 100644
--- a/lua/nvim-treesitter/parsers.lua
+++ b/lua/nvim-treesitter/parsers.lua
@@ -171,6 +171,15 @@ list.glsl = {
maintainers = { "@theHamsta" },
}
+list.hlsl = {
+ install_info = {
+ url = "https://github.com/theHamsta/tree-sitter-hlsl",
+ files = { "src/parser.c", "src/scanner.cc" },
+ generate_requires_npm = true,
+ },
+ maintainers = { "@theHamsta" },
+}
+
list.dockerfile = {
install_info = {
url = "https://github.com/camdencheek/tree-sitter-dockerfile",
diff --git a/queries/hlsl/folds.scm b/queries/hlsl/folds.scm
new file mode 100644
index 00000000..b617fdc5
--- /dev/null
+++ b/queries/hlsl/folds.scm
@@ -0,0 +1 @@
+; inherits: cpp
diff --git a/queries/hlsl/highlights.scm b/queries/hlsl/highlights.scm
new file mode 100644
index 00000000..d6e083cd
--- /dev/null
+++ b/queries/hlsl/highlights.scm
@@ -0,0 +1,23 @@
+; inherits: cpp
+
+[
+ "in"
+ "out"
+ "inout"
+ "uniform"
+ "shared"
+ "groupshared"
+ "discard"
+ "cbuffer"
+ "nointerpolation"
+ "row_major"
+ "column_major"
+] @keyword
+
+(
+ (identifier) @variable.builtin
+ (#lua-match? @variable.builtin "^SV_")
+)
+
+(hlsl_attribute) @attribute
+(hlsl_attribute ["[" "]"] @attribute)
diff --git a/queries/hlsl/indents.scm b/queries/hlsl/indents.scm
new file mode 100644
index 00000000..b617fdc5
--- /dev/null
+++ b/queries/hlsl/indents.scm
@@ -0,0 +1 @@
+; inherits: cpp
diff --git a/queries/hlsl/injections.scm b/queries/hlsl/injections.scm
new file mode 100644
index 00000000..537ae542
--- /dev/null
+++ b/queries/hlsl/injections.scm
@@ -0,0 +1,3 @@
+(preproc_arg) @hlsl
+
+(comment) @comment
diff --git a/queries/hlsl/locals.scm b/queries/hlsl/locals.scm
new file mode 100644
index 00000000..b617fdc5
--- /dev/null
+++ b/queries/hlsl/locals.scm
@@ -0,0 +1 @@
+; inherits: cpp