Enhancements
Languages
- Added Dart language support (#5343).
- Added Dockerfile language support (#5311).
- Added Ruby method visibility in outline view (#7849).
- Added prettier support for Vue, Markdown, and PHP.
- Added Lua file icon.
- Added default settings for Svelte language server to display inlay hints (#7913).
- Added default settings for TypeScript and Go LSP servers to enable inlay hints when those are turned on in Zed (#7821).
- Improved automatic indentation in Gleam code files (#7295).
- Improved syntax highlighting of identifiers in Ruby.
- Improved Nu syntax highlighting.
Vim
- Added
workspace::SendKeystrokes
to enable mapping from one key to a sequence of others (#7033).
This allows the user to send multiple keystrokes via custom keybinding. For example, the following keybinding would go down four lines and then right four characters.
[
{
"context": "Editor && VimControl && !VimWaiting && !menu",
"bindings": {
"g z": [
"workspace::SendKeystrokes",
"j j j j l l l l"
],
}
}
]
- Added vim bindings for the project panel (#4270).
- Added
gx
to Vim mode to open the URL under the cursor. - Added commands to toggle panels
:E[xplore]
,:C[ollab]
,:Ch[at]
,:N[otification]
,:A[I]
,:te[rm]
(or:T[erm]
).
- Implemented
ge
andgE
commands for going to the previous word end.
Collaboration
- Added unseen messages indicator for the channel chat.
- Added auto detection for links in the chat panel.
- Improved reliability of following.
General
- Added Tasks support to Zed. Tasks are defined in
tasks
file (accessible viazed: open tasks
action) and they can be spawned withtask: spawn
action. - Added settings to configure terminal scroll limit (#7550).
- Added
"code_actions_on_format"
to control additional formatting steps on format/save (#5232). - Added a
"code_actions_on_format"
of"source.organizeImports"
for Go (#4886). - Changed default Markdown tab size to 2 spaces.
- Improved UI of recent project overlay.
- Improved the project search bar layout to match the buffer search bar layout (#7722).
- Added download counts for extensions to the extensions view.
- Added a button to link to an extension's repository (#7873).
- Changed the behavior when uninstalling a theme to default to One Dark or One Light (based on system appearance) rather than keeping a cached version of the old theme.
- Added cancel button on Copilot actions (#6878).
- Improved startup time when opening Zed for the first time or after restarting the operating system.
- Improved
assistant.button
setting to hideInline Assist
button when disabled (#4500).
Bug Fixes
- Fixed completions in Ruby not working for identifiers that start or end with special characters (e.g.:
@
). - Fixed two-character bindings in Vim insert mode (e.g.,
j k
orj j
) not working (#8006). - Fixed a panic that could occur when themes did not contain enough player colors (#7733).
- Fixed case-only renaming of files in the project panel (#5211).
- Fixed time formatting in the chat panel to be locale based.
- Fixed display of long links in lists not fully visible in markdown preview.
- Fixed markdown preview heading overflows not wrapping (#8047).
- Fixed error message when joining a project twice (#8068).
- Fixed a bug around following if the follow started while the workspace was inactive.
- Fixed a bug where extension loading failed after its folder was viewed in macOS Finder (#8096).
- Fixed a bug where matches continued to be highlighting when typing an invalid regex during a buffer search.
- Fixed an issue with switching between invalid regex and simple text buffer search (#7658).
- Fixed wrong handling of Copilot sign-in status in rare cases.
- Fixed venv_detection activation not finding directory if space is in the path.
- Fixed a bug where keystrokes could be lost after focus changes (#7748).
- Fixed a bug where
git_commit
grammar wasn't loading. - Fixed incorrect file icons for
.mjs
,.mts
,.cjs
,.cts
(#7804).