diff options
| author | Amaan Qureshi <amaanq12@gmail.com> | 2023-02-06 13:34:05 -0500 |
|---|---|---|
| committer | Stephan Seitz <stephan.seitz@fau.de> | 2023-02-18 09:37:41 -0800 |
| commit | 93386fc725041487d6cac90f602a670a83fedcbc (patch) | |
| tree | af64a255f98c790eb9cea2c2e655e378dbced322 | |
| parent | feat: add @text.uri where applicable to thrift and gosum (diff) | |
| download | nvim-treesitter-93386fc725041487d6cac90f602a670a83fedcbc.tar nvim-treesitter-93386fc725041487d6cac90f602a670a83fedcbc.tar.gz nvim-treesitter-93386fc725041487d6cac90f602a670a83fedcbc.tar.bz2 nvim-treesitter-93386fc725041487d6cac90f602a670a83fedcbc.tar.lz nvim-treesitter-93386fc725041487d6cac90f602a670a83fedcbc.tar.xz nvim-treesitter-93386fc725041487d6cac90f602a670a83fedcbc.tar.zst nvim-treesitter-93386fc725041487d6cac90f602a670a83fedcbc.zip | |
feat(thrift): improve queries
| -rw-r--r-- | lua/nvim-treesitter/parsers.lua | 1 | ||||
| -rw-r--r-- | queries/thrift/folds.scm | 5 | ||||
| -rw-r--r-- | queries/thrift/indents.scm | 20 | ||||
| -rw-r--r-- | queries/thrift/injections.scm | 1 | ||||
| -rw-r--r-- | queries/thrift/locals.scm | 32 |
5 files changed, 57 insertions, 2 deletions
diff --git a/lua/nvim-treesitter/parsers.lua b/lua/nvim-treesitter/parsers.lua index f4231eb25..79f0c781e 100644 --- a/lua/nvim-treesitter/parsers.lua +++ b/lua/nvim-treesitter/parsers.lua @@ -1323,6 +1323,7 @@ list.thrift = { install_info = { url = "https://github.com/duskmoon314/tree-sitter-thrift", files = { "src/parser.c" }, + branch = "main", }, maintainers = { "@amaanq", "@duskmoon314" }, } diff --git a/queries/thrift/folds.scm b/queries/thrift/folds.scm index edc8e9cea..0e0a845a8 100644 --- a/queries/thrift/folds.scm +++ b/queries/thrift/folds.scm @@ -1,11 +1,12 @@ [ (annotation) (enum) + (exception) + (function) (senum) (service) (struct) (union) - (function_parameters) - (exception_parameters) + (comment) ] @fold diff --git a/queries/thrift/indents.scm b/queries/thrift/indents.scm new file mode 100644 index 000000000..9a5e0455d --- /dev/null +++ b/queries/thrift/indents.scm @@ -0,0 +1,20 @@ +(definition) @indent + +; (function (function_identifier) @aligned_indent) + +((function_parameters (function_parameter)) @aligned_indent + (#set! "delimiter" "()")) + +((exception_parameters (exception_parameter)) @aligned_indent + (#set! "delimiter" "()")) + +"}" @indent_end + +[ "{" "}" ] @branch + +[ "(" ")" ] @branch + +[ + (ERROR) + (comment) +] @auto diff --git a/queries/thrift/injections.scm b/queries/thrift/injections.scm new file mode 100644 index 000000000..4bb7d675d --- /dev/null +++ b/queries/thrift/injections.scm @@ -0,0 +1 @@ +(comment) @comment diff --git a/queries/thrift/locals.scm b/queries/thrift/locals.scm new file mode 100644 index 000000000..2275ed9b8 --- /dev/null +++ b/queries/thrift/locals.scm @@ -0,0 +1,32 @@ +(document) @scope +(definition) @scope + +[ + (identifier) + (field_type) + (custom_type) +] @reference +(const_value (const_identifier) @reference) + +(annotation_identifier) @definition + +(const (const_identifier) @definition.constant) +(enum_member) @definition.constant + +(enum_identifier) @definition.enum + +(field_identifier) @definition.field + +(function_identifier) @definition.function + +(namespace_definition) @definition.namespace + +[ + (param_identifier) + (exception_param_identifier) +] @definition.parameter + +[ + (type_identifier) + (exception_identifier) +] @definition.type |
