feat(textproto): Add Textproto parser and queries (#5402)

* Add textproto parser and queries

* remove extra newline

* Apply suggestions from code review

Co-authored-by: ObserverOfTime <chronobserver@disroot.org>

---------

Co-authored-by: ObserverOfTime <chronobserver@disroot.org>
This commit is contained in:
PorterAtGoogle 2023-09-18 10:26:02 -06:00 committed by GitHub
parent f9034812d8
commit b4f6dd7298
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
7 changed files with 43 additions and 0 deletions

View file

@ -367,6 +367,7 @@ We are looking for maintainers to add more parsers and to write query files for
- [x] [tablegen](https://github.com/amaanq/tree-sitter-tablegen) (maintained by @amaanq)
- [x] [teal](https://github.com/euclidianAce/tree-sitter-teal) (maintained by @euclidianAce)
- [x] [terraform](https://github.com/MichaHoffmann/tree-sitter-hcl) (maintained by @MichaHoffmann)
- [x] [textproto](https://github.com/PorterAtGoogle/tree-sitter-textproto) (maintained by @Porter)
- [x] [thrift](https://github.com/duskmoon314/tree-sitter-thrift) (maintained by @amaanq, @duskmoon314)
- [x] [tiger](https://github.com/ambroisie/tree-sitter-tiger) (maintained by @ambroisie)
- [x] [tlaplus](https://github.com/tlaplus-community/tree-sitter-tlaplus) (maintained by @ahelwer, @susliko)

View file

@ -581,6 +581,9 @@
"terraform": {
"revision": "b5539065432c08e4118eb3ee7c94902fdda85708"
},
"textproto": {
"revision": "8dacf02aa402892c91079f8577998ed5148c0496"
},
"thrift": {
"revision": "d4deb1bd9e848f2dbe81103a151d99e8546de480"
},

View file

@ -1707,6 +1707,14 @@ list.terraform = {
maintainers = { "@MichaHoffmann" },
}
list.textproto = {
install_info = {
url = "https://github.com/PorterAtGoogle/tree-sitter-textproto",
files = { "src/parser.c" },
},
maintainers = { "@Porter" },
}
list.thrift = {
install_info = {
url = "https://github.com/duskmoon314/tree-sitter-thrift",

View file

@ -0,0 +1,5 @@
[
(message_value)
(scalar_list)
(message_list)
] @fold

View file

@ -0,0 +1,18 @@
(string) @string
(field_name) @field
(comment) @comment
(number) @number
; For stuff like "inf" and "-inf".
(scalar_value [ (identifier) (signed_identifier) ]) @number
[
(open_squiggly)
(close_squiggly)
(open_square)
(close_square)
(open_arrow)
(close_arrow)
] @punctuation.bracket

View file

@ -0,0 +1,7 @@
(message_value) @indent.begin
(message_value (close_squiggly) @indent.branch)
(scalar_list) @indent.begin
(scalar_list (close_square) @indent.branch)
(message_list) @indent.begin
(message_list (close_square) @indent.branch)

View file

@ -8,6 +8,7 @@ vim.filetype.add {
cmm = "t32",
hurl = "hurl",
ncl = "nickel",
textproto = "textproto",
tig = "tiger",
usd = "usd",
usda = "usd",