Software 43918 Published by

Zed 0.194.3 has been released, featuring enhancements in error reporting, a multi-line text view, SVG previews, and settings adjustments. The update includes diagnostics for JSON, allows for retries on API errors within the agent panel, and enhances the management of debugger breakpoint properties.

The update adds support for using the NO_PROXY environment variable when an HTTP proxy is set, shows previews for SVG files, allows changes to dock size, gives alerts for unknown fields, improves how pasted newlines are handled during searches, enhances the detection of Prettier configuration files, and improves error reporting for regex parsing. Recent updates address the absence of shadows for blurred-background windows on macOS, resolve rewrap concerns, and rectify problems related to horizontal autoscrolling and indent guides. The agent panel now features automatic retries when an upstream AI API experiences overload or returns a 500 error, and the model selector has been updated to prioritize open options. The update also resolves concerns related to streaming responses and slow scrolling, as well as issues associated with Anthropic requests and Gemini models.





Zed 0.194.3

This week's release includes error reporting on malformed regex patterns in buffer and project searches, better view of multi-line text in search inputs, SVG previews, better settings.json diagnostics, agent panel retries on API errors, better debugger breakpoint property management, and more!

Compatibility Note: this week's preview release (v0.195.x) includes a change to the handling of LSP actions when sharing projects via Zed Collaboration. When a host using the new Zed Preview collaborates with a guest using an older Zed release (<= v0.194.x), or vice versa, go to definition will not work on the guest. This can be fixed by running either the new preview or an older release on both host and guest. Go to definition will work again in mixed stable/preview shared projects after next week's releases.

Features

  • Added support for respecting the NO_PROXY environment variable when any HTTP proxy is configured. See  Zed Network Proxy docs for more. ( #33742)
  • Added SVG file preview, accessible via the quick action bar button or keyboard shortcuts (ctrl/cmd+k v and ctrl/cmd+shift+v) when editing SVG files. ( #32694; thanks  ronharel02)
  • Added ability to manipulate dock size with new workspace::{Decrease,Increase,Reset}{Open,Active}DockSize actions. ( #31366; thanks  aurexav)
  • Added warnings for unknown fields when editing settings.json. ( #33678)
  • Improved pasted newlines in search: render as "\n" (with an underline), instead of line-wrapping. This should make it much clearer what you're searching for. ( #33504)
  • Improved Prettier config file detection ( #33744; thanks  IanMitchell)
  • Use git cli to perform checkouts (to avoid a crash seen in libgit2) ( #33499)
  • Show regex parsing errors under the search bar for buffer and project search. ( #33638; thanks  mikalsande)

Bug Fixes

  • Fixed the missing shadow for blurred-background windows on macOS. ( #27403; thanks  alphaArgon)
  • Fixed an issue where rewrap would not work with selection when two comment blocks are separated with line of code. ( #33566)
  • Fixed an issue where horizontal autoscrolling would stutter and indent guides would drift when scrolling horizontally. ( #33514; thanks  MrSubidubi)
  • Fixed git commit message line break getting stripped after committing. ( #33409; thanks  imumesh18)
  • Fixed long branch names overflowing to multiple lines in git panel branch selector. ( #33529; thanks  ddoemonn)
  • Fixed the removal of leading whitespace in a language server's stderr logs. ( #33418; thanks  davidbarsky)
  • Fixed an issue with empty code actions menu locking the cursor ( #33386)
  • Fixed file finder selecting wrong worktree when creating a file ( #33139; thanks  CharlesChen0823)
  • helix: Fixed edge-cases with word motions and newlines ( #33408; thanks  fantacell)
  • Improved rewrap to respect changes in indentation or comment prefix (e.g. // vs ///) as boundaries so that it doesn't merge them into one mangled text. ( #33566)
  • Linux: Now skips insertion of characters when modifiers are held. Before, characters were inserted if there's no match in the keymap. ( #33424)
  • emacs: Bound alt-q to editor::Rewrap (like M-q or M-x fill-paragraph) ( #33588)
  • Fixed a remote server (SSH) crash when editing JSON files ( #33824).

Agent

  • Automatically retry in Agent Panel instead of erroring out when an upstream AI API is overloaded or 500s ( #33275)
  • Show a notification when an Agent thread errors out and Zed is not the active window. ( #33275)
  • Added provider icon to the model selector making it easier to distinguish between providers. ( #30595; thanks  dive)
  • Added GEMINI.md as a supported rules file name ( #33381; thanks  imumesh18)
  • Use standardised format for configuring MCP Servers ( #33539)
  • Improved how we display errors in the agent panel. ( #33680)
  • Improved support for explicitly disabling individual tools when enable_all_context_servers is true. (e.g. enable all tools except XYZ). ( #33536)
  • Improved the model selector by ensuring the active model is always focused on open. ( #33567)
  • Improved roles when triggering assistant::Split (shift-enter) ( #33215)
  • Fixed Bedrock bug causing streaming responses to return as one big chunk ( #28281; thanks  5herlocked)
  • Fixed slow scrolling in agent panel ( #33608; thanks  maan2003)
  • Fixed an issue where Anthropic requests would sometimes fail because of malformed assistant messages ( #33643)
  • Fixed an issue with some themes where selections inside the agent panel would occlude the selected text completely. ( #32388)
  • Fixed an issue where performing a web search request would sometimes fail ( #33639)
  • Fixed a off-by-one error on the line indices when using a selection as context for the agent. ( #33549; thanks  afgomez)
  • Fixed a bug where the agent could use disabled tools sometimes ( #33392)
  • Fixed copilot failing due to missing Copilot-Vision-Request from request. ( #33552; thanks  imumesh18)
  • Fixed an issue where configuring an MCP server would not restart the underlying server correctly ( #33922)
  • Fixed an issue where Gemini Models would not work because of incompatible tool schemas ( #33919)
  • Fixed a bug that prevented MCP servers to appear in the settings view. ( #33860)
  • Fixed an issue where tools would not work when two MCP servers provided a tool with the same name ( #33854)
  • Remove version fields in settings for agentlanguage_models > anthropiclanguage_models > openai. Your settings will automatically be migrated. This is a backwards incompatible change (<= v0.193.x requires version; >= v0.194.x will complain if version is present). If you're running into issues with this open an issue  here ( #33372)

Debugger

  • CodeLLDB no longer enables pretty-printers for Rust by default. This fixes pretty-printers for C++. This is a breaking change for user-defined debug scenarios from debug.json; in order to enable Rust pretty printing when using CodeLLDB, add "sourceLanguages": ["rust"] to your debug configuration. This change does not affect scenarios automatically inferred by Zed.( #33670)
  • Breakpoint properties (log/hit condition/condition) can now be set directly from breakpoint list. ( #33097)
  • Reorganized layout of a debug panel without any sessions for a vertical dock position. ( #33625)
  • Moved parent directories of source breakpoints into a tooltip. ( #33625)
  • Fixed Zed's debugger issuing threads request before it is allowed to do so per DAP specification. ( #33627)
  • Fixed a bug which caused global debug scenarios (from global .zed/debug.json) to not be picked up. ( #33664)
  • Fixed an issue with Debug Adapter log showing sessions from other Zed windows in the dropdown. ( #33656)
  • Fixed invalid json schema for debug.json. ( #33875)
  • Restarting a debug session now reruns build tasks that are associated with the session ( #33724)
  • go: debugger now respects the envFile setting ( #33666)
  • go: Fixed debugging Go subtests. ( #33694)
  • javascript: Fixed nameless child sessions appearing with the JavaScript adapter. ( #33739)
  • javascript: Added attachSimplePort to JavaScript DAP schema ( #31412; thanks  sigmaSd)
  • ruby:The ruby debug adapter has been moved to the  ruby extension, if you have any saved debug scenarios you'll need to change "adapter": "Ruby" to "adapter": "rdbg". ( #33541)
  • rust: Ensure Cargo locator only targets relevant executables. ( #33126; thanks  CathalMullan)

Languages

  • python: Support highlighting additional operators ("&=", "<<=", ">>=", "@=", "^=" and "|=") ( #33720)
  • python: Improved auto outdent for Python while typing keywords like exceptelsefinally, etc. ( #33370)
  • markdown: Fixed issue where ( wouldn’t autocomplete when . is preceded by it in Markdown. ( #33705)
  • markdown: Improved rewrap for lists, todos, and block quotes. ( #33702)
  • markdown: Allow multiple Markdown preview tabs ( #32859; thanks  ddoemonn)
  • markdown: Support PgUp/PgDown in Markdown previews ( #33403; thanks  djsauble)
  • heex: Fixed Emmet file expansion for files ending in .html.heex. ( #32208; thanks  conradwt)

Vim

  • vim: Added support for vim-mode in git commit editor ( #33222; thanks  AlvaroParker)
  • vim: Allow . repeat in visual mode. ( #33569)
  • vim: Run r! in a non-interactive shell ( #33568)
  • vim: Paragraph objects now support counts: d2apv2ap, etc. ( #33489; thanks  warp-records)
  • vim: Motions now push to the jump list using the same logic as vim (i.e. G/g g/g d always do, but j/k always don't). Most non-vim actions (including clicking with the mouse) continue to push to the jump list only when they move the cursor by 10 or more lines. ( #33495)
  • vim: Fixed an issue when pasting text that was yanked with vim's linewise selections. ( #33555; thanks  afgomez)
  • vim: Fixed a crash with ctrl-g ( #33474)

Screenshot_from_2025_05_07_08_03_17

v0.194.3