Commit Graph
196 Commits
Author SHA1 Message Date
Antonio Scandurra ae5aebf405 Fix flaky test_highlighted_ranges due to random TypeId ordering 2022-02-02 10:09:12 +01:00
Antonio Scandurra 74e5c5b89a Separate autoclose pair stack from autocomplete stack 2022-02-02 09:51:03 +01:00
Antonio Scandurra 79408464ea Navigate tabstops on tab even if the top of stack is a BracketPairState 2022-02-02 09:04:57 +01:00
Max Brunsfeld 6ff45f2ade Generalize autoclose stack to include snippet ranges as well 2022-02-01 17:40:39 -08:00
Max Brunsfeld 7270fd00ba Start work on handling snippet completions 2022-02-01 15:35:02 -08:00
Max Brunsfeld 1371a20e58 🎨 Return an option task from confirm_completion 2022-02-01 14:27:01 -08:00
Antonio ScandurraandNathan Sobo 6c7d2cf6b5 Apply additional edits when confirming a completion
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-01 17:38:11 +01:00
Nathan SoboandAntonio Scandurra 497626ef2b Re-filter existing completions on selection update
We still request new completions, but this ensures results are up-to-date in the meantime.

Also: Cancel any pending completions task when we dismiss the completions dialog or start a new completions request.
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-02-01 07:59:37 -07:00
Antonio ScandurraandNathan Sobo b89a39bcb3 Filter and sort suggestions in autocomplete
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-01 15:11:20 +01:00
Antonio Scandurra bcbd265de9 Dismiss autocomplete when moving outside of a word 2022-02-01 13:27:49 +01:00
Nathan Sobo 92f0491c0e Don't assign completion_state when completions are empty 2022-01-31 18:38:49 -07:00
Nathan Sobo 327ddbe2b4 Always issue a new completions request when typing a trigger character
We'll interpolate the anchor range of original request, but it's still a good idea to be up-to-date in case the language server is influenced by the content preceding the location. This doesn't *seem* to be the case with rust-analyzer so far, but it's how VS Code works so let's do it this way.
2022-01-31 18:34:20 -07:00
Max BrunsfeldandNathan Sobo 1d1f8df180 Trigger completion when typing words or trigger characters
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-01-31 17:07:24 -08:00
Max BrunsfeldandNathan Sobo 8d2b7ba032 Insert completion text on enter
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-01-31 13:46:50 -08:00
Max BrunsfeldandNathan Sobo 071a55a7ab Allow selecting items from the autocomplete list
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-01-31 13:25:46 -08:00
Max BrunsfeldandNathan Sobo c19d639e0a Derive autocomplete menu's width from the width of its largest item
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-01-31 13:01:20 -08:00
Nathan SoboandMax Brunsfeld 1a6e972ed4 Get basic list of completions rendering without styling
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2022-01-31 13:17:42 -07:00
ab6eb0a655 Start on completion rendering
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2022-01-31 12:19:17 -07:00
Nathan SoboandAntonio Scandurra 960696a504 Bind autocomplete to ctrl-space
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-01-31 11:34:19 -07:00
Antonio Scandurra 03bcbdc33d WIP 2022-01-31 19:12:35 +01:00
Antonio Scandurra ce5270488f Propagate Cancel when editor is not in full mode
This is consistent with what VS Code and Sublime Text do and allows the user to
perform only one keybinding to e.g. dismiss the find bar when the query is
(partially) selected.
2022-01-30 16:01:53 +01:00
Antonio Scandurra c53b6b907a Populate query with text under selection when hitting cmd-f 2022-01-30 16:01:05 +01:00
Max Brunsfeld 5c7cea5a3e WIP - Navigate to prev/next search result 2022-01-28 14:00:00 -08:00
Max Brunsfeld 7e02d669e1 Add a simple unit test for find bar 2022-01-28 13:05:29 -08:00
Antonio ScandurraandNathan Sobo 5b9d791269 Implement regex search with multiline support
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-01-28 16:15:18 +01:00
Antonio Scandurra b980b11053 Implement whole word mode 2022-01-28 11:48:04 +01:00
Max BrunsfeldandNathan Sobo 34ed734749 Add highlighted_ranges API to editor
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-01-27 15:19:28 -08:00
Antonio Scandurra dbf48d2a5b Merge pull request #375 from zed-industries/more-project-diagnostics-styling
Last touches on project diagnostics for now
2022-01-27 16:47:05 +01:00
Antonio ScandurraandNathan Sobo 3853826f78 Pause cursor blinking only when editor is focused
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-01-27 16:33:47 +01:00
Antonio ScandurraandNathan Sobo 41ec4645ab Don't panic when ending transaction that wasn't started by the same editor
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-01-27 15:53:44 +01:00
Antonio ScandurraandNathan Sobo f055053fc9 Avoid grouping transactions created by different editors
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-01-27 15:51:46 +01:00
Max Brunsfeld 76bbd101c6 Increase diagnostic editor's vertical scroll margin
This way, the first path header will always be fully visible when
you move your cursor to the beginning of the multibuffer.
2022-01-26 10:23:41 -08:00
Max Brunsfeld c9b4bb78f2 Merge branch 'project-diagnostics-pinned-tab' into style-project-diagnostics 2022-01-25 12:20:37 -08:00
Max BrunsfeldandNathan Sobo 78b57e4d9d Scale diagnostic header and message text with editor font
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-01-25 12:10:11 -08:00
Nathan SoboandMax Brunsfeld 0c6fd157ee Scale diagnostic headers icons with editor font and right align w/ line numbers
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2022-01-25 12:40:53 -07:00
Antonio ScandurraandNathan Sobo 7250974aa6 Style block decorations
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-01-25 17:07:12 +01:00
Antonio Scandurra 65d4c33c0e Format messages within backticks using bold instead of with a background 2022-01-25 15:50:49 +01:00
Antonio Scandurra 7e55353de8 Show error code in diagnostic header 2022-01-25 15:23:58 +01:00
Antonio Scandurra ec0ca2a1b6 Display icon next to primary message 2022-01-25 15:15:03 +01:00
Antonio Scandurra e7ec016350 Restyle diagnostic headers 2022-01-25 12:23:24 +01:00
Nathan Sobo 9505d6cdcf Disable the nav history when selecting a definition in a different buffer
When jumping between different buffers, we don't care about the cursor's previous location. When navigating backward, we want to jump directly to the site of the jump.
2022-01-20 21:33:16 -07:00
377e41a90f Make navigation history work with project diagnostics
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2022-01-20 18:21:48 +01:00
Antonio Scandurra c450945001 WIP 2022-01-20 18:11:37 +01:00
Antonio ScandurraandNathan Sobo fad5c98b8d Center selections when going to definition
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-01-20 17:33:07 +01:00
Antonio ScandurraandNathan Sobo b6685a532c Make "go to definition" work in project diagnostics
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-01-20 17:30:30 +01:00
Antonio ScandurraandNathan Sobo d92b40474f Change GoToDefinition binding to F12
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-01-20 15:43:02 +01:00
Antonio Scandurra 66734e11af WIP: Start on a GoToDefinition action for the editor 2022-01-20 12:26:04 +01:00
Max Brunsfeld f43dcd6763 Move logic for starting language servers to the project 2022-01-19 14:05:06 -08:00
Antonio Scandurra 18f1040c85 Rename Navigation to NavHistory 2022-01-19 15:27:34 +01:00
Max Brunsfeld 05bf8f61e2 Avoid changing selection in buffer navigation dialogs
If an editor has highlighted_rows, autoscroll it to reveal those rows instead of
its cursor positions.
2022-01-18 17:29:33 -08:00