Antonio Scandurra
197a17995c
Re-enable creating multiple blocks at once in BlockMap tests
2021-12-16 12:41:48 +01:00
Antonio Scandurra
d536a02654
Fix movement tests in DisplayMap
2021-12-16 12:36:27 +01:00
Antonio Scandurra
116d076398
Ensure BlockMap::clip_point always yield a valid buffer location
2021-12-16 12:29:37 +01:00
Antonio Scandurra
5f2ebe12eb
Allow specifying MAX_EXCERPTS via an env variable in random tests
2021-12-16 12:28:54 +01:00
Max Brunsfeld and Nathan Sobo
e1882b7836
Fix prev_row_boundary when a wrap follows a fold
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-12-15 18:30:09 -08:00
Max Brunsfeld and Nathan Sobo
8fb3ffc3eb
Always clip buffer points when clipping display points
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-12-15 17:58:24 -08:00
Max Brunsfeld
74d85039e9
Guard against inverted ranges when building edits in unfold
...
The multibuffer lets you refer to offsets inside of headers,
so it's possible to create a fold that appears non-empty,
but which spans zero characters in the underlying buffers.
Fold ranges are biased inward: the start is biased right, and
the end is biased left.
Because of these two things, it's possible to create a fold
that becomes "inverted" when you insert text at that position.
2021-12-15 17:29:15 -08:00
Max Brunsfeld
072467bcf0
Allow multibuffer to clip to the ends of excerpts, before trailing newlines
2021-12-15 17:04:57 -08:00
Max Brunsfeld
b30e6097ba
Update all MultiBuffer unit tests, removing expected trailing newline
2021-12-15 17:04:57 -08:00
Max Brunsfeld
f6a61d9f10
🎨 point_to_display_point & display_point_to_point
2021-12-15 15:45:02 -08:00
Max Brunsfeld
7eda545563
Clip buffer points in DisplayMap::{prev,next}_row_boundary
2021-12-15 15:41:38 -08:00
Max Brunsfeld
9590cab2c8
Fix handling of excerpts surrounded by edits in MultiBuffer::edit
2021-12-15 12:12:39 -08:00
2fdf3937b3
Ensure muiltibuffer anchors are contained within their excerpt ranges
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
Co-Authored-By: Antonio Scandurra <me@as-cii.com >
2021-12-15 10:52:27 -08:00
822b9fbf64
Create multiple excerpts in random BlockMap test
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com >
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-12-15 10:21:11 -08:00
309a3e57b2
Create MultiBuffers with more than one fragment in more randomized tests
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
Co-Authored-By: Max Brunsfeld <max@zed.dev >
2021-12-15 18:38:37 +01:00
4fa620e9db
Remove disk diagnostics that were invalidated by a buffer edit
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
Co-Authored-By: Max Brunsfeld <max@zed.dev >
2021-12-15 18:29:01 +01:00
Antonio Scandurra and Nathan Sobo
bf0166bc90
Re-enable multi-byte random character generation
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-12-15 17:51:11 +01:00
Antonio Scandurra and Nathan Sobo
d2e930695a
Overhaul MultiBuffer::chunks
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-12-15 17:22:04 +01:00
Antonio Scandurra and Nathan Sobo
c20eecb3ea
Allow edits at the end of MultiBuffer
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-12-15 16:45:01 +01:00
Antonio Scandurra and Nathan Sobo
92fa15ebd1
Don't insert a newline after the last excerpt of a MultiBuffer
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-12-15 16:39:09 +01:00
Antonio Scandurra and Nathan Sobo
f12e983c3e
Start testing the integration of display layers with MultiBuffers
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-12-15 16:05:26 +01:00
Antonio Scandurra and Nathan Sobo
c4f874c128
Forward notifications from Buffer in MultiBuffer
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-12-15 15:07:42 +01:00
Nathan Sobo and Antonio Scandurra
7991cbf31b
Remove assertion and don't consume 0 bytes
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com >
2021-12-15 06:52:37 -07:00
Nathan Sobo and Antonio Scandurra
c3c8a6e8e4
Implement MultiBuffer::bytes_in_range
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com >
2021-12-15 06:49:10 -07:00
Antonio Scandurra
3e1dbef5d1
WIP
2021-12-15 13:20:11 +01:00
Antonio Scandurra
5b3482b177
Implement MultiBuffer::reversed_chars_at
2021-12-15 10:06:45 +01:00
Antonio Scandurra
afa969b05c
Fix panic on creation of a left-biased anchor at the end of MultiBuffer
2021-12-15 10:06:43 +01:00
Antonio Scandurra
576ed7a317
Fix compile error in server integration tests
2021-12-15 08:48:50 +01:00
Nathan Sobo and Max Brunsfeld
33ac740f31
Group diagnostics by primary
...
Render primary message above the excerpt and supporting messages as block decorations with a `Below` disposition. This is still super rough.
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2021-12-14 18:26:42 -07:00
Nathan Sobo and Max Brunsfeld
89d1d22afb
Render basic diagnostic messages in project diagnostics view
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2021-12-14 17:00:57 -07:00
Nathan Sobo and Max Brunsfeld
855592babc
Implement MultiBufferSnapshot::excerpt_headers_in_range
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2021-12-14 16:24:48 -07:00
Max Brunsfeld
7db6db3e0e
Fix multibuffer anchors before the ends of excerpts
2021-12-14 13:37:05 -08:00
Max Brunsfeld and Nathan Sobo
61ef279923
Fix assertions in test for selection restoration after undo/redo
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-12-14 13:04:51 -08:00
Max Brunsfeld and Nathan Sobo
e28b2baeef
Update selections on text insertion using anchors
...
The delta-based approach doesn't work for multi-excerpt buffers.
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-12-14 12:15:26 -08:00
76d764a7a2
Fix assertion in multibuffer history test
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com >
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-12-14 11:47:22 -08:00
Max Brunsfeld and Antonio Scandurra
daa6f8fa65
Allow left-biased anchors at the beginnings of excerpts
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com >
2021-12-14 09:58:28 -08:00
Antonio Scandurra
e1efa68624
Implement MultiBufferSnapshot::contains_str_at
2021-12-14 17:51:14 +01:00
Antonio Scandurra
04eade7d19
Maintain a different undo/redo stack in MultiBuffer
...
This only applies to singleton mode.
2021-12-14 17:43:41 +01:00
Antonio Scandurra and Nathan Sobo
defb1ecf0f
Return the transaction id after grouping in end_transaction_at
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-12-14 17:41:42 +01:00
Antonio Scandurra
09ec8898e5
Remove test-only transaction_group_interval method from MultiBuffer
2021-12-14 14:19:04 +01:00
Antonio Scandurra
eff4c75a5a
Clip anchors created on MultiBuffer's trailing newlines or headers
2021-12-14 12:29:05 +01:00
Antonio Scandurra
d8017fc9a5
Implement MultiBuffer::set_active_selections
2021-12-14 12:13:19 +01:00
Antonio Scandurra
e95eab89f4
Remove stray log statement
2021-12-14 12:01:19 +01:00
Antonio Scandurra
f519000b57
Implement MultiBufferSnapshot::remote_selections_in_range
2021-12-14 11:34:26 +01:00
Antonio Scandurra
c065fdc08e
Assume all excerpts in the multi buffer have the same language for now
2021-12-14 11:33:53 +01:00
Antonio Scandurra
f493b6d308
Keep a separate diagnostic update count and parse count in MultiBuffer
2021-12-14 11:32:49 +01:00
Antonio Scandurra
96291408bd
Display a rudimentary project diagnostic view on alt-shift-d
2021-12-14 11:32:05 +01:00
Max Brunsfeld
4dc84c6dca
WIP
2021-12-13 17:44:20 -08:00
Max Brunsfeld
7252edb22a
Add Project::open_buffer method
2021-12-13 17:44:15 -08:00
Max Brunsfeld
1bbc223cc3
Store diagnostic summaries on worktrees
2021-12-13 16:36:53 -08:00