Commit Graph

773 Commits (f6021dd0cdd8cf6795f024e396241cb0af2ca368)

Author SHA1 Message Date
Michael Davis 2ebcc4dbeb
Pin tree-sitter to the 0.20.10 release (#8396) 2023-10-26 01:08:46 +09:00
dependabot[bot] 68c7537de5
build(deps): bump ahash from 0.8.3 to 0.8.5 (#8597)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-24 17:59:38 +09:00
dependabot[bot] 6acbb07ca9
build(deps): bump hashbrown from 0.14.1 to 0.14.2 (#8594)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-24 14:14:00 +09:00
dependabot[bot] fef4d5321b
build(deps): bump ropey from 1.6.0 to 1.6.1 (#8593)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-24 14:13:46 +09:00
Stephen Seo 31f50bf5bf
don't break on hyphen with :reflow (#8569) 2023-10-21 07:58:36 -05:00
dependabot[bot] e0d5b79a73
build(deps): bump hashbrown from 0.14.0 to 0.14.1 (#8500)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-10 18:46:51 +09:00
dependabot[bot] 312c175aec
build(deps): bump indoc from 2.0.3 to 2.0.4 (#8329)
Bumps [indoc](https://github.com/dtolnay/indoc) from 2.0.3 to 2.0.4.
- [Release notes](https://github.com/dtolnay/indoc/releases)
- [Commits](https://github.com/dtolnay/indoc/compare/2.0.3...2.0.4)

---
updated-dependencies:
- dependency-name: indoc
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-19 11:29:46 +09:00
Alexis Mousset 83ac53a109
Fix various typos (#8233) 2023-09-10 15:31:12 -05:00
Pascal Kuthe e6cdc5f9d3
Don't use word splitting during fuzzy matching (#8192) 2023-09-06 23:03:48 +09:00
Pascal Kuthe 0cb595e226
transition to nucleo for fuzzy matching (#7814)
* transition to nucleo for fuzzy matching

* drop flakey test case

since the picker streams in results now any test that relies
on the picker containing results is potentially flakely

* use crates.io version of nucleo

* Fix typo in commands.rs

Co-authored-by: Skyler Hawthorne <skyler@dead10ck.com>

---------

Co-authored-by: Skyler Hawthorne <skyler@dead10ck.com>
2023-08-30 13:26:21 +09:00
nkitsaini 22f4f313f1
Remove unnecessary `Err` from `get_canonicalized_path` (#8009)
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
2023-08-20 21:11:32 +02:00
Michael Davis 01a1e5ec2a
Update tree-sitter to latest master (#7998) 2023-08-20 00:21:18 +09:00
dependabot[bot] e9a807a48f
build(deps): bump bitflags from 2.3.3 to 2.4.0 (#7943)
Bumps [bitflags](https://github.com/bitflags/bitflags) from 2.3.3 to 2.4.0.
- [Release notes](https://github.com/bitflags/bitflags/releases)
- [Changelog](https://github.com/bitflags/bitflags/blob/main/CHANGELOG.md)
- [Commits](https://github.com/bitflags/bitflags/compare/2.3.3...2.4.0)

---
updated-dependencies:
- dependency-name: bitflags
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-15 09:33:22 +09:00
Dillard Robertson 01776e6851
Prevent GraphemeStrs created from Strings from leaking (#7920) 2023-08-12 20:13:06 -05:00
Daniel Ebert b315901cbb Run indentation tests on a part of the Helix source code.
Add C++ indent test file.
2023-08-11 23:44:02 +09:00
Daniel Ebert eab0d4fa4b Implement @align (and @anchor) indent query. 2023-08-11 23:44:02 +09:00
Skyler Hawthorne 7078e84007 Fix YAML auto indent
YAML indents queries are tweaked to fix auto indent behavior.

A new capture type `indent.always` is introduced to address use cases
where combining indent captures on a single line is desired.

Fixes #6661
2023-08-11 06:22:22 +09:00
Skyler Hawthorne 93acb53812 add node boundary movement 2023-08-01 09:41:42 -05:00
Michael Davis baceb02a09 Use refactored Registers type
This is an unfortunately noisy change: we need to update virtually all
callsites that access the registers. For reads this means passing in the
Editor and for writes this means handling potential failure when we
can't write to a clipboard register.
2023-07-31 15:05:38 +09:00
Michael Davis da2afe7353 Add '#' and '.' special registers
These come from Kakoune:

* '#' is the selection index register. It's read-only and produces the
  selection index numbers, 1-indexed.
* '.' is the selection contents register. It is also read-only and
  mirrors the contents of the current selections when read.

We switch the iterators returned from Selection's `fragments` and
`slices` methods to ExactSizeIterators because:

* The selection contents register can simply return the fragments
  iterator.
* ExactSizeIterator is already implemented for iterators over Vecs, so
  it's essentially free.
* The `len` method can be useful on its own.
2023-07-31 15:05:38 +09:00
Philipp Mildenberger 8a28f30593
Reformat with nightly rustfmt for better let-else formatting (#7721) 2023-07-27 11:57:19 +09:00
Pascal Kuthe 262a595e53
pin TS to unreleased git revision to fix freezes (#7737) 2023-07-27 11:50:40 +09:00
Michael Davis 98ef05d768 Prefer RopeSlice to &Rope in helix_core::syntax
Pascal and I discussed this and we think it's generally better to
take a 'RopeSlice' rather than a '&Rope'. The code block rendering
function in the markdown component module is a good example for how
this can be useful: we can remove an allocation of a rope and instead
directly turn a '&str' into a 'RopeSlice' which is very cheap.

A change to prefer 'RopeSlice' to '&Rope' whenever the rope isn't
modified would be nice, but it would be a very large diff (around 500+
500-). Starting off with just the syntax functions seems like a nice
middle-ground, and we can remove a Rope allocation because of it.

Co-authored-by: Pascal Kuthe <pascal.kuthe@semimod.de>
2023-07-27 11:50:19 +09:00
dependabot[bot] b87858b7b4
build(deps): bump indoc from 2.0.2 to 2.0.3 (#7663)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-18 10:49:11 +09:00
Pascal Kuthe 68a98ac36b use a single query for injections
In the past we used two separate queries for combined and normal injections. There was no real reason for this (except historical/slightly easier implementation). Instead, we now use a single query and simply check if an injection corresponds to a combined injection or not.
2023-07-17 14:08:50 +09:00
Pascal Kuthe 2d5ff9ec8f fix crash when encountering overlapping injections 2023-07-17 14:08:50 +09:00
Yomain 8afc0282f2
Fix crash when cwd is deleted (#7185) 2023-07-11 19:51:04 +02:00
Pascal Kuthe 1adb19464f
search buffer contents during global search (#5652) 2023-07-11 21:26:11 +09:00
dependabot[bot] ac57e93583
build(deps): bump smallvec from 1.10.0 to 1.11.0 (#7597)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-11 10:26:00 +09:00
dependabot[bot] 83e59197ac
build(deps): bump indoc from 2.0.1 to 2.0.2 (#7529)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-04 02:13:58 +02:00
Pascal Kuthe 4a2337d828
correctly map unsorted positions (#7471)
* correctly map unsorted positions

* Fix typo

Co-authored-by: Michael Davis <mcarsondavis@gmail.com>

---------

Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
2023-06-28 23:35:31 +09:00
Pascal Kuthe b33516fb16 move normalize fastpath into normalize function 2023-06-26 01:32:31 +09:00
Pascal Kuthe d491e234f4 map positions through changes in O(N) 2023-06-26 01:32:31 +09:00
Scott Driggers 93ac706844
Allow any indent size from 1 to 16 (#7429) 2023-06-23 23:36:02 +09:00
Pascal Kuthe a0359f7f22 make TS matching fallback to plaintext 2023-06-22 16:00:08 +09:00
Pascal Kuthe 5dba649d81 Avoid false positives in non-fuzzy bracket match 2023-06-22 16:00:08 +09:00
Pascal Kuthe 37058e0401 match pairs which don't form a standalone TS node 2023-06-22 16:00:08 +09:00
A-Walrus eb81cf3c01
Fix tree sitter chunking (#7417)
Call as bytes before slicing, that way you can take bytes that aren't
aligned to chars. Should technically also be slightly faster since you
don't have to check alignment...
2023-06-21 09:52:42 -05:00
Alex 3fb9fafb2a
Add config for default line ending (#5621) 2023-06-16 12:02:15 -05:00
A-Walrus a4a86120e8
Fix next/prev tree-sitter inconsistency (#7332)
* Fix next/prev tree-sitter inconsistency

Before there where different results going to next or previous due to
sorting not dealing with multiple captures that start/end at the same
pos. I chose to prefer longer matches.

* Revert unnecessary change
2023-06-13 16:04:11 +02:00
vwkd 352d1574a6
add move_prev_long_word_end and extend_prev_long_word_end (#6905) 2023-06-08 00:41:35 +02:00
Ilya Sovtsov 77e9a22aff
Add check for a non-zero value for tab width (#7178) 2023-06-07 17:51:29 +09:00
dependabot[bot] 6deb0e4ef7
build(deps): bump once_cell from 1.17.2 to 1.18.0 (#7248)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-06 11:14:36 +09:00
dependabot[bot] a8c99fb24c
build(deps): bump hashbrown from 0.13.2 to 0.14.0 (#7246)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-06 11:14:05 +09:00
Alex Vinyals a2b8cfdb8c
feat(core): add plaintext matching fallback to tree-sitter matching (#4288) 2023-06-05 23:13:00 +09:00
Ikko Eltociear Ashimine 349e2b5f0e
Fix typo in syntax.rs (#7114)
seperator -> separator
2023-05-26 10:45:15 +02:00
dependabot[bot] 6043c3c3db
build(deps): bump bitflags from 2.2.1 to 2.3.1 (#7117)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-23 14:19:50 +09:00
Szabin 70e4cdbd8e
Add command to merge non-consecutive ranges (#7053)
* Add command for merging non-consecutive ranges

* Add `merge_selections` command to book

* Simplify `merge_ranges`

Heeded the advice of @the-mikedavis to stop iterating over all ranges and simply merge the first and the last range, as the invariants of `Selection` guarantee that the list of ranges is always sorted and never empty.

* Clarify doc comment of `merge_ranges`
2023-05-20 01:31:39 +02:00
Philipp Mildenberger 2eeac10755 Refactor doc language servers to a HashMap, and the config to use a Vec to retain order 2023-05-18 21:48:32 +02:00
Philipp Mildenberger ec2f9091a0 Simplify Display implementation for LanguageServerFeature 2023-05-18 21:48:32 +02:00