1a9f9cc
Add note about `inode/directory` to Zed desktop entry (#39076)
Click to expand commit body
Release Notes: - N/A
Hexorg created
1a9f9cc
Add note about `inode/directory` to Zed desktop entry (#39076)
Release Notes: - N/A
Hexorg created
6da5945
Optimize fs_watcher to use less RAM by doing less work (#39602)
mac_watcher already does this so it would make more sense to also do this on Windows and it saves ~500-600mb of ram on the chromium project. This does not improve memory usage on linux because inotify cannot do recursive directory monitoring Release Notes: - N/A
localcc created
354cc65
search: Introduce more yield points in project search `pending_search` task (#39624)
This should help with project search lagging I believe Release Notes: - N/A *or* Added/Fixed/Improved ...
Lukas Wirth created
2c6a863
remote: Fix wsl failing to start on some setups (#39612)
Closes https://github.com/zed-industries/zed/issues/39433 Release Notes: - N/A *or* Added/Fixed/Improved ...
Lukas Wirth created
84ec865
agent: Fix gradient overlay in file list within the activity bar (#39619)
Release Notes: - N/A
Danilo Leal created
80727a0
editor: Limit snippet query range instead of collecting from buffer start (#39617)
Fixes hang when computing query for snippet completions when working with really large buffers. Release Notes: - N/A
Smit Barmase created
e7339fb
project_panel: Focus project panel when clicking empty space (#39489)
Closes #39486 Release Notes: - Fixed: Project Panel now properly focuses when clicking empty space, allowing keyboard shortcuts to work as expected
ozer created
db5b1a3
settings ui: Add some UX adjustments (#39615)
Release Notes: - N/A
Danilo Leal created
bc39ed2
editor: Preserve font features for vim block cursor (#39474)
## Summary Fixes an issue where font features (like ligatures) were not applied to text under the vim block cursor. The cursor would inherit the font family from the character at the cursor position, but would use default font features instead of the editor's configured font features. ## Changes - Make the font mutable when rendering the vim block cursor - Apply the editor's text style font features to the cursor font This ensures that text under the block cursor renders with the same visual appearance as the rest of the editor content. Closes #39471 Release Notes: - Fixed vim block cursor not respecting font features (like ligatures)
Ratazzi created
1764337
agent: Fix plan summary text overflow in Claude Code threads (#39603)
| Before | After | |--------|--------| | <img width="700" height="764" alt="Screenshot 2025-10-06 at 9 43@2x" src="https://github.com/user-attachments/assets/faf7e93f-f0d8-4bea-9f8d-272c83b41b18" /> | <img width="700" height="394" alt="Screenshot 2025-10-06 at 9 43 2@2x" src="https://github.com/user-attachments/assets/3f404e69-de3a-44c2-8111-0212d5d91199" /> | Release Notes: - agent: Fixed a bug in Claude Code threads where the plan summary text would overflow beyond its container.
Danilo Leal created
3707102
title_bar: Show git status indicator icon in the title bar (#38029)
See related discussion #37046. <details> <summary>Screenshots</summary> **No Changes** <img src="https://github.com/user-attachments/assets/e814da6e-bc9b-4edd-b37a-6bb4680d5bb3" /> **Added** <img src="https://github.com/user-attachments/assets/07ffdf90-08cb-43f4-b2bd-9966a21e08de" /> **Changed** <img src="https://github.com/user-attachments/assets/7e13b999-83b3-41ea-b2ab-baaa1541b169" /> **Deleted** <img src="https://github.com/user-attachments/assets/a77fc7e3-a026-419a-87bd-7146c3ca46a9" /> **Conflicts** <img src="https://github.com/user-attachments/assets/17e7e35c-d81b-4660-808d-08e12107ea2d" /> </details> Release Notes: - Show git status indicator icon in the title bar
Lev Zakharov created
5263f51
terminal: Fix terminal cloning on WSL (#39552)
Should close #39428 The working directory of the `wsl.exe` program is set to a Linux path, which is invalid on the Windows side, causing the terminal to crash. The first spawn works because there is no active terminal view, allowing a new shell (which checks for the remote) to be created. I cannot explain why it works on SSH remote clients, but I may be missing something in the remote connection implementation. I don't have a Windows machine to test this, so I would appreciate someone testing it. 🙏🏼 Release Notes: - Fixed an issue where WSL terminals could not be splitted --------- Signed-off-by: Marco Mihai Condrache <52580954+marcocondrache@users.noreply.github.com>
Marco Mihai Condrache created
93cd10a
terminal: Re-enable activation scripts on windows (#39604)
Release Notes: - N/A *or* Added/Fixed/Improved ...
Lukas Wirth created
2c1cc01
linux: Fix enter key triggering newline instead of commiting input (#39599)
Closes #31337 #35537 Release Notes: - Fixed an issue on Linux X11 where pressing Enter added a new line instead of confirming English input.
Smit Barmase created
81ada92
editor: Fix clangd switch source header action failing on wsl (#39598)
Closes https://github.com/zed-industries/zed/issues/39180 Release Notes: - Fixed clangd switch source header action failing on wsl
Lukas Wirth created
4bd7ef8
acp_thread: If available, use git bash over powershell in terminal tool (#39466)
Release Notes: - When git bash is installed, agents will now use that over powershell when invoking terminal commands
Lukas Wirth created
d1e2a1f
gpui: Assert validity of text runs for `StyleText` (#39581)
Should help with figuring out the char boundary panic in text shaping on windows Release Notes: - N/A *or* Added/Fixed/Improved ...
Lukas Wirth created
79a8986
settings ui: Add scrollbar and other design details (#39504)
Release Notes: - N/A
Danilo Leal created
d2b91eb
settings ui: Add numeric steppers to settings UI (#39491)
This PR adds the numeric stepper component to the settings ui and
implements some settings that rely on this component as well.
I also switched {buffer/ui}_font_weight to the `gpui::FontWeight` type
and added a manual implementation of the Schemars trait. This allows Zed
to send min, max, and default information to the JSON LSP when a user is
manually editing the settings file.
The numeric stepper elements added to the settings ui are below:
- ui font size
- ui font weight
- Buffer font size
- Buffer font weight
- Scroll sensitivity
- Fast scroll sensitivity
- Vertical scroll margin
- Horizontal scroll margin
- Inline blame padding
- Inline blame delay
- Inline blame min column
- Unnecessary code fade
- Tab Size
- Hover popover delay
Release Notes:
- N/A
Anthony Eid created
c26937a
zed: Show GPUI Inspector item in Dev build menus (#39287)
# Why I have find out that this tool exists by browsing Keymap Editor. I think it would be nice for its discoverability to show it in the app menus in Dev builds. # How Add "GPUI Inspector" app menu item conditionally for Dev builds only. Release Notes: - N/A # Preview <img width="1014" height="948" alt="Screenshot 2025-10-01 at 14 36 48" src="https://github.com/user-attachments/assets/c0409e67-1f4d-44f3-90b3-293ad4fe5c73" />
Bartosz Kaszubowski created
da82eec
editor: Fix utf8 boundary panic in `process_completion_for_edit` (#39561)
Fixes ZED-1WH Release Notes: - Fixed panic when requesting completions after a multibyte character
Lukas Wirth created
2bfcd60
editor: Shrink `DisplayMapSnapshot` from `824` to `256` bytes (#39568)
We have unnecessary clones for the fields here as most of the snapshots contain the others hierarchically. Release Notes: - N/A *or* Added/Fixed/Improved ...
Lukas Wirth created
9c7369f
terminal: Fix rendering of zero-width combining characters (#39526)
Add support for rendering Unicode combining characters (diacritics) in the terminal's batched text runs. - Add append_zero_width_chars() to handle combining marks - Integrate zero-width chars into all batching code paths - Update cell extras tracking logic - Add test for combining character rendering Fixes display of é, ñ, ô and other diacritics. Closes #39525 Release Notes: - Fixed: NFD/NFKD normalized text (e.g., é as e + ◌́) not rendering in integrated terminal Before: <img width="874" height="688" alt="SCR-20251004-udnj" src="https://github.com/user-attachments/assets/8d9f9c9f-dac4-4382-92c2-8b6c1d817abd" /> After: <img width="873" height="686" alt="SCR-20251004-ulsw" src="https://github.com/user-attachments/assets/fbd5cdc7-fdd6-44dc-8b05-cc425644f1a0" />
Ratazzi created
5160510
chore: Remove unused settings ui module (#39580)
The editor settings control module was the first prototype of what a settings UI could look like in Zed, but the code is outdated now and is no longer used. So this PR removes it for cleanup. Release Notes: - N/A
Anthony Eid created
ee557fb
Add window close keybindings for Settings UI (#39578)
Closes #ISSUE Release Notes: - N/A
Mikayla Maki created
f9919f9
Swap the start building and login buttons (#39576)
New onboarding screen: <img width="1027" height="700" alt="Screenshot 2025-10-05 at 10 38 57 PM" src="https://github.com/user-attachments/assets/5dc49e53-68e7-4559-8ce0-1bada629781d" /> This PR also adds a new telemetry event: `Welcome Start Building Clicked` Release Notes: - N/A
Mikayla Maki created
0f0974f
Add script to bump GPUI version (#39573)
This script successfully published the [0.2.0-test.4 GPUI prerelease](https://crates.io/crates/gpui/0.2.0-test.4). Release Notes: - N/A
Mikayla Maki created
e317d98
Prep crates for GPUI on crates.io (#39543)
Release Notes: - N/A
Mikayla Maki created
dada318
Remove iterations from the slow FS tests (#39564)
Follow-up to https://github.com/zed-industries/zed/pull/39557 Release Notes: - N/A
Kirill Bulatov created
b53f9c8
editor: Fix panic in `delete_line` with multibyte characters (#39560)
Fixes ZED-1TG Release Notes: - Fixed panic in `delete line` when following line contains multibyte characters
Lukas Wirth created
5b0a2f1
Add more unit tests for Rope (#39426)
I was looking at the rope implementation and some of the existing bugs that crash in there, and I ran cargo-mutants to inspect test coverage. I was motivated by bugs like https://github.com/zed-industries/zed/issues/38556 but this doesn't fix it and the bug may well be at a higher layer. This PR adds coverage for a few functions that aren't tested today. I didn't find any actual bugs yet. I can see this tree is pretty sparse on docstrings so if you think these are too verbose I can take them out or drop the whole PR. Release Notes: - N/A
Martin Pool created
d5a4890
remote: Keep full shell path on wsl (#39555)
Release Notes: - N/A *or* Added/Fixed/Improved ...
Lukas Wirth created
cd61bfb
docs: Fix path of language extensions on Linux (#39425)
Release Notes: - N/A
Be created
469ecfb
Emit less update events for odd FS events (#39557)
When running flycheck, I've noticed that scrolling starts to lag: https://github.com/user-attachments/assets/b0bef0a3-ccbd-479d-a385-273398086d38 When checking the trace, it is notable that project panel updates its entire tree multiple times during flycheck: <img width="2032" height="1136" alt="image" src="https://github.com/user-attachments/assets/d1935e77-3b00-4be5-a12a-8a17a9d64202" /> [scrolling.trace.zip](https://github.com/user-attachments/files/22710852/scrolling.trace.zip) Turns out, `target/debug` directory is loaded by Zed (presumably, reported by langserver as there are sources generated by bindgen and proto that need to be loaded), and `target/debug/build` directory received multiple events of a `None` kind for Zed, which trigger the rescans. Rework the logic to omit the `None`-kind events in Zed, and to avoid excessive repo updates if not needed. Release Notes: - Improved worktree FS event emits in gitignored directories --------- Co-authored-by: Cole Miller <cole@zed.dev>
Kirill Bulatov and Cole Miller created
46b6ada
markdown: Add HTML `table` element support (#38605)
Follow-up: https://github.com/zed-industries/zed/pull/38590 **Note**: this PR contains changes from the [previous PR](https://github.com/zed-industries/zed/pull/38590), when that PR gets merged we should see the real changes. This PR fixes 4 things in order to make: 1. Add html/markdown minifier to remove all the **\t** and **\n** characters. This is needed as you cannot create new lines with markdown by just adding an enter to the source file. 2. The event Event::HTML only contained a chunk of the real html for multiline HTML code. I fixed this by storing the currently watched HTML inside a buffer and at the end we parse it into the right elements. Instead of trying to parse a chunck into multiple elements which would always fail before. 3. Add support for html tables. 4. Fixed panic that occured when table does not have an header. I also decided to keep the html minifier inside Zed, because making it a dependency for just a few 100 lines seems to be an overkill. The original crate had a few cve in their dependencies, so figured this would be the best. **Html table support** <img width="1439" height="801" alt="Screenshot 2025-09-27 at 12 19 07" src="https://github.com/user-attachments/assets/a884cc6f-cf47-45a2-81fa-91300c7bbf3f" /> **Before & after Zed's README (no changes)** <img width="3440" height="1378" alt="Screenshot 2025-09-27 at 12 34 47" src="https://github.com/user-attachments/assets/1273b094-fb24-4abd-bffa-56ef3b44670c" /> Release Notes: - Markdown: Added support for html tables
Remco Smits created
1a9e9c5
workspace: Add `Close Multibuffers` pane context menu entry (#39199)
Release Notes: - N/A *or* Added/Fixed/Improved ...
Lukas Wirth created
eb64ca8
askpass: Don't log error when user cancels askpass prompt (#39544)
Release Notes: - N/A *or* Added/Fixed/Improved ...
Lukas Wirth created
68e6d55
terminal: Fix terminal split pane opening in wrong directory (#39537)
## Problem When splitting a terminal pane, the new pane opens in the root directory (`/`) instead of preserving the current working directory of the original terminal. For example, when working in `/Users/modestnerd/Developer/Projects/zed` (my pc) and splitting the terminal pane, the new pane would open in `/` instead of staying in the current directory. ## Solution Restructured the fallback logic in `new_pane_with_cloned_active_terminal` (terminal_panel.rs:452-456) to ensure `default_working_directory(workspace, cx)` is called as a fallback even when a terminal view exists but its `working_directory()` returns `None`. The fix changes the nested `and_then` to use `or_else` for the fallback, ensuring the working directory is always properly resolved before entering the async block. Release Notes: - Fixed terminal split pane opening in wrong directory instead of preserving the current working directory
Ngonidzashe Mangudya created
bcd2d26
Fix CRLF handling in display-only terminals (#39538)
## Before <img width="558" height="739" alt="Screenshot 2025-10-03 at 11 08 43 PM" src="https://github.com/user-attachments/assets/5dae7f9d-03b6-48eb-826d-e2be60320546" /> ## After <img width="551" height="843" alt="Screenshot 2025-10-04 at 8 29 51 PM" src="https://github.com/user-attachments/assets/2b06dcec-7758-42ad-acf0-c32a7f50f1b1" /> No release notes because we aren't using display-only terminals anywhere yet (`codex-acp` will be the first to use them, and it's still feature-flagged right now). Release Notes: - N/A
Richard Feldman created
b32075c
Decouple agent reregistration from settings changes (#39528)
Fixes a `--release`-only bug in feature-flagged agents where the feature flag isn't picked up in some situations (unless there was a settings change to go with it - due to an early return when settings didn't change). Release Notes: - N/A
Richard Feldman created
21e75b8
Pass through `cwd` from ACP extension (#39511)
If we get a `cwd` from ACP (because e.g. `codex-acp` is driving the terminal rather than our own PTY) then use that to display the `cwd` of the terminal process. Release Notes: - N/A
Richard Feldman created
978951b
Don't use PTY in the display-only terminal (#39510)
This only affects `codex-acp` for now. Not using the PTY in display-only terminals means they don't display the login prompt (or spurious `%`s) at the end of terminal output renderings. Release Notes: - N/A
Richard Feldman created
6b980ec
settings_ui: Dynamic navbar filtering (#39494)
Closes #ISSUE Release Notes: - N/A *or* Added/Fixed/Improved ...
Ben Kunkle created
d9c7f44
Add ability to hide status bar (#39430)
This pull request adds the ability to configure the setting to hide or
show the status bar, as described in discussion:
https://github.com/zed-industries/zed/discussions/38591
The original [PR
#38974](https://github.com/zed-industries/zed/pull/38974#issuecomment-3362020879)
was merged but reverted due to hidden conflicts. As per @ConradIrwin 's
[request](https://github.com/zed-industries/zed/pull/38974#issuecomment-3362020879),
I am recreating the PR on top of updated main branch.
Release Notes:
- Added an experimental setting `"status_bar": { "experimental.show":
false}` to hide the status bars.
---------
Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>
Mansoor Ahmed and Conrad Irwin created
55e6855
Fix caption buttons going off-screen (#39502)
https://github.com/user-attachments/assets/27bf58df-b8c4-4730-856b-d62ec639a552 Previously the caption buttons (minimize, maximize, close) would disappear off the right side of the title bar. Release Notes: - N/A Co-authored-by: Julia Ryan <juliaryan3.14@gmail.com>
John Tur and Julia Ryan created
9fe46dc
Fix double-clicking on non-empty title bar area (#39500)
Closes #38685 Release Notes: - N/A --------- Co-authored-by: Julia Ryan <juliaryan3.14@gmail.com>
John Tur and Julia Ryan created
aced13b
Fix ordering of multibuffer excerpts (#39476)
The ordering of path-based excerpts in multibuffers regressed with #38744, because we changed the `path` field of `PathKey` to be a string (from `std::path::Path`) and used the derived `Ord` implementation, which doesn't agree with the path-based order of worktree traversals. This PR fixes that by using `RelPath` for `PathKey`. Instead of using `File::full_path`, which can be absolute, we always use `File::path` and distinguish different worktrees using their ID. Release Notes: - N/A --------- Co-authored-by: Lukas Wirth <me@lukaswirth.dev>
Cole Miller and Lukas Wirth created
2859cbd
Make `ShellBuilder::new` not branch on a remote shell (#39493)
Release Notes: - Fixed claude code agent login on remotes Co-authored-by: Max Brunsfeld <max@zed.dev> Co-authored-by: Cole Miller <cole@zed.dev>
Lukas Wirth , Max Brunsfeld , and Cole Miller created
4443f61
x_ai: Add support for Grok 4 Fast (#39492)
This PR adds support for Grok 4 Fast. Release Notes: - Added support for Grok 4 Fast models. Co-authored-by: David Kleingeld <davidsk@zed.dev>
Marshall Bowers and David Kleingeld created
f0f0beb
settings_ui: Implement sub pages (#39484)
Closes #ISSUE Release Notes: - N/A *or* Added/Fixed/Improved ...
Ben Kunkle created