Commit log

748678b Constify everything

Nia Espera created

c97fcf2 perf: fix bad test

Nia Espera created

47c6ae7 settings_ui: Fix stepper buttons to Inactive Opacity to 0.1 increment adjustments (#40477)

Click to expand commit body
Closes #40279

Release Notes:

- Fix stepper buttons (+/-) to the Inactive Opacity setting for 0.1
increment adjustments on settings UI

---------

Co-authored-by: Danilo Leal <daniloleal09@gmail.com>

Delvin and Danilo Leal created

9984614 settings_ui: Fix misplaced comma in autoclose setting description (#40519)

Click to expand commit body
Release Notes:

- Fixed misplaced comma in the autoclose description from:
"when you type (, Zed will ...)"
to 
"when you type, (Zed will ...)"

---------

Co-authored-by: Danilo Leal <daniloleal09@gmail.com>

David and Danilo Leal created

287314f markdown_preview: Improve the link decoration logic (#39905)

Click to expand commit body
Closes #39838

Refs:
*
https://github.com/zed-industries/zed/pull/39149#issuecomment-3383015060

# How

After digging a bit more to find out why raw links are not colored in
Markdown renderer I have found a simpler approach to applying color
decoration, which also fixed the lack of colors on raw links mentioned
in issue and comment above.

Release Notes:

- Improved decoration logic for links in Markdown

# Preview

<img width="1712" height="820" alt="Screenshot 2025-10-09 at 23 39 09"
src="https://github.com/user-attachments/assets/3864cb6c-3fc6-4110-8067-6158cd4b58f5"
/>

Bartosz Kaszubowski created

63e719f Disallow rename/copy/delete on unshared files (#40540)

Click to expand commit body
Release Notes:

- Disallow rename/delete/copy on unshared files

Co-Authored-By: Cole <cole@zed.dev>

Conrad Irwin and Cole created

1e69e5d Set the minimum log level to `info` for the remote server (#40543)

Click to expand commit body
`env_logger` defaults to only showing error-level logs, but we show
info-level logs and above for the main Zed process, so I think it makes
sense for the remote server to behave the same way.

Release Notes:

- N/A

Cole Miller created

30c4434 Ignore flaky ignored_dirs_events test (#40546)

Click to expand commit body
Release Notes:

- N/A

Max Brunsfeld created

d7e193c Show telemetry for adding all items (#40541)

Click to expand commit body
Closes #ISSUE

Release Notes:

- N/A *or* Added/Fixed/Improved ...

Mikayla Maki created

438c890 perf: Add on search + fixups (#40537)

Click to expand commit body
Release Notes:

- N/A *or* Added/Fixed/Improved ...

Nia created

4dd463f Fix repo path to project path conversion in git panel (#40535)

Click to expand commit body
Closes https://github.com/zed-industries/zed/issues/40422
Closes https://github.com/zed-industries/zed/issues/40379
Closes https://github.com/zed-industries/zed/issues/40307

Release Notes:

- Fixed an issue where the project diff view did not work for multi-repo
projects on Windows when using WSL or SSH remoting

Max Brunsfeld created

22fd91d Re-register buffers on server stop (#40504)

Click to expand commit body
Follow-up of https://github.com/zed-industries/zed/pull/40388

Release Notes:

- N/A

Kirill Bulatov created

a660a39 docs: Update cpp.md to indicate GDB version requirements (#40027)

Click to expand commit body
Release Notes:

- N/A

---------

Co-authored-by: Piotr Osiewicz <24362066+osiewicz@users.noreply.github.com>
Co-authored-by: Marshall Bowers <git@maxdeviant.com>

Seeni , Piotr Osiewicz , and Marshall Bowers created

6028545 gpui: Update link to Ownership and data flow section (#40457)

Click to expand commit body
Fixed broken link to `Ownership and data flow section`.

Seivan created

7e97fca Reduce `display_map` snapshot creation (#39354)

Click to expand commit body
Re-applies https://github.com/zed-industries/zed/pull/30840

This PR re-applies the initial
[PR](https://github.com/zed-industries/zed/pull/30840). As it was closed
because it was hard to land, because of the many conflicts. This PR
re-applies the changes for it.

In several cases we were creating multiple display_map
snapshots within the same root-level function call.
Creating a display_map snapshot is quite slow, and in some
cases we were creating the snapshot multiple times.

Release Notes:

- N/A

Remco Smits created

ef5b8c6 Remove workspace-hack (#40216)

Click to expand commit body
We've been considering removing workspace-hack for a couple reasons:
- Lukas ran into a situation where its build script seemed to be causing
spurious rebuilds. This seems more likely to be a cargo bug than an
issue with workspace-hack itself (given that it has an empty build
script), but we don't necessarily want to take the time to hunt that
down right now.
- Marshall mentioned hakari interacts poorly with automated crate
updates (in our case provided by rennovate) because you'd need to have
`cargo hakari generate && cargo hakari manage-deps` after their changes
and we prefer to not have actions that make commits.

Currently removing workspace-hack causes our workspace to grow from
~1700 to ~2000 crates being built (depending on platform), which is
mainly a problem when you're building the whole workspace or running
tests across the the normal and remote binaries (which is where
feature-unification nets us the most sharing). It doesn't impact
incremental times noticeably when you're just iterating on `-p zed`, and
we'll hopefully get these savings back in the future when
rust-lang/cargo#14774 (which re-implements the functionality of hakari)
is finished.

Release Notes:

- N/A

Julia Ryan created

375a404 settings_ui: Fix missing list state reset causing panic (#40497)

Click to expand commit body
Closes #40467

Release Notes:

- N/A *or* Added/Fixed/Improved ...

Ben Kunkle created

27dcdb5 multi_buffer: Reduce `RefCell::borrow_mut` calls to the bare minimum (#40522)

Click to expand commit body
Release Notes:

- N/A *or* Added/Fixed/Improved ...

Lukas Wirth created

1fbe1e3 VSCode settings import refactor (#40513)

Click to expand commit body
A small follow-up to the settings refactor of a few weeks ago to move
all the VSCode settings imports
to one place.

This should make it easier to spot missing imports, and easier to test
the importer.

Release Notes:

- N/A

Conrad Irwin created

62858f6 Restore Oxford comma in README (#40518)

Click to expand commit body
We use Oxford commas in this household.

Release Notes:

- N/A

Marshall Bowers created

3f13191 Remove agent1 code (#40495)

Click to expand commit body
Release Notes:

- N/A

Bennet Fenner created

73e028c dap: Allow user to pass custom envs to adapter via project settings (#40490)

Click to expand commit body
It is now possible to configure logging level of CodeLLDB adapter via
envs specified in project settings like so:

```
{
    "dap": {
        "CodeLLDB": {
            "envs": {
                "RUST_LOG": "debug"
            }
        }
    }
}
```

Release Notes:

- N/A

Jakub Konka created

c1e87c8 zeta2: Feature flag (#40505)

Click to expand commit body
Release Notes:

- N/A

Agus Zubiaga created

1449d1c zeta2: Report accepted predictions (#40500)

Click to expand commit body
Release Notes:

- N/A

Agus Zubiaga created

83bfe2f multi_buffer: Make `anchor_in_excerpt` fallible for bad text anchors (#40496)

Click to expand commit body
`MultiBuffer::anchor_in_excerpt` currently just wraps the given text
anchor in a multibuffer anchor. This allows one to get a multibuffer
anchor that points outside its excerpt which is basically never what one
wants. This PR now does a bounds check and returns `None` if the given
text anchor is not within the bounds of the excerpt.

Release Notes:

- N/A *or* Added/Fixed/Improved ...

Co-authored-by: Kirill Bulatov <kirill@zed.dev>

Lukas Wirth and Kirill Bulatov created

7f9898a Add Amplitude tracking to docs (#40494)

Click to expand commit body
Closes #ISSUE

Release Notes:

- N/A *or* Added/Fixed/Improved ...

Gaauwe Rombouts created

b27fd3b worktree: Don't attempt to watch non-existing global gitignore (#40476)

Click to expand commit body
Release Notes:

- N/A *or* Added/Fixed/Improved ...

Lukas Wirth created

9056d77 settings_ui: Add dynamic setting fields (#40443)

Click to expand commit body
Closes #ISSUE

Includes the start of how we can get rid of most of the `.unimplemented`
"Edit in JSON" buttons in the settings UI. For now only Theme selection
is implemented, follow ups will add more settings

Release Notes:

- N/A *or* Added/Fixed/Improved ...

Ben Kunkle created

b711232 file_finder: Fix open path prompt creating wrong highlight indices (#40488)

Click to expand commit body
Fixes ZED-28R

Release Notes:

- Fixed open path prompt panicking on certain inputs

Lukas Wirth created

b59a3bb gpui: Remove some unnecessary unsafe code (#40483)

Click to expand commit body
Release Notes:

- N/A *or* Added/Fixed/Improved ...

Lukas Wirth created

eb3f9b0 Fix command for changing inside brackets in vim.md (#40184)

Click to expand commit body
Fix bindings used in the vim documentation example for both
`MiniBrackets` and `MiniQuotes`.

---------

Co-authored-by: dino <dinojoaocosta@gmail.com>

happy wang and dino created

dd32bb6 title_bar: Render chevron if `show_user_picture` is disabled (#40474)

Click to expand commit body
Closes https://github.com/zed-industries/zed/issues/40460

Release Notes:

- N/A *or* Added/Fixed/Improved ...

Lukas Wirth created

568bb02 Bind `ctrl-c` and `ctrl-v` in the windows terminal (#40426)

Click to expand commit body
Fixes #40034

Release Notes:

- `ctrl-c` (when you have a selection) and `ctrl-v` are now bound to
copy and paste by default in the windows terminal.

Co-authored-by: John Tur <john-tur@outlook.com>

Julia Ryan and John Tur created

ca1f843 remote: Support line and column numbers for remote paths (#40410)

Click to expand commit body
Closes #40297
Closes https://github.com/zed-industries/zed/issues/40367

Release Notes:

- Improved line and column number handling for paths in remotes

---------

Co-authored-by: Max Brunsfeld <maxbrunsfeld@gmail.com>

Lukas Wirth and Max Brunsfeld created

45a0d08 Update README.md grammar (#40461)

Click to expand commit body
Fixes a grammar issue in the readme.

Release notes:
- N/A

ThomasNow Productions created

d5a156b remote: Exclude port-forward flags in scp commands (#40402)

Click to expand commit body
Closes #36454

Release Notes:

- Exclude port-forward flags in `scp` commands for file and directory
uploads

Fadhil Yusuf created

6c3a7f6 gpui: Fix text wrapping for URLs (#35724)

Click to expand commit body
Close #35715

Release Notes:

- Fixed to wrap long URLs in editor.

<img width="836" height="740" alt="image"
src="https://github.com/user-attachments/assets/635ce792-5f19-4c76-b131-0d270d09b103"
/>

I remember when I was working on CJK line wrapping support in the early
days, I considered making `\` a line wrapping character, but for some
reason it was on the list of characters that were not allowed to wrap.

In reference to VS Code, it looks like `&`, `/`, `?` should wrap, so I
removed all of them.

---------

Co-authored-by: Mikayla Maki <mikayla@zed.dev>

Jason Lee and Mikayla Maki created

e67065f Fix "select toolchain path" in WSL with python virtual environments (#40447)

Click to expand commit body
Closes #39596

Release Notes:

- N/A

Julia Ryan created

d99fdc6 Fix path separator in toolchain selector (#40449)

Click to expand commit body
Closes #40310

Release Notes:

- N/A

Julia Ryan created

038041c Fix spacing around hidden status bar items (#39992)

Click to expand commit body
This is a follow-up PR to
https://github.com/zed-industries/zed/pull/39609, and attempts to
address hidden status bar items still contributing to the layout and
creating extra spacing.

![before using display:none theres extra spaces, afterwords the buttons
are always evenly
spaced](https://github.com/user-attachments/assets/3bd07837-5f6f-4ca1-8985-9f3cb8b6893d)

- 203cbd634bfb1489b8afa4952d9594615a956b77 Adds a `.none()` method to
the `gpui::Styled` helper trait, so that status items can set their
display type to none inside their `render` method.

- 249f06e3de63b0ab32814f20e7105d8e2b642f02 Applies `.none()` to all the
status items.

- ~~499f564906c88336608c81615b11ebc9ab43d832~~ At first I was adding an
`is_visible` method to the `StatusBarView` trait, which would be used to
skip status bar items which would just render an empty div anyway, but I
felt duplicating the conditions for hiding the buttons between the
status items `is_visible` and `render` methods could be an attraction
for bugs, so I tried to find another approach. This commit contains
those changes, reverted immediately (if the `is_visible` approach is
preferred I can bring it back!)

- f37cb75f0519ceea1f3e1cc4f97087a5cb34b0fd (bonus!) Adds a condition to
the vim mode indicator to avoid a leading space when there are no
pending keys.

Release Notes:

- N/A

kitt created

0cbab31 vim: Add vim command filename autocomplete (#36332)

Click to expand commit body
Release Notes:

- Adds filename autocomplete for vim commands:
  - write
  - edit
  - split
  - vsplit
  - tabedit
  - tabnew
- Makes command palette interceptor async
<img width="1382" height="634" alt="image"
src="https://github.com/user-attachments/assets/e7bf01c5-e9cd-4a7d-b38c-12fc3df5069f"
/>

---------

Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>

AidanV and Conrad Irwin created

908ae95 docs: Improve debug adapter documentation (#40441)

Click to expand commit body
docs. docs. docs.

Release Notes:

- N/A

Mikayla Maki created

4fa3331 Make python adapter error message a bit better (#40440)

Click to expand commit body
Release Notes:

- N/A

Mikayla Maki created

cdc9728 emacs: Support more default keybindings (#40101)

Click to expand commit body
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)

Click to expand commit body
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)

Click to expand commit body
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)

Click to expand commit body
Closes #40269 

Release Notes:

- N/A

kingananas20 created

e85c060 fs: Replace a bunch of uses of smol::fs with manual impls (again) (#40433)

Click to expand commit body
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)

Click to expand commit body
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)

Click to expand commit body
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