mirror of
https://github.com/nvim-treesitter/nvim-treesitter.git
synced 2026-07-01 11:06:54 -04:00
feat(proto): sync highlights with upstream
Syncs with coder3101/tree-sitter-proto#22, which adjusts captures to better align with nvim-treesitter conventions: - Package idents use @module, extend/oneof idents use @type - Adds map_field, oneof_field @property captures - option/syntax/edition use @keyword.directive - extend/extensions/oneof/service moved to @keyword.type - key_type/type use @type.builtin; rpc_name uses @function.method - Import paths use @string.special.path - proto2/proto3 syntax strings use @string.special.symbol - Simplifies comment captures (removes doc comment distinction) Honestly not sure how well other tree-sitter clients handle the nvim-specific highlights, but I figure this is the primary client I'm (at least personally) concerned about.
This commit is contained in:
parent
ebc3201290
commit
fb60ea759a
1 changed files with 38 additions and 15 deletions
|
|
@ -1,13 +1,27 @@
|
|||
(full_ident
|
||||
(identifier) @variable)
|
||||
(package
|
||||
(full_ident
|
||||
(identifier) @module))
|
||||
|
||||
(full_ident
|
||||
(identifier)
|
||||
(identifier) @variable.member)
|
||||
(extend
|
||||
(full_ident
|
||||
(identifier) @type))
|
||||
|
||||
(constant
|
||||
(full_ident
|
||||
(identifier) @constant))
|
||||
|
||||
(field
|
||||
(identifier) @property)
|
||||
|
||||
(map_field
|
||||
(identifier) @property)
|
||||
|
||||
(oneof
|
||||
(identifier) @type)
|
||||
|
||||
(oneof_field
|
||||
(identifier) @property)
|
||||
|
||||
(field_option
|
||||
(identifier) @property)
|
||||
|
||||
|
|
@ -18,23 +32,26 @@
|
|||
(identifier) @property)
|
||||
|
||||
[
|
||||
"extend"
|
||||
"extensions"
|
||||
"oneof"
|
||||
"option"
|
||||
"reserved"
|
||||
"syntax"
|
||||
"edition"
|
||||
] @keyword.directive
|
||||
|
||||
[
|
||||
"reserved"
|
||||
"to"
|
||||
"max"
|
||||
] @keyword
|
||||
|
||||
[
|
||||
"enum"
|
||||
"extend"
|
||||
"extensions"
|
||||
"group"
|
||||
"service"
|
||||
"message"
|
||||
"map"
|
||||
"oneof"
|
||||
"service"
|
||||
] @keyword.type
|
||||
|
||||
"rpc" @keyword.function
|
||||
|
|
@ -60,22 +77,29 @@
|
|||
[
|
||||
(key_type)
|
||||
(type)
|
||||
] @type.builtin
|
||||
|
||||
[
|
||||
(message_name)
|
||||
(enum_name)
|
||||
(service_name)
|
||||
(rpc_name)
|
||||
(message_or_enum_type)
|
||||
] @type
|
||||
|
||||
(rpc_name) @function.method
|
||||
|
||||
(enum_field
|
||||
(identifier) @constant)
|
||||
|
||||
(string) @string
|
||||
|
||||
(import
|
||||
path: (string) @string.special.path)
|
||||
|
||||
[
|
||||
"\"proto3\""
|
||||
"\"proto2\""
|
||||
] @string.special
|
||||
] @string.special.symbol
|
||||
|
||||
(escape_sequence) @string.escape
|
||||
|
||||
|
|
@ -88,10 +112,9 @@
|
|||
(false)
|
||||
] @boolean
|
||||
|
||||
(comment) @comment @spell
|
||||
(comment) @spell
|
||||
|
||||
((comment) @comment.documentation
|
||||
(#lua-match? @comment.documentation "^/[*][*][^*].*[*]/$"))
|
||||
(comment) @comment
|
||||
|
||||
[
|
||||
"("
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue