Commit Graph

313 Commits (c58e1729cef774db6619e394942465c12abd65cd)

Author SHA1 Message Date
Christoph Horn 26b2f0a1b5 Julia queries: prevent constructors to be highlighted as functions
Also improves the captures of the remaining identifiers.
2022-08-24 11:55:47 -05:00
Christoph Horn 5806db1e5c Julia queries: limit markdown highlighting to docstrings 2022-08-24 11:55:47 -05:00
Christoph Horn f5c00b9bc9 Julia queries: major refactoring of `highlights.scm`, add regex injections, locals 2022-08-24 11:55:47 -05:00
Christoph Horn 77f11bf272 Julia queries: update grammar, fix breaking changes 2022-08-24 11:55:47 -05:00
Jaden 2b16fd43f9
feat(lang): Add esdl grammar (#3526) 2022-08-24 09:51:10 -05:00
seb-bl ccae718a67
Improve dart indent (#3419) 2022-08-23 21:35:57 -05:00
ChemicalXandco 6b912b8641
add syntax highlights for xit (#3521) 2022-08-23 20:52:01 -05:00
Alexander Brevig aef00a3ab6
feat: add taskwarrior to languages so `task N edit` is nice (#3468)
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
2022-08-19 19:16:54 -05:00
Michael Davis 254d558907
Update tree-sitter-swift (#3461) 2022-08-17 10:40:21 +09:00
nosa c5deb30814
Theme Related Fixes (#3412) 2022-08-14 08:35:15 -05:00
Erasin 1eeca10675
Fix Markdown Metadata (#3400) 2022-08-12 09:27:50 -05:00
Vince Mutolo 7559b77d53
highlight closure pipes as brackets (#3397)
Co-authored-by: Vince Mutolo <vince@mutolo.org>
2022-08-11 19:00:03 -05:00
Erasin 921027fb32
Update tree-sitter-latex and highlights (#3370)
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
2022-08-10 07:29:43 -05:00
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>
2022-08-08 17:59:55 -05:00
Erasin d9321134f6 slint indents 2022-08-08 17:57:08 -05:00
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>
2022-08-08 17:57:08 -05:00
Matthias Deiml ea04220874
Use split_parser branch for markdown grammar (#3108) 2022-08-06 10:56:48 -05:00
ChrHorn 23f4a40a7a
Rust queries: add `(function_item)` as a local scope (#3345) 2022-08-06 05:58:06 -05:00
Erasin bf6f7042fe
Fix php hightlight (#3317)
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
2022-08-05 07:34:03 -05:00
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.
2022-08-03 14:09:44 +09:00
ChrHorn 11367488ac
Improve Python queries, add locals (#3284) 2022-08-01 16:14:07 -05:00
ChrHorn 59bf1669ec
javascript queries: fix parameters (#3280) 2022-08-01 15:15:17 -05:00
Banst 7e06681413
feat: add cue support (#3262) 2022-07-31 07:04:57 -05:00
Erasin 919edfb323
Add Graphviz Dot lang support (#3241)
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
2022-07-30 12:34:00 -05:00
Erasin 681c0a91dc
Add textobject for javascript (#3213) 2022-07-28 08:31:20 -05:00
Michael Davis 9ed9c3faca
Remove let_declaration from Rust locals tracking (#3212) 2022-07-28 12:04:50 +09:00
Philipp Mildenberger bf74a4652d
JS/TS highlighting improvements (#3219) 2022-07-27 13:56:58 -05:00
Erasin df5ab8b40c
Fix: Python hightlight (#3201) 2022-07-26 22:31:14 +09:00
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
2022-07-26 10:17:51 +09:00
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
2022-07-26 10:17:28 +09:00
Clay b55573dc1d
Add elixir & heex comment textobjects (#3179) 2022-07-26 10:14:45 +09:00
Erasin dad6d0f3b2
Fix: svelte indets.scm (#3147) 2022-07-24 17:42:27 +09:00
Clay ec85fb9ab6
Improve HEEx comment highlights, inject comment lang (#3170) 2022-07-24 11:49:52 +09:00
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>
2022-07-22 10:28:32 +09:00
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.
2022-07-20 11:51:35 +09:00
Joe 0c9594e41e
Add SCSS language support (#3074) 2022-07-17 17:55:20 +08:00
Mateusz S. Szczygieł 5f69beb87f
Add textobjects.scm to GLSL (#3051) 2022-07-12 10:13:57 -05:00
Philipp Mildenberger e97b8607c1
Added ungrammar language support (#3048) 2022-07-12 10:06:53 -05:00
Austen LeBeau 0cb0c30618
add fortran language (#3025) 2022-07-10 11:27:44 -05:00
Jake Langford 230ba264bf
Introduce storage highlighting for typescript/javascript (#2961) 2022-07-06 08:54:07 -05:00
Ivan Tham e35abe38f3
Remove broken ledger tag highlight (#2988) 2022-07-06 07:35:36 -05:00
A-Walrus 1378b911b6
Fix some typos (#2978) 2022-07-05 21:49:54 -05:00
Ivan Tham b612211070
Update tree-sitter-ledger (#2936) 2022-07-05 09:12:28 -05:00
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
2022-07-05 20:01:05 +09:00
rsteube 4c30a3609a
languages: added elvish (#2948) 2022-07-03 16:19:12 -05:00
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.
2022-07-01 19:17:19 +09:00
Michael Davis c5600c9c01 markdown: limit raw block highlight to code fence content 2022-07-01 11:04:23 +02:00
Michael Davis c8dba2f4c6 erlang: highlight modules in behaviour attributes 2022-07-01 11:04:23 +02:00
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.
2022-07-01 11:04:23 +02:00
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
2022-07-01 11:04:23 +02:00
Michael Davis 4a0dab8bc2 erlang: fix '#match?' for specs/callbacks 2022-07-01 11:04:23 +02:00
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`.
2022-07-01 11:04:23 +02:00
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">`
2022-07-01 11:04:23 +02:00
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.
2022-07-01 11:04:23 +02:00
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
2022-07-01 11:04:23 +02:00
Michael Davis ca82cd86e6 markdown: highlight punctuation 2022-07-01 11:04:23 +02:00
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).
2022-07-01 11:04:23 +02:00
Michael Davis d523280e85 erlang: highlight nullary macros as constants 2022-07-01 11:04:23 +02:00
Michael Davis 64cf4c859b
support Bazel languages (#2903) 2022-06-28 08:48:38 +05:30
Michael Davis 9f676dab57 add test textobjects queries for erlang,gleam,go,python,rust 2022-06-21 11:32:03 -05:00
Connor Lay (Clay) 67f6c85792 text-objects: add test capture & elixir queries 2022-06-21 11:32:03 -05:00
farwyler cad4e03a00
adds missing tree-sitter-comment injection for js/ts (#2763) 2022-06-20 10:55:51 -05:00
A-Walrus ad15e7b5e8
Add "<<=" operator to Rust syntax highlighting (#2805) 2022-06-18 11:44:21 -05:00
Clay b13e534b92
HEEx: upgrade version and support new special_attribute node (#2800) 2022-06-17 17:30:28 -05:00
Axot 4d604d3b50
Add clojure language support (#2780)
Co-authored-by: Mateusz Ledwoń <mateusz.ledwon@iteo.com>
2022-06-16 11:47:52 -05:00
Anton Romanov 7983c71752
Introduce storage_class highlight scope (#2731) 2022-06-14 12:35:36 -05:00
Ivan 0bc7259672
add prisma tree-sitter and lsp support (#2703)
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
2022-06-12 14:08:51 -05:00
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.
2022-06-07 20:03:31 +09:00
Michael Davis f7a3d35752 add textobject queries for gleam 2022-06-07 20:03:31 +09:00
Michael Davis bcafdf404f add textobject queries for elixir 2022-06-07 20:03:31 +09:00
Michael Davis 7a9147489e add textobject queries for erlang 2022-06-07 20:03:31 +09:00
farwyler f0d1c85553
support for openscad (#2680)
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
2022-06-06 12:26:56 -05:00
Michael Davis fd4858c03d
add tree-sitter-jsdoc (#2650) 2022-06-03 10:26:47 +05:30
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
2022-06-03 07:41:17 +08:00
Clay fc8c488322
Elixir: inject Markdown into docs, remove h sigil HEEx injection (#2619)
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
2022-05-30 21:32:14 -05:00
Timothy DeHerrera eba82250bb
feat(lang): Update Nix grammar & improve queries (#2472) 2022-05-30 13:47:18 -05:00
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>
2022-05-28 14:46:10 -05:00
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 '=:='.
2022-05-25 21:26:26 +09:00
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
2022-05-25 21:26:26 +09:00
Andrey Tkachenko 10463fe32c Add `parameter.around` text object query 2022-05-25 21:26:06 +09:00
Andrey Tkachenko 67fe16008e
Basic verilog support (#2552) 2022-05-24 12:52:32 -05:00
Blaž Hrastnik d25bae844c
Add Scheme support
Skipped scm for now :/ it overlaps with tree-sitter-tsq
2022-05-22 00:01:07 +09:00
Paul Scott 09f9f70576 Python highlight decorator attribute 2022-05-20 10:28:52 +09:00
Paul Scott 2a2030142f Python highlight keyword argument as parameter 2022-05-20 10:28:52 +09:00
Paul Scott e680f9644d Python handling highlighting parameters with defaults 2022-05-20 10:28:52 +09:00
Paul Scott abef250c58 Python highlight improvements: type, parameter etc
* str, list, etc. handled as @function.builtin and @type.builtin
* None and non-conforming type indentifiers as @type in type hints
* class identifiers treated as @type
* @constructor used for constructor definitions and calls rather than
  as a catch-all for type-like things
* Parameters highlighted
* self and cls as @variable.builtin
* improved decorator highlighting as part of @function

Re-ordering of some statements to give more accurate priority.
2022-05-20 10:28:52 +09:00
Zeddicus414 a6da99a144 Change python highlights.scm to more fully utilize the themes.
Create type keywords
Allow _CONSTANTS to start with _
Highlight constants before constructors
Move some keywords into @keyword.control
2022-05-20 10:28:52 +09:00
Andrey Tkachenko 62fd1f6999
Include macro attributes to impls, structs, enums, functions etc. textobjects (#2494) 2022-05-20 10:19:46 +09:00
midnightexigent 8493b5fca6
Add tree-sitter ssh client config queries (#2498)
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
2022-05-18 14:49:50 -05:00
unrelentingtech 2cb1ea7127
feat(lang): add Meson language support (#2314)
https://mesonbuild.com/Syntax.html
2022-05-11 10:06:37 +09:00
ChrHorn b38c268097
fix Markdown list highlighting (#2401) 2022-05-07 11:26:34 +09:00
Robert Walter 495ba40eaf
feat(languages): add odin language (#2399) 2022-05-05 12:09:09 -05:00
Matthew Toohey a5f4925f53
feat(languages): git-ignore and git-attributes (#2397) 2022-05-05 08:47:28 -05:00
ChrHorn fc61796895
TOML highlight: use variable.other.member instead of string for quoted keys (#2391) 2022-05-05 16:14:17 +09:00
ChrHorn 5ab669f1ac
replace constant.number with constant.numeric (#2389) 2022-05-04 14:51:31 +09:00
Fanda Vacek 1668183590
feat(lang): Cpon lang support (#2355)
Co-authored-by: Fanda Vacek <fvacek@elektroline.cz>
2022-05-01 09:34:46 -05:00
Blaž Hrastnik 73879052c1
Add Cairo support 2022-05-01 11:24:17 +09:00
unrelentingtech 8e77e3388c
feat(lang): add devicetree (Flattened Device Tree Source) (#2329) 2022-04-29 15:08:00 -05:00
Erin van der Veen 21487d13fd
feat(lang): Update nickel to include "rec" keyword (#2320) 2022-04-29 07:34:15 -05:00
meak 1a3d6252b9
feat(lang): add hare language support (#2289)
Co-authored-by: Mehdi Katranji <hello@mek.yt>
2022-04-26 14:55:00 -05:00