Yuri Astrakhan
48059b72a8
feat: remove lazy_static in favor of LazyLock
...
This switches to the built-in `std::sync::LazyLock`
2025-01-21 00:21:35 -05:00
Amaan Qureshi
ac8bb1b777
build: bump other crates' MSRV to 1.82
2025-01-12 04:47:59 -05:00
Jonathan Raphaelson
8368f9994d
feat: add flag to output css classes instead of inline styles in HTML highlighter output
...
Co-authored-by: Amaan Qureshi <amaanq12@gmail.com>
2024-12-15 01:43:22 -05:00
Amaan Qureshi
e27160b118
feat(rust): remove usage of deprecated functions
2024-10-31 21:58:35 -04:00
Lukas Seidel
6b1ebd3d29
feat!: implement StreamingIterator instead of Iterator for QueryMatches and QueryCaptures
...
This fixes UB when either `QueryMatches` or `QueryCaptures` had collect called on it.
Co-authored-by: Amaan Qureshi <amaanq12@gmail.com>
2024-09-29 17:34:48 -04:00
Amaan Qureshi
e553578696
feat: add fuzz subcommand
2024-05-30 23:00:45 -04:00
Enno T. Boland
3ab3b055ed
docs(highlight): typo
2024-04-14 17:15:43 -04:00
Amaan Qureshi
5825e24d56
style: wrap comments
2024-04-11 22:35:43 -04:00
Amaan Qureshi
b35efa8f33
style: format imports
2024-04-11 22:35:43 -04:00
Amaan Qureshi
e996c32108
refactor!: remove the apply-all-captures flag, make last-wins precedence the default
2024-02-16 12:34:12 -05:00
Amaan Qureshi
f32fa784be
chore(highlight): apply clippy fixes
2024-02-04 04:19:09 -05:00
Max Brunsfeld
da16cb1459
Introduce language ref-count management C APIs, remove Copy impl for Language in Rust
2023-12-27 14:59:16 -08:00
Max Brunsfeld
473b3c8208
Add a CLI feature flag for wasm runtime support
2023-10-31 16:56:11 -07:00
Andrew Hlynskyi
52f7eaff31
chore(rust): make Query extra predicates state fully immutable
2023-09-02 23:12:28 +03:00
Andrew Hlynskyi
0862921537
doc: Include README as top-level module documentation for all crates
2023-08-28 23:09:37 +03:00
Amaan Qureshi
cd0bdf586f
fix(injections): only allow setting self/parent via #set!
2023-08-22 01:27:00 -04:00
Amaan Qureshi
e3a5863287
feat: add @injection.parent to inject an injection's node with the parent language
2023-08-21 01:08:17 -04:00
Amaan Qureshi
da6affaf94
feat: allow @injection.self to inject the node w/ itself
2023-08-21 00:53:04 -04:00
Amaan Qureshi
45313e0dfb
feat: add injection.self to inject a node with itself
2023-08-18 18:37:57 -04:00
Amaan Qureshi
9971e5d5f5
feat: allow specifying an input captures-path argument
2023-08-17 22:20:57 -04:00
Amaan Qureshi
8eb92d1c64
feat: add an --apply-all-captures argument to highlight & test
2023-08-17 22:20:57 -04:00
Andrew Hlynskyi
7938db90fe
TextProvider with generic return type
2023-07-30 21:56:58 +03:00
Patrick Thomson
a7481361cf
Treat leading _ character as private.
2023-07-15 19:43:41 -04:00
Patrick Thomson
01b47f1a15
Add more Helix captures, including the markup hierarchy.
2023-07-15 20:49:02 -04:00
Patrick Thomson
cb58bc593f
Add --check flag to tree-sitter highlight.
...
Recently I've been pulling a lot of grammars into GitHub's highlighting backend,
replacing legacy language support with tree-sitter highlighting queries.
Our backend systems have a standard set of highlight captures we expect, very
similar to the standard tagging captures we expect. Though end-user applications
are free to choose whatever tagging nomenclature they want, I think it's nice to
include a checking stage that will help us ensure that we know whether a capture
might be recognized or not. It will also help us figure out where we need to
expand our standard set of captures (see #1539 ).
2023-07-15 20:49:03 -04:00
Kian-Meng Ang
b8552ec6c4
Fix typos
2022-06-28 19:57:42 +08:00
Michael Davis
a3609aa07e
remove non-local query matches for locals
2022-01-18 17:04:00 -06:00
Michael Davis
51354ef776
use just an i32 to ignore match IDs
2022-01-17 22:20:05 -06:00
Michael Davis
83ef0aea12
prevent future matches for '#is-not? local' patterns
2022-01-17 22:03:09 -06:00
Paul Gey
a533e4d7bb
Remove unnecessary borrows
...
This produces an `unused_must_use` warning on nightly:
https://github.com/rust-lang/rust/pull/86426
2021-08-14 15:44:24 +02:00
Edgar Luque
cd9307b597
format
2021-06-17 09:17:13 +02:00
Edgar
652dec950c
use impl instead of intoiterator
2021-06-16 19:14:46 +02:00
Edgar
9feca80b08
Make HighlightConfiguration::configure use into iterator instead of a Vec<String>
2021-06-16 19:14:45 +02:00
Douglas Creager
d2d01e77e3
cli: Use anyhow and thiserror for errors
...
This patch updates the CLI to use anyhow and thiserror for error
management. The main feature that our custom `Error` type was providing
was a _list_ of messages, which would allow us to annotate "lower-level"
errors with more contextual information. This is exactly what's
provided by anyhow's `Context` trait.
(This is setup work for a future PR that will pull the `config` and
`loader` modules out into separate crates; by using `anyhow` we wouldn't
have to deal with a circular dependency between with the new crates.)
2021-06-09 16:17:23 -04:00
Max Brunsfeld
8c3d1466ec
Allow QueryCursor's text callback to return an iterator
2021-05-23 21:05:26 -07:00
Andrew Hlynskyi
de23c9219a
binding_rust: Unbind nodes lifitime from a source for QueryCursor.captures
2021-04-22 21:00:58 +03:00
Max Brunsfeld
0a46033391
Remove duplication of LossyUtf8 helper
2020-10-14 11:35:50 -07:00
Max Brunsfeld
f91b19c089
tags, highlight: Avoid completely deallocating buffers when shrinking
2020-08-05 09:57:45 -07:00
Max Brunsfeld
32f69dbe15
tags, highlight: Limit the size of buffers that are retained in memory
2020-08-05 09:06:00 -07:00
Max Brunsfeld
4d09c81577
highlight: Avoid accidentally treating locals patterns as highlight patterns
2020-07-10 13:33:04 -07:00
Max Brunsfeld
e8e80b1cf1
docs: Use new predicate syntax in highlighting query examples
2020-05-19 16:26:04 -07:00
Max Brunsfeld
e23f518915
highlight: add built-in support for carriage-return highlight
2020-01-28 14:47:21 -08:00
Max Brunsfeld
3f109a3cb5
highlight: Fix logic for handling empty injections with no highlights
2020-01-27 12:32:37 -08:00
Max Brunsfeld
9f63139a10
Fix error when set_included_ranges is called with an invalid range list
2020-01-17 10:31:28 -08:00
Max Brunsfeld
9dfd03e79a
highlight: Sipmlify injection API w/ new injection.combined property
2020-01-16 12:43:31 -08:00
Max Brunsfeld
6dbfbaed07
Start work on a system for testing syntax highlighting
2019-12-05 09:45:54 -08:00
Max Brunsfeld
1909ae2cee
binding_rust: Improve node children APIs
...
Closes #480
2019-11-08 14:20:10 -08:00
Max Brunsfeld
9e765ceba6
highlight: Skip injection codepath if there are no ranges found
2019-10-29 13:49:07 -07:00
Max Brunsfeld
1bc6204870
Handle local.definition-value captures in queries
...
This lets you indicate, when matching a variable definition, that
another later syntax node represents the value of the variable definition,
and so any references to the same variable name within that value node
must be referring to some earlier definition.
2019-10-18 15:56:47 -07:00
Max Brunsfeld
b73b31356d
Respect local.scope-inherits property in local variable queries
2019-10-18 14:12:20 -07:00