e14a4ab
Fix small spelling mistakes (#38284)
Click to expand commit body
Closes #ISSUE Release Notes: - N/A *or* Added/Fixed/Improved ...
Uwe Krause created
e14a4ab
Fix small spelling mistakes (#38284)
Closes #ISSUE Release Notes: - N/A *or* Added/Fixed/Improved ...
Uwe Krause created
0343b5f
Add new crate denoise required by audio (#38217)
The audio crate will use the denoise crate to remove background noises from microphone input. We intent to contribute this to rodio. Before that can happen a PR needs to land in candle. Until then this lives here. Uses a candle fork which removes the dependency on `protoc` and has the PR's mentioned above already applied. Release Notes: - N/A --------- Co-authored-by: Mikayla <mikayla@zed.dev>
David Kleingeld and Mikayla created
26202e5
language_models: Use `message` field from Cloud error responses, if present (#38286)
This PR updates the Cloud language model provider to use the `message` field from the Cloud error response, if it is present. Previously we would always show the entire JSON payload in the error message, but with this change we can show just the user-facing `message` the error response is in a shape that we recognize. Release Notes: - N/A
Marshall Bowers created
ee91236
Check if virtual environment is in worktree root (#37510)
The problem from issue #37509 comes from local virtual environments created with certain approaches (including the 'simple' way of `python -m venv`) not having a `.project` file with the path to the project's root directory. When the toolchains are sorted, a virtual environment in the project is not treated as being for that project and therefore is not prioritized. With this change, if a toolchain does not have a `project` associated with it, we check to see if it is a virtual environment, and if it is we use its parent directory as the `project`. This will make it the top priority (i.e. the default) if there are no other virtual environments for a project, which is what should be expected. Closes #37509 Release Notes: - Improved python toolchain prioritization of local virtual environments.
George Waters created
673a98a
Fix a number of spelling mistakes (#38281)
My pre push hooks keep failing on these. This is easier then disabling and re-enabling those hooks all the time :) Closes #ISSUE Release Notes: - N/A
David Kleingeld created
5674445
Move keyboard shortcut for `pane::GoForward` (#38221)
Move keyboard shortcut for `pane:GoForward` so it's going to be displayed as a shortcut hint in UI. Currently `Forward` is shown as a hint, which isn't consistent with `GoBack` action and can be confusing. Release Notes: - Improved the displayed keybinding for the `pane::GoForward` action on Linux.
VBB created
53513ca
Fix filled button hover background (#38235)
Release Notes: - Fixed filled button hover background. ## Before https://github.com/user-attachments/assets/fbc75890-d1a4-4a0c-b54e-ca2c7e63a661 ## After https://github.com/user-attachments/assets/a3595b01-e143-4cd0-8bc4-90db9ccfbf74 This appears to be a minor calculation error, not an intentional use of this value. If we pass `0.92` to `fade_out`, the calculated will be `alpha: 0.08`. --------- Co-authored-by: Danilo Leal <daniloleal09@gmail.com>
Jason Lee and Danilo Leal created
e885a93
git_ui: Add tooltip for branch picker items (#38261)
Closes #38256 <img width="300" alt="image" src="https://github.com/user-attachments/assets/5018951f-0f1b-4d5d-b59d-5b5266380e43" /> Release Notes: - Added tooltip to Git branch picker items, making it easier to distinguish long branch names.
Smit Barmase created
a01a2ed
languages: Add Tailwind CSS support for TypeScript (#38254)
Closes #37028 I noticed many projects use Tailwind in plain TypeScript (.ts) files, so it makes sense to support them out of the box, alongside .js and .tsx files we already handle. For example, see [supabase](https://github.com/supabase/supabase/blob/master/packages/ui/src/lib/theme/defaultTheme.ts). Note: You’ll still need to add `"classFunctions": ["cva", "cx"],` manually for Tailwind completions to work in `cva` type methods. This is because you don’t want completions on every string, only in specific methods or regex matches. This is documented. Release Notes: - Added out-of-the-box support for Tailwind completions in `.ts` files.
Smit Barmase created
af3bc45
Drop ellipses from About Zed menu item (#38211)
Follow the macOS app style guideline. Release Notes: - N/A
Nathan Sobo created
173074f
search: Re-issue project search if search query is stale on replacement (#38251)
Closes https://github.com/zed-industries/zed/issues/34897 Release Notes: - Fixed project search replacement replacing stale search results
Lukas Wirth created
a7cb64c
Remove unused agent server settings module (#38250)
This was no longer in the module graph (the settings moved elsewhere) so cleaning up the dead code. Release Notes: - N/A
Ben Brandt created
c6472fd
agent_settings: Fix schema validation rejecting custom llm providers (#38248)
Closes https://github.com/zed-industries/zed/issues/37989 Release Notes: - N/A
Lukas Wirth created
c0710fa
agent_servers: Set proxy env for all ACP agents (#38247)
- Use ProxySettings::proxy_url to read from settings or env - Export HTTP(S)_PROXY and NO_PROXY for agent CLIs - Add read_no_proxy_from_env and move parsing from main Closes https://github.com/zed-industries/claude-code-acp/issues/46 Release Notes: - acp: Pass proxy settings through to all ACP agents
Ben Brandt created
f321d02
auto_update: Show update error on hover and open logs on click (#38241)
Release Notes: - Improved error reporting when auto-updating fails
Lukas Wirth created
1c09985
worktree: Add more context to `log_err` calls (#38239)
Release Notes: - N/A
Lukas Wirth created
d986077
client: Hide usage when not available (#38234)
Release Notes: - N/A
Marshall Bowers created
555b6ee
agent: Add small UI fixes (#38231)
Release Notes: - N/A
Danilo Leal created
6446963
agent: Make assistant panel input size configurable (#37975)
Release Notes: - Added the `agent. message_editor_min_lines `setting to allow users to customize the agent panel message editor default size by using a different minimum number of lines. <img width="800" height="1316" alt="Screenshot 2025-09-11 at 5 47 18 pm" src="https://github.com/user-attachments/assets/20990b90-c4f9-4f5c-af59-76358642a273" /> --------- Co-authored-by: Danilo Leal <daniloleal09@gmail.com>
Owen Kelly and Danilo Leal created
ceb907e
onboarding: Add scrollbar to pages (#38093)
Closes #37214 This PR adds a scrollbar to the onboarding view and additionally ensures the scroll state is properly reset when switching between the different pages each time. Release Notes: - N/A
Finn Evers created
3dbccc8
Fix hover element on ACP thread mode selector (#38204)
Closes #38197 This will render `^ click to also ...` on MacOS and `Ctrl + click to also ...` on Windows and Linux. |Before|After| |-|-| | <img width="683" height="197" alt="image" src="https://github.com/user-attachments/assets/09909f1b-3163-40d1-b025-4eb9b159fbf3" /> | <img width="683" height="197" alt="image" src="https://github.com/user-attachments/assets/47d0290d-afa2-4b1b-a588-adfe3130d0b1" />| On Mac: <img width="683" height="197" alt="image" src="https://github.com/user-attachments/assets/f63103b5-1ceb-4193-ae6c-be55b97106e0" /> Release Notes: - Fixed keymap hint when hovering over mode selector --------- Co-authored-by: Danilo Leal <daniloleal09@gmail.com>
Alvaro Parker and Danilo Leal created
853e625
edit predictions: Add new excerpt logic (not yet used) (#38226)
Release Notes: - N/A --------- Co-authored-by: agus <agus@zed.dev>
Michael Sloan and agus created
0784bb8
docs: Add "Copy as Markdown" button to toolbar (#38218)
## Summary Adds a "Copy as Markdown" button to the documentation toolbar that allows users to easily copy the raw markdown content of any documentation page. This feature is inspired by similar implementations on sites like [Better Auth docs](https://www.better-auth.com/docs/installation) and [Cloudflare Workers docs](https://developers.cloudflare.com/workers/) which provide easy ways for users to copy documentation content. ## Features - **Button placement**: Positioned between theme toggle and search icon for optimal UX - **Content fetching**: Retrieves raw markdown from GitHub's API for the current page - **Consistent styling**: Matches existing toolbar button patterns ## Test plan - [x] Copy functionality works on all documentation pages - [x] Toast notifications appear and disappear correctly - [x] Button icon animations work properly (spinner → checkmark → copy) - [x] Styling matches other toolbar buttons - [x] Works in both light and dark themes ## Screenshots The button appears as a copy icon between the theme and search buttons in the left toolbar. <img width="798" height="295" alt="image" src="https://github.com/user-attachments/assets/37d41258-d71b-40f8-b8fe-16eaa46b8d7f" /> <img width="1628" height="358" alt="image" src="https://github.com/user-attachments/assets/fc45bc04-a290-4a07-8d1a-a010a92be033" /> --------- Co-authored-by: Danilo Leal <daniloleal09@gmail.com>
Kenny and Danilo Leal created
9046091
Add a test that would have caught the bug last week (#38222)
This adds a test to make sure that the default value of the auto update setting is always true. We manually re-applied the broken code from last week, and confirmed that this test fails with that code. Release Notes: - N/A --------- Co-authored-by: Ben Kunkle <ben@zed.dev> Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>
Mikayla Maki , Ben Kunkle , and Conrad Irwin created
6384966
agent: Improve some items in the settings view UI (#38199)
All described in each commit; mostly small things, simplifying/clearing up the UI. Release Notes: - N/A
Danilo Leal created
8b9c747
docs: Call out Omarchy specifically in regards to issues with `amdvlk` (#38214)
Closes #28851 Release Notes: - N/A *or* Added/Fixed/Improved ...
Ben Kunkle created
63586ff
Add new injections for Go (#37605)
support for injecting sql, json, yaml, xml, html, css, js, lua and csv value if you use `/* lang */` before string literals, highlights them **Example:** ```go const sqlQuery = /* sql */ "SELECT * FROM users;" // highlights as SQL code ``` <img width="629" height="46" alt="Screenshot 2025-09-05 at 06 17 49" src="https://github.com/user-attachments/assets/80f404d8-0a47-428d-bdb5-09fbee502cfe" /> Closes #ISSUE Release Notes: - Go: Added support for injecting sql, json, yaml, xml, html, css, js, lua and csv language highlights into string literals, when they are prefixed with `/* lang */` **Example:** ```go const sqlQuery = /* sql */ "SELECT * FROM users;" // Will be highlighted as SQL code ```
Kaan Kuscu created
35e5aa4
Re-add VSCode syntax node motions (#38208)
Closes #ISSUE
Release Notes:
- (preview only) restored ctrl-shift-{left,right} for Larger/Smaller
syntax node. This is VSCode's default and avoids the breaking change
from #37874
Conrad Irwin created
7ea94a3
Create failed tool call entries for missing tools (#38207)
Release Notes: - When an agent requests a tool that doesn't exist, this is now treated as a failed tool call instead of stopping the thread.
Richard Feldman created
6d6c3d6
lsp: Fix overnotifying about open buffers for unrelated servers (#38196)
Do not report all open buffers to new instances of the same language server, as they can respond with ~spurious errors. This regressed in https://github.com/zed-industries/zed/pull/34142 Closes https://github.com/zed-industries/zed/issues/35017 Release Notes: - Fixed Zed overly notifying language servers about open buffers, which could've resulted in confusing errors in multi-language projects (in e.g. Go).
Piotr Osiewicz created
53b2f37
Enhance layout and styling of tool list in AgentConfiguration (#38195)
Improve the layout and styling of the tool list in the AgentConfiguration, ensuring better responsiveness and visual clarity. closes #38194 <img width="1270" height="738" alt="image" src="https://github.com/user-attachments/assets/86345e57-4fd0-43b8-8b8d-6209dc635dfb" /> --------- Co-authored-by: Danilo Leal <daniloleal09@gmail.com>
Hichem and Danilo Leal created
92b946e
acp_thread: Properly use `project` terminal API (#38186)
Closes https://github.com/zed-industries/zed/issues/35603 Release Notes: - Fixed shell selection for terminal tool
Lukas Wirth created
e9b4f59
Fix external agent authentication with spaces in paths (#38175)
This fixes terminal-based authentication for external ACP agents (Claude Code, Gemini CLI) when file paths contain spaces, like "Application Support" on macOS and "Program Files" on Windows. When users click authentication buttons or type `/login`, they get errors like `Cannot find module '/Users/username/Library/Application'` because the path gets split at the space. The fix removes redundant `shlex::try_quote` calls from `spawn_external_agent_login`. These were causing double-quoting since the terminal spawning code already handles proper shell escaping. Added a test to verify paths with spaces aren't pre-quoted. Release Notes: - Fixed external agent authentication failures when file paths contain spaces --------- Co-authored-by: Hakan Ensari <hakanensari@users.noreply.github.com> Co-authored-by: Claude <claude@anthropic.com>
Hakan Ensari , Hakan Ensari , and Claude created
989adde
Add scrollbars to markdown preview and syntax tree view (#38183)
Closes https://github.com/zed-industries/zed/issues/38141 This PR adds default scrollbars to the markdown preview and syntax tree view. Release Notes: - Added scrollbars to the markdown preview and syntax tree view.
Finn Evers created
393d678
terminal: Do not auto close shell terminals if they error out (#38182)
Closes https://github.com/zed-industries/zed/issues/38134 This also reduces an annoying level of shell nesting Release Notes: - N/A
Lukas Wirth created
4a58250
ui: Follow-up improvements to the scrollbar component (#38178)
This PR lands some more improvements to the reworked scrollbars. Namely, we will now explicitly paint a background in cases where a track is requested for the specific scrollbar, which prevents a flicker, and also reserve space only if space actually needs to be reserved. The latter was a regression introduced by the recent changes. Release Notes: - N/A
Finn Evers created
cfb2925
macOS: Disable NSAutoFillHeuristicController on macOS 26 (#38179)
Closes #33182 From https://github.com/zed-industries/zed/issues/33182#issuecomment-3289846957, thanks @mitchellh. Release Notes: - Fixed an issue where scrolling could sometimes feel choppy on macOS 26.
Smit Barmase created
14f4e86
terminal: Do not auto close shell terminals if they error out (#38180)
cc https://github.com/zed-industries/zed/issues/38134 Release Notes: - N/A
Lukas Wirth created
4d54ccf
agent_servers: Let Gemini CLI know it is running in Zed (#38058)
By passing through Zed as the surface, Gemini can know which editor it is running in. Release Notes: - N/A
Ben Brandt created
5b1c87b
Fix incorrect ANSI color contrast adjustment on some background colors (#38155)
The `Hsla` -> `Rgba` conversion sometimes results in negative (but very close to 0) color components due to floating point imprecision, causing the `.powf(constants.main_trc)` computations in the `srgb_to_y` function to evaluate to `NaN`. This propagates to `apca_contrast` which then makes `ensure_minimum_contrast` unconditionally return `black` for certain background colors. This PR addresses this by clamping the rgba components in `impl From<Hsla> for Rgba` to 0-1. Before/after: <img width="1044" height="48" alt="before" src="https://github.com/user-attachments/assets/771f809f-3959-43e9-8ed0-152ff284cef8" /> <img width="1044" height="49" alt="after" src="https://github.com/user-attachments/assets/5fd6ae25-1ef0-4334-90d1-7fc5acf48958" /> Release Notes: - Fixed an issue where ANSI colors were incorrectly adjusted to improve contrast on some background colors
Tim Vermeulen created
0fef17b
Hide BasedPyright banner in toolbar when dismissed (#38135)
This PR fixes the `BasedPyrightBanner`, making sure the banner is completely hidden in the toolbar, when it was dismissed, or it's not installed. Without the fix, the banner still occupies some space in the toolbar, making the UI looks inconsistent when editing a Python file. The bug is **especially prominent** when the toolbar is hidden in the user's settings (see below). _Banner is shown_ <img width="1470" height="254" alt="Screenshot 2025-09-14 at 11 36 37" src="https://github.com/user-attachments/assets/1415b075-0660-41ed-8069-c2318ac3a7cf" /> _Banner dismissed_ <img width="1470" height="207" alt="Screenshot 2025-09-14 at 11 36 44" src="https://github.com/user-attachments/assets/828a3fba-5c50-4aba-832c-3e0cc6ed464b" /> _Banner dismissed (and the toolbar is hidden)_ <img width="1470" height="177" alt="Screenshot 2025-09-14 at 12 07 25" src="https://github.com/user-attachments/assets/41aa5861-87df-491f-ac7e-09fc1558dd84" /> Closes n/a Release Notes: - Fixed the basedpyright onboarding banner
Vladimir Varankin created
5261969
language_models: Add support for API key to Ollama provider (#34110)
Closes https://github.com/zed-industries/zed/issues/19491 Release Notes: - Ollama: Added configuration of URL and API key for remote Ollama provider. --------- Signed-off-by: Umesh Yadav <git@umesh.dev> Co-authored-by: Peter Tripp <peter@zed.dev> Co-authored-by: Oliver Azevedo Barnes <oliver@liquidvoting.io> Co-authored-by: Michael Sloan <michael@zed.dev>
Umesh Yadav , Peter Tripp , Oliver Azevedo Barnes , and Michael Sloan created
a598fba
ai: Show "API key configured for {URL}" for non-default urls (#38170)
Followup to #38163, also makes some changes intended to be included in that PR. Release Notes: - N/A
Michael Sloan created
634ae72
Misc cleanup + clear language model provider API key editors when API keys are submitted (#38165)
Followup to #38163 along with some other misc cleanups Release Notes: - N/A
Michael Sloan created
98edf1b
Reload API keys when URLs configured for LLM providers change (#38163)
Three motivations for this: * Changing provider URL could cause credentials for the prior URL to be sent to the new URL. * The UI is in a misleading state after URL change - it shows a configured API key, but on restart it will show no API key. * #34110 will add support for both URL and key configuration for Ollama. This is the first provider to have UI for setting the URL, and this makes these issues show up more directly as odd UI interactions. #37610 implemented something similar for the OpenAI and OpenAI compatible providers. This extracts out some shared code, uses it in all relevant providers, and adds more safety around key use. I haven't tested all providers, but the per-provider changes were pretty mechanical, so hopefully work properly. Release Notes: - Fixed handling of changes to LLM provider URL in settings to also load the associated API key.
Michael Sloan created
1090c47
Move Keymap Editor Table component to UI crate (#38157)
Closes #ISSUE Move the data table component created for the Keymap Editor to the UI crate. Additionally includes simplifications to the scrollbar component in UI necessary for the table component to support scrollbar configurations, and a fix for an issue with the table component where when used with the `.row` API instead of `uniform_list` the rows would render on top of each other. Release Notes: - N/A *or* Added/Fixed/Improved ...
Ben Kunkle created
be7b22b
Show docs for all documented actions in `keymap.json` (#38156)
Release Notes: - Fixed a bug where action documentation while editing `keymap.json` was only shown for actions that take input.
Michael Sloan created
f3e49e1
x11: Don't skip consecutive same key press events in the same batch (#38154)
This has noticeable misbehavior when framerates are low (in my case this
sometimes happens when CPUs are throttled and compilation is happening),
as now a batch of x11 events can contain events over the span of 100s of
millis. So in that case, key press repetitions with quite normal typing
are skipped.
Under normal operating conditions it can be reproduced by running this
and quickly switching to Zed:
> sleep 1; for i in {1..5}; do xdotool type --delay 5 "aaaaaa "; xdotool
key Return; done
Output before looks like:
```
aaa
aaaaa
aaa
aaa
aaaa
```
Output after looks like:
```
aaaaaa
aaaaaa
aaaaaa
aaaaaa
aaaaaa
```
This behavior was added in #13955.
Release Notes:
- N/A
Michael Sloan created
0adc6dd
ui: Fix scrollbar showing despite being disabled by tracked setting (#38152)
Closes #38147 The scrollbar's `show_state` field was always being initialized to `VisibilityState::Visible`, ignoring the `show_setting` value. Release Notes: - N/A
Alvaro Parker created
99b7167
Ability to update JSON arrays (#38087)
Closes #ISSUE
Adds the ability to our JSON updating code to update arrays within other
objects. Previously updating of arrays was limited to just top level
arrays (i.e. `keymap.json`) however this PR makes it so nested arrays
are supported as well using `#{index}` syntax as a key.
This PR also fixes an issue with the array updating code that meant that
updating empty json values `""` or an empty `keymap.json` file in the
case of the Keymap Editor would fail instead of creating a new array.
Release Notes:
- Fixed an issue where keybindings would fail to save in the Keymap
Editor if the `keymap.json` file was completely empty
Ben Kunkle created