69e8a16
Start on `assistant::QuoteSelection`
Antonio Scandurra created
69e8a16
Start on `assistant::QuoteSelection`
Antonio Scandurra created
dc36547
Merge remote-tracking branch 'origin/main' into assistant-2
Antonio Scandurra created
1fc9103
Remove methods taking `&mut Workspace` from `Pane` (#2540)
This pull request simplifies the `Pane` struct by replacing methods like `Pane::add_item` that would previously take a `&mut Workspace` with methods that take a `&mut self`. When access to the workspace is needed, we now either emit an event from the `Pane` or directly move the method to the `Workspace` struct.
Antonio Scandurra created
bd49403
Call `ItemHandle::added_to_pane` when an item is added to a pane
Antonio Scandurra created
2269c19
chore: add LICENSE files
Sergey Onufrienko created
8a851ad
Fix annoying system prompt (#2538)
I was having fun, but it was too much. It makes the assistant too annoying to be useful. Release Notes: Use `N/A` in this section if this item should be skipped in the release notes. Add release note lines here: * Dialed back the system prompt on the assistant.
Nathan Sobo created
063613b
Fix annoying system prompt
I was having fun, but it was too much. It makes the assistant too annoying to be useful.
Nathan Sobo created
ed0fa24
Use settings JSON schema when editing local settings files
Max Brunsfeld created
89446c7
Start work on respecting project-specific settings
Max Brunsfeld created
88eb2b2
Move history navigation logic to `Workspace`
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Antonio Scandurra and Nathan Sobo created
6d3464f
Make `Pane::add_item` a proper `Pane` method
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Antonio Scandurra and Nathan Sobo created
890c42a
Show time in assistant messages
Antonio Scandurra created
edf8e27
Improves project search panel shortcut handling (#2536)
* ESC (project_search::ToggleFocus) toggles focus from include/exclude fields to the editor * Cmd+Shift+F (workspace::NewSearch) can be triggered from the editor, and moves focus to the query editor Release Notes: * Improved project search panel shortcut handling, allowing more actions to trigger from panel elements
Kirill Bulatov created
d593377
Improves project search panel shortcut handling
* ESC (project_search::ToggleFocus) toggles focus from include/exclude fields to the editor * Cmd+Shift+F (workspace::NewSearch) can be triggered from the editor, and moves focus to the query editor
Kirill Bulatov created
52e8bf2
Show custom header for assistant messages
Antonio Scandurra created
cf75b09
feat: organize themes by folders with LICENSE
Sergey Onufrienko created
986b02e
Update LSP to the newest version (#2535)
Current `lsp-types:0.91.1` crate lacks inlay hints' definitions. Crate's changelog is not very descriptive, but it appears that `0.92.1` could be used: https://github.com/gluon-lang/lsp-types/blob/master/CHANGELOG.md#v0921-2022-03-21 The latest is crate version is `0.94.0` (2023-02-08), the PR updates Zed to the latest version. Notable changes: * workspace symbols may arrive unresolved if the corresponding client capability is enabled: https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/#partialResults Zed has this capability disabled, forcing all symbols to arrive synchronously (?). Resolve capabilities are important for inlay hints too, but I've not found any code in Zed for that outside tests, so I'd love to learn more and implement the resolution for workspace symbols separately. * since LSP `3.17` (current), watch file changes can use relative glob patterns: https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/#workspace_didChangeWatchedFiles That seemed just a straightforward extra `match` to use the same Ruse `Glob` to handle the relative path one. Release Notes: N/A
Kirill Bulatov created
404beba
Set markdown as the assistant's buffer languages
Antonio Scandurra created
fdad1ad
Update LSP to the newest version
Kirill Bulatov created
e453047
Make worktree `UpdatedEntries` events fully describe all changes (#2533)
This PR makes the worktree's change events more useful in a few ways: * The changes are now described by a cheaply clone-able collection, so that they can be used in background tasks. Right now, I'm using a simple Arc slice. * The `UpdatedEntries` event now captures not only changes due to FS changes, but also newly-loaded paths that are discovered during the initial scan. * The `UpdatedGitRepositories` event now includes repositories whose work-dir changed but git dir didn't change. A boolean flag is included, to indicate whether the git content changed. * The `UpdatedEntries` and `UpdatedGitRepositories` events are now *used* to compute the worktree's `UpdateWorktree` messages, used to sync changes to guests. This unifies two closely-related code paths, and makes the host more efficient when collaborating, because the `UpdateWorktree` message computation used to require walking the entire `entries` tree on every FS change.
Max Brunsfeld created
1f42bfc
Include repositories with workdir changes in worktree UpdatedGitRepsositories event
Max Brunsfeld created
2db57b5
Adjust diagnostic transformation test to not wait for two buffer notifications
Max Brunsfeld created
02b95ef
Derive worktree update messages from existing change events
Max Brunsfeld created
9cfe39f
Display external paths in history (#2534)
Fixes https://linear.app/zed-industries/issue/Z-1793/file-finder-external-recent-paths-are-not-rendered-properly Long paths get trimmed, but same do many of our other elements, such as type definitions, so I think it's ok for now:  Also, we seem to do a lot of odd diagnostics handling on every external stdlib file opened:  Other external files also emit similar messages, but not that much. @\mikayla-maki mentioned, that this was happening before, so can be fixed separately. The PR adds path printing to these logs. Release Notes: * Fixed external files not being displayed properly in the recently opened list in the file finder panel
Kirill Bulatov created
5fda9e9
Shorten full paths with ~
Kirill Bulatov created
3a3c1c5
Add a test
co-authored-by: Mikayla <mikayla@zed.dev>
Kirill Bulatov and Mikayla created
ffbfbe4
WIP: Not sure I actually want to rip this out
Nathan Sobo created
3904971
Hide assistant gutter
Nathan Sobo created
8f6e67f
Cancel assists on escape
Nathan Sobo created
6628c4d
Store worktree changes in a sorted arc slice, not a HashMap
We don't need to look-up change types by an arbitrary key, but we do need to iterate it. It would also be useful to be able to cheaply clone the changes, to use them in a background task.
Max Brunsfeld created
59bfd40
Make stricter assertions about change events in random worktree test
Max Brunsfeld created
f890eef
Include paths loaded during initial scan in worktree UpdatedEntries event
Max Brunsfeld created
80080a4
Start on an assistant panel based on multi-buffers
Each message is represented as a multibuffer excerpt to allow for fluid editing of the conversation transcript. Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
Nathan Sobo and Antonio Scandurra created
cf2bbfc
Better display labels for external files
Kirill Bulatov created
508533e
Track abs paths in history
Kirill Bulatov created
2fdc960
Properly display labels for currently opened external files
Kirill Bulatov created
b75c27d
Simplify selected index handling
Kirill Bulatov created
364631a
Add absolute paths to historic elements
Kirill Bulatov created
128c198
Fix duplicate item creation in project panel (#2532)
Closes https://linear.app/zed-industries/issue/Z-1760/creating-a-new-file-with-the-same-name-as-an-existing-file-overwrites Now every rename/creation editor won't do anything if a duplicate name is submitted. Release Notes: * Fixed a bug when created in project panel items with duplicate names were overwriting the old files
Kirill Bulatov created
5501dd7
Fix duplicate item creation in project panel
Kirill Bulatov created
7900d2a
Multibuffer edit perf (#2531)
This took so much longer than I wanted, so glad to finally be rid of this Release Notes: * Improved performance when editing many git-tracked files in a multi-buffer at the same time
Julia created
5e39ba5
Clean up final remaining code paths calling old diff update method
Julia created
f40c498
Fix tests
Julia created
8d662ed
Remove concept of git diff refresh from `Item` trait
Julia created
cede296
Project level git diff recalc handling
This avoids an issue where in a many-buffer multi-buffer, each modified buffer could complete its recalc independently, causing a cascade of repeated notifies Now all recalcs started at the same time must complete before A: Starting another recalc pass B: The master notify occurring Each buffer can still show its new diff if something else triggers it to notify earlier, this is desirable and does not have the same negative effects as the notify cascade as those re-layouts would need to happen anyway Co-Authored-By: Max Brunsfeld <max@zed.dev>
Julia and Max Brunsfeld created
54421b1
wip
Max Brunsfeld created
ae3bdd7
Support OnTypeFormatting LSP request (#2517)
Supports https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/#textDocument_onTypeFormatting rust-analyzer uses this feature to add matching brackets semantically, e.g. before:  after:  `use_on_type_format` settings entry was added, enabled by default, to disable the new feature. Release Notes: * Support `OnTypeFormatting` LSP protocol feature, allowing rust-analyzer to add matching brackets
Kirill Bulatov created
739d5ca
Have proper undo for both client and host
Kirill Bulatov created
24098c5
Prevent bottom dock from becoming too large or too small (#2529)
Fixes https://linear.app/zed-industries/issue/Z-1834/bottom-dock-can-be-dragged-down-far-enough-such-that-the-tab-bar-is Release Notes: - Improved the resize experience for the bottom dock, preventing it from becoming too large or too small. (preview-only)
Antonio Scandurra created
4185a17
Prevent bottom dock from becoming too large or too small
Antonio Scandurra created