diff options
| author | Christian Clason <c.clason@uni-graz.at> | 2023-06-12 09:54:30 -0600 |
|---|---|---|
| committer | Christian Clason <c.clason@uni-graz.at> | 2025-05-12 18:43:40 +0200 |
| commit | 692b051b09935653befdb8f7ba8afdb640adf17b (patch) | |
| tree | 167162b6b129ae04f68c5735078521a72917c742 /runtime/queries/robot | |
| parent | feat(c-family): inherit injections (diff) | |
| download | nvim-treesitter-692b051b09935653befdb8f7ba8afdb640adf17b.tar nvim-treesitter-692b051b09935653befdb8f7ba8afdb640adf17b.tar.gz nvim-treesitter-692b051b09935653befdb8f7ba8afdb640adf17b.tar.bz2 nvim-treesitter-692b051b09935653befdb8f7ba8afdb640adf17b.tar.lz nvim-treesitter-692b051b09935653befdb8f7ba8afdb640adf17b.tar.xz nvim-treesitter-692b051b09935653befdb8f7ba8afdb640adf17b.tar.zst nvim-treesitter-692b051b09935653befdb8f7ba8afdb640adf17b.zip | |
feat!: drop modules, general refactor and cleanup
Diffstat (limited to 'runtime/queries/robot')
| -rw-r--r-- | runtime/queries/robot/folds.scm | 5 | ||||
| -rw-r--r-- | runtime/queries/robot/highlights.scm | 129 | ||||
| -rw-r--r-- | runtime/queries/robot/indents.scm | 44 | ||||
| -rw-r--r-- | runtime/queries/robot/injections.scm | 5 |
4 files changed, 183 insertions, 0 deletions
diff --git a/runtime/queries/robot/folds.scm b/runtime/queries/robot/folds.scm new file mode 100644 index 000000000..948f8a17d --- /dev/null +++ b/runtime/queries/robot/folds.scm @@ -0,0 +1,5 @@ +[ + (section) + (keyword_definition) + (test_case_definition) +] @fold diff --git a/runtime/queries/robot/highlights.scm b/runtime/queries/robot/highlights.scm new file mode 100644 index 000000000..a9c545b8a --- /dev/null +++ b/runtime/queries/robot/highlights.scm @@ -0,0 +1,129 @@ +[ + (comment) + (extra_text) +] @comment @spell + +[ + (section_header) + (setting_statement) + (keyword_setting) + (test_case_setting) +] @keyword + +(variable_definition + (variable_name) @variable) + +(keyword_definition + (name) @function) + +(test_case_definition + (name) @function) + +(keyword_invocation + (keyword) @function.call) + +(ellipses) @punctuation.delimiter + +(text_chunk) @string + +(inline_python_expression) @string.special + +[ + (scalar_variable) + (list_variable) + (dictionary_variable) +] @variable + +; Control structures +[ + "FOR" + "IN" + "IN RANGE" + "IN ENUMERATE" + "IN ZIP" + (break_statement) + (continue_statement) +] @keyword.repeat + +(for_statement + "END" @keyword.repeat) + +"WHILE" @keyword.repeat + +(while_statement + "END" @keyword.repeat) + +[ + "IF" + "ELSE IF" +] @keyword.conditional + +(if_statement + "END" @keyword.conditional) + +(if_statement + (else_statement + "ELSE" @keyword.conditional)) + +(inline_if_statement + (inline_else_statement + "ELSE" @keyword.conditional)) + +[ + "TRY" + "EXCEPT" + "FINALLY" +] @keyword.exception + +(try_statement + "END" @keyword.exception) + +(try_statement + (else_statement + "ELSE" @keyword.exception)) + +; Extra captures for "Documentation" settings +(setting_statement + name: (setting_name) @_name + (arguments + (argument + (text_chunk) @spell @string.documentation)) + (#any-of? @_name "Documentation" "documentation" "DOCUMENTATION")) + +(setting_statement + name: (setting_name) @_name + (arguments + (continuation + (argument + (text_chunk) @spell @string.documentation))) + (#any-of? @_name "Documentation" "documentation" "DOCUMENTATION")) + +(keyword_setting + name: (keyword_setting_name) @_name + (arguments + (argument + (text_chunk) @spell @string.documentation)) + (#any-of? @_name "Documentation" "documentation" "DOCUMENTATION")) + +(keyword_setting + name: (keyword_setting_name) @_name + (arguments + (continuation + (argument + (text_chunk) @spell @string.documentation))) + (#any-of? @_name "Documentation" "documentation" "DOCUMENTATION")) + +(test_case_setting + name: (test_case_setting_name) @_name + (arguments + (argument + (text_chunk) @spell @string.documentation)) + (#any-of? @_name "Documentation" "documentation" "DOCUMENTATION")) + +(test_case_setting + name: (test_case_setting_name) @_name + (arguments + (continuation + (argument + (text_chunk) @spell @string.documentation))) + (#any-of? @_name "Documentation" "documentation" "DOCUMENTATION")) diff --git a/runtime/queries/robot/indents.scm b/runtime/queries/robot/indents.scm new file mode 100644 index 000000000..457fbff66 --- /dev/null +++ b/runtime/queries/robot/indents.scm @@ -0,0 +1,44 @@ +(keyword_definition) @indent.begin + +(test_case_definition) @indent.begin + +(for_statement) @indent.begin + +(for_statement + "END" @indent.branch) + +(for_statement + right: (_ + (arguments + (continuation + (ellipses) @indent.branch)))) + +(while_statement) @indent.begin + +(while_statement + "END" @indent.branch) + +(if_statement) @indent.begin + +(if_statement + (elseif_statement) @indent.branch) + +(if_statement + (else_statement) @indent.branch) + +(if_statement + "END" @indent.branch) + +(try_statement) @indent.begin + +(try_statement + (except_statement) @indent.branch) + +(try_statement + (finally_statement) @indent.branch) + +(try_statement + (else_statement) @indent.branch) + +(try_statement + "END" @indent.branch) diff --git a/runtime/queries/robot/injections.scm b/runtime/queries/robot/injections.scm new file mode 100644 index 000000000..56e37005e --- /dev/null +++ b/runtime/queries/robot/injections.scm @@ -0,0 +1,5 @@ +([ + (comment) + (extra_text) +] @injection.content + (#set! injection.language "comment")) |
