Zed is a high-performance, multiplayer code editor from the creators of Atom and Tree-sitter. It just works. Start coding in no time.
Zed is available for macOS, Linux, and soon for Windows.
Features
Fast
Written from scratch in Rust to efficiently leverage multiple CPU cores and your GPU.
Intelligent
Integrate upcoming LLMs into your workflow to generate, transform, and analyze code.
Collaborative
Chat with teammates, write notes together, and share your screen and project. All included.
Multibuffer editing
Multibuffers compose excerpts from across the codebase in one editable surface.
Interactive programming
Evaluate code inline via Jupyter runtimes and collaboratively edit notebooks.
Multi-language
Support for many languages via Tree-sitter, WebAssembly, and the Language Server Protocol.
Terminal and task runner
Fast native terminal tightly integrates with Zed's language-aware task runner and AI capabilities.
Vim-friendly
First-class modal editing via Vim bindings, including features like text objects and marks.
What's New
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/
/ (#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).