Enhancements
Today we're excited to launch Zed SSH Remoting in Beta. 💻🌐🎉
For remote hosts, we support macOS remotes (both Intel x86_64 and ARM aarch64) and Linux on x86_64 or ARM: Ubuntu 20/22/24, Raspbian, Debian 11/12, Fedora 40/41/42, ArchLinux, Alpine, NixOS, SUSE/OpenSUSE as well as RedHat 8.x/9.x, and clones (Rocky Linux, CentOS Stream, AlmaLinux, Amazon Linux, Oracle Linux).
Blog Post: https://zed.dev/blog/remote-development
Docs: https://zed.dev/docs/remote-development
Note: The original version of remote development sent traffic via Zed's servers. As of Zed v0.157, you can no longer use that mode.
General
- Added file icons for Gleam (#19887; thanks okkdev), Zig, Julia, SCSS, HCL, Nix, and Roc files.
- Added the ability to fold all blocks of code at a target "level." macOS:
cmd-k, cmd-<number>
, Linux:ctrl-k, ctrl-<number>
(#19750). - Added indent guides to the project and outline panel (#18260, (#19719)).
- Added macOS Services menu (fixed global macOS shortcuts) (#16959).
- Added support for detecting images with non-lowercase file extensions (#19304).
- Added a user-visible error message when a manual save fails (#19311).
- Added toolchain selector to the status bar with initial support for Rust and Python (#19576).
- Added ability to cancel language server work in remote development (#19946).
- Improved [re]open for external worktree entries (#19612).
AI
- Improved Inline Assistant placeholder text. Including focus context panel and navigate history key bindings (#19447).
- Improved prompt for generating context editor summaries (#19530; thanks wolffiex).
- Moved Git hunk controls to the right of the header (#19515).
Languages
- Added keybindings for applying hunks in Proposed Changes:
cmd-shift-y
/ctrl-shift-y
(#19749). - Added autoclosing of Rust multiline strings (#19765).
- Added
.editorconfig
support (#19455). - Registered
.postcss
files as CSS (#19416).
Vim
- Added support for incrementing and decrementing numbers with leading zeros in Vim mode (#18362; thanks ThomAub).
Bug Fixes
- Fixed directory name comparison on Linux not considering the case (#19211; thanks wannacu).
- Fixed issue where auto-update would quietly fail if rsync was not available (#19392).
- Fixed code action for
Fix with assistant
appearing when assistant was disabled (#19553). - Fixed empty keystroke with simulated IME (#19414; thanks brunocalza).
- Fixed a bug where auto-indent didn't work correctly when pasting with multiple cursors on adjacent lines (#19521).
- Fixed incorrect checkbox placement in Markdown preview (#19383; thanks zfz7).
- Fixed Markdown preview rendering of empty list items (#19449; thanks mgsloan).
- Fixed inconsistent serialization of workspace paths order (#19232; thanks eth0net).
- Fixed error handling when no project paths could be opened (#19320).
- Fixed an issue where the branch switcher would show an error when opening a file outside of the project (#19888).
- Fixed outline panel panicking on filtering (#19811).
- Fixed horizontal scrollbar not being hidden (#19767).
- Fixed an issue where HTML tags within list items would break the Markdown preview (#19785).
- Fixed an issue where clicking on an image inside the project panel would not re-use an existing image tab (#19717).
- Fixed autoclosing quotes when the string is already open (#19765).
- Fixed project panel bug when renaming files where up/down keys could select other files (#19670; thanks zhang0098).
- Fixed slowness when collaborating (#19912).
- Fixed an issue where diagnostic underlines and certain text highlights were not rendered correctly below block decorations such as the inline assistant prompt (#19920).
- Fixed a rare crash that could happen when certain SQL statements were prepared (#19922).
- Fixed prettier not reporting failures in the status panel on formatting and installation errors (#19951).
- Vim: Fixed a bug where the
o
andO
commands did not respect theextend_comment_on_newline
setting (#19766).
Breaking Changes and Notices
- Changed
terminal.option_as_meta
default fromtrue
tofalse
for better out-of-the-box experience on non-US keyboards. Terminal Emacs users will want to set this totrue
(#19364).