Keith Simmons
36fa835664
Enable copy and paste in vim mode
2022-05-26 17:02:05 -07:00
Antonio Scandurra
71dfc5d915
Clear redo stack when pushing remote transaction or ending a local one
2022-05-22 10:33:26 +02:00
Keith Simmons
cdbad9aee4
Initial visual mode
2022-05-10 11:12:28 -07:00
Keith Simmons
94b6f4beb5
Merge pull request #929 from zed-industries/non-uniform-batched-edits
...
Allow batched edits where each range is associated with different insertion text
2022-04-29 16:14:38 -07:00
Keith Simmons
47d4f42467
Consolidate edit and edit_batched functions
2022-04-28 16:52:04 -07:00
Max Brunsfeld and Keith Simmons
76e4c4d0f1
Remove Option from Buffer edit APIs
...
Previously, buffer edits represented empty strings as None
variants of an Option. Now, the edit logic just explicitly
checks for empty strings.
Co-authored-by: Keith Simmons <keith@zed.dev >
2022-04-27 18:00:13 -07:00
Keith Simmons
5051769dd3
Building, but failing test WIP
2022-04-27 17:25:38 -07:00
Antonio Scandurra and Nathan Sobo
e22b136a50
Clip scroll_top_row before navigating back to it
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2022-04-27 16:25:26 +02:00
Antonio Scandurra
a51b05d3ff
Fix divergence bug when peer reconnects reusing a prior replica id
...
We forgot to observe the footprint of the reconnecting replica's prior
undos into the local clock. This could cause the replica to generate
edits with a version strictly smaller than what other peers may have
observed. As such, those peers would think they had already seen those
edits and skip them.
2022-04-11 13:17:47 +02:00
Nathan Sobo and Antonio Scandurra
66bcacd9cb
Introduce structured logging
...
We're enabling the log crate feature everywhere, but only using it on the server for now.
Co-Authored-By: Antonio Scandurra <me@as-cii.com >
2022-04-08 10:06:51 -06:00
Max Brunsfeld
c190735d28
Merge pull request #702 from zed-industries/typescript
...
Add support for JS/Typescript/TSX, allow language servers to support multiple languages
2022-04-01 15:24:58 -07:00
Max Brunsfeld
cd4adebc0e
Fix common_prefix_at panic when needle contains multibyte chars
...
Also, make the prefix matching case-insensitive, since this is the
typical behavior with autocomplete.
2022-04-01 14:52:38 -07:00
Keith Simmons
bad4e01909
Add test for common_prefix_at and rewrite it to be more readable and
...
pass the new test cases
2022-03-31 01:09:58 -07:00
Max Brunsfeld and Keith Simmons
8450d218cd
Start work on interpreting 'label/insertText' completions
...
These completions don't supply a range that should be overwritten, so
the client needs to infer it via substring matching.
Co-authored-by: Keith Simmons <keith@zed.dev >
2022-03-30 17:47:25 -07:00
Antonio Scandurra
f75734351c
Introduce MultiBuffer::symbols_containing
2022-03-29 15:08:37 +02:00
Nathan Sobo
b0e20a4715
Merge pull request #682 from zed-industries/vim-hjkl
...
Vim hjkl
2022-03-26 07:11:46 -06:00
Keith Simmons and Nathan Sobo
4a4982d518
Add initial vim mode mode switching
...
Co-authored-by: Nathan Sobo <nathan@zed.dev >
2022-03-25 20:10:37 -07:00
Antonio Scandurra and Nathan Sobo
8aa34653a9
Rename Patch::transform_old to Patch::old_to_new
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2022-03-25 14:57:40 +01:00
Antonio Scandurra
5c3e450318
Introduce Patch::transform_old
2022-03-25 14:28:38 +01:00
Keith Simmons and Nathan Sobo
1eacdcf00a
Remove result from anchor cmp functions
...
Co-authored-by: Nathan Sobo <nathan@zed.dev >
2022-03-24 11:48:31 -07:00
e0d394eaf6
Change language::anchor::min() to a constant
...
Co-authored-by: Antonio Scandurra <me@as-cii.com >
Co-authored-by: Nathan Sobo <nathan@zed.dev >
2022-03-24 10:41:33 -07:00
dcb6b335e7
Make rename highlights work across multibuffer excerpts
...
Co-authored-by: Antonio Scandurra <me@as-cii.com >
Co-authored-by: Nathan Sobo <nathan@zed.dev >
2022-03-24 10:22:47 -07:00
Antonio Scandurra
2f1b1abbb8
Merge pull request #661 from zed-industries/follow
...
Introduce basic following experience
2022-03-23 15:17:44 +01:00
Keith Simmons
8d4deb8693
Add editor selection utilities
...
Also improved test that was failing during above to use marker text approach as a drive by
2022-03-22 16:08:22 -07:00
Antonio Scandurra
d37930e006
Serialize initial follow state in leader and reflect it in follower
2022-03-18 10:22:13 +01:00
Antonio Scandurra and Nathan Sobo
3217629af3
Don't seek FilterCursor upon creation
...
This lets us use `next` or `prev` to decide whether to park the cursor
at the first or last filtered item.
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2022-03-15 15:13:23 +01:00
Antonio Scandurra
c2c68cbfe9
Start on implementing filtering support for Cursor::prev
2022-03-15 15:13:23 +01:00
Nathan Sobo and Antonio Scandurra
c598628f94
Don't reuse excerpt ids in MultiBuffer
...
This prevents anchors from swapping their ordering, which was causing issues in FoldMap.
Co-Authored-By: Antonio Scandurra <me@as-cii.com >
2022-03-11 08:50:50 -07:00
Nathan Sobo and Antonio Scandurra
0db6f31d02
Remove dead code
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com >
2022-03-11 08:24:42 -07:00
111d5305ea
Remove language servers from buffers
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
Co-Authored-By: Antonio Scandurra <antonio@zed.dev >
Co-Authored-By: Keith Simmons <keith@zed.dev >
2022-03-08 15:16:07 -08:00
Max Brunsfeld and Nathan Sobo
3420f41715
Move Network test helper from util crate into text crate
...
This way, `util` does not depend on `clock`.
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2022-03-04 13:54:07 -08:00
Antonio Scandurra
8692e322a3
Use LSP range formatting when document formatting is not available
2022-03-04 10:13:17 +01:00
Antonio Scandurra
3ad7272559
Merge pull request #525 from zed-industries/preserve-worktrees
...
Grow worktrees monotonically when sharing and move most messages to the background
2022-03-04 09:48:18 +01:00
Max Brunsfeld
3a1a9ecb45
Disable doctests for all libraries
...
We don't use them, and they add a lot of noise to the test output
when running all tests in the workspace.
2022-03-03 16:15:56 -08:00
b36faed34e
Correctly defer undo operations when messages arrive out of order
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
Co-Authored-By: Max Brunsfeld <max@zed.dev >
2022-03-03 18:07:59 +01:00
Antonio Scandurra
e18e172cda
Move several buffer-related messages to the background
2022-03-03 12:18:19 +01:00
Antonio Scandurra
f2d7451ca2
Use Project::search in ProjectFind and show search results
2022-02-25 10:32:45 +01:00
Antonio Scandurra
751ffccf60
Simplify undo_to_transaction and redo_to_transaction
...
We don't need to mutate the history anymore now that we render pending renames
with a block decoration.
2022-02-19 10:52:21 +01:00
Antonio Scandurra
7a72d7aed7
Undo temporary edits before performing rename or canceling it
...
Also, wire up remote renames.
2022-02-18 11:41:47 +01:00
Antonio Scandurra
fac5959ac2
Wait for version before returning completions
2022-02-17 11:41:19 +01:00
Max Brunsfeld and Nathan Sobo
258542b74a
Remove unnecessary waiting when handling save RPC requests
...
Add saving to the randomized integration test
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2022-02-16 17:47:21 -08:00
Max Brunsfeld and Nathan Sobo
f508b135e1
Include the desired version in a SaveBuffer RPC request
...
When handling this messages on the host, wait until the desired
version has been observed before performing the save.
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2022-02-14 17:51:26 -08:00
Antonio Scandurra
22800b4f88
Use selection instead of just the cursor when fetching code actions
2022-02-14 14:13:36 +01:00
Nathan Sobo and Antonio Scandurra
8632ae9bc1
Correctly redo all undone edits after undoing in multi-buffer
...
When undoing edits performed in the multi-buffer, we also undo subsequent edits that may have occurred outside of the multi-buffer. This commit makes us redo those edits as well.
Co-Authored-By: Antonio Scandurra <me@as-cii.com >
2022-02-10 09:26:20 -07:00
Nathan Sobo and Antonio Scandurra
e8ed237265
Undo subsequent edits when undoing in multi-buffer
...
When undoing in the multi-buffer, don't preserve edits that occurred outside the multi-buffer after the edit being undone.
Co-Authored-By: Antonio Scandurra <me@as-cii.com >
2022-02-10 09:04:53 -07:00
Max Brunsfeld and Nathan Sobo
a926ad4f5d
Add BufferSnapshot::edited_ranges_for_transaction
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2022-02-09 17:04:07 -08:00
Max Brunsfeld
1e18742c9d
Merge branch 'main' into assists
2022-02-08 12:41:57 -08:00
Antonio Scandurra and Nathan Sobo
9e40fdc3fc
Make transactions serializable to enable edits on behalf of other users
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2022-02-08 19:48:21 +01:00
Antonio Scandurra
cf043af1ff
Serialize buffer in terms of operations rather than state
...
This is required because, after joining, we want to be able to refer
to operations that have happened prior to joining, which are not
captured by the state. There is probably a way of reconstructing operations
from the state, but that seems unnecessary and we've already talked about
wanting to have the server store operations rather than state once we start
persisting worktrees.
2022-02-08 14:59:46 +01:00
Antonio Scandurra
943fb46052
Apply code actions remotely
2022-02-08 12:18:14 +01:00