Nathan Sobo
c5956a0363
Start at the end of the last transform when catching up to edits during wrapping
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-11-17 19:44:17 -07:00
Max Brunsfeld
8230dd9a3b
WIP - BlockSnapshot::longest_row
2021-11-17 16:00:52 -08:00
Max Brunsfeld
cb18131432
Represent scroll position correctly when scrolled mid-block
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-11-17 14:56:55 -08:00
Max Brunsfeld
707ffe8ff3
Implement BlockSnapshot::line_len, use it in DisplayMap
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-11-17 14:56:05 -08:00
Max Brunsfeld
00b5cc472e
Fix BlockSnapshot::chunks when starting in a block
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-11-17 14:54:47 -08:00
Max Brunsfeld
1c3bf90a8a
Reimplement BlockSnapshot::{clip_point,to_block_point,max_point}
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-11-17 12:54:14 -08:00
Antonio Scandurra
e60500dd7c
Re-enable soft-wrapping in randomized tests
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2021-11-17 19:46:43 +01:00
Antonio Scandurra
88d0c04444
Implement BlockSnapshot::buffer_rows
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2021-11-17 19:45:06 +01:00
Antonio Scandurra
198f6694b7
Use options to represent soft-wrapped buffer rows
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2021-11-17 19:30:40 +01:00
Antonio Scandurra
d9283efbe6
Make BlockMap
1d
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2021-11-17 19:26:57 +01:00
Nathan Sobo
18354c5e04
Hack in show next diagnostic command
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-11-16 16:51:38 -08:00
Nathan Sobo
52a4c15c14
Eliminate non-highlighted chunks APIs
...
Now we only have a single code path for chunks across all layers, but highlighting is optional and controlled by a flag.
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-11-16 16:51:38 -08:00
Nathan Sobo
7dd9b9539e
WIP
2021-11-16 13:19:04 -07:00
Nathan Sobo
092689ed56
WIP
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-11-16 13:10:06 -07:00
Nathan Sobo
880b3f087f
Insert empty isomorphic transforms on empty lines
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2021-11-16 12:14:00 -07:00
Antonio Scandurra
d25ec39a23
Rework BufferRows
iterator to pass the randomized tests
...
...without booleans.
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2021-11-16 18:18:47 +01:00
Antonio Scandurra
712616d167
Start on a randomized test for BlockMap::buffer_rows
2021-11-16 15:35:35 +01:00
Max Brunsfeld
1cc7615d06
Implement basic version of BlockMap::buffer_rows
...
Passed 1 simple test
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-11-15 17:41:13 -08:00
Max Brunsfeld
76ee44748e
Fix minor bug in BlockMap::clip_point
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-11-15 16:25:51 -08:00
Nathan Sobo
7d1ba6455b
Implement BlockMapWriter::remove
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-11-15 17:09:26 -07:00
Nathan Sobo
7b12c1c9e0
Enable soft wrap in randomized test of BlockMap
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-11-15 16:59:02 -07:00
Nathan Sobo
862b988d56
Position blocks above/below buffer lines, even when the anchored line is soft-wrapped
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-11-15 16:45:51 -07:00
Max Brunsfeld
2cb8b0fcd3
wip
2021-11-15 15:04:53 -08:00
Max Brunsfeld
3bd4542bce
Remove bias parameter when converting display points to buffer points
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-11-15 14:36:03 -08:00
Max Brunsfeld
213b94afd4
Remove bias parameter from to_display_point
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-11-15 14:21:55 -08:00
Max Brunsfeld
8b1b35913a
Fix group_ids assertions in diagnostics test
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-11-15 14:18:58 -08:00
Max Brunsfeld
0a704b8d67
Fix infinite loop in BlockMap::highlighted_chunks
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-11-15 14:18:45 -08:00
Max Brunsfeld
b4bc7906d2
Propagate wrap edits to block map when folding / unfolding
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-11-15 14:18:24 -08:00
Max Brunsfeld
d2f4d37af8
Get BlockMap randomized test passing w/o soft wraps
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-11-15 13:36:40 -08:00
Max Brunsfeld
3498e92d1c
Get BlockMap unit test passing
2021-11-15 12:39:40 -08:00
Antonio Scandurra
763ab4d5f1
WIP
2021-11-15 19:52:48 +01:00
Antonio Scandurra
53872a6024
WIP
2021-11-15 19:38:06 +01:00
Antonio Scandurra
314c97715d
WIP
2021-11-15 18:01:30 +01:00
Antonio Scandurra
131979dff0
WIP
2021-11-15 17:54:28 +01:00
Antonio Scandurra
34f85b5690
WIP
2021-11-15 17:15:30 +01:00
Antonio Scandurra
cebab56c94
Make BlockMap
randomized test pass in low-complexity cases
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-11-15 16:47:30 +01:00
Antonio Scandurra
296944e34d
Make BlockMap
unit test pass with 2d coordinates
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-11-15 16:30:58 +01:00
Nathan Sobo
3154ccbafe
WIP
2021-11-14 16:24:40 -07:00
Nathan Sobo
e644c0876e
WIP: Start moving BlockMap to a 2d indexing scheme
2021-11-14 08:29:41 -07:00
Nathan Sobo
5832153712
Hack: Synthesize a newline before blocks below the last line of the buffer
2021-11-14 07:43:35 -07:00
Nathan Sobo
b6e6dafca7
Account for trailing below blocks in BlockSnapshot::max_point
2021-11-13 19:50:42 -07:00
Nathan Sobo
d6bc05cad0
Fix BlockMap unit test by skipping below blocks when advancing transforms
2021-11-13 18:19:21 -07:00
Nathan Sobo
c9cbeafc05
Start on BlockSnapshot::clip_point
...
Not sure it works yet. Ran into another failure in the unit tests.
2021-11-13 17:44:09 -07:00
Max Brunsfeld
364fab7b5f
wip - wiring up blockmap into displaymap
2021-11-12 17:29:09 -08:00
Max Brunsfeld
c278503166
Make block insertion work in simple cases
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-11-12 16:40:01 -08:00
Max Brunsfeld
2e61a586b6
Fix compile errors
2021-11-12 13:55:47 -08:00
Nathan Sobo
e605a5ead2
Sketch an initial implementation for block_map::HighlightedChunks
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-11-12 14:51:25 -07:00
Max Brunsfeld
6f97a9be3b
wip
2021-11-12 12:09:35 -08:00
Max Brunsfeld
227c612dac
BlockMap WIP
2021-11-12 11:49:48 -08:00
Antonio Scandurra
c8e47a8c63
Start on a randomized test for BlockMap
...
This is currently passing and ensures we maintain the input coordinate
space correctly.
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2021-11-12 19:01:39 +01:00
Antonio Scandurra
d721c2ba4b
Remove redundant code path in Patch::compose
2021-11-12 17:24:25 +01:00
Antonio Scandurra
3f11b8af56
Maintain row edits since last sync in WrapMap
2021-11-12 17:05:49 +01:00
Antonio Scandurra
4e32fabfdc
Add text manipulation facilities to Rope
for test purposes
2021-11-12 17:02:51 +01:00
Antonio Scandurra
fe786f3366
Init env_logger
in the editor
crate for tests only
2021-11-12 17:01:57 +01:00
Antonio Scandurra
b9c459e800
Use log::info
instead of println
in patch randomized tests
2021-11-12 17:00:44 +01:00
Antonio Scandurra
b2aab0c773
🎨
2021-11-12 16:31:01 +01:00
Antonio Scandurra
f49c9db423
Make Patch::compose
work
2021-11-12 15:07:28 +01:00
Antonio Scandurra
6e882bcd02
Avoid composing edits together for now
2021-11-12 09:01:15 +01:00
Nathan Sobo
068aa1adb3
WIP
2021-11-12 00:20:39 -07:00
Nathan Sobo
47ad9baebc
wip
2021-11-12 00:03:47 -07:00
Nathan Sobo
84d789b8ac
WIP
2021-11-11 23:28:45 -07:00
Max Brunsfeld
0159019850
Simplify assertions in randomized patch test, fix some patch bugs
2021-11-11 18:28:07 -08:00
Max Brunsfeld
1f2eb9ddbc
Add patch unit tests, get composition working for ops <= 3
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-11-11 17:36:30 -08:00
Antonio Scandurra
d75f415b25
WIP
2021-11-11 19:49:01 +01:00
Antonio Scandurra
4fecab6d4b
WIP
2021-11-11 19:42:55 +01:00
Antonio Scandurra
e0897cd019
WIP
2021-11-11 18:13:35 +01:00
Antonio Scandurra
a939535d95
WIP
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-11-11 16:52:14 +01:00
Antonio Scandurra
59bbe43a46
WIP
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-11-11 16:00:52 +01:00
Antonio Scandurra
b2caf9e905
WIP: Start on BlockMap
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-11-11 15:04:39 +01:00
Antonio Scandurra
7dcf30c954
WIP
2021-11-11 15:04:31 +01:00
Nathan Sobo
118f137f18
WIP: Rework injection map to be focused solely on block injections
2021-11-10 20:49:06 -07:00
Nathan Sobo
0fff7d9166
WIP: Probably the wrong direction
2021-11-10 17:44:56 -07:00
Nathan Sobo
62ec105bff
WIP
2021-11-10 14:00:51 -07:00
Max Brunsfeld
8b9488bacb
Add missing group_id fields in rpc test
2021-11-04 17:34:33 -07:00
Antonio Scandurra
2f4d8932dc
Allow querying a diagnostic group by its id
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-11-04 15:16:59 +01:00
Antonio Scandurra
78bbb83448
Assign diagnostics a group_id
based on their related_information
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-11-04 14:52:34 +01:00
Max Brunsfeld
61b9179fb1
Merge pull request #222 from zed-industries/fix-hover-beachball
...
Give the MouseEventHandlers for each tab bar their own id
2021-11-03 19:38:04 -07:00
Max Brunsfeld
a72bdac7df
Fix paths to server crate in scripts and gitignore
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-11-03 19:22:00 -07:00
Nathan Sobo
0ff87e603f
Give the MouseEventHandlers for each tab bar their own id
...
This fixes a beachball where we oscillate back and forth between hovered and unhovered due to confusing two different tab bars as the same tab bar.
2021-11-03 19:15:55 -06:00
Nathan Sobo
2d6285a6e1
Start on a test for grouped diagnostics
2021-11-03 18:47:18 -06:00
Nathan Sobo
44e0a00734
Only show the first line of diagnostic messages in the status bar
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-11-03 16:52:32 -06:00
Max Brunsfeld
1ec31738e6
Improve styling of diagnostic status bar item
2021-11-03 14:15:22 -07:00
Max Brunsfeld
baf636a4a4
Extend empty diagnostic ranges at the ends of lines
2021-11-03 13:49:39 -07:00
Max Brunsfeld
9384823e47
Remove logging in worktree tests
2021-11-03 12:36:57 -07:00
Max Brunsfeld
8b5089c759
In the status bar, show the diagnostic under the cursor
2021-11-03 12:33:16 -07:00
Antonio Scandurra
941d935c4a
End pending selection when starting a transaction
...
Co-Authored-By: Max Brunsfeld <max@zed.dev>
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-11-03 19:15:54 +01:00
Antonio Scandurra
c07d794249
Avoid ending the pending selection until updating selections
...
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2021-11-03 19:07:06 +01:00
Antonio Scandurra
9dc3c74260
Make resolving selections generic
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2021-11-03 17:51:57 +01:00
Antonio Scandurra
a26b066788
Introduce a status bar and add the cursor position to it
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2021-11-03 17:27:51 +01:00
Antonio Scandurra
258b89bb70
Request autoscroll when undoing/redoing
2021-11-03 09:44:23 +01:00
Antonio Scandurra
20a77f4c5e
Fix test for disk-based diagnostics
2021-11-03 09:39:15 +01:00
Max Brunsfeld
9a7ecfbc4f
Use status colors for diagnostic underlines
2021-11-02 17:51:18 -07:00
Max Brunsfeld
8d3f42de52
Start language servers based on buffers' languages
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-11-02 17:41:01 -07:00
Max Brunsfeld
a66b81d60a
Add an integration test for replicating buffer's diagnostics
2021-11-02 14:57:24 -07:00
Max Brunsfeld
89392cd23d
Avoid using worktree handle in File's path methods
...
This avoids a circular model update that was happening
when trying to retrieve the absolute path from a buffer's
file while applying remote operations.
2021-11-02 14:33:55 -07:00
Max Brunsfeld
1995bd89a6
Deserialize buffer's diagnostics
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-11-02 12:29:03 -07:00
Nathan Sobo
2c57703ad6
Explicitly shut down language servers when quitting the app
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2021-11-02 13:16:25 -06:00
Antonio Scandurra
882c8ce696
Avoid error during deserialization if the result
field isn't there
2021-11-02 14:58:00 +01:00
Antonio Scandurra
f5aa07aac9
Remove all windows before quitting
...
This gives all entities a chance of running `Drop::drop` which,
in turn, could cause them to spawn a critical task. For example,
we use this capability when a language server is dropped and we
need to asynchronously send a shutdown message.
2021-11-02 14:55:31 +01:00
Max Brunsfeld
61e06487b7
Avoid circular model update when sending diagnostics operations
2021-11-01 17:14:22 -07:00