9a869f0
project panel: Focus editor when single-clicking on file and preview tabs are disabled (#20154)
Click to expand commit body
Closes #4324
Release Notes:
- Fixed an issue where single-clicking on a file in the project panel
would not focus the editor, when preview tabs are disabled
Bennet Bo Fenner
created
de2483e
terminal: Do not show multibuffer hint when in centered pane (#20137)
Click to expand commit body
Co-Authored-by: Bennet <bennet@zed.dev>

Release Notes:
- Fixed an issue where the multibuffer hint was shown when terminal was
in centered mode
Co-authored-by: Bennet <bennet@zed.dev>
3b76ba6
docs: Align soft_wrap reference with naming pattern used (#20080)
Click to expand commit body
Release Notes:
- N/A
Henry Barreto
created
773a3b3
Expand selections to Replace block boundaries (#20092)
Click to expand commit body
Release Notes:
- N/A
---------
Co-authored-by: Antonio Scandurra <me@as-cii.com>
Co-authored-by: Max Brunsfeld <maxbrunsfeld@gmail.com>
Co-authored-by: Antonio <antonio@zed.dev>
Co-authored-by: Max <max@zed.dev>
Richard Feldman
,
Antonio Scandurra
,
Max Brunsfeld
,
Antonio
, and
Max
created
b5c38e9
Remoting: Fix connecting to servers with long hostnames (#20093)
Click to expand commit body
Closes #20018
Release Notes:
- Remoting: Fixed connecting to hosts with long (>~50 character)
hostnames
Conrad Irwin
created
273173e
Revert "theme: Turn ThemeRegistry into a trait (#20076)" (#20094)
Click to expand commit body
This PR reverts #20076 to turn the `ThemeRegistry` back into a regular
struct again.
It doesn't actually help us by having it behind a trait.
Release Notes:
- N/A
This PR adds a new `extension` crate, containing some contents extracted
from the `extension_host`.
Right now it contains just the `ExtensionManifest` and
`ExtensionBuilder`, although we may move more of the extension interface
into here.
The introduction of the `extension` crate allows us to depend on it in
the `extension_cli`, thereby eliminating the need for the `no-webrtc`
feature on a number of crates.
Release Notes:
- N/A
Marshall Bowers
created
ea44c51
Rename `extension` crate to `extension_host` (#20081)
Click to expand commit body
This PR renames the `extension` crate to `extension_host`.
This is to free up the name so that we can create a smaller-scoped
`extension` crate.
Release Notes:
- N/A
Marshall Bowers
created
c8f1969
Fix the outline panel's focus tracking (#20083)
a960344
theme: Remove unused `staff` parameter for listing themes (#20077)
Click to expand commit body
This PR removes the `staff` parameter for listing themes, as it was not
used.
Release Notes:
- N/A
Marshall Bowers
created
af9e7f1
theme: Turn `ThemeRegistry` into a trait (#20076)
Click to expand commit body
This PR converts the `ThemeRegistry` type into a trait instead of a
concrete implementation.
This allows for the extension store to depend on an abstraction rather
than the concrete theme registry implementation.
We currently have two `ThemeRegistry` implementations:
- `RealThemeRegistry` — this was previously the `ThemeRegistry` and
contains the real implementation of the registry.
- `VoidThemeRegistry` — a null object that doesn't have any behavior.
Release Notes:
- N/A
Marshall Bowers
created
c04c439
Update Rust crate async-compression to v0.4.17 (#19319)
Click to expand commit body
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
|
[async-compression](https://redirect.github.com/Nullus157/async-compression)
| workspace.dependencies | patch | `0.4.13` -> `0.4.17` |
---
### Release Notes
<details>
<summary>Nullus157/async-compression (async-compression)</summary>
###
[`v0.4.17`](https://redirect.github.com/Nullus157/async-compression/blob/HEAD/CHANGELOG.md#0417---2024-10-20)
[Compare
Source](https://redirect.github.com/Nullus157/async-compression/compare/v0.4.16...v0.4.17)
##### Fixed
- Fix occasional panics when consuming from pending buffers.
###
[`v0.4.16`](https://redirect.github.com/Nullus157/async-compression/blob/HEAD/CHANGELOG.md#0416---2024-10-16)
[Compare
Source](https://redirect.github.com/Nullus157/async-compression/compare/v0.4.15...v0.4.16)
##### Other
- Implement pass-through `AsyncBufRead` on write-based encoders &
decoders.
###
[`v0.4.15`](https://redirect.github.com/Nullus157/async-compression/blob/HEAD/CHANGELOG.md#0415---2024-10-13)
[Compare
Source](https://redirect.github.com/Nullus157/async-compression/compare/v0.4.14...v0.4.15)
##### Feature
- Implement pass-through `AsyncRead` or `AsyncWrite` where appropriate.
- Relax `AsyncRead`/`AsyncWrite` bounds on `*::{get_ref, get_mut,
get_pin_mut, into_inner}()` methods.
###
[`v0.4.14`](https://redirect.github.com/Nullus157/async-compression/blob/HEAD/CHANGELOG.md#0414---2024-10-10)
[Compare
Source](https://redirect.github.com/Nullus157/async-compression/compare/v0.4.13...v0.4.14)
##### Fixed
- In Tokio-based decoders, attempt to decode from internal state even if
nothing was read.
</details>
---
### Configuration
📅 **Schedule**: Branch creation - "after 3pm on Wednesday" in timezone
America/New_York, Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box
---
Release Notes:
- N/A
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOC4xMjAuMSIsInVwZGF0ZWRJblZlciI6IjM4LjEyMC4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot]
and
renovate[bot]
created
d3cd8f8
Update Rust crate proc-macro2 to v1.0.89 (#19326)
Click to expand commit body
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [proc-macro2](https://redirect.github.com/dtolnay/proc-macro2) |
dependencies | patch | `1.0.87` -> `1.0.89` |
---
### Release Notes
<details>
<summary>dtolnay/proc-macro2 (proc-macro2)</summary>
###
[`v1.0.89`](https://redirect.github.com/dtolnay/proc-macro2/releases/tag/1.0.89)
[Compare
Source](https://redirect.github.com/dtolnay/proc-macro2/compare/1.0.88...1.0.89)
- Ensure OUT_DIR is left with deterministic contents after build script
execution
([#​474](https://redirect.github.com/dtolnay/proc-macro2/issues/474))
###
[`v1.0.88`](https://redirect.github.com/dtolnay/proc-macro2/releases/tag/1.0.88)
[Compare
Source](https://redirect.github.com/dtolnay/proc-macro2/compare/1.0.87...1.0.88)
- Return accurate line and column from `Span::start` and `Span::end`
inside proc macros on nightly
([#​472](https://redirect.github.com/dtolnay/proc-macro2/issues/472))
</details>
---
### Configuration
📅 **Schedule**: Branch creation - "after 3pm on Wednesday" in timezone
America/New_York, Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box
---
Release Notes:
- N/A
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOC4xMjAuMSIsInVwZGF0ZWRJblZlciI6IjM4LjEyMC4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot]
and
renovate[bot]
created
cd8d776
Update Rust crate profiling to v1.0.16 (#19334)
Click to expand commit body
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [profiling](https://redirect.github.com/aclysma/profiling) |
workspace.dependencies | patch | `1.0.15` -> `1.0.16` |
---
### Release Notes
<details>
<summary>aclysma/profiling (profiling)</summary>
###
[`v1.0.16`](https://redirect.github.com/aclysma/profiling/blob/HEAD/CHANGELOG.md#1016)
[Compare
Source](https://redirect.github.com/aclysma/profiling/compare/v1.0.15...v1.0.16)
- Address warnings from upstream rustc changes
- Update puffin to 0.19.1
- Update tracing-tracy to 0.11.3 and tracing-subscriber to 0.3
- Implement finish_frame! for tracing
- Add fuction_scope!() as an alternative to the function proc macro
- Avoid local variable names that don't start with an underscore
introduced into a function's namespace
</details>
---
### Configuration
📅 **Schedule**: Branch creation - "after 3pm on Wednesday" in timezone
America/New_York, Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box
---
Release Notes:
- N/A
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOC4xMjAuMSIsInVwZGF0ZWRJblZlciI6IjM4LjEyMC4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot]
and
renovate[bot]
created
6de2330
Update Rust crate pathdiff to v0.2.2 (#19325)
Click to expand commit body
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [pathdiff](https://redirect.github.com/Manishearth/pathdiff) |
workspace.dependencies | patch | `0.2.1` -> `0.2.2` |
---
### Configuration
📅 **Schedule**: Branch creation - "after 3pm on Wednesday" in timezone
America/New_York, Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box
---
Release Notes:
- N/A
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOC4xMjAuMSIsInVwZGF0ZWRJblZlciI6IjM4LjEyMC4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot]
and
renovate[bot]
created
0e264b5
Update cloudflare/wrangler-action digest to b2a0191 (#19645)
Click to expand commit body
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
|
[cloudflare/wrangler-action](https://redirect.github.com/cloudflare/wrangler-action)
| action | digest | `9681c29` -> `b2a0191` |
---
### Configuration
📅 **Schedule**: Branch creation - "after 3pm on Wednesday" in timezone
America/New_York, Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box
---
Release Notes:
- N/A
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOC4xMjAuMSIsInVwZGF0ZWRJblZlciI6IjM4LjEyMC4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot]
and
renovate[bot]
created
1af5304
Update Rust crate flume to v0.11.1 (#19641)
Click to expand commit body
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [flume](https://redirect.github.com/zesterer/flume) | dependencies |
patch | `0.11.0` -> `0.11.1` |
---
### Release Notes
<details>
<summary>zesterer/flume (flume)</summary>
###
[`v0.11.1`](https://redirect.github.com/zesterer/flume/blob/HEAD/CHANGELOG.md#0111---2024-10-19)
##### Added
- `SendSink::sender`
- `SendFut`, `SendSink`, `RecvFut`, `RecvStream`, `WeakSender`, `Iter`,
`TryIter`, and `IntoIter` now implement `Debug`
- Docs now show required features
##### Removed
##### Changed
- `WeakSender` is now `Clone`
- `spin` feature no longer uses `std::thread::sleep` for locking except
on Unix-like operating systems and Windows
- Flume is now in [casual maintenance
mode](https://casuallymaintained.tech/).
##### Fixed
</details>
---
### Configuration
📅 **Schedule**: Branch creation - "after 3pm on Wednesday" in timezone
America/New_York, Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box
---
Release Notes:
- N/A
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOC4xMjAuMSIsInVwZGF0ZWRJblZlciI6IjM4LjEyMC4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot]
and
renovate[bot]
created
dde692e
Update Rust crate libc to v0.2.161 (#19650)
Click to expand commit body
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [libc](https://redirect.github.com/rust-lang/libc) |
workspace.dependencies | patch | `0.2.159` -> `0.2.161` |
---
### Release Notes
<details>
<summary>rust-lang/libc (libc)</summary>
###
[`v0.2.161`](https://redirect.github.com/rust-lang/libc/releases/tag/0.2.161)
[Compare
Source](https://redirect.github.com/rust-lang/libc/compare/0.2.160...0.2.161)
##### Fixed
- OpenBSD: fix `FNM_PATHNAME` and `FNM_NOESCAPE` values
[#​3983](https://redirect.github.com/rust-lang/libc/pull/3983)
###
[`v0.2.160`](https://redirect.github.com/rust-lang/libc/releases/tag/0.2.160)
[Compare
Source](https://redirect.github.com/rust-lang/libc/compare/0.2.159...0.2.160)
##### Added
- Android: add `PR_GET_NAME` and `PR_SET_NAME`
[#​3941](https://redirect.github.com/rust-lang/libc/pull/3941)
- Apple: add `F_TRANSFEREXTENTS`
[#​3925](https://redirect.github.com/rust-lang/libc/pull/3925)
- Apple: add `mach_error_string`
[#​3913](https://redirect.github.com/rust-lang/libc/pull/3913)
- Apple: add additional `pthread` APIs
[#​3846](https://redirect.github.com/rust-lang/libc/pull/3846)
- Apple: add the `LOCAL_PEERTOKEN` socket option
[#​3929](https://redirect.github.com/rust-lang/libc/pull/3929)
- BSD: add `RTF_*`, `RTA_*`, `RTAX_*`, and `RTM_*` definitions
[#​3714](https://redirect.github.com/rust-lang/libc/pull/3714)
- Emscripten: add `AT_EACCESS`
[#​3911](https://redirect.github.com/rust-lang/libc/pull/3911)
- Emscripten: add `getgrgid`, `getgrnam`, `getgrnam_r` and `getgrgid_r`
[#​3912](https://redirect.github.com/rust-lang/libc/pull/3912)
- Emscripten: add `getpwnam_r` and `getpwuid_r`
[#​3906](https://redirect.github.com/rust-lang/libc/pull/3906)
- FreeBSD: add `POLLRDHUP`
[#​3936](https://redirect.github.com/rust-lang/libc/pull/3936)
- Haiku: add `arc4random`
[#​3945](https://redirect.github.com/rust-lang/libc/pull/3945)
- Illumos: add `ptsname_r`
[#​3867](https://redirect.github.com/rust-lang/libc/pull/3867)
- Linux: add `fanotify` interfaces
[#​3695](https://redirect.github.com/rust-lang/libc/pull/3695)
- Linux: add `tcp_info`
[#​3480](https://redirect.github.com/rust-lang/libc/pull/3480)
- Linux: add additional AF_PACKET options
[#​3540](https://redirect.github.com/rust-lang/libc/pull/3540)
- Linux: make Elf constants always available
[#​3938](https://redirect.github.com/rust-lang/libc/pull/3938)
- Musl x86: add `iopl` and `ioperm`
[#​3720](https://redirect.github.com/rust-lang/libc/pull/3720)
- Musl: add `posix_spawn` chdir functions
[#​3949](https://redirect.github.com/rust-lang/libc/pull/3949)
- Musl: add `utmpx.h` constants
[#​3908](https://redirect.github.com/rust-lang/libc/pull/3908)
- NetBSD: add `sysctlnametomib`, `CLOCK_THREAD_CPUTIME_ID` and
`CLOCK_PROCESS_CPUTIME_ID`
[#​3927](https://redirect.github.com/rust-lang/libc/pull/3927)
- Nuttx: initial support
[#​3909](https://redirect.github.com/rust-lang/libc/pull/3909)
- RTEMS: add `getentropy`
[#​3973](https://redirect.github.com/rust-lang/libc/pull/3973)
- RTEMS: initial support
[#​3866](https://redirect.github.com/rust-lang/libc/pull/3866)
- Solarish: add `POLLRDHUP`, `POSIX_FADV_*`, `O_RSYNC`, and
`posix_fallocate`
[#​3936](https://redirect.github.com/rust-lang/libc/pull/3936)
- Unix: add `fnmatch.h`
[#​3937](https://redirect.github.com/rust-lang/libc/pull/3937)
- VxWorks: add riscv64 support
[#​3935](https://redirect.github.com/rust-lang/libc/pull/3935)
- VxWorks: update constants related to the scheduler
[#​3963](https://redirect.github.com/rust-lang/libc/pull/3963)
##### Changed
- Redox: change `ino_t` to be `c_ulonglong`
[#​3919](https://redirect.github.com/rust-lang/libc/pull/3919)
##### Fixed
- ESP-IDF: fix mismatched constants and structs
[#​3920](https://redirect.github.com/rust-lang/libc/pull/3920)
- FreeBSD: fix `struct stat` on FreeBSD 12+
[#​3946](https://redirect.github.com/rust-lang/libc/pull/3946)
##### Other
- CI: Fix CI for FreeBSD 15
[#​3950](https://redirect.github.com/rust-lang/libc/pull/3950)
- Docs: link to `windows-sys`
[#​3915](https://redirect.github.com/rust-lang/libc/pull/3915)
</details>
---
### Configuration
📅 **Schedule**: Branch creation - "after 3pm on Wednesday" in timezone
America/New_York, Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box
---
Release Notes:
- N/A
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOC4xMjAuMSIsInVwZGF0ZWRJblZlciI6IjM4LjEyMC4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot]
and
renovate[bot]
created
cec72b8
Update Rust crate linkme to v0.3.29 (#19657)
Click to expand commit body
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [linkme](https://redirect.github.com/dtolnay/linkme) | dependencies |
patch | `0.3.28` -> `0.3.29` |
---
### Release Notes
<details>
<summary>dtolnay/linkme (linkme)</summary>
###
[`v0.3.29`](https://redirect.github.com/dtolnay/linkme/releases/tag/0.3.29)
[Compare
Source](https://redirect.github.com/dtolnay/linkme/compare/0.3.28...0.3.29)
- Add UEFI target support
([#​100](https://redirect.github.com/dtolnay/linkme/issues/100),
thanks [@​Javagedes](https://redirect.github.com/Javagedes))
</details>
---
### Configuration
📅 **Schedule**: Branch creation - "after 3pm on Wednesday" in timezone
America/New_York, Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box
---
Release Notes:
- N/A
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOC4xMjAuMSIsInVwZGF0ZWRJblZlciI6IjM4LjEyMC4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
## Problem statement
I want to add keyboard navigation support to SSH modal. Doing so is
possible in current landscape, but not particularly ergonomic;
`gpui::ScrollHandle` has `scroll_to_item` API that takes an index of the
item you want to scroll to. The problem is, however, that it only works
with it's immediate children - thus in order to support scrolling via
keyboard you have to bend your UI to have a particular layout. Even when
your list of items is perfectly flat, having decorations inbetween items
is problematic as they are also children of the list, which means that
you either have to maintain the mapping to devise a correct index of an
item that you want to scroll to, or you have to make the decoration a
part of the list item itself, which might render the scrolling imprecise
(you might e.g. not want to scroll to a header, but to a button beneath
it).
## The solution
This PR adds `ScrollAnchor`, a new kind of handle to the gpui. It has a
similar role to that of a ScrollHandle, but instead of tracking how far
along an item has been scrolled, it tracks position of an element
relative to the parent to which a given scroll handle belongs. In short,
it allows us to persist the position of an element in a list of items
and scroll to it even if it's not an immediate children of a container
whose scroll position is tracked via an associated scroll handle.
Additionally this PR adds a new kind of the container to the UI crate
that serves as a convenience wrapper for using ScrollAnchors. This
container provides handlers for `menu::SelectNext` and
`menu::SelectPrev` and figures out which item should be focused next.
Release Notes:
- Improve keyboard navigation in ssh modal
Piotr Osiewicz
created
183e366
Mention spectre-mitigated libs component in the Windows docs (#20069)
Release Notes:
- vim: Add `ctrl-v`/`ctrl-q` to type any unicode code point. For example
`ctrl-v escape` inserts an escape character(U+001B), or `ctrl-v u 1 0 E
2` types ტ (U+10E2). As in vim `ctrl-v ctrl-j` inserts U+0000 not
U+000A. Zed does not yet implement insertion of the vim-specific
representation of the typed keystroke for other keystrokes.
- vim: Add `ctrl-shift-v` as an alias for paste on Linux
Fixes an issue on load of notebooks that have `text/*` output in
`Vec<String>` rather than `String`. This ensures that Markdown output
will render correctly.
<img width="1306" alt="image"
src="https://github.com/user-attachments/assets/0bcc7dc8-527f-4067-a916-3ae569ea197d">
Release Notes:
- N/A
This PR adds a bit of telemetry for Anthropic models, in order to
understand model health. With this logging, we can monitor and diagnose
dips in performance, for example due to model rollouts.
Release Notes:
- N/A
---------
Co-authored-by: Max Brunsfeld <maxbrunsfeld@gmail.com>
This PR adds a theme preview tab to help get an at a glance overview of
the styles in a theme.

You can open it using `debug: open theme preview`.
The next major theme preview PR will move this into it's own crate, as
it will grow substantially as we add content.
Next for theme preview:
- Update layout to two columns, with controls on the right for selecting
theme, layer/elevation-index, etc.
- Cover more UI elements in preview
- Display theme colors in a more helpful way
- Add syntax & markdown previews
Release Notes:
- Added a way to preview the current theme's styles with the `debug:
open theme preview` command.
Nate Butler
created
9c77bcc
Update actions/setup-node digest to 39370e3 (#19979)
Click to expand commit body
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [actions/setup-node](https://redirect.github.com/actions/setup-node) |
action | digest | `0a44ba7` -> `39370e3` |
---
### Configuration
📅 **Schedule**: Branch creation - "after 3pm on Wednesday" in timezone
America/New_York, Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box
---
Release Notes:
- N/A
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOC4xMzUuMiIsInVwZGF0ZWRJblZlciI6IjM4LjEzNS4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot]
and
renovate[bot]
created
8d1f377
assistant: Add example streaming slash command (#20034)
Click to expand commit body
This PR adds a `/streaming-example` slash command for the purposes of
showcasing streaming during development.
This slash command is only available to staff and isn't intended to be
shipped to the general public.
Release Notes:
- N/A
Marshall Bowers
created
f766f6c
Do less work when revealing entries in the outline panel (#20031)
Click to expand commit body
Before this change, we were trying to determine current element before
debouncing, causing a lot of extra work on caret movement. Now, we only
do this for the task that managed to wait the entire debounce period.
Closes https://github.com/zed-industries/zed/issues/19817
Closes https://github.com/zed-industries/zed/issues/14235
Release Notes:
- Fixed outline panel-related performance issues when selections change
in the large document
([#19817](https://github.com/zed-industries/zed/issues/19817)),
([#14235](https://github.com/zed-industries/zed/issues/14235))
Kirill Bulatov
created
9dad897
Clean up notebook item creation in project (#20030)
Click to expand commit body
* Implement `clone_on_split` to allow splitting a notebook into another
pane
* Switched to `tab_content` in `impl Item for NotebookEditor` to show
both the notebook name and an icon
* Added placeholder methods and TODOs for future work, such as saving,
reloading, and search functionality within the notebook editor.
* Started moving more core `Model` bits into `NotebookItem`, including
pulling the language of the notebook (which affects every code cell)
* Loaded notebook asynchronously using `fs`
Release Notes:
- N/A
---------
Co-authored-by: Mikayla <mikayla@zed.dev>
Kyle Kelley
and
Mikayla
created
5b64015
activity indicator: Reset formatting failure on click (#20029)
This spawns the runnable task that that's closest to the cursor.
One thing missing right now is that it doesn't find tasks that are
attached to non-outline symbols, such as subtests in Go.
Release Notes:
- Added a new reveal option for tasks: `"no_focus"`. If used, the tasks
terminal panel will be opened and shown, but not focused.
- Added a new `editor: spawn nearest task` action that spawns the task
with a run indicator icon nearest to the cursor. It can be configured to
also use a `reveal` strategy. Example:
```json
{
"context": "EmptyPane || SharedScreen || vim_mode == normal",
"bindings": {
", r t": ["editor::SpawnNearestTask", { "reveal": "no_focus" }],
}
}
```
Demo:
https://github.com/user-attachments/assets/0d1818f0-7ae4-4200-8c3e-0ed47550c298
---------
Co-authored-by: Bennet <bennet@zed.dev>
Thorsten Ball
and
Bennet
created
633b665
Option to insert comment character(s) at the beginning of the line(s) (#19746)
Click to expand commit body
Closes #19459
This PR adds the optional setting to insert comment character(s) at the
beginning of the line(s) instead of after the indentation. It can be
enabled via keybindings:
```
"ctrl-/": ["editor::ToggleComments", { "ignore_indent": true }]
```
As suggested by @notpeter in #19459, this is implemented in
`toggle_comments` (editor.rs) taking the existing `advance_downwards`
option as example.
There's also a test case for the setting, which mimics the test case for
the regular comment toggling behavior.
---
I am not entirely happy with the name `ignore_indent`. The default would
be a double negative now `ignore_indent=false`. A positive wording would
probably easier to understand, but I could not think of anything
concise. `insert_at_line_start` or just `at_line_start` might work, but
didn't convince me either. That said, I am happy to change the name if
there are better ideas.
---
Release Notes:
- Added optional setting to insert comment character(s) at the beginning
of the line(s) instead of after the indentation. It can be used by
changing the default mapping to toggle comments like this: `"ctrl-/":
["editor::ToggleComments", { "ignore_indent": true }]`
This also cleans up logic for deciding how to do things.
Release Notes:
- Remoting: If downloading the binary on the remote fails, fall back to
uploading it.
---------
Co-authored-by: Mikayala <mikayla@zed.dev>
Conrad Irwin
and
Mikayala
created
6d5784d
Adjust design of the slash command picker (#19973)
Click to expand commit body
This PR removes the quote selection icon button from the footer and adds
it in the picker, and adds an icon field to each command entry. Final
result looks like:
https://github.com/user-attachments/assets/d177f1c1-b6f6-4652-9434-f6291b279e34
Release Notes:
- N/A
Closes #19976
Closes #19972
We now prefer curl to wget (as it supports socks5:// proxies) and pass
-f to
curl so it fails; and use sh instead of bash, which should have more
consistent
behaviour across systems
Release Notes:
- SSH Remoting: make downloading binary on remote more reliable.
---------
Co-authored-by: Will <will@zed.dev>
Co-Authored-By: Mikayla <mikayla@zed.dev>
Release Notes:
- Remoting: Fixes a bug where we could cache an HTML error page as a
binary
Co-authored-by: Mikayla <mikayla@zed.dev>
Conrad Irwin
and
Mikayla
created
7ce131a
Trim whitespace from base64 encoded image data before decoding it (#19977)
Click to expand commit body
Closes #17956
Closes #16330
This fix is for both REPL (released) and notebook (unreleased)
<img width="1210" alt="image"
src="https://github.com/user-attachments/assets/bd046f0f-3ad1-4c25-b3cb-114e008c2a69">
Release Notes:
- Fixed image support in REPL for certain versions of matplotlib that
included preceding and/or trailing whitespace in the base64 image data