aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--README.md1
-rw-r--r--lua/nvim-treesitter/parsers.lua9
-rw-r--r--queries/dot/highlights.scm45
-rw-r--r--queries/dot/injections.scm1
4 files changed, 56 insertions, 0 deletions
diff --git a/README.md b/README.md
index ca8edc4f5..78f380da6 100644
--- a/README.md
+++ b/README.md
@@ -159,6 +159,7 @@ We are looking for maintainers to add more parsers and to write query files for
- [x] [dart](https://github.com/UserNobody14/tree-sitter-dart) (maintained by @Akin909)
- [x] [devicetree](https://github.com/joelspadin/tree-sitter-devicetree) (maintained by @jedrzejboczar)
- [x] [dockerfile](https://github.com/camdencheek/tree-sitter-dockerfile) (maintained by @camdencheek)
+- [x] [DOT](https://github.com/rydesun/tree-sitter-dot) (maintained by @rydesun)
- [x] [elixir](https://github.com/ananthakumaran/tree-sitter-elixir) (maintained by @nifoc)
- [ ] [elm](https://github.com/elm-tooling/tree-sitter-elm)
- [x] [erlang](https://github.com/AbstractMachinesLab/tree-sitter-erlang) (maintained by @ostera)
diff --git a/lua/nvim-treesitter/parsers.lua b/lua/nvim-treesitter/parsers.lua
index 7b9d28b1f..9c59cbd9d 100644
--- a/lua/nvim-treesitter/parsers.lua
+++ b/lua/nvim-treesitter/parsers.lua
@@ -94,6 +94,15 @@ list.dockerfile = {
maintainers = { "@camdencheek" },
}
+list.dot = {
+ install_info = {
+ url = "https://github.com/rydesun/tree-sitter-dot",
+ branch = "main",
+ files = { "src/parser.c" },
+ },
+ maintainers = { "@rydesun" },
+}
+
list.rust = {
install_info = {
url = "https://github.com/tree-sitter/tree-sitter-rust",
diff --git a/queries/dot/highlights.scm b/queries/dot/highlights.scm
new file mode 100644
index 000000000..86bb9b303
--- /dev/null
+++ b/queries/dot/highlights.scm
@@ -0,0 +1,45 @@
+(identifier) @type
+(keyword) @keyword
+(string_literal) @string
+(number_literal) @number
+
+[
+ (edgeop)
+ (operator)
+] @operator
+
+[
+ ","
+ ";"
+] @punctuation.delimiter
+
+[
+ "{"
+ "}"
+ "["
+ "]"
+ "<"
+ ">"
+] @punctuation.bracket
+
+(subgraph
+ id: (id
+ (identifier) @namespace)
+)
+
+(attribute
+ name: (id
+ (identifier) @field)
+)
+
+(attribute
+ value: (id
+ (identifier) @constant)
+)
+
+[
+(comment)
+(preproc)
+] @comment
+
+(ERROR) @error
diff --git a/queries/dot/injections.scm b/queries/dot/injections.scm
new file mode 100644
index 000000000..3dd830b46
--- /dev/null
+++ b/queries/dot/injections.scm
@@ -0,0 +1 @@
+(html_internal) @html