Skip to content

Releases: zed-industries/zed

v0.162.3-pre

20 Nov 02:11
Compare
Choose a tag to compare
v0.162.3-pre Pre-release
Pre-release
  • Fixed holding down space in the terminal (preview only) (#20879)
  • Fixed slash commands from other slash commands (like /default) not being evaluated (Preview only). (#20864)
  • Fixed a crash on Big Sur (preview only) (#20846)
  • Improve prompt for generating title summaries, avoiding preambles (#20822)
  • Stopped showing signature help after completions by default (#20726)
  • (Preview) Fixed broken rust-analyzer downloads (#20718)

v0.162.2-pre

18 Nov 22:10
8fa471f
Compare
Choose a tag to compare
v0.162.2-pre Pre-release
Pre-release

Features

  • Zed Extension API v0.2.0 (#20683).

Bug Fixes

  • Adjusted file finder split keybindings to be less conflicting (Preview only) (#20680).

v0.162.1-pre

14 Nov 14:13
Compare
Choose a tag to compare
v0.162.1-pre Pre-release
Pre-release

Bug Fixes

  • Fixed macOS localization for menu shortcuts we already localized. (#20623) (Preview Only)
  • macos: Fixed cmd-backtick to cycle between windows (#20621) (Preview Only)
  • Extensions: Fixes for Slash Command Extensions (#20632) (Preview Only)

v0.162.0-pre

13 Nov 19:41
451409e
Compare
Choose a tag to compare
v0.162.0-pre Pre-release
Pre-release

The remainder of the bugs squashed during last week's Quality Week are shipping with today's preview release!

Enhancements

General

  • Repl: Added kernel picker (#20274).

image

  • Added setting to display error and warning indicators in project panel items (#18182; thanks nilskch).

image

  • Added macOS key equivalents to cmd-shift-p debug: Open Key Context View (#20530).
  • Added support for kernelspecs based on python environments (#20467).
  • Added initial support for FreeBSD (#20480; thanks CalebHeydon).
  • Added language setting to disable inline comments in certain scopes. Example: {"languages": {"Go": {"inline_completions_disabled_in": ["comment", "string"]}}} (#20508).
  • Added ability to configure rootFontSize for the tailwindcss-language-server. Example settings: {"lsp": {"tailwindcss-language-server": {"settings": { "rootFontSize": 50}}}} (#20500).
  • Added shortcuts for open settings and revert selected hunks to JetBrains keymap (#20414; thanks trin94).
  • Added initial set of default emacs keybindings (#19605; thanks vextorspace).
  • Added a project panel: remove from project action so that users can now add a keybinding to trigger it: project_panel::RemoveFromProject (#20360).
  • Added support for look-around in project search (#20308; thanks wbbradley).
  • Changed project panel to mark files when opening them, which should make it more intuitive to mark multiple files after opening a single one (#20412).
  • Improved terminal.working_directory when editing settings.json or other non-project files (#18251).
  • Improved task tabs to always rerun tasks on click (#20591).
  • Improved runnable's refresh timings during project search (#20470).
  • Improved the deleting or trashing of files by showing a confirmation prompt when unsaved changes exist (#20172).
  • Improved window title by showing workspace name before filename (#20310; thanks schpet).
  • Improved revealing items for outline and project panels (now center of the list is preferred) (#20349).
  • Improved contrast in default One themes (#20304).
  • Repl: Only show session-oriented repl:: actions for editors after a session has been created (#20396).

AI

  • Changed the model selector in the assistant panel to only show configured models (#20392).
  • Improved knowledge of which model is used when with alternative inline models turned on (#20350).
  • Improved UI feedback when inserting /delta without new changes (#20356).

SSH Remoting

  • Improved error message on unsupported OS/Arch (#20529).
  • Improved support of Zed remote server compilation for riscv64 (#20489; thanks ifsheldon).

Languages

  • Python: Added python-lsp-server as a secondary built-in language server (#20358).
  • Zig: Changed treesitter grammars to the official Zig grammar (#20004; thanks xdBronch).

Bug Fixes

  • Fixed detection of detect_venv.directories being ignored by a worktree (#20227; thanks SirSilver).
  • Fixed context menus not cycling over its edge when selecting items (#20592).
  • Fixed the inability to navigate into project search input with the keyboard (#20579).
  • Fixed an issue with image output from REPL kernels that didn't use base64 padding (#20561).
  • Fixed window drawing when switching X11 workspaces, particularly for tiling window managers such as i3wm and XMonad (#20535).
  • Fixed editor::Rewrap now preserves cursors and only inserts whitespace by using character-level diff instead of line-level diff (#20368).
  • Fixed a long initial delay when performing a project search in a large repository (#20513).
  • Fixed a bug in toolchain selector that caused it to not pick up venvs for tabs before the user interacted with them (#20488).
  • Fixed a bug in the language selector that caused it to pick up Markdown as the language for a buffer up until the tab was interacted with (#20488).
  • Fixed language server logs menu only showing a single entry when using SSH remoting (#20495).
  • Fixed language server names showing up only as "node" (#20428).
  • Fixed an issue where the image preview would not update when the underlying file changed (#20374; thanks wbbradley).
  • Fixed an issue where completions were not triggering when multiple language servers were used for a single file (#20471).
  • Fixed a bug where you could not jump to an untitled file from the multibuffer headers (#20469).
  • Fixed a bug that allowed toggling comments in readonly buffers (#20464; thanks antaz).
  • Fixed a bug where toggling line numbers would incorrectly hide whitespace indicators (#20427).
  • Fixed project panel entries flickering the border when the user clicks on another entry to open it (when preview tabs are disabled) (#20417).
  • Fixed a bug where [] was considered a clickable link in the terminal (#20386; thanks MrSubidubi).
  • Fixed a bug where a directory would be expanded when dropped onto itself in project_panel (#20365; thanks matubu).
  • Fixed inline completions (Copilot, Supermaven, ...) taking over when a snippet completion was active. That resulted in tab not working to jump to the next placeholder in the snippet (#20300).
  • Fixed a bug where file-closing actions would close pinned tabs (#19593; thanks axelcarl).
  • Typescript: Fixed a bug where abstract classes weren't shown correctly in the outline view when editing code (#20377).
  • Fixed Zed when the directory that you opened is renamed (#20313).
  • SSH Remoting: Fixed password dialog for remote server showing ligatures (#20549).

Breaking Changes and Notices

We have made a number of changes to keyboard shortcuts to support non-US keyboard layouts. See the blog post for more information on our general approach, or the issue for details about what changed.

  • All builtin shortcuts that were bound to alt-[a-z] have been rebound, as these shortcuts intefered with typing on non-US keyboards. You can restore these by adding them to your keymap file. The complete list of changes is:

    Old Binding Mapped To Function
    alt-b alt-right editor::MoveToNextWordStart
    alt-d alt-delete editor::DeleteToNextWordEnd
    alt-f alt-left editor::MoveToNextWordEnd
    alt-shift-f ctrl-shift-f project_panel::SearchInDirectory ...
Read more

v0.161.2

14 Nov 14:08
d664f56
Compare
Choose a tag to compare

Bug Fixes

  • repl: Fixed base64 encoded images to support decoding with or without padding (#20616).

v0.161.1

13 Nov 18:24
Compare
Choose a tag to compare

🍂🎉 We squashed some bugs during last week's Quality Week, and half of these fixes have made their way into this week's stable release! 🐛🐞🐜 + 🔨💥 = 😵⚰️!

Enhancements

General

  • Added scrollbar to info popovers in editor (#20184).
  • Added auto-scrolling to project panel when a vertical edge of a panel is hovered with a dragged entry (#20207).
  • Added option to dim inactive panes (#18968; thanks aexvir).
  • Added option to highlight active pane with a border (#18968; thanks aexvir).
  • Added auto_indent_on_paste setting, which can be used on a per-language basis, to configure whether indentation should be adjusted when pasting. This setting is enabled by default for languages other than YAML and Markdown (#20193).
  • Added a new reveal option for tasks: "no_focus". If used, the tasks terminal panel will be opened and shown, but not focused (#19901).
  • Added a new editor: spawn nearest task action that spawns the task with a run indicator icon nearest to the cursor. It can be configured to also use a reveal strategy (#19901).
{
  "context": "EmptyPane || SharedScreen || vim_mode == normal",
  "bindings": {
    ", r t": ["editor::SpawnNearestTask", { "reveal": "no_focus" }],
  }
}
  • Improved editor performance with large # of diagnostics (#20189).
  • Improved sort order in completions to show relevant matches first (#20145; thanks 80avin).
  • Improved project search functionality by reusing the query from the focused buffer's local search (#20253).
  • Improved large project search performance (#20211).
  • Improved workspace::SendKeystrokes to support re-binding keys. For example you can now do: "x": ["workspace::SendKeystrokes", "\" _ x"] in vim mode to ensure that x does not clobber your clipboard (#20277).
  • Improved outline panel keyboard navigation (#20385).
  • Updated the settings schema to allow null as a value for optional settings instead of showing a warning (#20192).
  • Added debug: open theme preview action to the command palette to preview the current theme's styles (#20039).
  • Added optional ignore_indent parameter to editor::ToggleComments to place comment characters at the left margin. You can make this the default by adding "ctrl-/": ["editor::ToggleComments", { "ignore_indent": true }] to your keymap.json in the Editor context (#19746; thanks NichtJens).
  • Added debug: Open Key Context View action to command palette to help debug custom key bindings (#19872).
  • Added scrollbars to outline panel (#19969).
  • Added \u2028 and \u2029 as invisible characters. Previously these were treated as \n (#19712).
  • Markdown Preview: Added button to copy code blocks (#19312; thanks Irilith).
  • Markdown Preview: Added detection to update when file was changed outside of the editor (#20175).
  • Disabled REPL buttons and actions for remote projects and collaboration (#20397).

AI

  • Improved memory footprint for inline transformations (#20296).
  • Moved the text selection action to a slash command (/selection) in the assistant panel (#19988; thanks marechaux).
  • Diagnostics are no longer automatically attached as context to /tab, /file slash commands in the Assistant Panel. Use /diagnostics to include them if desired (#20297).

SSH Remoting

  • Improved latency of connecting (#20220).
  • Improved keyboard navigation in SSH modal (#19894).
  • Fixed duplicated SSH Remote Projects (#20271; thanks AidanV).

Languages

  • Added support for autoclosing braces {} and single quotes '' in Shell Scripts (#20278).
  • Added support for git worktrees. Zed can now open git worktrees and the git status in them is correctly handled (#20164).
  • Go: Improved go test ./... and go generate ./... commands to run in the go module directory rather than the current package directory (#20190; thanks rpadaki).
  • Go: Added runnable and tasks for go generate commands (#19987; thanks rpadaki).
  • C/C++: Fixed info popups from clangd missing information (#20090).

Vim

  • Added r and a as aliases for [ and < text objects (copying vim-surround) (#20104; thanks mike-lloyd03).
  • Added :noh[lsearch] (#20056).
  • Added ctrl-v/ctrl-q to type any unicode code point. For example ctrl-v escape inserts an escape character(U+001B), or ctrl-v u 1 0 E 2 types ტ (U+10E2). As in vim ctrl-v ctrl-j inserts U+0000 not U+000A. Zed does not yet implement insertion of the vim-specific representation of the typed keystroke for other keystrokes (#19585).
  • Added ctrl-shift-v as an alias for paste on Linux (#19585).
  • Extended ctrl-w to work in non-editor contexts. E.g. markdown preview and screen shares (#20058).
  • Fixed r, ~ etc. appearing to modify readonly buffers (#20264).
  • Fixed some shortcuts to render correctly in Command (#20254).
  • Fixed q and @ in visual mode (#20261).
  • Fixed paragraph object in the presence of softwrap (#20259).
  • Fixed search in the assistant panel (#20258).
  • Fixed d G in not deleting until the actual end of the document if soft-wrap is turned on (#20160).
  • Fixed o not scrolling new head into view (#20054).
  • Fixed gu$ missing last character of the line (#20057).
  • Fixed surrounds to allow b/B/r/a anywhere you could use (, {, [, < (#20104; thanks mike-lloyd03).

Bug Fixes

  • Fixed a crash that could happen when closing a workspace with pinned untitled buffers (#20294).
  • Fixed undo and redo macOS menu items being always disabled (#20293).
  • Fixed project panel losing focus after file creation attempt (#20273).
  • Fixed an issue that prevented removing key bindings for actions used in the macOS application menu (#20268).
  • Fixed a bug where rewrapping with a long word at the start of the line would cause a new line to be inserted (#20256).
  • Fixed a bug where Zed would create a new temporary file on each boot for telemetry logs (#20209).
  • Fixed python toolchain detection when worktree local path is set (#20229; thanks WeetHet).
  • Fixed mouse cursor shape flickering in project and outline panels when crossing items (#20202; thanks stippi).
  • Fixed an issue where single quotation marks were spuriously auto-closed when typing in line comments (#20206).
  • Fixed extend/shrink selection on JetBrains keymap (#20199; thanks trin94).
  • Fixed an issue in TypeScript where @vtsls/language-server may not have been updated to the latest version (#20197).
  • Fixed unhelpful auto-indent suggestions in markdown ([#20193](https://github.com/zed-industries/zed...
Read more

v0.161.1-pre

08 Nov 18:08
Compare
Choose a tag to compare
v0.161.1-pre Pre-release
Pre-release
  • Improved outline panel keyboard navigation (#20385).
  • Fixed preview tabs being disabled in code, even if they were enabled in the settings (#20416).
  • Fixed a regression where key binding symbols weren't shown in certain pickers (#20367).
  • Disabled REPL buttons and actions for remote projects and collaboration (#20397).

v0.161.0-pre

06 Nov 20:32
Compare
Choose a tag to compare
v0.161.0-pre Pre-release
Pre-release

🍂🎉 Quality Week Fall 2024 is this week! 🐛🐞🐜 + 🔨💥 = 😵⚰️!

Enhancements

General

  • Added scrollbar to info popovers in editor (#20184).
  • Added auto-scrolling to project panel when a vertical edge of a panel is hovered with a dragged entry (#20207).
  • Added option to dim inactive panes (#18968; thanks aexvir).
  • Added option to highlight active pane with a border (#18968; thanks aexvir).
  • Added auto_indent_on_paste setting, which can be used on a per-language basis, to configure whether indentation should be adjusted when pasting. This setting is enabled by default for languages other than YAML and Markdown (#20193).
  • Added a new reveal option for tasks: "no_focus". If used, the tasks terminal panel will be opened and shown, but not focused (#19901).
  • Added a new editor: spawn nearest task action that spawns the task with a run indicator icon nearest to the cursor. It can be configured to also use a reveal strategy (#19901).
{
  "context": "EmptyPane || SharedScreen || vim_mode == normal",
  "bindings": {
    ", r t": ["editor::SpawnNearestTask", { "reveal": "no_focus" }],
  }
}
  • Improved editor performance with large # of diagnostics (#20189).
  • Improved sort order in completions to show relevant matches first (#20145; thanks 80avin).
  • Improved project search functionality by reusing the query from the focused buffer's local search (#20253).
  • Improved large project search performance (#20211).
  • Improved workspace::SendKeystrokes to support re-binding keys. For example you can now do: "x": ["workspace::SendKeystrokes", "\" _ x"] in vim mode to ensure that x does not clobber your clipboard (#20277).
  • Updated the settings schema to allow null as a value for optional settings instead of showing a warning (#20192).
  • Added debug: open theme preview action to the command palette to preview the current theme's styles (#20039).
  • Added optional ignore_indent parameter to editor::ToggleComments to place comment characters at the left margin. You can make this the default by adding "ctrl-/": ["editor::ToggleComments", { "ignore_indent": true }] to your keymap.json in the Editor context (#19746; thanks NichtJens).
  • Added debug: Open Key Context View action to command palette to help debug custom key bindings (#19872).
  • Added scrollbars to outline panel (#19969).
  • Added \u2028 and \u2029 as invisible characters. Previously these were treated as \n (#19712).
  • Markdown Preview: Added button to copy code blocks (#19312; thanks Irilith).
  • Markdown Preview: Added detection to update when file was changed outside of the editor (#20175).

AI

  • Improved memory footprint for inline transformations (#20296).
  • Moved the text selection action to a slash command (/selection) in the assistant panel (#19988; thanks marechaux).
  • Diagnostics are no longer automatically attached as context to /tab, /file slash commands in the Assistant Panel. Use /diagnostics to include them if desired (#20297).

SSH Remoting

  • Improved latency of connecting (#20220).
  • Improved keyboard navigation in SSH modal (#19894).
  • Fixed duplicated SSH Remote Projects (#20271; thanks AidanV).

Languages

  • Added support for autoclosing braces {} and single quotes '' in Shell Scripts (#20278).
  • Added support for git worktrees. Zed can now open git worktrees and the git status in them is correctly handled (#20164).
  • Go: Improved go test ./... and go generate ./... commands to run in the go module directory rather than the current package directory (#20190; thanks rpadaki).
  • Go: Added runnable and tasks for go generate commands (#19987; thanks rpadaki).
  • C/C++: Fixed info popups from clangd missing information (#20090).

Vim

  • Added r and a as aliases for [ and < text objects (copying vim-surround) (#20104; thanks mike-lloyd03).
  • Added :noh[lsearch] (#20056).
  • Added ctrl-v/ctrl-q to type any unicode code point. For example ctrl-v escape inserts an escape character(U+001B), or ctrl-v u 1 0 E 2 types ტ (U+10E2). As in vim ctrl-v ctrl-j inserts U+0000 not U+000A. Zed does not yet implement insertion of the vim-specific representation of the typed keystroke for other keystrokes (#19585).
  • Added ctrl-shift-v as an alias for paste on Linux (#19585).
  • Extended ctrl-w to work in non-editor contexts. E.g. markdown preview and screen shares (#20058).
  • Fixed r, ~ etc. appearing to modify readonly buffers (#20264).
  • Fixed some shortcuts to render correctly in Command (#20254).
  • Fixed q and @ in visual mode (#20261).
  • Fixed paragraph object in the presence of softwrap (#20259).
  • Fixed search in the assistant panel (#20258).
  • Fixed d G in not deleting until the actual end of the document if soft-wrap is turned on (#20160).
  • Fixed o not scrolling new head into view (#20054).
  • Fixed gu$ missing last character of the line (#20057).
  • Fixed surrounds to allow b/B/r/a anywhere you could use (, {, [, < (#20104; thanks mike-lloyd03).

Bug Fixes

  • Fixed a crash that could happen when closing a workspace with pinned untitled buffers (#20294).
  • Fixed undo and redo macOS menu items being always disabled (#20293).
  • Fixed project panel losing focus after file creation attempt (#20273).
  • Fixed an issue that prevented removing key bindings for actions used in the macOS application menu (#20268).
  • Fixed a bug where rewrapping with a long word at the start of the line would cause a new line to be inserted (#20256).
  • Fixed a bug where Zed would create a new temporary file on each boot for telemetry logs (#20209).
  • Fixed python toolchain detection when worktree local path is set (#20229; thanks WeetHet).
  • Fixed mouse cursor shape flickering in project and outline panels when crossing items (#20202; thanks stippi).
  • Fixed an issue where single quotation marks were spuriously auto-closed when typing in line comments (#20206).
  • Fixed extend/shrink selection on JetBrains keymap (#20199; thanks trin94).
  • Fixed an issue in TypeScript where @vtsls/language-server may not have been updated to the latest version (#20197).
  • Fixed unhelpful auto-indent suggestions in markdown (#20193).
  • Fixed a bug in macOS Sequoia where you couldn't save a new file as *.sql, as it would rename to .sql.s (#20195). As a side effect you can no longer save a new file as *sql.s. We hope to remove this workaround w...
Read more

v0.160.7

06 Nov 18:31
4f88d58
Compare
Choose a tag to compare

Enhancements

General

  • Added support for new models with GitHub Copilot Chat (OpenAI o1-mini, o1-preview; Anthropic Claude 3.5 Sonnet (#19968)).
  • Added support for zed://ssh/<connection>/<path> (#19970).
  • Added support to show invisible characters in the editor (#19846).
  • Added support for self-hosted GitLab instances when generating Git permalinks (#19909).
    • The instance URL must have gitlab somewhere in the host in order to be recognized.
  • Added feature to show commit summary as part of the inline Git blame (#19759; thanks pjtatlow).
  • Improved the parsing of Git remote URLs to support additional scenarios (#19924).

AI

  • Added "Suggest Edit" button to the assistant panel if "enable_experimental_live_diffs": true is set in the "assistant" section of settings.json (#19900). This button takes the place of the previous /workflow command, but it is experimental and may change!
  • Diagnostics are no longer automatically attached as context to /tab, /file slash commands in the Assistant Panel. Use /diagnostics to include them if desired. (#20297).

Languages

  • Added support for Doxygen-style doc comments starting with /// or //! in C++ (#19858).
  • Improved syntax highlighting for type hints in Python (#18185; thanks ClanEver).

Bug Fixes

  • Fixed an issue where the project diagnostics view spuriously allowed horizontal scrolling by a small amount (#19856).
  • Fixed block cursor rendering only the first character of multi-character graphemes (#19867).
  • Fixed image support in REPL for certain versions of matplotlib that included preceding and/or trailing whitespace in the base64 image data (#19977).
  • Fixed Zed incorrectly changing soft wrap based on .editorconfig contents (#20198).
  • Fixed outline panel navigation with menu::SelectNext and menu::SelectPrev (#20083).
  • Fixed outline panel-related performance issues when selections change in the large document (#20031).
  • Fixed deserialization error with Gemini 1.5 Pro (#20200; thanks zeitlings).
  • SSH Remoting: make downloading binary on remote more reliable (#19983).
  • SSH Remoting: Fixed a bug where we could cache an HTML error page as a binary (#19990).
  • SSH Remoting: Fixed compatibility with busy box gunzip (#20046).
  • SSH Remoting: Fixed compatibility with non-sh/bash/zsh shells (#20046).
  • SSH Remoting: Fixed fallback to uploading binary when downloading on the remote fails (#19991).
  • SSH Remoting: Fixed panic when restoring untitled unsaved buffers (#20215).

v0.160.7-pre

05 Nov 22:54
Compare
Choose a tag to compare
v0.160.7-pre Pre-release
Pre-release

Bug fixes

  • Remoting: Fixed panic when restoring untitled unsaved buffers (#20215).