Nathan Sobo
c3dda14490
WIP: Move sum_tree module into gpui so we can use it in List
2021-08-20 16:18:39 -06:00
Nathan Sobo and Antonio Scandurra
a6a8f4fd81
Introduce a struct for spanned_rows result
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com >
2021-07-30 09:50:28 -07:00
Nathan Sobo and Antonio Scandurra
029460bf7e
Respect buffer row boundaries in line-oriented edit operations
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com >
2021-07-30 09:50:28 -07:00
Max Brunsfeld
05f8a61bc8
Add a bias parameter when converting buffer points to fold points
2021-07-30 09:50:28 -07:00
c1a9a20ac9
Setup randomized test harness in gpui::test
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
Co-Authored-By: Max Brunsfeld <max@zed.dev >
2021-07-30 09:50:28 -07:00
Max Brunsfeld
8e9a5e072d
Fix typo in Point::add_assign
2021-07-19 13:28:35 -07:00
Nathan Sobo
e193a660aa
WIP
2021-07-19 13:59:07 -06:00
Max Brunsfeld
f561f33aa9
Move DisplayMap's reading methods to DisplayMapSnapshot
2021-07-15 11:48:57 -07:00
Nathan Sobo and Max Brunsfeld
2bde54971e
Move all FoldMap query methods to FoldMapSnapshot
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2021-07-15 11:36:24 -06:00
Antonio Scandurra
e80439daaa
Merge branch 'main' into rpc
2021-06-29 10:25:42 +02:00
Max Brunsfeld
60ee97be24
Always represent anchor as a versioned offset
...
Remove the `Start` and `End` variants, and always
use the structure that was previously called `Middle`.
This makes Anchors simpler to serialize and deserialize.
2021-06-25 17:02:48 -07:00
Antonio Scandurra
742241a903
Rename Cursor::{start,end} to Cursor::{sum_start,sum_end}
2021-06-10 14:06:27 +02:00
Antonio Scandurra
dc2805bb14
Add Cursor::seek_end and audit the codebase to use seek_start more
2021-06-10 14:05:56 +02:00
Antonio Scandurra
e071d40058
Use a single Bias enum everywhere
2021-06-04 13:39:57 +02:00
Max Brunsfeld
68994248ee
Add custom error message for rope cursor slice precondition
2021-06-02 17:47:25 -07:00
Antonio Scandurra
84fe7f50ac
Speed up anchor comparison when the version is the same
2021-06-02 12:24:00 +02:00
Max Brunsfeld
dda9c6898b
Remove count field from FragmentSummary
...
Sort anchors according to their 'full offset' (deleted + visible)
2021-06-01 12:28:04 -07:00
e3c07942d5
Compare anchors via their fragment and their offset within it
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
Co-Authored-By: Antonio Scandurra <me@as-cii.com >
2021-06-01 11:52:42 -07:00
Antonio Scandurra
df13cf0a90
WIP: Compare anchors without using FragmentId
2021-06-01 17:54:58 +02:00
Antonio Scandurra
da7e3c8cd8
Implement anchors using an offset + a version vector
2021-06-01 15:28:20 +02:00
Antonio Scandurra
311e1b0f5e
Supply a context when adding summary to Dimension
2021-06-01 12:50:10 +02:00
Antonio Scandurra
e8a9eee84f
WIP
2021-05-31 16:57:15 +02:00
Max Brunsfeld
a4aba3f2c3
Rename context parameters to cx in selection.rs
2021-05-28 15:06:58 -07:00
Max Brunsfeld and Nathan Sobo
139bcb8304
Rename foo/mod.rs files too foo.rs
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-05-28 14:41:58 -07:00
Max Brunsfeld and Nathan Sobo
7339b9bce7
Bump Tree-sitter
...
Pass ranges to `set_byte_range`, `set_point_range`
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-05-28 14:25:30 -07:00
Max Brunsfeld and Nathan Sobo
8b7a314474
Implement bracket matching using queries
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-05-28 13:09:57 -07:00
Nathan Sobo
e9bd872b06
Implement buffer::move_to_enclosing_bracket
2021-05-28 12:07:30 -06:00
bf8eee26f8
Add Buffer::enclosing_bracket_ranges
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
Co-Authored-By: Max Brunsfeld <max@zed.dev >
2021-05-28 19:35:04 +02:00
Antonio Scandurra
36c1d21025
Add unit test for BufferView::select_{larger,smaller}_syntax_node
2021-05-28 14:59:29 +02:00
Antonio Scandurra
23d1d91414
Implement select_larger_syntax_node for buffer
2021-05-28 13:25:09 +02:00
Antonio Scandurra
6992c19aee
Acquire and release QueryCursors via a QueryCursorHandle
2021-05-28 11:48:49 +02:00
Antonio Scandurra
07aeb32ef4
Punt on auto-indentation for now
2021-05-28 10:17:10 +02:00
Max Brunsfeld
79878f20cc
WIP - new approach to autoindent
...
- Indent one row at a time.
- Consider only the innermost match.
2021-05-27 15:05:19 -07:00
Max Brunsfeld and Antonio Scandurra
fc8758c619
Reset QueryCursors before putting them back in the pool
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com >
2021-05-27 09:37:17 -07:00
Antonio Scandurra
c423033042
Fix panic in autoindent_for_rows caused by overshooting row range
2021-05-27 18:23:32 +02:00
Max Brunsfeld and Nathan Sobo
7bea3fd2fe
Start on a query-based autoindent system
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-05-26 17:23:53 -07:00
Max Brunsfeld
3c0673852b
💄 Add Buffer::row_count
2021-05-26 12:01:09 -07:00
Antonio Scandurra and Nathan Sobo
7c084846af
Batch indent_for_rows
...
There's still a `todo!` in the test to write more assertions and verify
this more complex, batched logic.
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-05-26 17:37:50 +02:00
Antonio Scandurra
acf84f939d
Add Buffer::autoindent_for_row
2021-05-26 16:00:01 +02:00
Max Brunsfeld and Nathan Sobo
5d2ac3f4e4
Use new Tree-sitter captures API
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-05-25 16:02:43 -07:00
Antonio Scandurra
43ddb6f640
WIP: Push failing test for DisplayMap::highlighted_chunks_at
2021-05-25 17:20:46 +02:00
Antonio Scandurra
bafac35d6a
Reparse if syntax tree is up-to-date but in an interpolated state
2021-05-25 12:10:36 +02:00
Antonio Scandurra
aeb68867da
Move highlighted_text_in_range from Buffer to buffer::Snapshot
2021-05-25 11:51:29 +02:00
Max Brunsfeld
8340958b33
Convert query capture indices to style ids
...
* Introduce a Theme struct as a new part of the app's settings
* Store on each Language a ThemeMap, which converts the capture ids
from that language's highlight query into StyleIds, which identify
styles in the current Theme.
* Update `highlighted_chunks` methods to provide StyleIds instead of
capture ids.
2021-05-24 16:44:14 -07:00
Antonio Scandurra
d1788c69ab
Support highlighted_text_for_range for buffers without a language
2021-05-24 16:47:13 +02:00
Antonio Scandurra
4ddf10967e
Introduce fold_map::HighlightedChunks
2021-05-24 15:39:22 +02:00
Antonio Scandurra
491932b691
Rename HighlightedChunksIter to HighlightedChunks
2021-05-24 15:07:02 +02:00
Antonio Scandurra
4ada5e0666
Rename rope::ChunksIter to rope::Chunks
...
This is consistent with how we name the other chunk iterators.
2021-05-24 15:05:11 +02:00
Antonio Scandurra
6e791edb18
Don't acquire the buffer mutably in highlighted_text_for_range
2021-05-24 12:43:29 +02:00
Antonio Scandurra
23b25307d9
Start on a basic implementation of HighlightedChunksIter
2021-05-24 11:23:42 +02:00