Keith Simmons
92c7b5d6ef
Remove result from anchor cmp functions
...
Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-03-24 11:48:31 -07:00
Antonio Scandurra
a739c362d9
Rename editor::Event::Edited
to editor::Event::BufferEdited
...
This is to distinguish it from a new event we're about to add which
represent edits originating from that specific editor.
2022-03-24 08:55:46 +01:00
Max Brunsfeld
22148a3639
Fix extending selections starting at ends of other nodes
...
Fixes #478
2022-03-23 15:38:23 -07:00
Antonio Scandurra
004f98cc6d
Merge pull request #661 from zed-industries/follow
...
Introduce basic following experience
2022-03-23 15:17:44 +01:00
Antonio Scandurra
3117554568
Automatically unfollow when editing, scrolling or changing selections
2022-03-22 09:17:01 +01:00
Nathan Sobo
210fa4c443
Remove CharKind::Newline
...
This is just a character, and so it seems clearer to refer to it specifically when we want to know if a character is a newline. There was only one case where we relied on Newline being different from Whitespace, and we special-cased that instance. Changing this actually makes us match the behavior of VS Code when double-clicking runs of multiple newlines.
/cc @as-cii
Co-Authored-By: Keith Simmons <keith@the-simmons.net>
2022-03-21 15:17:32 -06:00
Max Brunsfeld
06cd9ac664
Match the leader's last selection when unfollowing
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-03-21 14:04:55 -07:00
Max Brunsfeld
257601b3c1
Add buffer method for getting the symbols containing a position
2022-03-15 14:04:58 -07:00
Antonio Scandurra
7155dabf5b
Fade out unnecessary code
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-03-15 15:51:59 +01:00
Antonio Scandurra
021699e51c
Implement shift-f8
to go to previous diagnostic
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-03-15 15:13:23 +01:00
Nathan Sobo
951fd1ab36
Merge branch 'main' into select-on-rename
2022-03-11 15:30:07 -07:00
Antonio Scandurra
ee6d7fc6d5
Delete till previous tabstop when backspacing within indent column
2022-03-10 10:28:24 +01:00
Nathan Sobo
ac1eb19f83
Start on text highlight support
2022-03-09 20:51:35 -07:00
Max Brunsfeld
4cb4b99c56
Assign buffer's completion triggers from LSP capabilities
...
Also, make LanguageServer::new() async. The future resolves
once the server is initialized.
2022-03-08 17:41:52 -08:00
Antonio Scandurra
317a1bb07b
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
Antonio Scandurra
6662ba62a3
Move DidSaveTextDocument
notification from Buffer
to Project
2022-03-08 11:35:54 +01:00
Antonio Scandurra
51d5ed48f0
Remove unused CloseBuffer
message
2022-03-08 11:17:20 +01:00
Antonio Scandurra
d6c8fdb3c4
Send buffer operations via the Project
instead of Worktree
2022-03-08 11:11:25 +01:00
Antonio Scandurra
dc5a09b3f7
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
Antonio Scandurra
7c420050c7
Observe selection set lamport timestamps when deserializing buffer
2022-03-04 09:34:30 +01:00
Antonio Scandurra
bcd5c28833
Allow receiving diagnostic updates out of order
2022-03-04 09:27:49 +01:00
Max Brunsfeld
19658139b1
Avoid infinite loop when a language server fails to start
2022-03-03 18:13:38 -08:00
Antonio Scandurra
14d26eeedc
Move several buffer-related messages to the background
2022-03-03 12:18:19 +01:00
Nathan Sobo
2f427769df
Allow a new search to be created with cmd-enter
...
This replaces the `cmd-alt-shift-F` binding to open a new search. Instead, you can preserve the existing search results by entering a query and then hitting `cmd-enter` instead of `enter`. This opens a new project find view and restores the previous view to whatever query it was previously displaying. It's a bit strange, but I don't want to rely on splitting as the only way of creating multiple sets of search results.
2022-02-26 13:23:05 -07:00
Antonio Scandurra
0bf944e038
Use Project::search
in ProjectFind
and show search results
2022-02-25 10:32:45 +01:00
Antonio Scandurra
8a8ae0fbcd
Rename CompletionLabel
to CodeLabel
and add Project::symbols
...
This only works locally for now and we haven't implemented the
`RustLsp::label_for_symbol` method yet.
2022-02-22 10:01:08 +01:00
Antonio Scandurra
50a31721eb
Wait for version before returning completions
2022-02-17 11:41:19 +01:00
Max Brunsfeld
e3c4ce208a
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
d358072c74
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
fadb94afb2
Use selection instead of just the cursor when fetching code actions
2022-02-14 14:13:36 +01:00
Max Brunsfeld
d84fc3beec
Remove Buffer::apply_lsp_edits
...
Always use `edits_from_lsp`.
2022-02-11 16:22:19 -08:00
Antonio Scandurra
4929b8c525
Move Buffer::format
to Project::format
2022-02-11 12:07:46 +01:00
Max Brunsfeld
645df73a37
Finish implementing Buffer::edits_from_lsp
2022-02-10 18:01:18 -08:00
Max Brunsfeld
3a1f9bb212
Start work on applying LSP edits via a diff
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-02-10 11:14:06 -08:00
Nathan Sobo
9936bb2efa
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
Antonio Scandurra
0e1318dfe4
WIP: Make editor
crate compile again
...
Tests are still failing though.
2022-02-09 11:09:11 +01:00
Max Brunsfeld
93bcde953c
Consolidate logic for completion alongside code actions in Project
...
This way, completions are dealt with more consistently with code actions,
and the logic is not spread across so many places. The `language::File`
trait and the multibuffer no longer need to deal with completions. Completions
are no longer generic over an anchor type.
2022-02-08 14:24:45 -08:00
Max Brunsfeld
722c84c976
Consolidate all code actions logic into Project
2022-02-08 13:17:57 -08:00
Max Brunsfeld
a32dffdd2b
Apply lsp edits in reverse order
...
This fixes the handling of multiple edits on the same line.
2022-02-08 12:41:30 -08:00
Antonio Scandurra
36ff31858b
Set file in test_diagnostics
to excercise language server
2022-02-08 20:09:53 +01:00
Antonio Scandurra
7d8641afb6
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
624eb5907e
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
dca974c7d4
Apply code actions remotely
2022-02-08 12:18:14 +01:00
Antonio Scandurra
9ce3b1adf2
Send DidCloseTextDocument
when dropping buffer
...
Closes https://github.com/zed-industries/zed/issues/434
2022-02-08 10:02:26 +01:00
Antonio Scandurra
8f3ff1590e
Apply edits received from LSP code actions and open all touched buffers
2022-02-07 18:48:45 +01:00
Antonio Scandurra
7a35ea7b25
Tolerate language servers reporting non-monotonic buffer versions
...
This isn't perfect but we'll retain up to 10 old versions just in case there
are race conditions in the language server. We haven't seen this in the wild
but we're concerned about diagnostic reporting racing with code action
resolution.
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-07 16:29:05 +01:00
Antonio Scandurra
982e90539d
WIP: Start on applying code actions
2022-02-07 12:20:03 +01:00
Nathan Sobo
93a3f4b615
Move rendering and select prev/next into ContextMenu enum
...
This prepares the way to have a code actions context menu.
2022-02-05 10:19:43 -07:00
Max Brunsfeld
83d4fe8e3a
Start work on code actions
...
Just print out the returned code actions for now
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-04 17:45:00 -08:00
Max Brunsfeld
3e232f7115
Refine behavior of select_larger_syntax_node
...
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
2022-02-04 13:19:00 -08:00