Max Brunsfeld
9d41f83b1b
Merge branch 'main' into copilot-disabled-globs
2023-05-03 10:53:28 -07:00
Max Brunsfeld
8eb1312deb
Add copilot menu item for enabling paths by glob
2023-05-03 10:14:01 -07:00
Antonio Scandurra
e9ed40da37
Remove the ability to retrieve the view's parent
2023-05-03 16:52:55 +02:00
Antonio Scandurra
7f137ed3dd
Compute view ancestry at layout time
2023-05-03 16:36:14 +02:00
Antonio Scandurra
7f345f8bf5
Separate Window::build_scene
into layout
and paint
2023-05-03 12:18:16 +02:00
Julia
185c1650df
Show diagnostic source in inline diagnostic
2023-05-02 09:08:07 -04:00
Max Brunsfeld
c485fc86a2
Add copilot.disabled_globs setting
2023-05-01 13:45:47 -07:00
Antonio Scandurra
c4472b0786
Remove ViewContext::dispatch_action
2023-05-01 16:27:36 +02:00
Antonio Scandurra
d815fc88ae
Remove ViewContext::dispatch_any_action
2023-05-01 14:24:00 +02:00
Antonio Scandurra
e566929d9e
Fix panic when clicking on a definition
...
This was introduced with #2420 and was caused by re-entrantly updating
the workspace. Instead of passing the workspace reference from the outside,
we now define the definition navigation as a method on the editor which solves
the issue.
Note that we also needed to introduce a `defer` call when navigating to a definition
to prevent the workspace from reading the editor during `open_project_item`.
2023-04-29 14:53:17 +02:00
Joseph Lyons
6b0faa2d9c
Rework telemetry code to support sending events to Clickhouse
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2023-04-28 16:06:55 -04:00
Antonio Scandurra
489b1f6a63
Merge remote-tracking branch 'origin/main' into simplify-action-dispatch
2023-04-28 17:31:12 +02:00
Antonio Scandurra
f65e64829e
Remove Scroll
internal action
2023-04-28 16:43:31 +02:00
Antonio Scandurra
3409ee1785
Remove DeployMouseContextMenu
internal action
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-04-28 16:41:46 +02:00
Antonio Scandurra
a91903c2ab
Remove internal actions from link_go_to_definition
2023-04-28 16:24:46 +02:00
Antonio Scandurra
264a2c1835
Remove HideHover
and HoverAt
internal actions
2023-04-28 16:12:24 +02:00
Antonio Scandurra
83436213ad
Remove Jump
internal action
2023-04-28 14:13:07 +02:00
Antonio Scandurra
a978f3fe4f
Remove Select
internal action
2023-04-28 12:33:22 +02:00
Max Brunsfeld
7258db7a4e
Merge pull request #2417 from zed-industries/hover-markdown
...
Render markdown more correctly in the editor hover popover
2023-04-27 14:15:04 -07:00
Max Brunsfeld
6042df393b
Give code spans in markdown a background highlight
2023-04-27 13:58:30 -07:00
Max Brunsfeld
66d4cb8c14
Tweak rendering of multi-paragraph list items in markdown
2023-04-27 11:39:34 -07:00
Julia
678c188de0
Re-allow diagnostics hovers to soft wrap
...
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2023-04-27 14:35:34 -04:00
Julia
3f7533a0b4
Show source of diagnostic hovers
2023-04-27 14:35:34 -04:00
Antonio Scandurra
022368225e
Remove internal actions from Pane
2023-04-27 14:23:26 +02:00
Antonio Scandurra
5521ff1b22
Allow passing a handler function to context menu items
2023-04-27 11:32:12 +02:00
Max Brunsfeld
c6abb0db3a
Improve rendering of multi-paragraph list items in hover markdown
2023-04-26 17:09:20 -07:00
Max Brunsfeld
d298ce3fd3
Render more markdown features in hover popover
2023-04-26 15:33:10 -07:00
Antonio Scandurra
6317e885c7
Don't allow strong view handles to be read/updated with an AsyncAppContext
...
This avoids an invitation to hold strong view handles across async await
points, which is a common source of leaks.
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-04-26 13:36:13 +02:00
Antonio Scandurra
2b6830c798
Remove unnecessary calls to WeakViewHandle::upgrade
2023-04-26 11:13:46 +02:00
Antonio Scandurra
94c2eaad23
Replace ViewContext::spawn
with ViewContext::spawn_weak
2023-04-26 10:23:27 +02:00
Antonio Scandurra
7ca412ade3
Merge remote-tracking branch 'origin/main' into fewer-context-traits
2023-04-26 09:54:58 +02:00
Max Brunsfeld
ebbe52e6b0
🎨 Specify more dependencies at the workspace level
2023-04-24 17:41:55 -07:00
Max Brunsfeld
a280a93cd8
Start work on a language server log view
2023-04-24 09:43:31 -07:00
Max Brunsfeld
abdccf7393
Use a workspace dependency for the futures crate
2023-04-24 09:43:31 -07:00
Antonio Scandurra
c165fb9be5
Remove ReadView
and UpdateView
traits
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-04-24 17:36:14 +02:00
Nathan Sobo
993dbf86cb
Merge remote-tracking branch 'origin/main' into into-element
2023-04-21 14:27:25 -06:00
Nathan Sobo
caf3d5c163
Fix more formatting
2023-04-21 14:25:49 -06:00
Nathan Sobo
fe492eacbf
Refine naming of element-related types and traits
...
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2023-04-21 13:06:37 -06:00
Antonio Scandurra
03619dfa55
Rename Drawable::boxed to into_element and make containers generic
...
Multi-element are now generic over any drawable child, which can be converted
into an element.
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2023-04-21 12:43:19 -06:00
Antonio Scandurra
4ac894ffbe
Remove unnecessary lifetime parameter from WindowContext
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-04-21 18:06:53 +02:00
Antonio Scandurra
5b40641fde
Take a target view when marking an element as draggable
2023-04-21 15:52:05 +02:00
Antonio Scandurra
b0cbd13e7a
Remove stray push_layer
from EditorElement::paint
2023-04-21 11:46:13 +02:00
Antonio Scandurra
c76b9794e4
Merge branch 'main' into window_context_2
2023-04-21 10:58:08 +02:00
Max Brunsfeld
21bb13d309
Fix comment formatting errors for rust 1.69
2023-04-20 09:03:42 -07:00
Max Brunsfeld
32c57bcd22
Store buffer's diagnostic sets in a smallvec
2023-04-20 08:58:41 -07:00
Max Brunsfeld
4dd917c123
Introduce a LanguageServerId wrapper type
...
Clarify the meaning of all the usizes in use in all of these
struct fields an method signatures.
2023-04-20 08:58:41 -07:00
Julia
6156dbced0
Finish getting multiple diagnostics sources building and running
2023-04-20 08:58:41 -07:00
Julia
ba7233f265
Incomplete refactor to allow for multiple adapters per language
2023-04-20 08:58:39 -07:00
Antonio Scandurra
1d487e19f9
Fix editor tests
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-04-20 16:15:14 +02:00
Antonio Scandurra
c52b6328b7
Merge branch 'main' into window_context_2
2023-04-20 16:01:47 +02:00
Antonio Scandurra
4d207981ae
Notify LSP when Copilot suggestions are accepted/rejected
2023-04-20 10:15:31 +02:00
Antonio Scandurra
34bcf6f072
Reopen file in Copilot language server when language or URI changes
2023-04-20 09:34:20 +02:00
Mikayla Maki
ce8442a3d8
Fix underflow potential
2023-04-19 17:42:19 -07:00
Mikayla Maki
dd73233973
Merge pull request #2386 from zed-industries/copilot-shipping
...
Get copilot ready to ship
2023-04-20 12:38:27 +12:00
Mikayla Maki
26ab774b7f
Removed debounce on suggestion cycling code
2023-04-19 17:34:09 -07:00
Mikayla Maki
9b8a3e4de5
Fixed panic in new cycling code
...
Made cycling fire without debounce
2023-04-19 16:50:31 -07:00
Mikayla Maki
2882e0fa5b
Remove new CTA in copilot sign in UI
...
Add a trim_end to copilot suggestions
2023-04-19 16:39:55 -07:00
Mikayla Maki
70ff4ca48f
WIP: lower our usage of the copilot API by seperating out the cycling completion
...
Restore copilot setting visibility
co-authored-by: antonio <antonio@zed.dev>
2023-04-19 15:23:17 -07:00
Mikayla Maki
ea1c3fa7a0
Only fire completion cycling requests if specifically asked for by the user
2023-04-19 15:21:30 -07:00
Antonio Scandurra
4a9989fe38
Clear all suggestions from Editor
when disabling Copilot
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-04-19 20:10:57 +02:00
Antonio Scandurra
1fd07b6fcf
Clarify copilot settings
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-04-19 20:07:05 +02:00
Petros Amoiridis
b3b8f8532d
Assert the editor and unmarked texts are the same
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2023-04-19 20:52:01 +03:00
Petros Amoiridis
f9c60b98c0
Add newline above and improve newline below
...
Add a new action for inserting a new line above the current line. @ForLoveOfCats also helped fix a bug among other things. When two collaborators had their cursors at the end of a line, and one collaborator performed a newline below action, the second collaborator's cursor would be dragged to the new line. This is also fixing that.
Co-Authored-By: Julia <30666851+ForLoveOfCats@users.noreply.github.com>
2023-04-19 19:57:23 +03:00
Max Brunsfeld
bd7d50f339
Fix 'invalid insertion' panic when following
...
Wait for the necessary buffer operations to arrive before attempting to
set selections and scroll top.
2023-04-18 16:13:18 -07:00
Joseph T. Lyons
614a9c8977
Merge pull request #2377 from zed-industries/add-tab-tooltips
...
Add tab tooltips
2023-04-18 14:37:38 -04:00
Joseph Lyons
304eddbbe4
Remove unnecessary lifetimes from tab_description
2023-04-18 14:15:56 -04:00
Joseph Lyons
9afd804062
Remove unnecessary lifetimes from tab_tooltip_text
2023-04-18 14:03:02 -04:00
Antonio Scandurra
136e599051
Merge branch 'main' into window_context_2
2023-04-18 17:29:37 +02:00
Antonio Scandurra
d03c431f9a
Fix warnings/errors now that AsyncAppContext::update
returns Result
2023-04-18 14:58:57 +02:00
Antonio Scandurra
d26d0ac56f
Clean up completion tasks, even if they fail or return no results
...
This fixes a bug where leaving the completion task in `completion_tasks`
could cause the Copilot suggestion to not be shown due to the LSP not
successfully return a completion.
2023-04-18 11:03:17 +02:00
Antonio Scandurra
75d6b6360f
Add failing test to demonstrate Copilot not showing enough suggestions
2023-04-18 10:24:20 +02:00
Antonio Scandurra
38ab6b123f
Make production code compile again
2023-04-17 12:33:33 +02:00
Joseph Lyons
ebe57254e0
Add tab tooltips
2023-04-15 06:46:14 -04:00
Antonio Scandurra
a820862165
Take WindowContext
in workspace::ItemHandle
methods
2023-04-14 16:36:23 +02:00
Antonio Scandurra
a8e75a9b55
Remove weak handle from EditorElement to Editor
2023-04-14 14:29:03 +02:00
Antonio Scandurra
33bc47dbe2
Merge branch 'main' into window_context_2
2023-04-14 12:07:09 +02:00
Antonio Scandurra
7394bf1cdc
Fix most of the warnings
2023-04-14 10:51:53 +02:00
Antonio Scandurra
9ef79735dc
Move more window-specific methods from AppContext
to WindowContext
2023-04-14 10:29:35 +02:00
Joseph T. Lyons
6a75e884c0
Merge pull request #2374 from zed-industries/add-vim-mode-metric
...
Add vim mode metric
2023-04-13 13:52:31 -04:00
Joseph Lyons
5f0bf5929f
Add vim mode metric
2023-04-13 13:46:22 -04:00
Antonio Scandurra
0269a8699b
Start removing some warnings
2023-04-13 12:04:37 +02:00
Antonio Scandurra
495c7acadf
Avoid interpolating Copilot suggestion if cursor excerpt differs
2023-04-13 10:44:08 +02:00
Nathan Sobo
25ad635577
WIP
2023-04-12 12:38:26 -06:00
Nathan Sobo
4cb13fb39c
WIP
2023-04-12 12:22:26 -06:00
Nathan Sobo
a25f962185
WIP
2023-04-12 12:13:35 -06:00
Antonio Scandurra
83070a19c4
WIP
2023-04-12 15:55:43 +02:00
Nathan Sobo
b54f08db77
WIP
2023-04-12 06:51:03 -06:00
Nathan Sobo
e115baa60c
WIP
2023-04-11 18:21:56 -06:00
Max Brunsfeld
727afae4ff
Fix unit tests after fixing gpui model drop semantics
...
co-authored-by: Antonio Scandurra <antonio@zed.dev>
2023-04-11 10:58:01 -07:00
Nathan Sobo
6638407ff9
WIP: Everything shredded
2023-04-10 16:10:32 -06:00
Nathan Sobo
7536645eea
WIP
2023-04-08 08:01:05 -06:00
Nathan Sobo
2615a11f7c
Don't export platform::* from gpui
...
I'd like to avoid cluttering the top-level namespace with all the platform-
specific types.
2023-04-07 11:45:53 -06:00
Joseph T. Lyons
c58601ab8d
Merge pull request #2363 from zed-industries/add-copy-path-commands
...
Update copy path commands
2023-04-07 12:09:39 -04:00
Joseph Lyons
5e55eb279c
Update copy path commands
2023-04-07 02:36:56 -04:00
Nathan Sobo
8136d8a8a6
Fix formatting
2023-04-06 15:54:44 -06:00
Nathan Sobo
de9bf6dfbd
Merge MutableAppContext into AppContext
...
There may have been a good reason for the difference at some point, or I was
still learning Rust. But now it's just &mut AppContext vs &AppContext.
2023-04-06 15:49:03 -06:00
Mikayla Maki
78742d5615
Add additional case to range invalidation test
...
co-authored-by: antonio <antonio@zed.dev>
2023-04-05 08:52:56 -07:00
Mikayla Maki
b585470518
Invalidate copilot suggestion on backspaces
...
Restore an observation on initialization
co-authored-by: antonio <antonio@zed.dev>
2023-04-05 08:48:39 -07:00
Antonio Scandurra
03a4c9d6d5
Use the cursor variable instead of selection.start
2023-04-05 14:15:58 +02:00
Antonio Scandurra
dd416cdfd2
📝
2023-04-05 14:14:43 +02:00
Antonio Scandurra
f920e02d96
Indent instead of accepting suggestion if cursor is in leading whitespace
2023-04-05 14:09:09 +02:00
Antonio Scandurra
908a7cf47e
💄
2023-04-05 13:59:19 +02:00
Antonio Scandurra
dcd8bdfc88
Update visible suggestion if edit occurs outside the current editor
2023-04-05 11:06:14 +02:00
Antonio Scandurra
6e821eea4b
Prevent tab
from accepting a copilot suggestion when it isn't visible
2023-04-05 10:31:11 +02:00
Antonio Scandurra
661be7ba51
Refresh copilot suggestions when accepting a completion
2023-04-05 10:28:00 +02:00
Antonio Scandurra
7a7dc95611
Refresh copilot suggestions when undoing/redoing
2023-04-05 10:27:19 +02:00
Antonio Scandurra
399451b676
Capture copilot behavior in a editor unit test
2023-04-05 10:26:43 +02:00
Antonio Scandurra
65fd605b82
Revert "Return the previous suggestion when replacing it"
...
This reverts commit 971c88db80
.
2023-04-04 18:59:28 +02:00
Antonio Scandurra
b58ac815a8
Trigger copilot only on insertion and deletion
...
Also, avoid showing the suggestion if a completion is in progress to
avoid flickering.
2023-04-04 17:51:37 +02:00
Antonio Scandurra
971c88db80
Return the previous suggestion when replacing it
2023-04-04 17:14:52 +02:00
Antonio Scandurra
e970d84184
Debounce copilot completions
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-04-04 16:02:25 +02:00
Antonio Scandurra
60955fb8ee
Refresh active copilot suggestion when accepting completion
2023-04-04 11:15:14 +02:00
Antonio Scandurra
79d5bb45dc
Clear Copilot suggestions when it gets disabled from the settings
2023-04-04 10:45:56 +02:00
Mikayla Maki
2e33f8b228
fixup! Remove per-file copilot enable/disable
2023-04-03 15:21:43 -07:00
Mikayla Maki
48d9c30b0e
Remove per-file copilot enable/disable
2023-04-03 15:15:42 -07:00
Nathan Sobo
cdfe873802
Merge pull request #2343 from zed-industries/handles
...
Make typed handles wrappers around their untyped equivalents
2023-04-03 09:20:37 -04:00
Antonio Scandurra
b88aa9af1d
Clear active copilot suggestion only if there is one
2023-04-03 14:32:41 +02:00
Antonio Scandurra
ec5309b543
Make autocompletion and copilot mutually exclusive
2023-04-03 14:15:21 +02:00
Antonio Scandurra
75ecf92ae4
Fix Copilot errors when opening buffers that don't exist locally
2023-04-03 12:28:32 +02:00
Nathan Sobo
82a713fd1d
Store AnyViewHandle inside ViewHandle and Deref to it
2023-04-02 14:59:55 -06:00
Antonio Scandurra
b208d1a489
🎨
2023-03-31 18:10:10 +02:00
Antonio Scandurra
5f579a4287
Fix prefix/suffix calculation when determining copilot suggestion
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Mikayla Maki <mikayla@zed.dev>
2023-03-31 18:05:07 +02:00
Antonio Scandurra
b588ba1435
Avoid auto-indenting when accepting copilot suggestion
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-03-31 17:17:35 +02:00
Antonio Scandurra
6e43e77c3f
Use copilot's Completion::{range,text}
to determine suggestion
...
Previously, we were using display text, but this isn't always correct. Now,
we just attempt to determine what text Copilot wants to insert by finding
a prefix and suffix in the existing text with the suggested text.
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-03-31 17:08:41 +02:00
Mikayla Maki
81411b9114
Merge branch 'main' into copilot
2023-03-30 16:57:18 -07:00
Antonio Scandurra
af4c4c7cf0
Speed up tab searching in TabMap::sync
by looking for \t
only
...
Instead of looking for `\n` as a stopping condition, we cap the range
we pass to `SuggestionSnapshot::chunks` to stop on the next line. This
makes character searching faster, because looking for a single character
uses `memchr`. Also, this avoids an extra conditional in a tight loop such
as the chunk scanning one contained in `TabMap::sync`.
2023-03-30 10:03:13 +02:00
Antonio Scandurra
79346b0706
Use +
instead of |
to break out of tab expansion in TabMap::sync
2023-03-30 09:49:07 +02:00
Mikayla Maki
cc7c5b416c
Add status bar icon reflecting copilot state to Zed status bar
2023-03-29 21:31:33 -07:00
Mikayla Maki
76efab005f
WIP
2023-03-29 17:25:41 -07:00
Mikayla Maki
ae3b3ea458
Merge branch 'main' into copilot
2023-03-29 16:57:38 -07:00
Mikayla Maki
ebd06b43f5
Add copilot settings
...
Add copilot pause / resume
Add copilot statusbar item stub
2023-03-29 16:40:52 -07:00
Max Brunsfeld
7601e7902a
Merge pull request #2325 from zed-industries/tab-map-long-lines
...
Avoid slowdowns with long lines by skipping tab expansion beyond a certain column
2023-03-29 14:48:23 -07:00
Max Brunsfeld
0c07a373a8
🎨
2023-03-29 14:43:01 -07:00
Julia
737e2e1b3c
Open symbol outline when clicking on editor breadcrumbs
2023-03-29 15:46:43 -04:00
Antonio Scandurra
49447128a9
Make edits smaller when tab expansion changes on a line
2023-03-29 21:40:37 +02:00
Antonio Scandurra
b86f8188d1
Expand edit to end of the line when old/new row exceeds max expansion
2023-03-29 16:49:21 +02:00
Antonio Scandurra
719d0f0abf
Rename skip_leading_tab
to inside_leading_tab
2023-03-29 14:53:28 +02:00
Antonio Scandurra
813f722925
Increment input_column
correctly when inside the leading tab
2023-03-29 14:52:50 +02:00
Antonio Scandurra
12370f120e
🎨
2023-03-28 18:40:51 -07:00
Antonio Scandurra
ce9774be53
Improve detection of common prefix in text_for_active_completion
2023-03-28 18:40:42 -07:00
Max Brunsfeld
5c1f82ae3d
Don't use TabMap::expand_tabs in line_indent_for_buffer_row
2023-03-28 17:37:57 -07:00
Max Brunsfeld
08e93e9321
Only expand tabs up until a limited column
2023-03-28 16:40:04 -07:00
Max Brunsfeld
c23feeab3a
🎨 Make expand_tabs and collapse_tabs instance methods on TabSnapshot
2023-03-28 14:10:43 -07:00
Antonio Scandurra
da81ff3295
Optimize CopilotState::text_for_active_completion
2023-03-28 09:42:01 -07:00
Antonio Scandurra
034bc75467
Refresh copilot suggestions when hitting alt-]
if none are showing
...
Co-Authored-By: Mikayla Maki <mikayla@zed.dev>
2023-03-28 09:42:01 -07:00
Antonio Scandurra
d236d9e8c9
Clear copilot suggestions when hitting escape
...
Co-Authored-By: Mikayla Maki <mikayla@zed.dev>
2023-03-28 09:42:01 -07:00
Antonio Scandurra
1162615043
Reuse existing suggestion when inserting to avoid flickering
2023-03-28 09:42:01 -07:00
Antonio Scandurra
6715e5247c
Rework SuggestionMap
to take highlight style when retrieving chunks
2023-03-28 09:42:01 -07:00
Antonio Scandurra
093e0a30e9
Replace editor::CycleCopilotSuggestions
with copilot::NextSuggestion
2023-03-28 09:42:01 -07:00
Antonio Scandurra
2f95510a2e
Start integrating Copilot with editor
...
There's still a bit to do in terms of reusing the previous suggestion
when the prefix matches, but we're getting there.
2023-03-28 09:42:01 -07:00