The language server has been enhanced, enabling Python to identify runnable modules, execute Python-specific tasks, and display tasks from the Python plugin for standalone files. Improvements have been made to JavaScript and TypeScript, including the recognition of APKBUILD files as "Shell Script."
The Gemini 2.5 Pro Experimental model now includes AI enhancements, while the assistant panel features Claude Sonnet 3.7 Thought. Additionally, Copilot has been updated to utilize the official @github/copilot-language-server.
Recent updates address several issues, including the resolution of hunks being skipped during rapid staging, the insertion of invisible scrollbar tracks in the editor, enhancements to code block highlighting and indentation in Markdown preview, and the problem of color swatches shrinking when a color-related property is re-added. Furthermore, files that exceed 6GB in size will not open, presenting a temporary solution for the ineffective management of large files, which leads to significantly elevated memory consumption.
Here is the announcement:
Zed 0.180.2
Enhancements
- Added persistence to editor folds to preserve them between restarts. ( #27252)
- Added an
editor::CopyAndTrim
action to trim selections when copying. ( #27206)- Added a
go_to_definition_fallback
setting, which can be assignedfind_all_references
(default) ornone
. ( #27426)- Added a scrollbar to the extensions page. ( #27303)
- Added the
--system-specs
flag to the Zed binary (not the CLI!), to retrieve the system specs we ask for in GitHub issues without needing to open Zed. ( #27285)- Added option to copy extension author's name and email from extension context menu. ( #27221)
- Added the ability to set a language server's environment variables. For example:
{"lsp": {"rust-analyzer": {"binary": {"path": "/some/abs/path/rust-analyzer", "env": {"RA_PROFILE": "*>100"} }}}}
. ( #27213; thanks davidbarsky)- Added a notification when saving the
tasks.json
file while in an invalid state. ( #27185)- Improved user menu placement. ( #27329; thanks huacnlee)
- Improved memory usage around installed monospace fonts. On Arch Linux with the
nerd-fonts
package installed (which provides around 2000 monospaced fonts), it decreases RAM usage from ~800MB to around ~300MB. ( #27362; thanks AlvaroParker)- Improved Regex syntax highlighting. ( #25332; thanks chbk)
- Improved scrolling of
editor::SelectLargerSyntaxNode
for better visibility. ( #27295)- Improved autocomplete suggestions in
settings.json
, now the whole string is queried instead of just the last word of the string, which filters out a lot of false positives. ( #27175)- Improved selection of action in
keymap.json
, where now you can double click to only select certain parts of an action, instead of selecting the whole action. ( #27175)- Removed the
stderr
-prefix of a language server's stderr logs. ( #27213; thanks davidbarsky)Languages
- Python: Added detection for runnable Python modules. ( #26462; thanks griendt)
- Python: Added Python-specific task to run a Python file as a module from inside the project's scope. ( #26462; thanks griendt)
- Python: File, line references from Python, like
File "file.py", line 8
are now clickable in the terminal. ( #26903; thanks thorbenk)- Python: Show tasks from Python plugin for standalone files. ( #27183)
- JavaScript / TypeScript: Improved autocomplete suggestions for imports. ( #27235)
- Added recognition for
APKBUILD
files as "Shell Script". ( #27099; thanks vixalien)- Improved language server autocomplete to show more possible matches. ( #27199)
- Updated
bun.lock
files to be recognized as JSONC. ( #27359; thanks A-caibird)Vim
- Added
'
and"
marks (last location jumped from in the current buffer, and location when last exiting a buffer). ( #27231; thanks AidanV)- Added
:marks
which brings up a list of current marks. ( #26885; thanks AidanV)AI
- Added support for Gemini 2.5 Pro Experimental model to Zed AI. ( #27468)
- Added support for Claude Sonnet 3.7 Thought in the assistant panel. ( #27085)
- Added support for Claude Sonnet 3.7 Thought to GitHub Copilot Chat. ( #27409; thanks jiahaoxiang2000)
- Updated Copilot to use the official
@github/copilot-language-server
. ( #27401)- Inline assistant will now expand empty selections to the block under the cursor. ( #27282)
Bug Fixes
- Git: Fixed hunks being skipped when staging too quickly. ( #27552)
- Git: Fixed crash when staging a hunk that overlaps multiple unstaged hunks. ( #27545)
- Fixed invisible scrollbar tracks being inserted into the editor when scrollbars are explicitly disabled via settings. ( #27467; thanks MrSubidubi)
- Fixed an issue where code block highlight and indentation in Markdown preview was rendered incorrectly. ( #27463)
- Fixed an issue where Markdown preview was not rendering bullet points beginning with HTML. ( #27018; thanks nilskch)
- Fixed color swatches shrinking upon re-adding a color-related property. ( #27450)
- Fixed a conflict between LaTeX and cspell extensions affecting code formatting on save. ( #27286; thanks lnay)
- Fixed an issue where
except
,finally
,else
, andelif
control flow keywords in Python would be incorrectly indented when entered at the correct level of indentation. ( #27428)- Fixed a bug where
inactiveRegions
didn't replace existing diagnostics anymore when using theclangd
language server. ( #26737; thanks naim94a)- Fixed an issue where both the predict edit and git onboarding banners would show at the same time. ( #27412)
- Fixed a rare panic in the project diff view. ( #27395)
- Fixed an issue with JSX tag auto-close where components containing a
.
access like<Foo.Bar>
would be auto-closed as</>
instead of</Foo.Bar>
. ( #27374)- Fixed images in the Markdown preview appearing not at all or too often. ( #25592; thanks not-my-profile)
- Fixed an issue with context server paths not being interpreted relative to the extension's work dir. ( #27201)
Breaking Changes and Notices
- Files that are 6GB or larger will now not open. This is a temporary workaround for inefficient handling of large files resulting in extremely high memory usage, often resulting in system freezing, requiring a restart of Zed or the entire system. ( #27458)
- Changed Markdown default to
soft_wrap
at window width instead ofpreferred_line_length
. ( #27205)