Stable release

May

Zed 0.133.5

05/01/2024

Enhancements

General

  • Added an editor::ExpandExcerpts action (bound to shift-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.
  • 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 when cding into a project's directory (#9811).
  • Added support for configuring the path and arguments for solargraph 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 into workspace::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.