Commit graph

82 commits

Author SHA1 Message Date
John Drouhard
ed021ac3af injections(cpp): add injections for raw string literals
the delimiter describes the language to use for the injection content

```cpp
auto python_code = R"python(
  import os

  if __name__ == '__main__':
    print(os.name)
)python";
```
2023-01-09 21:41:13 +02:00
Aaron Rancsik
4e21b50fbd highlights(cpp): auto as @type.builtin 2022-12-01 15:08:07 +01:00
ObserverOfTime
79705a1f80 highlights(cpp): use more specific groups 2022-11-26 13:17:51 +02:00
mliszcz
276718c245 highlights(cpp): add alternative operator names
These keywords are now supported by the parser.
See: https://github.com/tree-sitter/tree-sitter-cpp/pull/179
2022-10-11 14:37:14 +02:00
lfenzo
576287ac84 Split func/method definition from calls in C++ highlighting queries 2022-08-03 12:05:30 -07:00
Stephan Seitz
f9176e560c highlights(c/cpp): move attributes to C (again)
Let's hope that this time the C tests pass, also for the built-in C
parser.
2022-07-28 08:24:51 +02:00
Stephan Seitz
a4f9539a0c highlights(cpp): make "::" @punctuation.delimiter
Fixes #2902
2022-05-07 13:30:36 +02:00
Fabian Viöl
68c36cc59f highlights(cpp): Add operator cast highlight
See https://en.cppreference.com/w/cpp/language/cast_operator for
reference.
2022-03-02 11:00:01 +01:00
Fabian Viöl
4990db79a8 highlights(cpp): Highlight method with nested qualified_identifier
so that methods like these are correctly highlighted

```cpp

class A {
    class B {
       void foo();
    };
};

void A::B::foo() {
//         ^^^
}
```

This only increases the nesting level by one.
AFAIK abritrary nesting is difficult to do with current queries.

But this nesting is a pretty common case
2022-02-09 21:35:00 +01:00
Stephan Seitz
62982378b8 indents(cpp): indent at field_initializer_list 2022-02-05 18:54:55 +01:00
Stephan Seitz
e4675bc410 highlights(c/cpp): highlight case labels as constants 2022-01-29 13:11:56 +01:00
Stephan Seitz
974e2181a0 highlights(cpp): fix function highlighting of Foo::bar::baz()
Fixes https://github.com/nvim-treesitter/nvim-treesitter/issues/2396
2022-01-29 12:40:35 +01:00
Munif Tanjim
c0110e34aa feat: rewrite indent module 2022-01-21 10:51:51 +01:00
Stephan Seitz
788814fb06 highlights(cpp): add support for "<=>", "constinit", "consteval" 2022-01-17 16:52:45 +01:00
Stephan Seitz
3ee34749bc locals(cpp): add support for concepts 2022-01-16 22:19:34 +01:00
Stephan Seitz
db01c82b08 highlights(cpp): add support for concepts
Requires https://github.com/tree-sitter/tree-sitter-cpp/pull/138
2022-01-16 22:19:34 +01:00
Lewis Russell
011ac894ec Prefer lua-match over match
as string.find is much quicker than vim.regex:match*
2021-11-23 10:02:06 +01:00
Dundar Göc
6a4fdb317d chore: fix typos 2021-11-02 23:47:48 +01:00
Stephan Seitz
b6dcb81939 highlights(cpp): highlight literal_suffix as @operator 2021-10-20 09:16:07 +02:00
John Drouhard
e643eb5dbd cpp: highlight template method identifier as a method 2021-09-27 00:09:17 +02:00
John Drouhard
536179c8e2 cpp: fix locals.scm from breaking change in tree-sitter-cpp 2021-09-26 11:20:09 +02:00
John Drouhard
662f3aaadd cpp: update lockfile.json and fix for breaking changes 2021-09-26 11:20:09 +02:00
Stephan Seitz
440d666b68 test 2021-09-17 22:03:47 +02:00
Stephan Seitz
37d93ec017 highlights(c/cpp): react to upstream changes to attributes 2021-09-17 22:03:47 +02:00
Stephan Seitz
1092b6ba3a highlights(cpp): add support for coroutines 2021-09-17 22:03:47 +02:00
Stephan Seitz
d779ee79f0 folds(cpp): highlight scoped enums 2021-07-14 23:00:14 +02:00
Stephan Seitz
dff252d32a highlights(cpp): add static_assert 2021-07-06 18:48:08 +02:00
Alex Chen
3b516c8e2b c++ highlights: don't capture all identifiers with uppercase initials as types 2021-06-10 08:16:53 +02:00
Stephan Seitz
b57194325c indents(c/cpp): let C++ use the C indents and add class_specifier
Fixes #1320
2021-05-20 19:37:42 +02:00
Stephan Seitz
506e998da2 highlights(c/c++): "..." also exists in C (variadic macros) 2021-05-18 07:07:16 +02:00
Santos Gallegos
67f0857015 Revert "Comment: use @combined to create just one tree per buffer (#1252)"
This reverts commit 4a7a713c52.
2021-05-07 16:51:57 +02:00
Santos Gallegos
4a7a713c52
Comment: use @combined to create just one tree per buffer (#1252)
* Comment: use `@combined` to create just one tree per buffer

There is no need to create a tree per line/block for comments.
Should fix https://github.com/nvim-treesitter/nvim-treesitter/issues/1251

* Add injections for scss

* Fix jsonc

* Combine jsdoc
2021-04-28 07:19:07 -05:00
Stephan Seitz
98b9e271ba highlights(cpp): highlight namespaces in using declartions 2021-04-26 01:29:22 +02:00
Stephan Seitz
19efc3d8f3 highlights(cpp): reduce number of regexes 2021-04-26 01:18:28 +02:00
Stephan Seitz
b79e400a51 highlights(cpp): avoid overwriting C CONSTANTS 2021-04-26 01:18:28 +02:00
Stephan Seitz
0894b5d0bd Fix C++ locals 2021-03-16 18:52:43 +01:00
Stephan Seitz
080b6476fe Fix ocaml queries 2021-03-16 18:52:43 +01:00
Stephan Seitz
532a369b32 Mark parsers with NPM dependency 2021-03-16 18:52:43 +01:00
Santos Gallegos
e4083fc8e1
Add comment parser to highlight comment tags (#893)
Closes #236
2021-03-12 11:21:46 -05:00
elianiva
0bf8f58cd2 feat: use @ignore for comments and multiline strings 2021-03-01 23:28:53 +01:00
Santos Gallegos
72ecefc859 C/CPP: add injections for macros 2021-02-10 22:26:04 +01:00
Stephan Seitz
9eaf1840b3 highlights(cpp): fix constructor call highlighting
Address #883
2021-01-29 17:01:23 +01:00
elianiva
9184cf3953 feat: added more indent queries 2021-01-14 14:43:04 +01:00
Stephan Seitz
00ea65199e C++ highlights: Fix destructor highlighting
Field is not "name"
2021-01-08 20:19:18 +01:00
John Drouhard
33ffdce690 c/cpp highlights: Fix field declarations and initializers
After a recent fix for #446, declarations in class/struct definitions
stopped being marked as properties or methods. This fix will add
property highlights to field declarations, and method highlight to field
function declarations.
2020-11-20 14:03:06 +01:00
Stephan Seitz
289cdc9da8 Do not highlight Uppercase function as type 2020-11-18 21:54:04 +01:00
Stephan Seitz
3674ad89df fix(predicates): Fix #446: highlight property only if not a method 2020-11-18 21:54:04 +01:00
Stephan Seitz
1a62b97ccd C++ highlights: highlight all kinds of optional parameters
declarator can be a identifier, a reference or a pointer
2020-10-13 19:48:42 +02:00
Thomas Vigouroux
c055899dc0 feat(queries): modeline mechanism for base langs
This implements https://github.com/neovim/neovim/pull/13059#issuecomment-704414189

This behaves like modelines and remove the use of the base_language map.
Also, this allows to fine-tune what we actually want to include per
query, which is better IMO.
2020-10-11 19:09:22 +02:00
Stephan Seitz
45397ebbd9 fix(highlights): Add TSNamespace highlight
Start adding highlights for
     - C++
     - Rust (including other scoped_identifier/scoped_type_identifier fixes)
     - JS (only namespace_import)

Addresses #516
2020-10-10 15:31:51 +02:00