Releases: zed-industries/zed
Releases · zed-industries/zed
v0.176.0-pre
We are currently working to integrate Git more deeply into Zed. Join the waitlist for the private beta, and we will pull you in when it's ready!
Enhancements
- Added an
allow_rewrap
setting to control theeditor::Rewrap
behavior for a given language. (#25173) - Added an
on_last_window_closed
setting, that allows users to quit the app when the last window is closed (#25185) - Added initial inline diagnostics support (#25297)
- Added support for
stop_at_indent
option for MoveToBeginningOfLine and SelectToBeginningOfLine. (#25428) - Added support for checking for
package-version-server
on the$PATH
. (#23849; thanks matthewpi) - Added support for repositories hosted on
chromium.googlesource.com
for Git blames and permalinks. (#24881; thanks hferreiro) - Added support for selecting the commit message in git commits (#25136)
- Added support for tcsh/csh shells as login shell when loading environment variables. (#25122)
- Added the ability to specify an HTTP/HTTPS proxy for Copilot (#24364; thanks eli-kaplan).
- Improved diagnostic pane responsiveness with large # of diagnostics. (#25287)
- Improved display of long paths in the file finder modal (#25049)
- Improved expanded macro ergonomics (#25298)
- Improved performance of project panel in large git repositories. (#25465)
- Improved the scenario where there'd be a project panel entry highlighted/marked even if there is no open buffer. (#25457)
- Improved Zed's handling of the following requests when the first language server in language server settings for a given language is not capable of handling them (#25591):
- Perform Rename
- Prepare Rename
- Document Highlights
- Find all references
- Go to implementation
- Go to definition
- Go to declaration
- Go to type definition
Syntax Highlighting / Themes
- Added eager loading of the active theme and icon theme. This should address some reports of seeing the default themes briefly on startup. (#25368)
- Added syntax scopes to themes (#25323; thanks chbk)
- Added
raw
keyword to Rust language highlights (see the Rust 1.82.0 announcement). (#25342) - Improved the appearance of the file finder when long paths are shown by eliding path segments (#25303)
- Improved C++ syntax highlighting for sized type specifiers. (#25362; thanks zeux)
- Improved JavaScript and TypeScript syntax highlighting. (#25328; thanks chbk)
- Improved Rust syntax highlighting. (#25333; thanks chbk)
- Improved Python syntax highlighting. (#25331; thanks chbk)
- Improved terminal reopening to be per workspace instead of global. (#25336)
- Improved C and C++ syntax highlighting. (#25325; thanks chbk)
- Improved Go syntax highlighting. (#25327; thanks chbk)
- Improved JSON syntax highlighting. (#25329; thanks chbk)
- Improved Bash syntax highlighting (#25324; thanks chbk)
- Improved rendering of
true
andfalse
to matchboolean
highlight defined in themes for C, C++, Go, JSON, JSONC, Python, and Rust. (#25338; thanks everdrone) - Gruvbox themes: Changed the color used for
@variable
syntax highlights to be less intense. (#25464) - One Dark theme: Adjusted the color used for
@variable
syntax highlights. (#25468) - Fixed theme selector resetting the buffer size. (#25425)
Vim
- Vim: Added an implementation of
vim-exchange
(#24678; thanks thomasheartman) - Vim: Added missing default key binding for
Vim::CurrentLine
for replace with register mode (grr
) (#24678; thanks thomasheartman) - Vim: Fixed
gr
in visual mode (#25301; thanks 0x2CA) - Vim: Fixed a bug where
assistant: insert into editor
was missing the selected range. (#25133; thanks rien7) - Vim: Fixed a bug where
editor: copy
was missing the selected range. (#25133; thanks rien7) - Vim: Fixed a bug where search results were skipped occasionally. (#25580)
- Vim: Fixed cursor shape hollow only in block (#25235; thanks 0x2CA)
- Vim: Fixed operations on backtick quotes. (#25502; thanks 5brian)
- Vim: Fixed visual selections when jumping to marks (#25360; thanks dinocosta)
Keybind Improvements
- Emacs: Added mapping for
alt-m
(back-to-indentation
). (#25428) - Emacs: Added support for
alt-{
andalt-}
paragraph navigation. (#25284) - Fixed undo in emacs (
ctrl-_
) not working by default in Terminal on macOS. (#25578) - Fixed tmux
ctrl-b
being broken in the Terminal on Linux by default. (#25476) - Mac: In the default keymap,
cmd-up
now moves to the previous multibuffer excerpt start, andcmd-down
moves to the next multibuffer excerpt end. For normal buffers these behave the same as before, moving to the beginning or end. (#25299) - Windows: Added support for "menu" key (#25000; thanks gim913)
Languages
- Rust: Added support for
--target-dir
for Rust tasks (#24725; thanks bnjjj) - Rust: Added support for doc test in tasks for Rust (#24806; thanks bnjjj)
- Rust: Fixed not being able to spawn the
cargo test
task for atests
module inlib.rs
,main.rs
, ormod.rs
(#25092) - Python: Fixed a bug where indentation was applied when adding a newline to a comment ending in
:
. (#25437) - Python: Fixed Pyright failing to start when installed locally (#24873; thanks MrSubidubi)
AI
- Added support for AWS Bedrock to the Assistant. (#21092; thanks 5herlocked)
- Edit Predictions: Added support for detecting
LICENSE.md
andLICENCE.md
files to license detection. (#25422; thanks pngdrift) - Edit Predictions: Disable
This Buffer
option when predictions are disabled for its language. (#25566) - Edit Predictions: Disable as soon as
edit_prediction_provider
is set tonone
. (#25505) - Edit Predictions: Do not require a modifier key when indentation is correct according to its surrounding block. (#25491)
- Edit Predictions: Fixed mismatch between status bar settings and editor control settings. (#25505)
- Edit Predictions: Fixed jump/accept popover position for long lines. (#25348)
Bug Fixes
- Fixe...
v0.175.5
We are currently working to integrate Git more deeply into Zed. Join the waitlist for the private beta, and we will pull you in when it's ready!
Breaking Changes and Notices
- A number of themes are no longer installed in Zed by default:
Andromeda
,Atelier
,Rosé Pine
,Sandcastle
,Solarized
&Summercamp
. If you would like to continue using one of these extensions (#24589):- Open
zed: extensions
- Install the
zed-legacy-themes
extension - Re-select your desired theme
- Open
- No longer open the split menu in the file finder when command is pressed. (#25097)
Enhancements
- Added support for Gemini 2.0 Flash via Copilot Chat in Zed Assistant. (#24952; thanks 0xRichardH)
- Added support for Mistral to the Assistant. (#24879; thanks Shidfar)
- Added ability to extend selection with
shift-click
in the terminal. (#25143) - Added support for switching to columnar selection by pressing
alt-shift
while mouse is down. (#25096) - Added support to highlight all matching occurrences of text within the selection in editor. (#24835)
- Added regex highlights in the query input. (#25005)
- Added recognition for
.bats
files asShell Script
. (#24877; thanks bersace) - Added ability to specify port forwarding settings for remote connections. (#24474; thanks Tebro)
- Added a way to configure user key bindings to toggle font size without adjusting user settings (#24857). By default, toggling font size will not result in the user settings being updated. You can opt into persistence by adding some of the following keybindings to your
keybindings.json
file:"cmd-=": ["zed::IncreaseBufferFontSize", { "persist": true }]
"cmd-+": ["zed::IncreaseBufferFontSize", { "persist": true }]
"cmd--": ["zed::DecreaseBufferFontSize", { "persist": true }]
"cmd-0": ["zed::ResetBufferFontSize", { "persist": true }]
- Icon Themes: Added the ability for icon themes to provide their own file associations. (#24926)
- Icon Themes: Added file icon associations for
.rdata
and.RData
files. (#24925; thanks aymennasri) - Icon Themes: Added the ability to change file icons for Visual Studio project files (#24851; thanks RandaZraik):
- Solution files (
.sln
) - Solution User Options files (
.suo
) - C# Project files (
.csproj
) - F# Project files (
.fsproj
) - Visual Basic Project files (
.vbproj
)
- Solution files (
- Icon Themes: Added the ability to change the file icon for Crystal (
.cr
,.ecr
) files. (#24903; thanks nobodywasishere) - Improved LSP documentation file links by opening in Zed, not the system opener. (#25117)
- Improved rendering of completion documentation markdown consistently with documentation markdown. (#25117)
- Improved display of long paths in the file finder modal. (#25049)
- Improved workspace serialization by persisting latest selections for editors. (#25083)
- Improved redaction of Google Gemini keys from API errors in logs. (#24884)
- Improved gutter color highlights by having separate highlights for removed and deleted portions of git modification hunks. (#24834)
- Reduced the number of "theme not found" and "icon theme not found" errors in the logs for themes provided by extensions. (#25098)
Vim
- Improved logic of
aq
,iq
,ab
, andib
motions to work more like mini.ai plugin. (#24167; thanks oca159) - Use visual mode for
select all matches
in search (to be consistent withga
). (#24897; thanks dinocosta)
AI
- Handle
edit_prediction_conflict
context without modified keybinds forAcceptEditPrediction
. (#25015) - Excluded Cloudflare Workers
.dev.vars
files from edit prediction. (#24838)
Bug Fixes
- Fixed panics on completion with multi-byte characters input. (#25150)
- Fixed an issue where configured languages models were not showing up in the language model selector until the configuration view was opened for the first time. (#25123)
- Fixed a bug that made it possible to undo changes in dirty deserialized buffer (with
restore_unsaved_buffers: true
). (#25106) - Fixed diff hunks appearing in unchanged symlinked files. (#25058)
- Fixed a parsing bug that caused memory leaks and crashes when using the Ansible extension. (#25054)
- Fixed a bug where
editor: split selection into lines
was adding an extra line at the end of the selection. (#25053) - Fixed an issue where writing TypeScript using Allman style would result in incorrect auto-indent behavior. (#25051)
- Fixed crash when trying to save terminal buffer. (#25028; thanks dylwil3)
- Fixed a bug that sometimes caused incorrect syntax highlighting when deploying the inline assistant. (#25031)
- Fixed issue where reload hangs for several minutes on Linux. (#24882)
- Fixed an indentation bug in the outline view when working with Go code. (#24861; thanks ashishbhate)
- Fixed edge-cases when closing multiple items, including multibuffers. Previously no prompt was generated when closing an item that was open in a multibuffer, now you will be prompted. (#24603)
- Fixed a panic in the file finder. (#25166)
- Fixed some language servers (
elixir-ls
,tailwindcss
,phpactor
) failing to start up due to an unfilled root_uri property in the InitializeParams. (#25290) - Fixed Zed sending out didOpen notification to a language server when opening documents. (#25411)
- Changed how workspace folders are shared with language servers, fixing a startup issue with
next-ls
in the process. (#25344) - Terminal: Fixed
cmd-click
on links/files when terminal is not focused. (#25104) - Terminal: Fixed a bug where links remained highlighted/clickable, even after releasing
cmd
, when switching to another application and back. (#25104) - Vim: Fixed crash in
ci{
. (#25138) - Vim: Fixed rendering of vim commands to preserve case sensitivity. (#24322; thanks dinocosta)
- Vim: Fixed ReplaceWithRegister
gr
with dot repeat. (#24932; thanks xzbdmw) - Vim: Fix
:wq
in a multibuffer. (#24603) - Windows: Fixed handling of
F10
andAlt+Fn
. (#24745; thanks gim913)
v0.175.5-pre
v0.175.4-pre
v0.174.8
v0.174.7
v0.175.3-pre
- Changed how workspace folders are shared with language servers, fixing a startup issue with
next-ls
in the process. (#25344)
v0.175.2-pre
- Fix some language servers (elixir-ls, tailwindcss, phpactor) failing to start up due to an unfilled root_uri property in the InitializeParams (#25290)
v0.174.6
- Fixed an issue where using
zed: increase buffer font size
andzed: decrease buffer font size
commands would alter the user'ssettings.json
file. Now, by default, using these commands will not alter your settings file, but you can opt into persistence by adding some of the following keybindings to yourkeybindings.json
file:"cmd-=": ["zed::IncreaseBufferFontSize", { "persist": true }]
"cmd-+": ["zed::IncreaseBufferFontSize", { "persist": true }]
"cmd--": ["zed::DecreaseBufferFontSize", { "persist": true }]
"cmd-0": ["zed::ResetBufferFontSize", { "persist": true }]