mirror of
https://github.com/nvim-treesitter/nvim-treesitter.git
synced 2026-07-01 19:17:02 -04:00
Feat: Add unison (#5340)
* Add unison * Trivial change to force prepush hook * Undo change * PR Feedback - remove appended text in query after variable, update lockfile, remove main branch specification in parser * Replacing captures with only ones in the contributing.md * Fix typo * Generate from grammar * First group of suggested changes * Update gt operator * Remove outer parens * Remove maybe.c * Add comment injection
This commit is contained in:
parent
17b943e7c5
commit
9d637b7ae8
5 changed files with 88 additions and 0 deletions
|
|
@ -372,6 +372,7 @@ We are looking for maintainers to add more parsers and to write query files for
|
|||
- [x] [twig](https://github.com/gbprod/tree-sitter-twig) (maintained by @gbprod)
|
||||
- [x] [typescript](https://github.com/tree-sitter/tree-sitter-typescript) (maintained by @steelsojka)
|
||||
- [x] [ungrammar](https://github.com/Philipp-M/tree-sitter-ungrammar) (maintained by @Philipp-M, @amaanq)
|
||||
- [x] [unison](https://github.com/kylegoetz/tree-sitter-unison) (maintained by @tapegram)
|
||||
- [x] [usd](https://github.com/ColinKennedy/tree-sitter-usd) (maintained by @ColinKennedy)
|
||||
- [x] [uxn tal](https://github.com/amaanq/tree-sitter-uxntal) (maintained by @amaanq)
|
||||
- [x] [v](https://github.com/v-analyzer/v-analyzer) (maintained by @kkharji, @amaanq)
|
||||
|
|
|
|||
|
|
@ -596,6 +596,9 @@
|
|||
"ungrammar": {
|
||||
"revision": "debd26fed283d80456ebafa33a06957b0c52e451"
|
||||
},
|
||||
"unison": {
|
||||
"revision": "694c8c0c79f8d1b80d497401acf4d1b77bfb004a"
|
||||
},
|
||||
"usd": {
|
||||
"revision": "718a6b3e939904e0b4fe7cff6742e96af4781f4b"
|
||||
},
|
||||
|
|
|
|||
|
|
@ -1751,6 +1751,15 @@ list.ungrammar = {
|
|||
maintainers = { "@Philipp-M", "@amaanq" },
|
||||
}
|
||||
|
||||
list.unison = {
|
||||
install_info = {
|
||||
url = "https://github.com/kylegoetz/tree-sitter-unison",
|
||||
files = { "src/parser.c", "src/scanner.c" },
|
||||
requires_generate_from_grammar = true,
|
||||
},
|
||||
maintainers = { "@tapegram" },
|
||||
}
|
||||
|
||||
list.usd = {
|
||||
install_info = {
|
||||
url = "https://github.com/ColinKennedy/tree-sitter-usd",
|
||||
|
|
|
|||
73
queries/unison/highlights.scm
Normal file
73
queries/unison/highlights.scm
Normal file
|
|
@ -0,0 +1,73 @@
|
|||
;; Primitives
|
||||
(comment) @comment @spell
|
||||
(nat) @number
|
||||
(unit) @constant.builtin
|
||||
(literal_char) @character
|
||||
(literal_text) @string
|
||||
(literal_boolean) @boolean
|
||||
|
||||
;; Keywords
|
||||
[
|
||||
(kw_forall)
|
||||
(unique_kw)
|
||||
(type_kw)
|
||||
(do)
|
||||
(kw_let)
|
||||
] @keyword
|
||||
|
||||
(kw_equals) @keyword.operator
|
||||
(structural_kw) @type.qualifier
|
||||
(unique) @type.qualifier
|
||||
|
||||
(type_constructor) @constructor
|
||||
|
||||
(doc_block) @comment.documentation
|
||||
|
||||
|
||||
[
|
||||
(operator)
|
||||
(pipe)
|
||||
(arrow_symbol)
|
||||
">"
|
||||
(or)
|
||||
] @keyword.operator
|
||||
|
||||
[
|
||||
"if"
|
||||
"else"
|
||||
"then"
|
||||
(match)
|
||||
(with)
|
||||
(cases)
|
||||
] @conditional
|
||||
|
||||
(blank_pattern) @variable.builtin
|
||||
|
||||
(pattern) @variable (constructor_or_variable_pattern) @type
|
||||
|
||||
(use_clause) @include
|
||||
|
||||
;; Types
|
||||
(record_field name: (wordy_id) @variable type: (wordy_id) @type)
|
||||
[
|
||||
(type_name)
|
||||
(type_signature)
|
||||
(effect)
|
||||
] @type
|
||||
|
||||
(term_definition) @variable
|
||||
|
||||
;; Punctuation
|
||||
[
|
||||
(type_signature_colon)
|
||||
":"
|
||||
] @punctuation.delimiter
|
||||
|
||||
[
|
||||
"("
|
||||
")"
|
||||
"{"
|
||||
"}"
|
||||
"["
|
||||
"]"
|
||||
] @punctuation.bracket
|
||||
2
queries/unison/injections.scm
Normal file
2
queries/unison/injections.scm
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
((comment) @injection.content
|
||||
(#set! injection.language "comment"))
|
||||
Loading…
Add table
Add a link
Reference in a new issue