Sergey Onufrienko
f0490c743d
chore: add LICENSE files
2023-05-30 14:06:19 +02:00
Nathan Sobo
86b83bf31b
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.
2023-05-29 22:05:40 -06:00
Nathan Sobo
e49775c401
Fix annoying system prompt
...
I was having fun, but it was too much. It makes the assistant too annoying to be useful.
2023-05-29 21:47:59 -06:00
Max Brunsfeld
2acde01e4e
Use settings JSON schema when editing local settings files
2023-05-29 14:31:54 -07:00
Max Brunsfeld
fb4c174fd1
Start work on respecting project-specific settings
2023-05-29 14:25:49 -07:00
Antonio Scandurra and Nathan Sobo
7c547a09c9
Move history navigation logic to Workspace
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2023-05-29 19:47:59 +02:00
Antonio Scandurra and Nathan Sobo
f028df6108
Make Pane::add_item a proper Pane method
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2023-05-29 19:16:22 +02:00
Antonio Scandurra
2a6a33c55b
Show time in assistant messages
2023-05-29 16:23:16 +02:00
Kirill Bulatov
2d55a3ca31
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
2023-05-29 17:06:38 +03:00
Kirill Bulatov
99d139d2c9
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
2023-05-29 16:58:06 +03:00
Antonio Scandurra
4577cee4b4
Show custom header for assistant messages
2023-05-29 15:57:55 +02:00
Sergey Onufrienko
8cd244ea20
feat: organize themes by folders with LICENSE
2023-05-29 15:45:13 +02:00
Kirill Bulatov
13313e5c04
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
2023-05-29 12:49:37 +03:00
Antonio Scandurra
8094f56657
Set markdown as the assistant's buffer languages
2023-05-29 11:34:26 +02:00
Kirill Bulatov
99509fc6ed
Update LSP to the newest version
2023-05-28 21:55:08 +03:00
Max Brunsfeld
17ff7eb95f
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.
2023-05-26 15:55:14 -07:00
Max Brunsfeld
35e12824f2
Include repositories with workdir changes in worktree UpdatedGitRepsositories event
2023-05-26 15:47:37 -07:00
Max Brunsfeld
208cf495f8
Adjust diagnostic transformation test to not wait for two buffer notifications
2023-05-26 15:47:37 -07:00
Max Brunsfeld
c09a51b3b7
Derive worktree update messages from existing change events
2023-05-26 15:47:37 -07:00
Kirill Bulatov
4cc4bd6eb0
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
2023-05-27 01:27:24 +03:00
Kirill Bulatov
2024d1b88e
Shorten full paths with ~
2023-05-27 01:21:38 +03:00
Kirill Bulatov and Mikayla
25ec8a8960
Add a test
...
co-authored-by: Mikayla <mikayla@zed.dev >
2023-05-27 01:12:22 +03:00
Nathan Sobo
888c4b22f5
WIP: Not sure I actually want to rip this out
2023-05-26 16:11:58 -06:00
Nathan Sobo
47cf6dc4d7
Hide assistant gutter
2023-05-26 15:38:03 -06:00
Nathan Sobo
e59a6313cc
Cancel assists on escape
2023-05-26 14:49:27 -06:00
Max Brunsfeld
cdd178a149
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.
2023-05-26 09:24:15 -07:00
Max Brunsfeld
d56b0ae1e5
Make stricter assertions about change events in random worktree test
2023-05-26 09:24:15 -07:00
Max Brunsfeld
cd22cdcadc
Include paths loaded during initial scan in worktree UpdatedEntries event
2023-05-26 09:24:15 -07:00
Nathan Sobo and Antonio Scandurra
9e19d9cd3b
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 >
2023-05-26 10:09:55 -06:00
Kirill Bulatov
207dbd9ae3
Better display labels for external files
2023-05-26 18:18:32 +03:00
Kirill Bulatov
a42722bf7f
Track abs paths in history
2023-05-26 17:31:35 +03:00
Kirill Bulatov
a096f124ec
Properly display labels for currently opened external files
2023-05-26 15:44:44 +03:00
Kirill Bulatov
2b00082f06
Simplify selected index handling
2023-05-26 14:15:58 +03:00
Kirill Bulatov
d8cc99311d
Add absolute paths to historic elements
2023-05-26 14:03:44 +03:00
Kirill Bulatov
401420fb79
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
2023-05-26 10:14:50 +03:00
Kirill Bulatov
2f77518455
Fix duplicate item creation in project panel
2023-05-26 02:07:25 +03:00
Julia
d521fb89a0
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
2023-05-25 15:01:05 -04:00
Julia
a3bc3f85a9
Clean up final remaining code paths calling old diff update method
2023-05-25 14:41:09 -04:00
Julia
a1b4c57588
Fix tests
2023-05-25 14:29:28 -04:00
Julia
ee718b9a33
Remove concept of git diff refresh from Item trait
2023-05-25 14:29:28 -04:00
Julia and Max Brunsfeld
7331f2ce3f
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 >
2023-05-25 14:10:27 -04:00
Max Brunsfeld
e507cc509c
wip
2023-05-25 14:10:27 -04:00
Kirill Bulatov
be9731562b
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
2023-05-25 18:35:47 +03:00
Kirill Bulatov
20a6ccd521
Have proper undo for both client and host
2023-05-25 18:29:57 +03:00
Antonio Scandurra
1c9c4cedf2
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)
2023-05-25 15:44:23 +02:00
Antonio Scandurra
4e1927ed9c
Prevent bottom dock from becoming too large or too small
2023-05-25 15:29:59 +02:00
Antonio Scandurra
3d93c68e6f
Restore the ability to search terminals in the terminal panel ( #2528 )
...
Fixes
https://linear.app/zed-industries/issue/Z-1812/find-in-terminal-panel-is-broken

This also removes navigation controls from the terminal panel, given
that terminals don't make use of that feature anyway. When the toolbar
is empty, we'll avoid showing it altogether.

Release Notes:
- Fixed a regression that was preventing the terminal panel from being
searched.
2023-05-25 15:28:32 +02:00
Antonio Scandurra
dde7786aa3
Don't show navigation controls for terminal panel
2023-05-25 15:15:20 +02:00
Kirill Bulatov and Antonio Scandurra
c125d0d92b
Use Transaction instead of ProjectTransaction
...
Co-Authored-By: Antonio Scandurra <antonio@zed.dev >
2023-05-25 16:12:14 +03:00
Antonio Scandurra
c7e20b381a
Add search bar to terminal panel
2023-05-25 14:46:10 +02:00