e9073ec
agent_ui: Fix fallback icon used for external agents (#44777)
Click to expand commit body
When an external agent doesn't provide an icon, we were using different
fallback icons in all the places we display icons (settings view, thread
new menu, and the thread view toolbar itself).
Release Notes:
- N/A
Fix a bug where the branch picker would be dismissed before completing
the add remote flow, thus making Zed unable to add remote repositories
through the branch picker.
This bug was caused by the picker always being dismissed on the confirm
action, so the fix was stopping the branch modal from being dismissed
too early.
I also cleaned up the UI a bit and code.
1. Removed the loading field from the Branch delegate because it was
never used and the activity indicator will show remote add command if it
takes a while.
2. I replaced some async task spawning with the use of `cx.defer`.
3. Added a `add remote name` fake entry when the picker is in the name
remote state. I did this so the UI would be consistent with the other
states.
4. Added two regression tests.
4.1 One to prevent this bug from occurring again:
https://github.com/zed-industries/zed/pull/44742
4.2 Another to prevent the early dismissal bug from occurring
5. Made `init_branch_list_test` param order consistent with Zed's code
base
###### Updated UI
<img width="1150" height="298" alt="image"
src="https://github.com/user-attachments/assets/edead508-381c-4bd8-8a41-394dd5b7b781"
/>
Release Notes:
- N/A
This fixes the build when Visual Studio 2026 is installed.
Release Notes:
- N/A
John Tur
created
f2cc24c
docs: Add clarifying note about Vim subword motion (#44535)
Click to expand commit body
Clarify the docs regarding how operators are affected when subword
motion in Vim is activated.
Ref:
https://github.com/zed-industries/zed/issues/23344#issuecomment-3186025873.
Release Notes:
- N/A
---------
Co-authored-by: Kunall Banerjee <hey@kimchiii.space>
Will Garrison
and
Kunall Banerjee
created
488fa02
Streaming tool use for inline assistant (#44751)
dad6481
Disambiguate branch name in title bar (#44793)
Click to expand commit body
Add the repository name when:
- there's more than one repository, and
- the name of the active repository doesn't match the name of the
project (to avoid stuttering with the adjacent project switcher button)
Release Notes:
- The branch name in the title bar now includes the name of the current
repository when needed to disambiguate.
Cole Miller
created
0283bfb
Enable configuring edit prediction providers through the settings UI (#44505)
Click to expand commit body
- Edit prediction providers can now be configured through the settings
UI
- Cleaned up the status bar menu to only show _configured_ providers
- Added to the status bar icon button tooltip the name of the active
provider
- Only display the data collection functionality under "Privacy" for the
Zed models
- Moved the Codestral edit prediction provider out of the Mistral
section in the agent panel into the settings UI
- Refined and improved UI and states for configuring GitHub Copilot as
both an agent and edit prediction provider
#### Todos before merge:
- [x] UI: Unify with settings UI style and tidy it all up
- [x] Unify Copilot modal `impl`s to use separate window
- [x] Remove stop light icons from GitHub modal
- [x] Make dismiss events work on GitHub modal
- [ ] Investigate workarounds to tell if Copilot authenticated even when
LSP not running
Release Notes:
- settings_ui: Added a section for configuring edit prediction providers
under AI > Edit Predictions, including Codestral and GitHub Copilot.
Once you've updated you can use the following link to open it:
zed://settings/edit_predictions.providers
---------
Co-authored-by: Ben Kunkle <ben@zed.dev>
6e0ecbc
docs: Use `relative_line_numbers` instead of `toggle_relative_line_numbers` (#44749)
Click to expand commit body
Just a small docs change
With the deprecation of `toggle_relative_line_numbers` the docs should
reflect that
Release Notes:
- N/A
Josh Ayres
created
4754422
Add angled bracket highlighting for C++ (#44735)
Click to expand commit body
Enables rainbow bracket highlighting for angle brackets (< >) in C++.
<img width="401" height="46" alt="image"
src="https://github.com/user-attachments/assets/169afdaa-c8be-4b78-bf64-9cf08787eb47"
/>
Release Notes:
- Added rainbow bracket coloring for C++ angle brackets (`<>`)
Haojian Wu
created
e860252
gpui: Improve path rendering and bounds performance (#44655)
Marco Mihai Condrache
created
fad06dd
git: Show all branches in branch picker empty state (#44742)
Click to expand commit body
This fixes an issue where a user could get confused by the branch picker
because it would only show the 10 most recent branches, instead of all
branches.
Release Notes:
- git: Show all branches in branch picker when search field is empty
Anthony Eid
created
329ec64
gpui: Fix tab jitter from oversized scrolling (#42434)
Xiaobo Liu
created
e1d236e
ep: Apply diff to editable region only and edit history fixes (#44737)
Click to expand commit body
Release Notes:
- N/A
---------
Co-authored-by: Max Brunsfeld <maxbrunsfeld@gmail.com>
Co-authored-by: Agus Zubiaga <agus@zed.dev>
Oleksiy Syvokon
,
Max Brunsfeld
, and
Agus Zubiaga
created
We were panicking whenever something went wrong with an example in the
CLI. This can be very disruptive when running many examples, and e.g a
single request fails. Instead, if running more than one example, errors
will now be logged alongside instructions to explore and re-run the
example by itself.
<img width="1454" height="744" alt="CleanShot 2025-12-12 at 13 32 04@2x"
src="https://github.com/user-attachments/assets/87c59e64-08b9-4461-af5b-03af5de94152"></img>
You can still opt in to stop as soon as en error occurs with the new
`--failfast` argument.
Release Notes:
- N/A
Improves the scheduler by allowing tasks to have a set priority which
will significantly improve responsiveness.
Release notes:
- N/A
---------
Co-authored-by: Yara <git@yara.blue>
Co-authored-by: dvdsk <noreply@davidsk.dev>
- Limit status lines to 10 in case `max_parallelism` is specified with a
grater value
- Handle logging gracefully rather than writing over it when clearing
status lines
Release Notes:
- N/A
Closes #41176
Release Notes:
- Fixed SendKeystrokes mapping on windows
Co-authored-by: Kirill Bulatov <mail4score@gmail.com>
localcc
and
Kirill Bulatov
created
47c30b6
git: Revert "Ignore whitespace in git blame invocation" (#44648)
Click to expand commit body
Reverts zed-industries/zed#35960
cc @cole-miller
---------
Co-authored-by: Cole Miller <cole@zed.dev>
Piotr Osiewicz
and
Cole Miller
created
18d344e
language: Make `TreeSitterData` only shared between snapshots of the same version (#44198)
Click to expand commit body
Currently we have a single cache for this data shared between all
snapshots which is incorrect, as we might update the cache to a new
version while having old snapshots around which then may try to access
new data with old offsets/rows.
Release Notes:
- N/A *or* Added/Fixed/Improved ...
a07ea1a
util: Avoid redundant Arc allocation in SanitizedPath::from_arc (#44479)
Click to expand commit body
Release Notes:
- N/A
Signed-off-by: Xiaobo Liu <cppcoffee@gmail.com>
Xiaobo Liu
created
e03fa11
remote: Remove unnecessary and incorrect single quote in `MasterProcess` (#44697)
Click to expand commit body
Closes https://github.com/zed-industries/zed/issues/43992
Release Notes:
- Fixed remoting not working on some linux and mac systems
Lukas Wirth
created
17db7b0
Add keymap field to bug report issue template (#44564)
Click to expand commit body
Update the issue template used for "Report a bug" to include a field
specifically for the user's keymap file, as we've seen multiple cases
where we end up asking the users for their custom keymap, to ensure that
they're not overriding existing defaults.
Release Notes:
- N/A
Dino
created
1afe294
Move servers back from the background thread (#44696)
Click to expand commit body
Partial revert of https://github.com/zed-industries/zed/pull/44631
With this and `sccache` enabled, I get
<img width="3456" height="1096" alt="image"
src="https://github.com/user-attachments/assets/937760fb-8b53-49f8-ae63-4df1d31b292b"
/>
and r-a infinitely hangs waiting on this.
Release Notes:
- N/A
12073e1
Fix missing buffer font features in Blame UI, Hover Popover and Markdown Preview (#44657)
Click to expand commit body
- Fix missing font features in
`git_ui::blame_ui::GitBlameRenderer.render_blame_entry`
- Fix missing buffer font features in
`markdown_preview::markdown_renderer`
- Update the way that the markdown style is built for hover popovers so
that, for code blocks, the buffer font features are used.
- Introduce `gpui::Styled.font_features` to allow callers to also set
the font's features, similar to how `gpui::Styled.font_family` already
exists.
Relates to #44209
Release Notes:
- Fixed wrong font features in Blame UI, Hover Popover and Markdown
Preview
Dino
created
1186b50
git_ui: Fix commit and amend not working via keybinds in commit modal (#44690)
Click to expand commit body
Closes #41567
We were using the git panel editor to check the focus where the commit
modal has its only editor.
Release Notes:
- Fixed an issue where commit and amend actions wouldn’t trigger when
using keybinds in the commit modal.
Smit Barmase
created
65130a9
windows: Fix more VSCode keybinds (#44684)
23d18fd
git_ui: Always use latest commit message on amend (#44553)
Click to expand commit body
Update the behavior of `git::Amend` to ensure that the latest head
commit message, if available, is always loaded into the commit message
editor, regardless of its state. The previous text, if any, is now also
restored after the amend is finished.
- Update `FakeGitRepository.show` to include a message in the returned
`CommitDetails` so we can assert that this specific commit message is
set in the commit message editor.
- Add default implementation for `FakeGitRepository.commit` and
`FakeGitRepository.run_hook` to ensure that tests are able to run and
don't panic on `unimplemented!()`
- Refactor `GitPanel.load_last_commit_message_if_empty` to
`GitPanel.load_last_commit_message`, ensuring that the head commit
message is always loaded, regardless of whether the commit message
editor is empty.
- Update `GitPanel.commit_changes` to ensure that the pending amend
state is only updated if the editor managed to actually commit the
changes. This also ensures that we don't restore the commit message
editor's contents when amending a commit, before the amend is actually
processed.
- Update `CommitModal.amend`, removing the call to
`GitPanel.set_amend_pending` as that is now handled by the background
task created in `GitPanel.commit_changes`.
- Split the `commit` and `amend` methods from the event handlers so that
the methods can be called directly, as is now being done by
`CommitModal.on_commit` and `CommitModal.on_amend`.
Release Notes:
- Updated the `git: amend` command to always load the latest head
commit message, and to restore any previously entered text in the commit
message editor after the amend completes
Closes #44510
Release Notes:
- Improve performance of terminal link matching even more
Conrad Irwin
created
b871130
Restructure concurrency in EP CLI to allow running many examples in big rust repos (#44673)
Click to expand commit body
Release Notes:
- N/A
Max Brunsfeld
created
0a1e5f9
Allow triggering after release workflow manually (#44671)
Click to expand commit body
Release Notes:
- N/A
Conrad Irwin
created
8d0fff6
rust: Change cwd of `cargo run`-esque tasks to use package root, not dirname of current file as cwd (#44672)
Click to expand commit body
This also applies to `cargo clean` one.
Closes #20873
Release Notes:
- rust: Changed cwd of tasks that spawn a binary target to the root of a
current package (which used to be a directory of the current source
file).
Piotr Osiewicz
created
717d898
Show an underlying reason on file opening (#44664)
Click to expand commit body
Based on the debug attempt from
https://github.com/zed-industries/zed/issues/44370
Release Notes:
- N/A
Kirill Bulatov
created
1cd7563
Add ep distill command, for generating edit prediction training examples (#44670)
07748b7
Add scrolling functionality to markdown preview mode (#44585)
Click to expand commit body
Closes #21324
Adds four new commands:
- `markdown::MoveUp`, `markdown::MoveDown` - these scroll up and down in
markdown preview mode, by no more than the height of a large headline.
- `markdown::MoveUpByItem`, and `markdown::MoveDownByItem` - these
scroll up and down by the height of the item at the top of the markdown
preview window. So headlines and large codeblocks, for instance, scroll
further than individual paragraph lines.
Also attempts to create sensible defaults:
`down` -> `markdown::ScrollDown`
`up` -> `markdown::ScrollUp`
`alt-down` -> `markdown::ScrollDownByItem`
`alt-up` -> `markdown::ScrollUpByItem`
And in Vim:
`ctrl-u` -> `markdown::ScrollPageUp`
`ctrl-d` -> `markdown::ScrollPageDown`
`ctrl-e` -> `markdown::ScrollDown`
`ctrl-y` -> `markdown::ScrollUp`
Release Notes:
- Added commands `markdown::ScrollUp`, `markdown::ScrollDown`,
`markdown::ScrollUpByItem`, and `markdown::ScrollDownByItem`
- Changed commands `markdown::MovePageUp` to `markdown::ScrollPageUp`
and `markdown::MovePageDown` to `markdown::ScrollPageDown`
<img width="429" height="188" alt="Screenshot 2025-12-11 at 3 45 26 PM"
src="https://github.com/user-attachments/assets/fe9f1b86-7268-4c63-a8c2-75ac671012c9"
/>
Release Notes:
- Added GPT-5.2 support when using your own OpenAI key
Richard Feldman
created
eb7da26
Disable word completions in markdown and plaintext files (#44654)
Click to expand commit body
Reformat on save had also added trailing commas.
Release Notes:
- Disable word completions in plaintext and markdown files, see
https://zed.dev/docs/configuring-zed?highlight=word%20completio#words on
how to enable it back in the language settings
Kirill Bulatov
created
9c099e7
Update file vs folder open keymaps on macos/linux to match windows (#44598)
Click to expand commit body
Closes #44597
Matches what was done here:
https://github.com/zed-industries/zed/pull/44409/commits/55dfbaca685fc466efedace55527b9d12ab67950#diff-cc832e840d61526768bb4acec7645a71e8b160a65a30e7ce9e9c51762b58199a
Release Notes:
- Standardize Cmd-O = open file, Cmd-K Cmd-O = open folder across
operating systems.
---------
Co-authored-by: Lukas Wirth <me@lukaswirth.dev>
Zachiah Sawyer
and
Lukas Wirth
created
7669b05
image viewer: Make image metadata not a button (#44651)
Click to expand commit body
Tiny thing I noticed; the image metadata showing on the status bar was
previously a button, but given that nothing happens when you click it,
it doesn't need to be one. Having hover, active, and all other states
was confusing.
Release Notes:
- N/A
Danilo Leal
created
2098b67
edit prediction: Respect enabled settings when refreshing from diagnostics (#44640)
Click to expand commit body
Release Notes:
- N/A
Agus Zubiaga
created
5a6198c
language: Spawn language servers on background threads (#44631)
Click to expand commit body
Closes https://github.com/zed-industries/zed/issues/39056
Leverages a new `await_on_background` API that spawns the future on the
background but blocks the current task, allowing to borrow from the
surrounding scope.
Release Notes:
- N/A *or* Added/Fixed/Improved ...
Lukas Wirth
created
cda78c1
git: Make permalinks aware of current diffs (#41915)
Click to expand commit body
Addressing #22546, we want git permalinks to be aware of the current
changes within the buffer.
This change calculates how many lines have been added/deleted between
the start and end of the selection and uses those values to offset the
selection.
This is done within `Editor::get_permalink_to_line` so that it can be
passed to any git_store.
Example:
<img width="284" height="316" alt="image"
src="https://github.com/user-attachments/assets/268043a0-2fc8-41c1-b094-d650fd4e0ae0"
/>
Where this selections permalink would previously return L3-L9, it now
returns L2-L7.
Release Notes:
- git: make permalinks aware of current diffs
Closes #22546
---
This is my first PR into the zed repository so very happy for any
feedback on how I've implemented this. Thanks!