github zed-industries/zed v0.170.0-pre

latest releases: collab-staging, collab-production, nightly...
pre-release16 hours ago

Enhancements

General

  • Improved app responsiveness with large number of diagnostics (#23122).
  • Improved visibility of errors from language servers by reporting them in the UI when the user invokes an LSP action (#23011).
  • Improved formatting of selection by adding support for multiple cursors (#22933).
  • Improved diagnostic excerpts by using syntactic info to determine the context lines to show (#22858).
  • Added an error toast that is shown when a dev extension fails to install (#22914).
  • Added the process ID (PID) to terminal tab tooltips (#21955; thanks Angelk90).
  • Added project_panel.entry_spacing setting to configure spacing between entries in the project panel: comfortable (default) or standard (#16255; thanks mikesun).
  • Improved keymap settings file with enhanced JSON schema information, enabling better json-language-server completions and tooltips, especially for actions requiring input (#23044).

Language Support

  • Added support for checking for yaml-language-server on the$PATH (#22036; thanks henryhchchc).
  • Changed default formatter for C/C++ to be the primary language server, not Prettier. Format-on-save is still disabled by default for C/C++, but if one uses the editor: format command now, it will default to the language server. clangd can format C++ files, whereas prettier cannot (#23112, #23119).
  • Fixed rename symbols action when the language server does not have the capability to prepare renames - such as luau-lsp (#23000).
  • Added configuration sent on initialization to the Server Info section of the language server logs (#23084).
  • Improved LSP debug logs by defaulting to soft wrap and folding a suffix of long lines. Also adds autoscroll, so if the cursor is on the last line of the logs they will scroll like tail (#22996).

AI

Vim, Emacs, and Keybinds

  • Vim: Added SubWord TextObject (#22387; thanks 0x2CA).
  • Vim: Added support for the popular vim_sneak plugin. This is disabled by default and can be enabled by binding a key to the Sneak and SneakBackward operators (#22793; thanks nilehmann).
  • Emacs: Added support for ctrl-t transposing characters on Linux (#22974).
  • Added Diagnostics key context allowing Diagnostic pane-specific keybinds (#23043; thanks everdrone).
  • macOS: Added fn-f keyboard shortcut for fullscreen toggle (#23184).

Bug Fixes

  • Fixed a bug binding to fn-X (where X is a printing key) on macOS (#23070).
  • Fixed highlighting of "tool" directives in go.mod (#22995).
  • Fixed error message about shell environment failing to load when joining projects in collaboration (#23138).
  • Fixed Vim dxG delete to line (#23053; thanks 0x2CA).
  • Fixed handling of selection ranges when formatting selections within a multibuffer (#22929).
  • Fixed result count in branch picker searches (#22908; thanks AaronFeickert).
  • Fixed issue with project-specific env not being found via .envrc (direnv) on Linux (#22803; thanks 0xtimsb).
  • Fixed outline items not scrolling properly (#22890).
  • Fixed extend/shrink selection in JetBrains keymap on macOS (#22814; thanks narqo).

Breaking changes

Don't miss a new zed release

NewReleases is sending notifications on new releases.