diff options
| author | Stephan Seitz <stephan.seitz@fau.de> | 2020-05-23 21:23:05 +0200 |
|---|---|---|
| committer | Stephan Seitz <stephan.seitz@fau.de> | 2020-06-15 11:51:28 +0200 |
| commit | 1badceea813d321d0d58319d5fc5dde07e98f18f (patch) | |
| tree | c43d4e066e5f4be2992592c89717d9bc2e20688d /queries/cpp | |
| parent | Add @error highlight to c/highlights.scm (diff) | |
| download | nvim-treesitter-1badceea813d321d0d58319d5fc5dde07e98f18f.tar nvim-treesitter-1badceea813d321d0d58319d5fc5dde07e98f18f.tar.gz nvim-treesitter-1badceea813d321d0d58319d5fc5dde07e98f18f.tar.bz2 nvim-treesitter-1badceea813d321d0d58319d5fc5dde07e98f18f.tar.lz nvim-treesitter-1badceea813d321d0d58319d5fc5dde07e98f18f.tar.xz nvim-treesitter-1badceea813d321d0d58319d5fc5dde07e98f18f.tar.zst nvim-treesitter-1badceea813d321d0d58319d5fc5dde07e98f18f.zip | |
Add cpp/locals.scm
Diffstat (limited to 'queries/cpp')
| -rw-r--r-- | queries/cpp/highlights.scm | 11 | ||||
| -rw-r--r-- | queries/cpp/locals.scm | 49 |
2 files changed, 57 insertions, 3 deletions
diff --git a/queries/cpp/highlights.scm b/queries/cpp/highlights.scm index e3bce91cb..be79098c9 100644 --- a/queries/cpp/highlights.scm +++ b/queries/cpp/highlights.scm @@ -61,7 +61,11 @@ (match? @constructor "^[A-Z]")) (auto) @keyword -(class_specifier) + +;; Parameters +; normals +(parameter_list + (parameter_declaration) @parameter) ; Constants @@ -77,14 +81,14 @@ "catch" @exception "class" @keyword "constexpr" @keyword -"delete" @operator +"delete" @keyword "explicit" @keyword "final" @exception "friend" @keyword "mutable" @keyword "namespace" @keyword "noexcept" @keyword -"new" @operator +"new" @keyword "override" @keyword "private" @keyword "protected" @keyword @@ -95,3 +99,4 @@ "typename" @keyword "using" @keyword "virtual" @keyword +"::" @operator diff --git a/queries/cpp/locals.scm b/queries/cpp/locals.scm new file mode 100644 index 000000000..00268442c --- /dev/null +++ b/queries/cpp/locals.scm @@ -0,0 +1,49 @@ + +;; Class / struct defintions +(class_specifier) @scope +(struct_specifier) @scope + + +(struct_specifier + name: (type_identifier) @definition.type) + +(struct_specifier + name: (scoped_type_identifier + name: (type_identifier) @definition.type) ) + +(class_specifier + name: (type_identifier) @definition.type) + +(class_specifier + name: (scoped_type_identifier + name: (type_identifier) @definition.type) ) + +;; Function defintions +(template_function + name: (identifier) @definition.function) @scope + +(template_method + name: (field_identifier) @definition.method) @scope + +(template_function + name: (scoped_identifier + name: (identifier) @definition.function)) @scope + +(function_declarator + declarator: (scoped_identifier + name: (type_identifier) @definition.function)) @scope + +(field_declaration + declarator: (function_declarator + (field_identifier) @definition.method)) + +(lambda_expression) @scope + +;; Control structures +(try_statement + body: (*) @scope) + +(catch_clause) @scope + +(destructor_name + name: (*) @constructor) |
