Releases: zed-industries/zed
Releases · zed-industries/zed
v0.134.1-pre
v0.133.7
v0.134.0-pre
Enhancements
General
- Added the ability to open directories using macOS context menu (Right click -> Open With -> Zed).
- Added support for avatars in git blame for repositories hosted on codeberg (#11043).
- Added diagnostics for main-thread hangs on macOS. These are only enabled if you've opted into diagnostics.
- Added support for replacing the current preview tab when using code navigation (
enable_preview_from_code_navigation
). - Added icons for JS, React, C, and C++ file types.
- Improved the behavior of launching an empty already-running Zed application by respecting the user's
restore_on_startup
setting.
(#10812).- Check it out: video
- Added a new
project_panel::Trash
action and changed the default behavior forbackspace
anddelete
in the project panel to send a file to the systems trash, instead of permanently deleting it (#7228, #5094). The original behavior can be restored by adding the following section to your keybindings:
{
"context": "ProjectPanel",
"bindings": {
"backspace": "project_panel::Delete",
"delete": "project_panel::Delete",
}
}
- Added displaying of cursor markers in the scrollbar. They can be switched on/off by the
scrollbar.cursors
setting.- Check it out: video
- Improved rendering performance of list elements inside the markdown preview (#10824).
- Changed the diagnostics view to always update its excerpts eagerly when not focused.
- Added an indicator to the project diagnostics view's toolbar, showing when diagnostics have been changed.
Tasks
- Improved the
task::Rerun
action to toggle the tasks modal when no tasks have been scheduled so far.- Check it out: video
Vim
- Added support for line ranges in Vim replace commands (#9428).
Languages
- Added highlighting to TypeScript's triple-slash reference directives (#11001).
- Added
@operator
,@lifetime
and@punctuation.delimiter
captures to Rust highlights file. - Added support for configuring ESLint's
rulesCustomizations
settings, ie.{"lsp": {"eslint": {"settings": {"rulesCustomizations": [{"rule": "*", "severity": "warn"}]}}}}
.- Check it out: video
- Added ESLint support for Vue.js files by starting it as a language server on
.vue
files. (#9934).
Bug Fixes
- Fixed an issue where the project diagnostics view could update its excerpts while you were typing in it.
- Fixed bugs where the project diagnostics view could show the wrong excerpts.
- Fixed (maybe) a rare crash in watching settings files (#11168).
- Fixed a bug where inline diagnostic messages were still visible after folding surrounding code(#4659).
- Fixed ghostly artifacts in transparent window backgrounds.
- Fixed sluggishness with blurred window backgrounds.
- Fixed inline git blame information moving when horizontally scrolling.
- Fixed error messages being logged due to inline git blame not working on an empty buffer that hasn't been saved yet.
- Vim
Breaking Changes
- Removed built-in support for Elixir, in favor of making it available as an extension.
v0.133.5
Enhancements
General
- Added an
editor::ExpandExcerpts
action (bound toshift-enter
by default), which can expand the multi-buffer excerpt the cursor is currently in by 3 lines (#5377). You can customize the number of lines by rebinding this action like so:
// In your keybindings array...
{
"context": "Editor && mode == full",
"bindings": {
"shift-enter": ["editor::ExpandExcerpts", { "lines": 5 }],
}
}
- CLI now accepts an optional name of release channel as its first argument. For example,
zed --stable
will always use your Stable installation's CLI. Trailing args are passed along (#10851). - Changed
cmd-w
to close the window when there are no open tabs (#5322).- See it in action here.
- Added a setting to determine the minimum column where the inline blame information is shown. Example:
{{"git": {"inline_blame": {"min_column": 80}}}
. (#10555).- Check it out here.
- Added a setting to show/hide the Project Panel button in the status bar:
{"project_panel": {"button": false}}
. - Added
drop_target_size
setting. This should be a fractional percent (e.g.,0.5
). - Improved the hitboxes for drop targets.
- Updated drop targets to respect the alpha channel of the
drop_target.background
color. - Improved buffer search workflow:
cmd-f
will select the query string when the buffer search editor is focused. - Exposed Rust traits as
type.interface
for individual syntax theming.
Collaboration
- Improved Markdown preview in channel notes to re-render when another collaborator changes the content.
Git
- Added GitHub avatars to tooltips that appear when hovering over a
git blame
entry (either inline or in the blame gutter).- Check it out here.
- Added links to GitHub pull requests to the git blame tooltips, if they are available.
- Check it out here.
Tasks
- Added tooltips entries in the
task: spawn
modal.
Languages
- Added
language_servers
setting to language settings for customizing which language server(s) run for a given language. - Added auto-installation for the HTML extension on startup.
- This can be disabled by adding
{ "auto_install_extensions": { "html": false } }
to your settings.
- This can be disabled by adding
- Added ReScript as a suggested extension for
.res
and.resi
files. - Added LOG as a suggested extension for
.log
files. - Added support for finding the Ruby language server
solargraph
in the user's$PATH
as it is whencd
ing into a project's directory (#9811). - Added support for configuring the
path
andarguments
forsolargraph
language server manually. Example from settings:{"lsp": {"solargraph": {"binary": {"path":"/Users/thorstenball/bin/solargraph","arguments": ["stdio"]}}}}
(#9811).
Bug Fixes
- Fixed an issue where the wrong language server could be used for formatting (#10902).
- Fixed Rust tasks using incorrect package name (#10925).
- Fixed a bug where non-focused windows weren't showing a hover state for clickable areas (#9784).
- Fixed a bug that caused disabled navigation buttons to show up in terminal panel.
- Fixed a bug where the UI would stutter when dragging tabs over any element that stopped event propagation.
- Fixed a bug where the user's selection was changed when using the language server's
rename
action. - Fixed a bug where multiple terminals were being opened on
workspace::NewTerminal
calls (#4567). - Fixed a bug where
project panel: collapse all entries
was expanding collapsed worktrees. - Fixed a bug where terminal file paths could not be clicked when the column portion of path was malformed (#10688).
Breaking Changes
- Moved
project_panel::OpenInTerminal
intoworkspace::OpenInTerminal
action and added it in editors, tab context menus, and proper panel file entries (#4566) - Removed built-in support for Deno, in favor of making it available as an extension.
- Removed task status indicator and added a
Spawn task
action to terminal panel context menu.
v0.133.5-pre
v0.132.5
v0.133.4-pre
- Fixed rendering of relative line numbers in editor (#11105).