github zed-industries/zed v0.215.0-pre

pre-release2 hours ago

This week's release brings rainbow brackets 🌈 (addressing a feature-request with 1080 👍s), support for OpenAI's GPT 5.1 model for BYOK users, and further performance improvements to project search.

Features

AI

  • Added support for OpenAI's GPT 5.1 model to BYOK. (#43492)
  • Agent: Added the ability to set a model as the default for a given built-in external agent (Claude Code, Codex CLI, or Gemini CLI). (#43122)
  • Agent: Added support for specifying settings for ACP extensions (default_mode, default_model). (#43177)
  • Agent: Improved the "reject"/"keep" behavior when regenerating older prompts by auto-keeping pending edits that don't originate from the prompt to-be-regenerated. (#43347)
  • Agent: Made the thread markdown editable. (#43377)

Git

  • ⭐Improved readability of files in the git changes panel. (#41857; thanks alphathekiwi)
  • ⭐Compressed large diffs for commit message generation. (#42835; thanks 11happy)
  • ⭐Fixed git not preserving file mode when committing. Executable files now retain their permissions when committed with Zed. (#41900; thanks 11happy)
  • ⭐Fixed highlighting for addition and deletion for diff language. (#38384; thanks tidefield)
  • Fixed displaying auto-commit suggestions for single staged entries. (#43470)

Debugger

  • Added $ZED_PICK_PID variable for debug configurations, allowing users to select which process to attach the debugger to at runtime. (#42913)

Languages

  • Python: Added support for detecting uv workspaces as toolchains. (#43496)
  • C++: Added support for treating .h++ files as C++. (#42802; thanks bnjmnjrk)
  • Markdown: Added LaTeX highlighting for inline and display equations. (#41110; thanks lnay)
  • Added support for identifying .clangd and .clang-format files as YAML by default. (#43557, #43469; thanks notpeter)
  • Improved the sorting of semver completions in package.json so the latest versions appear at the top. (#43473)

Terminal

  • Added terminal.path_hyperlink_regexes and terminal.path_hyperlink_timeout_ms settings to customize path hyperlink detection in the terminal. (#40305; thanks davewa)
  • Improved terminal hyperlink performance, especially for terminals with a lot of content visible. (#40305; thanks davewa)

Collaboration

  • Improved rendering of avatars that failed to load by rendering a fallback icon. (#43183)

Other

  • Added bracket colorization (rainbow brackets) support. Use colorize_brackets language setting to enable. (#43172)
  • Onboarding: Added ability to zoom in/out on onboarding pages with the same keybindings you'd use to zoom in/out a regular buffer. (#43244)
  • Added the possibility to open a non-existing path using zed CLI. (#43250; thanks BuonOmo)
  • Added various missing keybindings and fixed several incorrectly mapped keybindings for the JetBrains keymap. (#43042; thanks carstonhernke)
  • Added project_panel::CollapseAllEntries keybinding (cmd-left on macOS, ctrl-left on Linux/Windows) to collapse all entries in the project panel. (#43112)
  • Improved language server updates for slow connections. Zed now launches the existing server if the update is taking too long. (#43164)
  • Improved project search performance with "Also search files ignored by configuration" combined with file inclusion/exclusion queries. (#42968)
  • Enabled environment passthrough for npm subcommands. (#43102; thanks yjoer)
  • Ensured Zed reuses GITHUB_TOKEN env variable when querying GitHub. (#42623; thanks Binlogo)

Bug Fixes

  • macOS: Fixed a bug where Zed would fail to start on some Apple Silicon machines when Metal device enumeration returned no devices. Zed now falls back to the system default device in this case. (#38164; thanks cacaosteve)
  • Windows: Fixed askpass execution sometimes failing. (#43542)
  • Windows: Fixed Zed only finding pwsh, but not powershell. (#43526)
  • Windows: Fixed bash detection when Git is installed via package managers like Scoop. (#43455; thanks qystishere)
  • Windows: Fixed console windows sometimes appearing when opening Python files. (#43496)
  • Windows: Fixed maximized window size when DPI scale changes. (#40053; thanks cppcoffee)
  • Linux: Fixed window control buttons not showing in GNOME Wayland when SSD requested. (#39313; thanks Be-ing)
  • Linux: Fixed ./script/install-Linux for installing a development version of Zed on Linux. (#43205)
  • Agent: Fixed an issue where ACP agents would start MCP servers that were disabled in Zed. (#43467)
  • Agent: Fixed AI assistant edits being scrambled when file was modified while it was open. (#43103)
  • Terminal: Fixed a bug where search match highlights wouldn't update their position when resizing the terminal. (#43507)
  • Terminal: Fixed terminal path hyperlinks for paths containing unicode punctuation and emoji, e.g. mojo.🔥. (#40305; thanks davewa)
  • Terminal: Fixed path hyperlinks for Windows verbatim paths, for example, \\?\C:\Over\here.rs. (#40305; thanks davewa)
  • Vim: Fixed bug where pressing d . . would freeze the editor. (#42145; thanks AidanV)
  • Vim: Fixed the cursor shape reset in vim mode deactivation, ensuring that the user's cursor_shape setting is used. (#42834; thanks lennartkloock)
  • Vim: Fixed paste not working correctly in vim visual modes. (#43031; thanks adriandlam)
  • Helix: Fixed bug where Vim::NextWordEnd in HelixSelect would not select whole word. (#43234; thanks AidanV)
  • Helix: Fixed a bug where <g-l> in Helix mode would not move the cursor to the last character of the line. (#41575; thanks HuaGu-Dragon)
  • Debugger: Fixed input elements within the launch tab in the new session modal to be keyboard navigable. (#43344)
  • Extensions UI: Improved the feedback message for when extensions are not being displayed due to a fetch error caused by lack of connection. (#43197)
  • Fixed settings UI being forced larger than small screens. (#43556)
  • Fixed an issue in the settings UI where changing the terminal shell would set the default shell to sh on Windows. (#43276)
  • Fixed a small issue where a scrollbar would sometimes show in the editor although the content fit exactly on screen. (#43548)
  • Fixed an unnecessary error being logged on startup when SWEEP_AI_TOKEN environment variable is not set. (#43504; thanks oscarvarto)
  • Fixed an issue where accepting a completion for a semver version in package.json would append the suggestion to the existing text instead of replacing it. (#43473)
  • Fixed displaying auto-commit suggestions for single staged entries. (#43470)
  • Fixed a bug where expanding excerpts would fail when the cursor was at the excerpt start. (#42324; thanks olejorgenb)
  • Fixed the following three editor actions not working in remote environments. (#43362; thanks errmayank)
    • editor: copy file name
    • editor: copy file location
    • editor: copy file name without extension
  • Fixed a bug where language server info was not available in remote projects. (#42831; thanks errmayank)
  • Fixed shell env sourcing not working with powershell on unix systems. (#43390)
  • Fixed editor tab tooltips not showing file path for remote files. (#43359; thanks errmayank)
  • Fixed a bug where invalid values in settings files would prevent the rest of the file from being parsed. (#42938)
  • Fixed a bug where a sent agent message would be lost after successful authentication. (#43245)
  • Fixed connect.host setting being ignored by debugpy. (#43190)
  • Fixed a bug where multi-stroke keybindings (like cmd-k cmd-s, or g d in vim mode) would time out waiting for input. Previously, Zed would wait at most 1s for the second keystroke before timing out. In cases where the start of the multi-stroke binding is itself a valid key action (or input text), the 1s timeout still applies. (#42659; thanks xipeng-jin)
  • Fixed issue with popups and menus not being dismissed while using auto_signature_help in Helix Mode. (#43169)
  • Fixed a panic when using vim increment on a multibyte character. (#43101)
  • Fixed an issue where the padding on info popovers would overlay text when the content was scrollable. (#43107)
  • Fixed LSP status list containing zombie entries for LSPs in other windows. (#42733)
  • Fixed encoding error in terms & conditions displayed when installing. (#42906)
  • Fixed ligatures forming between different text kinds. (#43080)

Breaking Changes and Notices

  • Linux: Added window_decorations setting to control whether Zed or the compositor draws window decorations. This replaces the undocumented ZED_WINDOW_DECORATIONS environment variable, which still works but is deprecated. Set to "server" for system titlebars or "client" (default) for Zed's custom titlebar. Requires restart. (#39250; thanks Be-ing)
  • Removed the default cmd-opt-. binding for toggling hidden files in the Project Panel so it's harder to hide them by accident. (#43091)

Don't miss a new zed release

NewReleases is sending notifications on new releases.