Commit Graph
25009 Commits
Author SHA1 Message Date
Antonio ScandurraandNathan Sobo 9183f7d476 Always populate find bar on cmd-f
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-04 16:13:58 +01:00
Antonio Scandurra 4578596687 Merge pull request #396 from zed-industries/fix-autocomplete-bugs
Refine autocomplete
2022-02-04 16:13:16 +01:00
Antonio ScandurraandNathan Sobo b5f3a93d51 Dismiss the focused find bar on escape
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-04 16:11:48 +01:00
Antonio ScandurraandNathan Sobo 54bb29941f Show completions as soon as possible
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-04 16:01:04 +01:00
Antonio ScandurraandNathan Sobo 997d9048d9 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 1498625c3b 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 9b90063d45 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 ad472ca67d Remove unused bytes_at method 2022-02-04 12:07:30 +01:00
Antonio Scandurra c8fbba7260 Refine autocompletion when text matches a prefix of the suggestion 2022-02-04 12:05:57 +01:00
Antonio Scandurra 3bd1504a2b Merge pull request #395 from zed-industries/fix-show-next-diagnostic
Move cursor to diagnostic even if the only diagnostic is currently shown
2022-02-04 11:46:14 +01:00
Antonio Scandurra 3e533a9bd8 Move cursor to diagnostic even if the only diagnostic is currently shown 2022-02-04 09:34:32 +01:00
Max Brunsfeld 4fdb2e7834 Fix selection positions after typing with old selection anchors 2022-02-03 18:14:00 -08:00
Max Brunsfeld e7dbebaa76 Merge pull request #393 from zed-industries/autocomplete
Autocomplete
2022-02-03 15:47:57 -08:00
Max Brunsfeld e4e708a8bc Add integration test for getting and resolving completions 2022-02-03 15:24:16 -08:00
Max Brunsfeld b47b8177ae Confirm completion on tab key as well as enter key 2022-02-03 14:14:24 -08:00
356f89c939 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
cb37c266d3 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 ScandurraandNathan Sobo 4aa203196d Align completion labels with cursor
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-03 17:21:24 +01:00
Antonio Scandurra 138a4d8bdd Put rounded corners around autocomplete and give it some padding 2022-02-03 15:48:00 +01:00
Antonio Scandurra 5233ef85a9 Mute color of completion's text that can't be filtered 2022-02-03 15:39:53 +01:00
Antonio Scandurra f5546c1960 Fix panic when trying to show completions but none match the query 2022-02-03 14:36:45 +01:00
Antonio Scandurra 0647ffa166 Transact on applying completion to allow restoring of selections on undo 2022-02-03 12:10:22 +01:00
Antonio Scandurra 94a2683460 Hide completions when {un,re}doing past initial insertion boundaries 2022-02-03 11:42:52 +01:00
Antonio Scandurra 7fce7d8ccb Support clicking on a completion to confirm it 2022-02-03 11:39:19 +01:00
Antonio Scandurra b72e086faa Optimize summaries_for_anchors when MultiBuffer is a singleton 2022-02-03 11:22:55 +01:00
Antonio Scandurra 6293058b27 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 ec0c7f4c01 Cancel innermost snippet insertion when hitting esc 2022-02-03 10:37:15 +01:00
Antonio Scandurra f01fb117a0 Allow completions to bleed off the editor's bounds 2022-02-03 10:23:34 +01:00
Antonio Scandurra fcd9cfde27 Syntax highlight even when the label doesn't contain a detail 2022-02-03 09:57:04 +01:00
Antonio Scandurra 26b13301f5 Don't overflow selection index when completions are filtered 2022-02-03 08:47:17 +01:00
Max Brunsfeld 8d1a1c61dd Start work on syntax highlighting completions 2022-02-02 18:14:30 -08:00
Max Brunsfeld 0c273d6603 Fix hang in editor completion unit test 2022-02-02 17:09:36 -08:00
Max Brunsfeld 17cb388fe2 Introduce Language::highlight_text method 2022-02-02 17:01:48 -08:00
Max Brunsfeld 90404114e3 Remove theme parameters from buffer/display map's chunks methods
Change Chunks to contain highlight ids instead of actual highlight
styles. Retrieve the actual highlight style from the theme in the
editor element layer.

This is to set us up to perform syntax highlighting in other code
paths where the theme is not available.
2022-02-02 16:33:04 -08:00
724829892d Hide completions when using the mouse
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2022-02-02 19:12:36 +01:00
07a0eec4fd Improve formatting of variable/field completions for Rust
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2022-02-02 18:56:04 +01:00
0b7628d3c9 Improve formatting of function autocompletion labels in Rust
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2022-02-02 18:43:55 +01:00
Antonio ScandurraandNathan Sobo 70a6a78b15 Don't apply completion's edit when it wouldn't change the buffer
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-02 18:00:30 +01:00
Antonio Scandurra b221c19b8e Wait for additional edits before pushing transaction in remote buffer 2022-02-02 17:01:23 +01:00
Antonio Scandurra b75f0e3ff3 Apply additional edits for completion when the buffer is remote 2022-02-02 16:29:13 +01:00
Antonio Scandurra a68c127491 Broadcast completion triggers to remote participants 2022-02-02 14:07:41 +01:00
Antonio Scandurra 76884e3b0f Start on requesting completions for remote buffers 2022-02-02 12:22:47 +01:00
Antonio Scandurra b0792751c8 Fix flaky test_highlighted_ranges due to random TypeId ordering 2022-02-02 10:09:12 +01:00
Antonio Scandurra c204d05aaf Separate autoclose pair stack from autocomplete stack 2022-02-02 09:51:03 +01:00
Antonio Scandurra 70fb20ce6b Navigate tabstops on tab even if the top of stack is a BracketPairState 2022-02-02 09:04:57 +01:00
Max Brunsfeld a99b1a6f3d Generalize autoclose stack to include snippet ranges as well 2022-02-01 17:40:39 -08:00
Max Brunsfeld 067eb8740c Start work on handling snippet completions 2022-02-01 15:35:02 -08:00
Max Brunsfeld 0efa4b0696 Handle special "final tabstop" in snippets 2022-02-01 15:33:48 -08:00
Max Brunsfeld 0323952bfb 🎨 Return an option task from confirm_completion 2022-02-01 14:27:01 -08:00
Max Brunsfeld ebfcc272ad Reimplement snippet parsing using recursive descent 2022-02-01 13:41:41 -08:00