Anton Romanov
07d3157273
[rust highlights] fix scoped attribute macro matching ( #4659 )
...
Without this scoped attribute macros are not matched as macros.
Eg
```
#[path::macro]
```
2 years ago
Danillo Melo
188aff059b
Improve Ruby TextObjects ( #4601 )
2 years ago
ChrHorn
4ec2a21c6e
Update Julia grammar, queries ( #4588 )
2 years ago
Yuriy
b156f57618
Add indentation for Python pattern matching
...
Add indentation for `match` and `case`.
2 years ago
Yuriy
e0b034dcd1
Add syntax highlighting for Python pattern matching
...
Add syntax highlighting for `match` and `case` keywords in Python
(https://peps.python.org/pep-0636/ ).
2 years ago
Garrett D'Amore
185236c3a4
Fix D unittest injection query. ( #4562 )
2 years ago
Jonas Everaert
79c7203a38
Added missing keywords to wat (wasm) hightlights ( #4542 )
...
added "if", "then", "else", "block", "loop", "end" and "mut" to the wat highlights.
2 years ago
Sebastian Hoß
9b247b1104
Update SSH client config grammar & highlight queries ( #4538 )
...
Co-authored-by: Sebastian Hoß <seb@hoß.de>
2 years ago
seshotake
ed7ea8c9ba
add highlights for env and ini file formats ( #4536 )
2 years ago
hh9527
9df4358492
Support WIT grammar ( #4525 )
2 years ago
seshotake
f6710879d1
Update SQL grammar ( #4529 )
2 years ago
Triton171
908529ccac
Update LaTex grammar ( #4528 )
...
Fix comment injection & add highlighting for math delimiters.
2 years ago
Matthew Toohey
f054a3f3ed
feat(lang): add xml ( #4518 )
2 years ago
Poliorcetics
2935e9da19
feat: Categorize Rust's keywords using more specific scopes ( #4510 )
2 years ago
Jaden
b5e7501935
feat(lang): add kdl grammar ( #4481 )
2 years ago
rsteube
26f21da531
language: added vhs ( #4486 )
2 years ago
Matthias Deiml
b1ffbbd49f
Include unnamed children for html injected into inline markdown ( #4478 )
2 years ago
Sora
664064b3cc
Add textobjects.scm for zig ( #4409 )
2 years ago
Garrett D'Amore
36f97b6aad
Add support for D ( #4372 )
...
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
2 years ago
Jared Ramirez
de607830a2
Upgrade rescript tree sitter & highlights ( #4356 )
...
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
2 years ago
Blaž Hrastnik
431f9c14f3
Support Cairo 0.10 syntax
2 years ago
Chickenkeeper
1c08c80e4f
C# syntax highlight tweaks ( #4285 )
2 years ago
Sora
f444ba8beb
Fixup Zig Indent Queries ( #4281 )
2 years ago
Sam McCall
aef37d43d7
c/c++ highlighting: various tweaks
...
- treat `restrict`/`_Atomic` like `const`/`volatile` => @keyword.storage.modifier
- highlight `unsigned int` as builtin => @type.builtin
- recognize `static_cast` and friends => @keyword
- `template` is a kind of entity like `typename` => @keyword.storage.type
- many declaration modifiers have nothing to do with storage/types
(explicit, friend, access specifiers, inline in C++) => @keyword
- fix floats highlighted as integer => @constant.numeric
2 years ago
Sam McCall
a3ed9169df
c/c++ highlights: *& are @type or @operator based on context ( #4278 )
2 years ago
Dario Oddenino
2d958d6c50
Add support for Purescript language ( #4242 )
2 years ago
Chickenkeeper
b4e795d704
Fix C++ syntax highlighting, and improve C & WGSL highlighting ( #4079 )
2 years ago
Lennard Hofmann
a24fae3b3c
Update tree-sitter-lua and add textobjects for Lua ( #3552 )
2 years ago
Daniel Ebert
081327695f
Rename extend indent captures.
...
Clarify comments in indent code.
2 years ago
Triton171
3ab9abb642
Add `extend-indented` and `stop-extend` captures for indent queries.
...
Improve and re-enable python indent queries.
2 years ago
gbprod
9f36468b15
Change twig tree-sitter grammar ( #4176 )
2 years ago
Chickenkeeper
8e8ba06f60
Improve C# syntax highlighting ( #4118 )
2 years ago
Michael Davis
4a3b776b78
rust: Highlight function signatures as functions ( #4073 )
...
This stanza highlights functions within trait definitions. For example,
in:
pub trait Widget {
fn render(self, area: Rect, buf: &mut Buffer);
}
`render` is currently highlighted as a variable. With this change it's
highlighted as a function.
2 years ago
David
18f6ec7a8e
Update treesitter markdown ( #4078 )
...
* Update treesitter markdown
* Update inline and add table injections
2 years ago
Roberto Vidal
cc257e9bf9
Add support for webassembly text format ( #4040 )
2 years ago
Chickenkeeper
60aa7d3607
WGSL syntax highlighting fix ( #3996 )
2 years ago
Maximilian Muecke
8a7a6e4cff
Add comment injection for R ( #4031 )
2 years ago
Jacob Chandler
90468ad6c5
fix: Improve JSX and TSX tag highlighting ( #3973 )
2 years ago
Oskar Köök
98dd9c4f2b
Remove `do_block` from Ruby indents ( #3976 )
...
`do_block` and `block` seem to conflict, causing double-indentation in some cases. Removing `do_block` does not seem to have any negative effect, while fixing the double-indentation issue.
2 years ago
gavincrawford
1dd1476a9e
Fix highlighting on single-character Rust consts ( #3927 )
...
Co-authored-by: Kirawi <67773714+kirawi@users.noreply.github.com>
Co-authored-by: Gavin Crawford <gavincrawford@users.noreply.github.com>
2 years ago
Alex Suraci
ea25ed6431
add `bass` language + highlighting ( #3771 )
2 years ago
Benjamin Streit
714db9c666
fix: Improving JSX and TSX indents ( #3853 )
2 years ago
Benjamin Streit
ffb41a94f0
feat: Syntax highlighting for Astro files ( #3829 )
2 years ago
Erasin
a15420ed1c
Add textobject for gdscript ( #3760 )
2 years ago
Erasin
54e78dd24f
Add godot resource support ( #3759 )
...
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
2 years ago
Matouš Dzivjak
5ab85283e9
feat(languages): jsonnet ( #3714 )
...
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
2 years ago
Giorbo
5b1113766d
Add syntax highlighting for SML ( #3692 )
...
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
2 years ago
Michael Davis
301f5d7cf7
Fix Rust attribute highlights ( #3729 )
2 years ago
Timothy DeHerrera
1fe32737fa
nix: fix highlighting rules
...
* avoid coloring `identifier`s globally
* fix function application when not part of `select_expression`
* add `has_attribute_expression` highlighting
* fix precendence for interpolation, which should be after select
* highlight `@` as delimiter
2 years ago
Timothy DeHerrera
665e27ff9d
nix: add language injections
...
By simply placing a comment with the name of the desired language just
before a multi-line string, that language will be injected.
Also, common functions and attributes which are expected to be shell
code are automatically injected.
2 years ago
Michael Davis
43b31f702a
Update tree-sitter-diff ( #3708 )
...
This change also renames the grammar from `git-diff` to `diff`.
The grammar covers regular diff syntax so I renamed the repository
a while ago.
2 years ago
Clay
da8071047a
Elixir: update tree-sitter queries ( #3645 )
2 years ago
Blaž Hrastnik
20ed8c2595
tree-sitter-solidity: Use upstream, update queries
2 years ago
Charles Hall
b3b164f0d5
Highlight SQL in `sqlx::{query,query_as}!()` in Rust ( #3647 )
2 years ago
voroskoi
6e5e38c2ba
update zig grammar and highlight rules ( #3621 )
2 years ago
Michael Davis
03f0ef93ac
Update tree-sitter-rust to latest
...
There don't appear to be any regressions from the updates.
Also included is a fix which highlights the "#" as in attributes
as punctuation. This was previously unhighlighted.
2 years ago
Michael Davis
ac669ade05
erlang: Fix highlighting of empty records
...
For example
-record(state, {})
Would not highlight `state` as a type since the alternation didn't
allow for an empty tuple. Allowing the inner atom of the tuple to be
optional fixes this case.
2 years ago
Michael Davis
00d88e540e
Fix missing C highlights
...
* "const" keyword
* booleans
* <=/>= operators
2 years ago
Michael Davis
73d5bd739e
Delete invalid indents.scm queries
2 years ago
David
db18206795
Fix rust text objects ( #3590 )
2 years ago
Gustavo Bogarín
e066782782
Add c-sharp textobjects ( #3494 )
...
Co-authored-by: Gustavo Bogarín <gbogarin@outlook.com>
Co-authored-by: Gustavo Bogarín <gbogarin@posibillian.tech>
2 years ago
ath3
86a8ea57bb
Pascal support ( #3542 )
2 years ago
ath3
0a22148559
AWK Regex injection ( #3535 )
2 years ago
ath3
45add73fb1
AWK support ( #3528 )
2 years ago
Christoph Horn
facde9f18c
Julia queries: fix non-consecutive docstring highlight
2 years ago
Christoph Horn
26b2f0a1b5
Julia queries: prevent constructors to be highlighted as functions
...
Also improves the captures of the remaining identifiers.
2 years ago
Christoph Horn
5806db1e5c
Julia queries: limit markdown highlighting to docstrings
2 years ago
Christoph Horn
f5c00b9bc9
Julia queries: major refactoring of `highlights.scm`, add regex injections, locals
2 years ago
Christoph Horn
77f11bf272
Julia queries: update grammar, fix breaking changes
2 years ago
Jaden
2b16fd43f9
feat(lang): Add esdl grammar ( #3526 )
2 years ago
seb-bl
ccae718a67
Improve dart indent ( #3419 )
2 years ago
ChemicalXandco
6b912b8641
add syntax highlights for xit ( #3521 )
2 years ago
Alexander Brevig
aef00a3ab6
feat: add taskwarrior to languages so `task N edit` is nice ( #3468 )
...
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
2 years ago
Michael Davis
254d558907
Update tree-sitter-swift ( #3461 )
2 years ago
nosa
c5deb30814
Theme Related Fixes ( #3412 )
2 years ago
Erasin
1eeca10675
Fix Markdown Metadata ( #3400 )
2 years ago
Vince Mutolo
7559b77d53
highlight closure pipes as brackets ( #3397 )
...
Co-authored-by: Vince Mutolo <vince@mutolo.org>
2 years ago
Erasin
921027fb32
Update tree-sitter-latex and highlights ( #3370 )
...
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
2 years ago
Kyle L. Davis
4ce5a94552
Add language: beancount ( #3297 )
...
Co-authored-by: erasin <erasinoo@gmail.com>
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
Co-authored-by: Erasin <erasinoo@gmail.com>
2 years ago
Erasin
d9321134f6
slint indents
2 years ago
Erasin
f09d2bc56b
Add slint-ui support
...
<https://slint-ui.com/ >
lsp: <https://github.com/slint-ui/slint/tree/HEAD/tools/lsp >
tree-sitter-slint: <https://github.com/jrmoulton/tree-sitter-slint >
2 years ago
Matthias Deiml
ea04220874
Use split_parser branch for markdown grammar ( #3108 )
2 years ago
ChrHorn
23f4a40a7a
Rust queries: add `(function_item)` as a local scope ( #3345 )
2 years ago
Erasin
bf6f7042fe
Fix php hightlight ( #3317 )
...
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
2 years ago
Michael Davis
08b442f4cc
Inherit javascript/typescript from common 'ecma' queries ( #3301 )
...
JavaScript queries now contain a few lines that prevent them from
being used whole-sale in typescript with `; inherits: javascript`.
Here we follow nvim-treesitter's way of using a fake 'ecma' language
as a common base for JavaScript and TypeScript to share as much as
we can.
2 years ago
ChrHorn
11367488ac
Improve Python queries, add locals ( #3284 )
2 years ago
ChrHorn
59bf1669ec
javascript queries: fix parameters ( #3280 )
2 years ago
Banst
7e06681413
feat: add cue support ( #3262 )
2 years ago
Erasin
919edfb323
Add Graphviz Dot lang support ( #3241 )
...
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
2 years ago
Erasin
681c0a91dc
Add textobject for javascript ( #3213 )
2 years ago
Michael Davis
9ed9c3faca
Remove let_declaration from Rust locals tracking ( #3212 )
2 years ago
Philipp Mildenberger
bf74a4652d
JS/TS highlighting improvements ( #3219 )
2 years ago
Erasin
df5ab8b40c
Fix: Python hightlight ( #3201 )
2 years ago
Kirawi
0a2646e720
Improve python highlighting ( #3103 )
...
* improve python queries
* update python grammar to `0.20.2`
* fix variadic parameter scope
* add punctuation scopes
* fix order of punctuation scopes
* undo `embedded` delete
2 years ago
Daniel Longeuay
2ede98c4b4
feat(tree-sitter): ✨ add go template support ( #3091 )
...
* feat(tree-sitter): ✨ add go template support
* fix(tree-sitter): 🐛 go template highlight scope selectors
* chore(tree-sitter): 🔧 update go template grammar commit
2 years ago
Clay
b55573dc1d
Add elixir & heex comment textobjects ( #3179 )
2 years ago
Erasin
dad6d0f3b2
Fix: svelte indets.scm ( #3147 )
2 years ago
Clay
ec85fb9ab6
Improve HEEx comment highlights, inject comment lang ( #3170 )
2 years ago
Philipp Mildenberger
b6c700fce9
Replace '; inherits <language>' in treesitter queries with <language> queries instead of appending them ( #2470 )
...
Co-authored-by: Blaž Hrastnik <blaz@mxxn.io>
2 years ago
Michael Davis
9753da6ab7
Fix locals tracking in Rust closures ( #3027 )
...
The fix comes from the rewriting of the `closure_parameters` stanza:
it was capturing the entire `closure_parameters` node including
paretheses, whitespace, and commas. Capturing the identifiers within
fixes the tracking.
In order to make sure locals definitions from closure parameters don't
leak out of the body of the closure, though, we should also mark the
closure itself as a locals scope.
2 years ago
Joe
0c9594e41e
Add SCSS language support ( #3074 )
2 years ago
Mateusz S. Szczygieł
5f69beb87f
Add textobjects.scm to GLSL ( #3051 )
2 years ago
Philipp Mildenberger
e97b8607c1
Added ungrammar language support ( #3048 )
2 years ago
Austen LeBeau
0cb0c30618
add fortran language ( #3025 )
2 years ago
Jake Langford
230ba264bf
Introduce storage highlighting for typescript/javascript ( #2961 )
2 years ago
Ivan Tham
e35abe38f3
Remove broken ledger tag highlight ( #2988 )
2 years ago
A-Walrus
1378b911b6
Fix some typos ( #2978 )
2 years ago
Ivan Tham
b612211070
Update tree-sitter-ledger ( #2936 )
2 years ago
Michael Davis
aacd0c8aa5
Update TSQ queries ( #2960 )
...
A few changes to make TSQ highlights better:
* A parsing error has been fixed in the grammar itself
* Previously tree-sitter-tsq did not parse the variables
in predicates like `(#set! injection.language "javascript")`
* Theme nodes as `tag`
* The newly added node to the parser (from the above fix) is
`variable` which takes over the `variable` capture from nodes
* Highlight known predicates as `function` and unsupported
predicates as `error`
* This may help when translating queries from nvim-treesitter.
For example `#any-of?` is a common one used in nvim-treesitter
queries but not implemented in Helix or tree-sitter-cli.
* Inject tree-sitter-regex into `#match?` predicates
2 years ago
rsteube
4c30a3609a
languages: added elvish ( #2948 )
2 years ago
Blaž Hrastnik
9ae70cc410
Disable tree-sitter python indents, use fallback for now
...
There's been a lot of complaints about the state of python indentation
and the fallback actually works better until the solution proposed
in https://github.com/helix-editor/helix/issues/763#issuecomment-1137894973=
is implemented.
2 years ago
Michael Davis
c5600c9c01
markdown: limit raw block highlight to code fence content
2 years ago
Michael Davis
c8dba2f4c6
erlang: highlight modules in behaviour attributes
2 years ago
Michael Davis
19acbfe02d
erlang: highlight records with macro names
...
You might use a macro like `?MODULE` to name a record:
-record(?MODULE, {a, b, c}).
With this fix, the record fields correctly get `variable.other.member`
highlights.
2 years ago
Michael Davis
bf1aa8876c
git-commit: fix highlight edge cases
...
* branch message with current branch and diverged branch has been
added to the parser
* scissors used in verbose commits are marked as a punctuation
delimiter
* we could use comment instead since they're visually the
same but IMO this works better
2 years ago
Michael Davis
4a0dab8bc2
erlang: fix '#match?' for specs/callbacks
2 years ago
Michael Davis
e4e8a39bf7
replace module captures with namespace
...
`module` is undocumented and does not exist in other themes. The
equivalent existing scope based on usage (Elixir for example) is
`namespace`.
2 years ago
Michael Davis
016e97314c
html: highlight punctuation
...
* `/>` as in self-closing tags like `<hr/>`
* `=` as in the separator between attribute name and value `<a href="bar">`
2 years ago
Michael Davis
7cf88f2bac
edoc: prevent rogue punctuation highlights
...
Punctuation highlights would show up outside of where they
were valid, for example using parentheses in some text. This
change prevents that by gating the captures to being under
the named nodes in which they are valid.
2 years ago
Michael Davis
78c944ebc3
rust: fix highlight corner-cases
...
* add punctuation highlights for commas as in function parameters
* remove stray `variable.parameter` highlight
* I couldn't find any regressions from this and it fixes an
edge case I ran into (but sadly did not record 😓 )
* highlight `fn` as `keyword.function`
* the theme docs have `fn` as an example so it seems fitting
2 years ago
Michael Davis
ca82cd86e6
markdown: highlight punctuation
2 years ago
Michael Davis
bd527c84e6
erlang: highlight unary '#' as punctuation.bracket
...
The '#' character may either be interpreted as a map when used
like so:
%% Example 1
#{a => b}
Or as an operator which updates an existing map when the left-hand
side is an expression:
%% Example 2
MyMap#{a => b}
This commit changes the highlight to `punctuation.bracket` when used
as a character in a literal map (example 1) and keeps the `operator`
highlight when used for updating (example 2).
2 years ago
Michael Davis
d523280e85
erlang: highlight nullary macros as constants
2 years ago
Michael Davis
64cf4c859b
support Bazel languages ( #2903 )
2 years ago
Michael Davis
9f676dab57
add test textobjects queries for erlang,gleam,go,python,rust
2 years ago
Connor Lay (Clay)
67f6c85792
text-objects: add test capture & elixir queries
2 years ago
farwyler
cad4e03a00
adds missing tree-sitter-comment injection for js/ts ( #2763 )
2 years ago
A-Walrus
ad15e7b5e8
Add "<<=" operator to Rust syntax highlighting ( #2805 )
2 years ago
Clay
b13e534b92
HEEx: upgrade version and support new special_attribute node ( #2800 )
2 years ago
Axot
4d604d3b50
Add clojure language support ( #2780 )
...
Co-authored-by: Mateusz Ledwoń <mateusz.ledwon@iteo.com>
2 years ago
Anton Romanov
7983c71752
Introduce storage_class highlight scope ( #2731 )
2 years ago
Ivan
0bc7259672
add prisma tree-sitter and lsp support ( #2703 )
...
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
2 years ago
Michael Davis
4a27e2d938
capture rust closures as function textobjects
...
Closures like
iter.map(|a| a + 1)
Are sort-of functions, so `]f` or `maf` or `mif` can apply to them
as well as named function definitions.
2 years ago
Michael Davis
f7a3d35752
add textobject queries for gleam
2 years ago
Michael Davis
bcafdf404f
add textobject queries for elixir
2 years ago
Michael Davis
7a9147489e
add textobject queries for erlang
2 years ago
farwyler
f0d1c85553
support for openscad ( #2680 )
...
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
2 years ago
Michael Davis
fd4858c03d
add tree-sitter-jsdoc ( #2650 )
2 years ago
Michael Davis
42d780b103
add tree-sitter-edoc ( #2640 )
...
* add tree-sitter-edoc
* fix escape character capture in markdown queries
* add field negation operator "!" to tsq highlights
2 years ago
Clay
fc8c488322
Elixir: inject Markdown into docs, remove h sigil HEEx injection ( #2619 )
...
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
3 years ago
Timothy DeHerrera
eba82250bb
feat(lang): Update Nix grammar & improve queries ( #2472 )
3 years ago
pancake
7706a4a0d8
Add Vlang tree-sitter in the languages.toml ( #2526 )
...
Co-authored-by: pancake <pancake@nopcode.org>
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
3 years ago
Michael Davis
82da9bd4f2
update Erlang grammar and queries
...
The update to the grammar itself covers the case where the document
is a single expression without a trailing newline such as "min(A, B)".
A small change to the parser now parses these expressions correctly
which improves the display of the function head in the signature
help popup.
The update to the queries marks 'andalso', 'orelse', 'not', etc. as
`@keyword.operator` which improves the look - it looks odd to see
operators that are words highlighted the same as tokens like '->'
or '=:='.
3 years ago
Michael Davis
45dd54082e
update Gleam grammar and queries
...
With respect to the queries:
The locals scope for functions was not large enough, so a function's
parameter could outlive the function body. To fix it, we just widen
the scope to the `function` node.
See also https://github.com/gleam-lang/tree-sitter-gleam/issues/25
With respect to the parser:
An external scanner has been added that fixes the parsing of strings.
Previously, a comment inside a string would act like a comment rather
than string contents.
See also https://github.com/gleam-lang/tree-sitter-gleam/issues/14#issuecomment-1129263640
A new constructor node has been added as well which makes type
highlighting more fine grained.
See also https://github.com/gleam-lang/tree-sitter-gleam/pull/29
3 years ago
Andrey Tkachenko
10463fe32c
Add `parameter.around` text object query
3 years ago
Andrey Tkachenko
67fe16008e
Basic verilog support ( #2552 )
3 years ago
Blaž Hrastnik
d25bae844c
Add Scheme support
...
Skipped scm for now :/ it overlaps with tree-sitter-tsq
3 years ago
Paul Scott
09f9f70576
Python highlight decorator attribute
3 years ago
Paul Scott
2a2030142f
Python highlight keyword argument as parameter
3 years ago
Paul Scott
e680f9644d
Python handling highlighting parameters with defaults
3 years ago