Skip to content

Releases: zed-industries/zed

v0.170.0-pre

15 Jan 21:24
ce3752d
Compare
Choose a tag to compare
v0.170.0-pre Pre-release
Pre-release

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

v0.169.2

15 Jan 21:07
05563d2
Compare
Choose a tag to compare

Enhancements

General

  • Add workspace::OpenFiles action to enable opening individual files on Linux and Windows (#22625)
  • Improved debug: open language server logs to display more language server data (#22797)
  • Set TERM to xterm-256color in Zed's built-in terminal (#22777)
  • Improved the RemoveFromProject action to remove all selected items (#22455; thanks pepyakin).
  • Improved project panel selection, copying, and deletion behavior, to be more predictable (#22658; thanks 0xtimsb).
  • Improved ExpandExcerpts action (shift+enter by default) so it expands all excerpts that have selected text, rather than just excerpts that contain the end of a selection (#22748).
  • Project panel: pasting a file with a conflicting filename will now automatically open the rename dialog (#19975; thanks Zollerboy1).
  • Improved support for file:// URLs with line numbers in the Zed terminal (#22559).
  • Added fine-grained control of scrollbar diagnostic indicators (#22364; thanks AaronFeickert).
  • Support diagnostic navigation in multibuffers (#22620).
  • Added auto-focus for the docked terminal on load when no other item is focused. (#23094; thanks 0xtimsb).

Language Support

  • Python: Added detection for pixi-environments (#22635; thanks YYYasin19)
  • Python auto-venv activation in terminal now checks for path existence before executing the activate script. (#22792).
  • Python: Fixed for running pip commands inside a virtual environment on Windows 11. (#22587; thanks TorratDev)
  • Typescript: Improved typescript-language-server completion details rendering (#23034)
  • Ensure end >= start in lsp::Range (fixes some Zig zls crashes; perhaps others) (#22690; thanks unexge).
  • Improved Tree-sitter support with added compatibility for standard injections captures (#22268; thanks uncenter).
  • Fixed gopls path construction on Windows 11 (#22727; thanks TorratDev).

AI

  • Improved support for Phi4 with ollama (#23036).
  • Added support for Google's Gemini 2.0 Flash experimental model (#22665; thanks respberryx).
  • Added support for the Claude 3.5 Haiku model (#22323; thanks saahityaedams).
  • Added the ability to specify additional beta headers for custom Anthropic models (#20551; thanks rowillia).
  • Fixed inline completions showing up in Vim normal mode (#22439; thanks zeux).

Vim, Emacs, and Keybinds

  • vim: Add 'g J' JoinLines and JoinLinesNoWhitespace (#22496; thanks 0x2CA).
  • vim: Add aq/iq "any quote" text objects that are the smallest of a", a' or a` (#22263; thanks oca159).
  • Fixed a panic in vim text objects in multibuffers (#22753).
  • Fixed Y so it yanks entire line instead of selection (#22416; thanks 0x2CA).
  • Improvements to emacs keybindings (#22590 and #22629; thanks rosstimson).:
    • Better support for running emacs inside Zed terminal (e.g. ctrl-x ctrl-c will quit emacs in terminal not zed)
    • alt-; Toggle Comments
    • alt-^ Join Lines
    • ctrl-/ Undo
    • alt-. GotoDefinition and alt-, GoBack
    • alt-< / alt-> Goto End/Beginning of Buffer
    • alt-g g or alt-g alt-g Goto Line Number
    • ctrl-x h SelectAll
    • ctrl-x b Switch Tabs
    • ctrl-g Menu::cancel
    • ctrl-x 5 0 CloseWindow
    • ctrl-x 5 2 as workspace::NewWindow
  • Added keyboard navigation for menus on Linux (left/right/up/down). (#22074; thanks 0xtimsb). If you wish to open menus with keyboard shortcuts add the following to your user keymap:
      {
        "context": "Workspace",
        "bindings": {
          "alt-z": ["app_menu::OpenApplicationMenu", "Zed"],
          "alt-f": ["app_menu::OpenApplicationMenu", "File"],
          "alt-e": ["app_menu::OpenApplicationMenu", "Edit"],
          "alt-s": ["app_menu::OpenApplicationMenu", "Selection"],
          "alt-v": ["app_menu::OpenApplicationMenu", "View"],
          "alt-g": ["app_menu::OpenApplicationMenu", "Go"],
          "alt-w": ["app_menu::OpenApplicationMenu", "Window"],
          "alt-h": ["app_menu::OpenApplicationMenu", "Help"]
        }
      }

Bug Fixes

  • Fixed duplicate "Fix with Assistant" code actions being displayed (#23118).
  • Improved line positioning when jumping from an excerpt in a Multibuffer into a file. (#23101).
  • Fixed Project Panel toggle (cmd-shift-e / ctrl-shift-e) so it works in more contexts (#22713).
  • Fixed inline completions (Copilot, Supermaven, ...) still being visible sometimes after leaving Vim's insert mode. (#23176).
  • Changed inline completions (Copilot, Supermaven, ...) to not show up in empty buffers. (#23125).
  • Fixed SSH remoting in the case that ssh defaults to a non-$HOME directory (#22744).
  • Added an error alert when there's an error opening file with native OS picker (#22671; thanks spotikhanov).
  • Fixed Rust runnable not detected when comment is after #[test] attribute (#22823; thanks RemcoSmitsDev).
  • Fixed a panic after disconnecting from a remote project (#22806)
  • Fixed bundle-mac script to generate licenses (#22800)
  • Fixed an issue where items on the Welcome page could not be toggled on Windows, either on first launch or when settings.json is a symlink (#22660; thanks 0xtimsb.
  • Fixed terminal incorrectly inheriting TERM from the parent environment (#22615; thanks JuliusDeBoer).
  • Reduced amount of workspace serialization happening (#22730)
  • Fixed empty title in Recent Projects (#21952; thanks huacnlee).
  • Fixed target file from being trashed when trashing symlink on Linux (#22704; thanks 0xtimsb).
  • Pinning a preview tab will now turn off preview mode (#22501; thanks Hmikihiro).
  • gpui: Fixed an issue where shadows with a blur_radius of 0 would not render (#22441).
  • Fixed ghost files appearing in the project panel when clicking relative paths in the terminal (#22688; thanks 0xtimsb).
  • Fixed buttons being unresponsive on load until the center pane is clicked (#23094; thanks 0xtimsb).
  • Fixed inlay hints not showing while using theme selector (#22605).
  • Fixed zed cli crash (ScreenCaptureKit library not loaded) on older macOS versions (#22515; thanks huacnlee).
  • Fixed issue where Welcome page could alter settings on Linux when Zed settings.json was a Symlink (dotfiles, etc) (#22608; thanks 0xtimsb).
  • Fixed robotgo failing when Zed window is open on Linux ([...
Read more

v0.169.2-pre

15 Jan 18:12
efb6342
Compare
Choose a tag to compare
v0.169.2-pre Pre-release
Pre-release
  • Improved support for Phi4 with ollama. (#23036)
  • (temporarily) Removes the linux "save file as root" feature while we figure out bugs. (#23168)
  • Fixed inline completions (Copilot, Supermaven, ...) still being visible sometimes after leaving Vim's insert mode. (#23176)
  • Changed inline completions (Copilot, Supermaven, ...) to not show up in empty buffers. (#23125)
  • Changed the behavior of <tab> at start of line when an inline completion (Copilot, Supermaven, ...) is visible. If the cursor is before the suggested indentation, <tab> now indents the line instead of accepting the visible completion. (#22892)
  • Fixed duplicate "Fix with Assistant" entries showing in the code action list. (#23118)

v0.169.1-pre

13 Jan 23:17
Compare
Choose a tag to compare
v0.169.1-pre Pre-release
Pre-release
  • Fixed a bug where the relative position of an excerpt within the multibuffer was not accounted for while jumping to the buffer, causing the clicked line to drastically change position on screen. (#23101)
  • Fixed unresponsive buttons on load until the center pane is clicked.
  • Added auto-focus for the docked terminal on load when no other item is focused. (#23094)
  • Fixed terminal pane button opening two terminals on click (#23032)
  • Improved typescript-language-server's completion details rendering (#23034)

v0.168.3

13 Jan 23:36
Compare
Choose a tag to compare
  • Fixed a bug where the relative position of an excerpt within the multibuffer was not accounted for while jumping to the buffer, causing the clicked line to drastically change position on screen. (#23100)
  • Fixed unresponsive buttons on load until the center pane is clicked.
  • Added auto-focus for the docked terminal on load when no other item is focused. (#23093)
  • Fixed terminal pane button opening two terminals on click (#23031)
  • Improved typescript-language-server's completion details rendering (#23033)

v0.169.0-pre

08 Jan 17:53
9cb8645
Compare
Choose a tag to compare
v0.169.0-pre Pre-release
Pre-release

Enhancements

General

  • Add workspace::OpenFiles action to enable opening individual files on Linux and Windows (#22625)
  • Improved debug: open language server logs to display more language server data (#22797)
  • Set TERM to xterm-256color in Zed's built-in terminal (#22777)
  • Improved the RemoveFromProject action to remove all selected items (#22455; thanks pepyakin).
  • Improved project panel selection, copying, and deletion behavior, to be more predictable (#22658; thanks 0xtimsb).
  • Improved ExpandExcerpts action (shift+enter by default) so it expands all excerpts that have selected text, rather than just excerpts that contain the end of a selection (#22748).
  • Project panel: pasting a file with a conflicting filename will now automatically open the rename dialog (#19975; thanks Zollerboy1).
  • Improved support for file:// URLs with line numbers in the Zed terminal (#22559).
  • Added fine-grained control of scrollbar diagnostic indicators (#22364; thanks AaronFeickert).
  • Support diagnostic navigation in multibuffers (#22620)

Language Support

  • Python: Added detection for pixi-environments (#22635; thanks YYYasin19)
  • Python auto-venv activation in terminal now checks for path existence before executing the activate script. (#22792).
  • Python: Fixed for running pip commands inside a virtual environment on Windows 11. (#22587; thanks TorratDev)
  • Ensure end >= start in lsp::Range (fixes some Zig zls crashes; perhaps others) (#22690; thanks unexge).
  • Improved Tree-sitter support with added compatibility for standard injections captures (#22268; thanks uncenter)
  • Fixed gopls path construction on Windows 11 (#22727; thanks TorratDev).

AI

  • Added support for Google's Gemini 2.0 Flash experimental model (#22665; thanks respberryx).
  • Added support for the Claude 3.5 Haiku model (#22323; thanks saahityaedams).
  • Added the ability to specify additional beta headers for custom Anthropic models (#20551; thanks rowillia).
  • Fixed inline completions showing up in Vim normal mode (#22439; thanks zeux).

Vim, Emacs, and Keybinds

  • vim: Add 'g J' JoinLines and JoinLinesNoWhitespace (#22496; thanks 0x2CA)
  • vim: Add aq/iq "any quote" text objects that are the smallest of a", a' or a` (#22263; thanks oca159)
  • Fixed a panic in vim text objects in multibuffers (#22753)
  • Fixed Y so it yanks entire line instead of selection (#22416; thanks 0x2CA)
  • Improvements to emacs keybindings (#22590 and #22629; thanks rosstimson).:
    • Better support for running emacs inside Zed terminal (e.g. ctrl-x ctrl-c will quit emacs in terminal not zed)
    • alt-; Toggle Comments
    • alt-^ Join Lines
    • ctrl-/ Undo
    • alt-. GotoDefinition and alt-, GoBack
    • alt-< / alt-> Goto End/Beginning of Buffer
    • alt-g g or alt-g alt-g Goto Line Number
    • ctrl-x h SelectAll
    • ctrl-x b Switch Tabs
    • ctrl-g Menu::cancel
    • ctrl-x 5 0 CloseWindow
    • ctrl-x 5 2 as workspace::NewWindow
  • Added keyboard navigation for menus on Linux (left/right/up/down). (#22074; thanks 0xtimsb). If you wish to open menus with keyboard shortcuts add the following to your user keymap:
      {
        "context": "Workspace",
        "bindings": {
          "alt-z": ["app_menu::OpenApplicationMenu", "Zed"],
          "alt-f": ["app_menu::OpenApplicationMenu", "File"],
          "alt-e": ["app_menu::OpenApplicationMenu", "Edit"],
          "alt-s": ["app_menu::OpenApplicationMenu", "Selection"],
          "alt-v": ["app_menu::OpenApplicationMenu", "View"],
          "alt-g": ["app_menu::OpenApplicationMenu", "Go"],
          "alt-w": ["app_menu::OpenApplicationMenu", "Window"],
          "alt-h": ["app_menu::OpenApplicationMenu", "Help"]
        }
      }

Bug Fixes

  • Fixed Project Panel toggle (cmd-shift-e / ctrl-shift-e) so it works in more contexts (#22713).
  • Fixed SSH remoting in the case that ssh defaults to a non-$HOME directory (#22744).
  • Added an error alert when there's an error opening file with native OS picker (#22671; thanks spotikhanov)
  • Fixed Rust runnable not detected when comment is after #[test] attribute (#22823; thanks RemcoSmitsDev).
  • Fixed a panic after disconnecting from a remote project (#22806)
  • Fixed bundle-mac script to generate licenses (#22800)
  • Fixed an issue where items on the Welcome page could not be toggled on Windows, either on first launch or when settings.json is a symlink (#22660; thanks 0xtimsb.
  • Fixed terminal incorrectly inheriting TERM from the parent environment (#22615; thanks JuliusDeBoer)
  • Reduced amount of workspace serialization happening (#22730)
  • Fixed empty title in Recent Projects (#21952; thanks huacnlee).
  • Fixed target file from being trashed when trashing symlink on Linux (#22704; thanks 0xtimsb)
  • Pinning a preview tab will now turn off preview mode (#22501; thanks Hmikihiro)
  • gpui: Fixed an issue where shadows with a blur_radius of 0 would not render (#22441)
  • Fixed ghost files appearing in the project panel when clicking relative paths in the terminal (#22688; thanks 0xtimsb).
  • Fixed inlay hints not showing while using theme selector (#22605).
  • Fixed zed cli crash (ScreenCaptureKit library not loaded) on older macOS versions (#22515; thanks huacnlee)
  • Fixed issue where Welcome page could alter settings on Linux when Zed settings.json was a Symlink (dotfiles, etc) (#22608; thanks 0xtimsb).
  • Fixed robotgo failing when Zed window is open on Linux (#22348; thanks 0xtimsb).
  • Fixed cursor style not changing on hover over items in the title bar on Windows (#22580; thanks 0xtimsb).

Breaking changes

  • Renamed the OpenFile action to OpenSelectedFilename for clarity (#22494)

v0.168.2

08 Jan 17:54
14b2cd0
Compare
Choose a tag to compare

Enhancements

General

  • Added menus on Linux (#21873; thanks 0xtimsb).
  • Multibuffer headers will now stick to the top of the viewport as you scroll (#22391).
  • Multibuffer improved usability: clicking on line numbers in multibuffers jumps the cursor to that location in file; show keybinds for "jump to file/location" and "expand excerpt" (#22167).
  • Multibuffer diagnostic excerpts can now be expanded(#22391).
  • Added block comment syntax <!-- and --> for Markdown files (#22352; thanks Rusydy).
  • Improved handling of resizing and multiple monitors in Linux/Windows (#22409; thanks kvark).
  • Make workspace::ToggleRightDock open the assistant panel if no right-dock panel has yet been activated (#22346).
  • Terminal: cmd-n now opens a new terminal instead of a new file (#22253).
  • Improved performance with large quantity of cursors (#22299)
  • Improved GPU context management: share a single context with multiple surfaces (#20853; thanks kvark)
  • Added support for searching command palette using keymap-style action names (#22149).
  • Add keybinds for "Close Left" / "Close Right" tab actions: cmd-k e / cmd-k t (macOS) or ctrl-k e / ctrl-k t (Linux) (#22402).

Language / AI

  • Add support for OpenAI o1 model (non-preview) in GitHub Copilot Chat (#22376; thanks chirpcel).
  • Syntax highlight the JavaScript keyword using (#22479; thanks jaydenseric).
  • Zig: Fixed zls renames applying duplicate edits (#22512).
  • Zig: Fixed zls not working properly when typos extension is installed (#22511).
  • Fixed autocomplete inserting multiple imports (#22448)
  • Fixed pytest decoracted function discovery (#22325; thanks ThomAub)
  • Added the new CSS logo (#22382)

Vim

  • Support arrow key movement in with Alacritty vi-mode in the Zed Terminal on more keyboard layouts. Access via terminal::ToggleViMode action which is bound by-default to ctrl-shift-space (#22103; thanks agomezl)
  • Fixed vim repeat (.) and macro playback of insertions in diagnostics and assistant (#22210).
  • Fixed deleting sentence-wise (i.e. d( and d)), which would previously delete the whole line instead of just a sentence. (#22289)
  • Added support for find and replace in diagnostics. Also causes keybindings that use search to now work (such as * and # vim bindings) (#22213).

Bug Fixes

  • Fixed non-maximized zed windows growing larger across sessions on Linux (#22301; thanks 0xtimsb)
  • Fixed Failed to start language server errors when starting from dekstop entry on Linux (#22335; thanks 0xtimsb).
  • Fixed some language servers reporting status as "Downloading..." when only a version check was being done (#22292).
  • Fixed language servers not being released between project reopens (#22470).
  • Fixed wrong cursor theme for arrow cursor style on Linux (#22276; thanks 0xtimsb).
  • Fixed file saving with root ownership on Linux (#22045; thanks 0xtimsb).
  • Fixed GitHub permalink-to-line actions when worktree dir and Git dir aren't the same (#22003)
  • Collab: Fixed an overlap that cuts off user names when a cursor has a block shape (#21999; thanks AaronFeickert).
  • Collab: Hide chat panel button by default when not in a call (#22200).
  • Fixed Rust completion labels not showing the imports (#22651)
  • Fixed a staleness issue with the language model selector. (#22626)

v0.168.2-pre

06 Jan 19:53
Compare
Choose a tag to compare
v0.168.2-pre Pre-release
Pre-release
  • Fixed Rust completion labels not showing the imports (#22651)
  • Fixed a staleness issue with the language model selector. (#22626)

v0.167.2

06 Jan 21:19
Compare
Choose a tag to compare
  • Fixed Rust completion labels not showing the imports (#22650)
  • Fixed a staleness issue with the language model selector. (#22627)
  • Fixed tooltips getting stuck (#22549)

v0.168.1-pre

03 Jan 17:34
da62407
Compare
Choose a tag to compare
v0.168.1-pre Pre-release
Pre-release
  • Preview Only: Fix vertical alignment when jumping from multibuffers (#22613)
  • Preview Only: Fixed tooltips getting stuck (#22550)