4fa3331
Make python adapter error message a bit better (#40440)
Click to expand commit body
Release Notes: - N/A
Mikayla Maki created
4fa3331
Make python adapter error message a bit better (#40440)
Release Notes: - N/A
Mikayla Maki created
cdc9728
emacs: Support more default keybindings (#40101)
Hello, Thanks for the great work. I am adding some more bindings for the emacs keymap: - `command_palette::Toggle` as replacement for the emacs command dispatcher - other default aliases for existing move / delete commands - e.g. `alt-left` to move to previous word and `alt-del` to delete it - some missing `SelectTo` equivalents for move commands on selection mode Release Notes: - Added bindings for the Emacs keymap
Affonso, Guilherme created
aec3c2f
workspace: Move panes to span the entire border in Vim mode (#39123)
Currently, <kbd>⌃w</kbd> + <kbd>HJKL</kbd> keystrokes swap active pane
with another pane in that direction. Also, if there is no pane to swap
with, nothing happens.
This does not match the expected Vim behavior: moving the split to span
the entire border.
See
https://github.com/vim/vim/blob/ca6a260ef1a4b4ae94bc71c17cbabf8f12bf0f8c/runtime/doc/windows.txt#L527-L549
This change adds `MovePane{Up,Down,Left,Right}` actions that do exactly
that and updates default Vim keymap.
<table>
<tr>
<th>Before</th>
<th>After</th>
<tr>
<td><video
src="https://github.com/user-attachments/assets/5d3a25bf-e8b6-46c1-9fbb-004f0194e0dd">
<td><video
src="https://github.com/user-attachments/assets/5276f115-5063-411e-b141-5d268a79581b">
<tr>
<th>Vim</th>
<tr>
<td><video
src="https://github.com/user-attachments/assets/df9fbf83-d0de-42c0-8fb0-b134be833bde">
</table>
Release Notes:
- Changed `ctrl+w` + `shift-[hjkl]` in Vim mode to move the split to
span the entire border, aligning with Vim‘s behavior.
Signed-off-by: Ivan Trubach <mr.trubach@icloud.com>
Ivan Trubach created
620df0c
Remove unnecessary languages mapping in Tailwind for Ruby example (#40299)
The built-in Tailwind language already maps `HTML+ERB` to `erb`, and it seems that `Ruby` files work as well just from enabling the language server, so we can remove the unnecessary mapping. Release Notes: - N/A
Janko Marohnić created
cd51efa
Fixed nushell error when creating new folder when uploading wsl-remote-server (#40432)
Closes #40269 Release Notes: - N/A
kingananas20 created
e85c060
fs: Replace a bunch of uses of smol::fs with manual impls (again) (#40433)
Follow-up after #40417, which should've fixed hangs. smol::fs uses a separate threadpool, which is a bit yuck. This PR also added a benchmark you can use to run a full worktree scan (initial one, that is) for arbitrary worktree.. and refactored worktree scanner to use async locks, as otherwise tests were deadlocking. :) I've benchmarked it against Zed, Linux and Chromium and saw a ~60% drop in initial worktree scan times across the board. Release Notes: - Significantly (3.3x speedup over the old implementation) improved speed of Zed's worktree scanner, that's responsible for synchronizing the state of your project with the state of files on hard drive. --------- Co-authored-by: Smit Barmase <heysmitbarmase@gmail.com>
Piotr Osiewicz and Smit Barmase created
65acf12
Fix use of PRNG in Rope benchmarks (#39949)
Using a seeded PRNG to produce consistent test data and reduce variability makes sense. However, the way it was used previously, by always cloning the RNG, means that every generated string is the same, and every offset is the same. After this change, the tested value stream should still be the same on each run of the benchmark, but the values within each run will vary. The `generate_random_text` measured in chars also seems possibly inconsistent with later comments about it being a number of bytes. Release Notes: - N/A
Martin Pool created
2adc023
anthropic: Haiku 4.5 support (#40298)
Release Notes: - Added Claude Haiku 4.5 <img width="1512" height="919" alt="Screenshot 2025-10-15 at 5 23 37 PM" src="https://github.com/user-attachments/assets/fd3eb8e7-ddd8-4d38-a171-400949c0cef4" />
versecafe created
3780fe3
gpui: Do not use a single shared parker within a Dispatcher (#40417)
This caused issues with #40172, as it made Zed execute and block on tad few more background tasks. Parker is ~cheap to create, hence we should be ok to just create it at the time it is needed. Release Notes: - N/A --------- Co-authored-by: Cole Miller <cole@zed.dev>
Piotr Osiewicz and Cole Miller created
59991e9
Fix compilation on main (#40428)
Updates #40420 Release Notes: - N/A
Cole Miller created
e161899
Mention Windows support in README (#40421)
probably a good idea to close the windows issue here https://github.com/zed-industries/zed/issues/5394 and many other dead issues. Release Notes: - Edited the readme to actually mention Windows.
Morrow Shore created
c288f9b
Remove unused indices in `mac/text_system` (#40420)
just simplifying the code a bit Release Notes: - N/A Co-authored-by: Cole Miller <cole@zed.dev>
Andrew Farkas and Cole Miller created
b26491f
Fix crash when opening files with a BOM on macOS (#40419)
Closes #40359 We were segfaulting when opening a UTF-8 file starting with a byte order mark due to a mismatch in our UTF-16 indexing calculations caused by Core Foundations `replace_str` stripping the BOM internally. This PR fixes the crash by replacing one of our manual calculations by calling the Core Foundations API to get the length of a string. Release Notes: - Fixed a crash on macOS when opening a file that starts with a UTF-8 byte order mark (BOM). Co-authored-by: HactarCE <6060305+HactarCE@users.noreply.github.com>
Cole Miller and HactarCE created
738dcd0
ui_input: Adjust step values for Font Weight stepper (#40408)
# Why While playing with new Settings UI I have spotted that changing font weight requires a lot of clicks. This is also a bit more annoying due to lack of ability to enter the desired value by hand. # How Adjust step values for Font Weight stepper, the default increment has been changed from 10 to 50, to cover (defined in spec `950` weight) which some fonts might use, small step has been changed from 5 to 10, and large step from 50 to 100. Release Notes: - Adjusted default step values for number input UI element used for changing Font Weight in Settings UI.
Bartosz Kaszubowski created
81425be
Revert deprecate code actions on format (#40409)
Closes #40334 This reverts the change made in #39983, and includes a replacement migration that will transform formatter settings values consisting of only `code_action` format steps into the previously deprecated `code_actions_on_format` in an attempt to restore the behavior to what it was before the migration that deprecated `code_actions_on_format`. This PR will result in a modified order in the `code_actions_on_format` setting if it existed, however the decision was made to explicitly ignore this for now, as this PR is primarily targeting users who have already had the deprecation migration run, and no longer have the `code_actions_on_format` key Release Notes: - Fixed an issue with a settings migration that deprecated the `code_actions_on_format` setting. The `code_actions_on_format` setting has been un-deprecated, and affected users will have the bad migration rolled back with an updated migration --------- Co-authored-by: Cole Miller <cole@zed.dev> Co-authored-by: Mikayla Maki <mikayla.c.maki@gmail.com> Co-authored-by: HactarCE <6060305+HactarCE@users.noreply.github.com>
Ben Kunkle , Cole Miller , Mikayla Maki , and HactarCE created
04f0805
Revert "fs: Replace a bunch of uses of smol::fs with manual impls" (#40406)
Reverts zed-industries/zed#40172
Piotr Osiewicz created
58ff469
Add a helix-specific substitute method (#38735)
`vim::Substitute` is a little different from the helix behavior, so this PR adds helix versions. The most important difference (for my usage, at least) is that if you're selecting whole lines then helix drops the `\n` from the selection (much like vim's lines mode, except that helix bases this behavior on the selection instead of having a different mode). Release Notes: - N/A
jneem created
c5a67d8
Add WSL distro labels to open recent (#40375)
Closes #40358 Release Notes: - Windows: improved recently open folders in WSL
localcc created
3da4cdd
Round the scroll offset in editor to fix jumping text (#40401)
Release Notes: - Improved editor font rendering on lodpi displays Co-authored-by: John Tur <john-tur@outlook.com>
localcc and John Tur created
25172f9
helix: Change selection cloning (#38090)
Closes #33637
Closes #37332
and solves part of
https://github.com/zed-industries/zed/discussions/33580#discussioncomment-14195506
This improves the "C" and "alt-C" actions to work like helix.
It also adds "," which removes all but the newest cursors. In helix the
one that's left would be the primary selection, but I don't think that
has an equivalent yet, so this simulates what would be the primary
selection if it was never cycled with "(" ")".
Release Notes:
- Improved multicursor creation and deletion in helix mode
---------
Co-authored-by: Jakub Konka <kubkon@jakubkonka.com>
fantacell and Jakub Konka created
23a0b65
zeta2: Include a single unified diff for the edit history (#40400)
Instead of producing multiple code blocks for each edit history event, we now produce a continuous unified diff. Release Notes: - N/A --------- Co-authored-by: Oleksiy Syvokon <oleksiy.syvokon@gmail.com>
Agus Zubiaga and Oleksiy Syvokon created
923e880
Add winget release job (#40293)
This will automatically open PRs against the winget package registry to bump our version there when we do a release. Release Notes: - N/A
Julia Ryan created
de8dd9b
Rework editors to register and query buffers on scroll (#40388)
Preparation to https://github.com/zed-industries/zed/pull/40183 Moves https://github.com/zed-industries/zed/pull/22958 further: now, instead of selection, scrolling the buffer into view is enough to get registered and, later, be queried for its LSP data such as inlay hints, diagnostics and document colors. This effectively undoes https://github.com/zed-industries/zed/pull/28855 as now we try to register whatever's visible more aggressively, instead of implicitly via inlay hints. Release Notes: - Reworked editors to register and query buffers on scroll
Kirill Bulatov created
c77cc9b
Revert "acp: Don't collapse tool calls by default" (#40395)
Reverts zed-industries/zed#40164 Release Notes: - N/A
Ben Brandt created
3950f5a
keymaps: Update defaults for inline assist and signature help (#39587)
Update the keybindings used in the default keymaps to better align with
VSCode's defaults, with the following changes:
* Windows & Linux
* `ctrl-enter` has been replaced by `ctrl-i` for
`assistant::InlineAssist`
* `ctrl-shift-space` maps to `editor::ShowSignatureHelp` instead of
`editor::ShowWordCompletions`
* MacOS
* `ctrl-enter` has been replaced by `cmd-i` for
`assistant::InlineAssist`
* `cmd-i` has been replaced by `cmd-shift-space` for
`editor::ShowSignatureHelp`
Closes #39278
Release Notes:
- Changed the keybinding for `assistant: inline assist` from
`ctrl-enter` to `ctrl-i` for both Linux and Windows, and `cmd-i` for
MacOS. If you'd like to restore the old behavior, update your keymap
file with:
```
{
"context": "!ContextEditor > Editor && mode == full",
"bindings": {
"ctrl-enter": "assistant::InlineAssist"
}
}
```
- Changed the action dispatched by `ctrl-shift-space` from
`editor::ShowWordCompletions` to `editor::ShowSignatureHelp` on both
Linux and Windows. If you'd like to restore the old behavior, update
your keymap file with:
``` {
"context": "Editor",
"bindings": {
"ctrl-shift-space": "editor::ShowWordCompletions"
}
}
```
- Changed the keybinding for `editor: show signature help` on MacOS from
`cmd-i` to `cmd-shift-space`. If you'd like to restore the old behavior,
update your keymap file with:
``` {
"context": "Editor",
"bindings": {
"cmd-i": "editor::ShowSignatureHelp"
}
}
```
---------
Co-authored-by: Agus Zubiaga <agus@zed.dev>
Dino and Agus Zubiaga created
1ee6ef5
gpui: Properly surface errors in gpui build script (#40381)
Release Notes: - N/A *or* Added/Fixed/Improved ...
Lukas Wirth created
87adc96
editor: Fix invalid excerpt panic in `Editor::hover_links` (#40387)
Fixes ZED-17N Fixes ZED-26Z Release Notes: - N/A *or* Added/Fixed/Improved ...
Lukas Wirth created
fba7f4d
zeta2: Update prompts to match training more closely (#40383)
Release Notes: - N/A
Agus Zubiaga created
ae25baa
settings_ui: Fix settings popup process alive (#39790)
Closes #39786 Release Notes: - Fixed: Settings popup no longer keeps the process alive when closing Zed on Windows --------- Co-authored-by: Anthony <anthony@zed.dev> Co-authored-by: Joseph T. Lyons <JosephTLyons@gmail.com>
ozer , Anthony , and Joseph T. Lyons created
cf49194
markdown_preview: Fix alt text causing mismatched highlighting runs (#40374)
Fixes ZED-277 Release Notes: - Fixed alt text in markdown preview creating inconsistent highlighting
Lukas Wirth created
ea6853d
Fix code actions migration (#40303)
Closes #40270 Release Notes: - Fixed an issue with the settings migration to flatten `code_actions` format steps where comments would cause enabled code actions to be omitted from the migrated settings. If you were effected, restoring the settings file backup and allowing the migration to re-run will result in a valid settings file - Fixed an issue where automated settings and keymap file updates would occasionally assume 4-space indentation
Ben Kunkle created
c37a2f8
fs: Replace a bunch of uses of smol::fs with manual impls (#40172)
smol::fs uses a separate threadpool, which is a bit yuck. This PR also added a benchmark you can use to run a full worktree scan (initial one, that is) for arbitrary worktree.. and refactored worktree scanner to use async locks, as otherwise tests were deadlocking. :) I've benchmarked it against Zed, Linux and Chromium and saw a ~60% drop in initial worktree scan times across the board. Release Notes: - Significantly (3.3x speedup over the old implementation) improved speed of Zed's worktree scanner, that's responsible for synchronizing the state of your project with the state of files on hard drive. --------- Co-authored-by: Smit Barmase <heysmitbarmase@gmail.com>
Piotr Osiewicz and Smit Barmase created
9c70ba7
Fix split Claude Code docs (#40369)
Closes #ISSUE Release Notes: - N/A *or* Added/Fixed/Improved ...
Ben Brandt created
5c4f1e6
editor: Ignore soft wrapped lines when adding selection above or below (#40190)
- Add `skip_soft_wrap` field to both `AddSelectionAbove` and
`AddSelectionBelow` actions. When set to `true`, which is now
the default this will skip soft wrapped lines when extending the
selections.
- Move the `start_of_relative_buffer_row` function from the
`vim::motion` module to the `editor::display_map::DisplaySnapshot`
implementation as a method.
- Update the default behavior for both `editor: add selection above` and
`editor: add selection below` commands in order to skip over soft
wrapped lines by default, mirroring VS Code's default behavior.
- Update existing keymaps to specify this `skip_soft_wrap` value for
both `AddSelectionAbove` and `AddSelectionBelow` actions.
Closes #16979
Release Notes:
- Updated both the `editor: add selection above` and `editor: add
selection below` commands to ignore soft wrapped lines. If you wish to
restore the old behavior, add the following to your keymap file:
```
{
"context": "Editor",
"bindings": {
"cmd-alt-up": ["editor::AddSelectionAbove", { "skip_soft_wrap": false
}],
"cmd-alt-down": ["editor::AddSelectionBelow", { "skip_soft_wrap": false
}]
}
}
```
---------
Co-authored-by: Smit Barmase <heysmitbarmase@gmail.com>
Dino and Smit Barmase created
86ce4ef
acp: Add nicer WSL warning for Codex (#40354)
Moves the Codex warning into the thread so that we can render it nicer, as well as provide an option to open the folder in WSL. Release Notes: - N/A --------- Co-authored-by: Bennet Bo Fenner <bennetbo@gmx.de>
Ben Brandt and Bennet Bo Fenner created
9948778
util: Fix shell environment fetching failing with nu (#40275)
Release Notes: - Fixed shell environment fetching failing with nu shell
Lukas Wirth created
c2ace40
languages: Fix go completion labels creating out of bounds highlight runs (#40355)
Fixes ZED-26Q Release Notes: - N/A *or* Added/Fixed/Improved ...
Lukas Wirth created
e016c05
windows: Fix panic when quitting dialogs that do not have a cancel button (#40348)
`TaskDialogIndirect` may return `IDCANCEL` when the user quits the dialog via escape or alt+f4, so we need to account for that. Fixes ZED-25H Release Notes: - Fixed panic when hitting escape in dialogs on windows
Lukas Wirth created
f2e8d0c
dap: Enable info level logs for CodeLLDB adapter (#40345)
Trim whitespace/newline when committing the logs in Zed. Release Notes: - N/A
Jakub Konka created
e406ac6
markdown_preview: Fix block quote last child bottom padding (#40343)
Release Notes: - Fixed block quote last child bottom padding in Markdown preview. | Before | After | | --- | --- | | <img width="577" height="665" alt="image" src="https://github.com/user-attachments/assets/f2ff9fff-b4a6-44ed-b83c-6811e13fb3b8" /> | <img width="612" height="634" alt="SCR-20251016-okfv" src="https://github.com/user-attachments/assets/b4c5b706-49aa-4348-9553-22b0eb98e201" /> |
Jason Lee created
5467156
project_panel: Add `open_file_on_paste` setting to configure auto opening of file on paste (#40331)
Closes #40234 Release Notes: - Added `open_file_on_paste` setting to configure auto opening of file on paste in the project panel. --------- Co-authored-by: Smit Barmase <heysmitbarmase@gmail.com>
zeld-a and Smit Barmase created
db4b86e
windows: Fix occasional `RefCell already mutably borrowed` panic (#40336)
Release Notes: - Fixed occasional `RefCell already mutably borrowed` panic in windows event handling
Lukas Wirth created
35f5eb1
vim: Add gt and gT bindings for Markdown preview mode (#39854)
### What does this PR do? - Adds default keybindings `gt` for navigating to the next tab and `gT` for navigating to the previous tab in markdown viewer mode ### Why do we need this change? - While previewing markdown files, the default vim bindings (`gt` and `gT`) do not work for navigating between tabs. These bindings work everywhere else, which provides a non-consistent experience for the user. ### How do we do this change? - Update the vim mode bindings to explicitly add handling for this mode --------- Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>
Pranav Joglekar and Conrad Irwin created
5939cae
Fix mkdir nushell flags (#40306)
Closes #40269 Release Notes: - N/A
Julia Ryan created
83f9f9d
gpui: Add more default font fallbacks (#35086)
Release Notes: - N/A --- - Set `.SystemUIFont` as the GPUI default font. - Add `Arial` to font fallback list. - Add `Adwaita Sans` to default fallback list for Gnome. - Move `Ubuntu` font to front of Gnome to make sure Ubuntu System takes priority over `Ubuntu` font. Our application get some crash report: ``` panicked at /Users/admin/.cargo/git/checkouts/zed-a70e2ad075855582/f1db3b4/crates/gpui/src/text_system.rs:150:9: failed to resolve font 'Helvetica' or any of the fallbacks: Zed Plex Mono, Helvetica, Segoe UI, Cantarell, Ubuntu, Noto Sans, DejaVu Sans ``` This change to add `Arial` to fallback list, this font was included in macOS and Windows. Ref link (search "Arial"): > Mac OS X (now known as [macOS](https://en.wikipedia.org/wiki/MacOS)) was the first Mac OS version to include Arial; > https://en.wikipedia.org/wiki/Arial - macOS Sequoia: https://support.apple.com/en-us/120414 - Windows 10: https://learn.microsoft.com/en-us/typography/fonts/windows_10_font_list - Gnome: https://developer.gnome.org/hig/guidelines/typography.html
Jason Lee created
43baa5d
title bar: Remove chevron to the side of the avatar when logged in (#40287)
Having the chevron to the side of the avatar is arguably unnecessary at this point; most apps out there (Reddit, YouTube, etc.), including here on GitHub, have the avatar without any icon, pointing to how there doesn't seem to be a problem with knowing that there's a menu behind it. Therefore, figured we could simplify the UI a bit more here. This also looks better on platforms where the window controls are on the right (Linux/Windows). Release Notes: - N/A
Danilo Leal created
f4609c0
agent: Improve pickers and their triggers styles in the panel (#40284)
Making all triggers have the same style when the picker is open (including changing the icon when the picker opens on top of the trigger). Also removed the footer from the ACP model selector given there's nothing to consider when that's the case; users can only configure LLM providers when using Zed's built-in agent. Release Notes: - N/A
Danilo Leal created
28e14a3
windows: Unpin Gemini CLI (#40288)
Updates #40212 v0.9.0 is now stable and contains the fix for the line endings bug, so we can return to installing from the stable channel as usual. This also bumps the minimum version on Windows to v0.9.0 so that anyone on v0.8.x or v0.9.0-preview.4 will be upgraded automatically. Release Notes: - N/A
Cole Miller created
77933f8
Decouple cloud provider from Model in Zed (#40281)
Release Notes: - N/A Co-authored-by: Marshall Bowers <git@maxdeviant.com>
David Kleingeld and Marshall Bowers created
186237b
settings ui: Improve rendering performance (#40001)
This PR improves the rendering performance of the Settings UI window by using `gpui::list` to render only the visible contents of a settings page, instead of rendering the full content of a page. This fixes a lag that the editor page has in debug builds. I also added a new field `measuring_behavior` to `ListState` that has `Visible` and `Measured` variances. `Visible` only measures and caches the bounds of visible items plus the overdraw pixel offset. `Measure` will cache all items’ bounds on the first layout phase, which fixes problems with the scrollbar size/position being miscalculated. Release Notes: - N/A --------- Co-authored-by: Mikayla Maki <mikayla@zed.dev> Co-authored-by: Ben Kunkle <ben@zed.dev>
Anthony Eid , Mikayla Maki , and Ben Kunkle created