diff options
| -rw-r--r-- | README.md | 1 | ||||
| -rw-r--r-- | lua/nvim-treesitter/parsers.lua | 9 | ||||
| -rw-r--r-- | queries/turtle/folds.scm | 4 | ||||
| -rw-r--r-- | queries/turtle/highlights.scm | 58 | ||||
| -rw-r--r-- | queries/turtle/indents.scm | 10 | ||||
| -rw-r--r-- | queries/turtle/locals.scm | 12 |
6 files changed, 94 insertions, 0 deletions
@@ -172,6 +172,7 @@ We are looking for maintainers to add more parsers and to write query files for - [x] [teal](https://github.com/euclidianAce/tree-sitter-teal) (maintained by @euclidianAce) - [x] [toml](https://github.com/ikatyang/tree-sitter-toml) (maintained by @tk-shirasaka) - [ ] [tsx](https://github.com/tree-sitter/tree-sitter-typescript) +- [x] [turtle](https://github.com/BonaBeavis/tree-sitter-turtle) (maintained by @bonabeavis) - [x] [typescript](https://github.com/tree-sitter/tree-sitter-typescript) (maintained by @steelsojka) - [x] [verilog](https://github.com/tree-sitter/tree-sitter-verilog) (maintained by @zegervdv) - [ ] [vue](https://github.com/ikatyang/tree-sitter-vue) diff --git a/lua/nvim-treesitter/parsers.lua b/lua/nvim-treesitter/parsers.lua index cdcb6fc68..d0db752ba 100644 --- a/lua/nvim-treesitter/parsers.lua +++ b/lua/nvim-treesitter/parsers.lua @@ -399,6 +399,15 @@ list.gdscript = { maintainers = {"not @tjdevries"}, } +list.turtle = { + install_info = { + url = "https://github.com/BonaBeavis/tree-sitter-turtle", + files = { "src/parser.c" }, + branch = "main", + }, + maintainers = { "@bonabeavis" }, +} + local M = { list = list } diff --git a/queries/turtle/folds.scm b/queries/turtle/folds.scm new file mode 100644 index 000000000..863e442a7 --- /dev/null +++ b/queries/turtle/folds.scm @@ -0,0 +1,4 @@ +[ + (statement) + (blank_node_property_list) +] @fold diff --git a/queries/turtle/highlights.scm b/queries/turtle/highlights.scm new file mode 100644 index 000000000..0608f96ae --- /dev/null +++ b/queries/turtle/highlights.scm @@ -0,0 +1,58 @@ +(string) @string + +(lang_tag) @type + +[ + "_:" + "<" + ">" + (namespace) +] @namespace + +[ + (iri_reference) + (prefixed_name) +] @variable + +(blank_node_label) @variable + +"a" @variable.builtin + +(integer) @number + +[ + (decimal) + (double) +] @float + +(boolean_literal) @boolean + +[ + "BASE" + "PREFIX" + "@prefix" + "@base" +] @keyword + +[ + "." + "," + ";" +] @punctuation.delimiter + +[ + "(" + ")" + "[" + "]" + (anon) +] @punctuation.bracket + +(comment) @comment + +(echar) @string.escape + + +(rdf_literal + "^^" @type + datatype: (_ ["<" ">" (namespace)] @type) @type) diff --git a/queries/turtle/indents.scm b/queries/turtle/indents.scm new file mode 100644 index 000000000..839f50c71 --- /dev/null +++ b/queries/turtle/indents.scm @@ -0,0 +1,10 @@ +[ + (statement) + (blank_node_property_list) + (collection) +] @indent +[ + "]" + ")" +] @branch + diff --git a/queries/turtle/locals.scm b/queries/turtle/locals.scm new file mode 100644 index 000000000..e791f0bbd --- /dev/null +++ b/queries/turtle/locals.scm @@ -0,0 +1,12 @@ +(turtle_doc) @scope + +(subject + [ + (prefixed_name) + (iri_reference) + ] @definition.var) + +[ + (prefixed_name) + (iri_reference) +] @reference |
