Max Brunsfeld
c7e2fae9cb
WIP - Add excerpt headers as a built-in feature of BlockMap
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-08 18:15:45 -08:00
Max Brunsfeld
6731d92f60
Give the editor a handle to the project, not a weak handle to the workspace
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-08 15:48:44 -08:00
Max Brunsfeld
624dbc1d0e
Fix confirming completions in a multibuffer
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-08 15:05:34 -08: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
e0fe8b5a7c
Merge branch 'main' into assists
2022-02-08 12:41:57 -08:00
Max Brunsfeld
8bad05a4ba
Don't populate editor's context menu state if there are no completions
...
This would accidentally stop the enter key from working.
2022-02-08 12:37:20 -08: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
dca974c7d4
Apply code actions remotely
2022-02-08 12:18:14 +01:00
Max Brunsfeld
e3f055d950
Use a pool of databases to speed up integration tests
...
Also, use env_logger consistently in the tests for each crate.
Only initiallize the logger at all if some RUST_LOG env var is set.
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-07 15:00:00 -08: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
a172c3c5c6
Apply file-system operations coming from an LSP code action
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-07 16:11:40 +01:00
Antonio Scandurra
982e90539d
WIP: Start on applying code actions
2022-02-07 12:20:03 +01:00
Nathan Sobo
dc20be256e
Start on code action confirmation
2022-02-05 12:37:34 -07:00
Nathan Sobo
ba99b01de6
Generalize showing and hiding of context menus
...
We still cancel pending completions when hiding the context menu so its not perfectly general, but I think this is ok.
2022-02-05 12:13:02 -07:00
Nathan Sobo
025e83c1ec
Render code actions context menu
2022-02-05 11:04:05 -07: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
Nathan Sobo
ee661516fa
Start generalizing the completions menu into a context menu
...
This will let us render the code actions menu in a way that's mutually exclusive with completions.
2022-02-05 09:43:25 -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
4900019e9b
Add a ToPointUtf16 trait in text and multibuffer
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-04 17:35:37 -08:00
Antonio Scandurra
fe1729ff70
Merge pull request #424 from zed-industries/fix-goal-column-on-cut
...
Clear selection goal column when cutting a full line
2022-02-04 19:01:23 +01:00
Nathan Sobo
3f897ed588
Clear selection goal column when cutting a full line
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2022-02-04 10:19:26 -07:00
Nathan Sobo
c38fe473cd
Delete to hard line boundary when deleting to start/end of line
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-02-04 10:10:30 -07:00
Nathan Sobo
90a780a604
Improve moving to start or end of soft-wrapped lines
...
When moving to end, stop at the soft-wrap line boundary first, then move to the end of the hard line. Vice versa when moving to the beginning.
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-02-04 09:52:50 -07:00
Nathan Sobo
aa12eb6b55
Span across soft-wraps when triple clicking a line
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-02-04 09:21:13 -07:00
Antonio Scandurra
bf043fe3fb
Merge pull request #396 from zed-industries/fix-autocomplete-bugs
...
Refine autocomplete
2022-02-04 16:13:16 +01:00
Antonio Scandurra
55f0933872
Show completions as soon as possible
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-04 16:01:04 +01:00
Antonio Scandurra
625beaaa9b
Finish writing test for the new autocompletion behavior
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-04 15:47:19 +01:00
Nathan Sobo
f8dce23440
Merge pull request #394 from zed-industries/fix-selections-after-format
...
Fix selection positions after typing with old selection anchors
2022-02-04 06:02:18 -07:00
Antonio Scandurra
0f266cff54
WIP: Start refactoring completion test
...
The idea is to write more assertions related to how autocompletion
behaves with multiple cursors, prefixes that don't match, etc.
2022-02-04 12:24:04 +01:00
Antonio Scandurra
99d0100c45
Remove unused bytes_at
method
2022-02-04 12:07:30 +01:00
Antonio Scandurra
32859a38ed
Refine autocompletion when text matches a prefix of the suggestion
2022-02-04 12:05:57 +01:00
Antonio Scandurra
8d17287167
Move cursor to diagnostic even if the only diagnostic is currently shown
2022-02-04 09:34:32 +01:00
Max Brunsfeld
d23115f628
Fix selection positions after typing with old selection anchors
2022-02-03 18:14:00 -08:00
Max Brunsfeld
3dfff3866a
Add integration test for getting and resolving completions
2022-02-03 15:24:16 -08:00
Max Brunsfeld
6e33f14218
Confirm completion on tab key as well as enter key
2022-02-03 14:14:24 -08:00
Antonio Scandurra
39152bc85f
Add unit test for multi-cursor snippet
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2022-02-03 19:26:24 +01:00
Antonio Scandurra
3e8707ebf6
Support multi-cursor autocompletion
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2022-02-03 18:58:36 +01:00
Antonio Scandurra
d56e721fab
Mute color of completion's text that can't be filtered
2022-02-03 15:39:53 +01:00
Antonio Scandurra
1375c7b7e4
Fix panic when trying to show completions but none match the query
2022-02-03 14:36:45 +01:00
Antonio Scandurra
85e6ea1091
Transact on applying completion to allow restoring of selections on undo
2022-02-03 12:10:22 +01:00
Antonio Scandurra
f41f1e51a8
Hide completions when {un,re}doing past initial insertion boundaries
2022-02-03 11:42:52 +01:00
Antonio Scandurra
efcbf2714c
Support clicking on a completion to confirm it
2022-02-03 11:39:19 +01:00
Antonio Scandurra
7865c32727
Optimize summaries_for_anchors
when MultiBuffer
is a singleton
2022-02-03 11:22:55 +01:00
Antonio Scandurra
ab26a175a4
Opt into language-aware features when getting buffer chunks
...
We use chunks a lot to transform points and sync the various display maps,
and always querying tree-sitter or the LSP diagnostics in those cases is
unnecessarily expensive.
2022-02-03 11:21:30 +01:00
Antonio Scandurra
bd441723a0
Cancel innermost snippet insertion when hitting esc
2022-02-03 10:37:15 +01:00
Antonio Scandurra
426ca94b52
Allow completions to bleed off the editor's bounds
2022-02-03 10:23:34 +01:00
Antonio Scandurra
8fc89da573
Don't overflow selection index when completions are filtered
2022-02-03 08:47:17 +01:00
Max Brunsfeld
439d12cb85
Start work on syntax highlighting completions
2022-02-02 18:14:30 -08:00
Max Brunsfeld
45898daf83
Fix hang in editor completion unit test
2022-02-02 17:09:36 -08:00