前言
提到 IDE,大家想到的都是 JetBrains 全家桶、VSCode 及其一众衍生品。
不过这些主流的 IDE 也是内存大户和笨重的代名词,最近我试用了以原生、轻量、高性能为特色的 Zed,感觉还挺有意思的,本文简单介绍一下 Zed。后续会更新 AI 功能配置和更多使用场景实践。
关于Zed
Zed 对大部分人来说,可能是个陌生的名词。不过它团队背景非常硬核,甚至可以说他们是现代代码编辑器领域的重量级人物。
团队
Zed 的创始团队(Zed Industries)主要由三位大佬组成:
- Nathan Sobo (CEO) :他是 GitHub Atom 编辑器的创始人。在 GitHub 工作期间,他主导了 Atom 的开发,并参与了协作编辑技术(CRDT)的研究。
- Max Brunsfeld :他是 Tree-sitter 的作者。如果你用过现代编辑器,你一定听过 Tree-sitter,它是目前主流编辑器(包括 VS Code、Neovim)实现丝滑语法高亮和代码解析的核心技术。
- Antonio Scandurra:同样是 Atom 团队的核心成员,也是分布式系统和实时协作领域的专家。
他们为什么要做 Zed?
简单说就是当年他们开发的 Atom 编辑器太拉胯了,虽然开启了网页技术开发编辑器的潮流,但 Atom 性能差、内存占用高,被微软的 VSCode 这个后来者打成路边一条,之后 Atom 也被 GitHub(当时已被微软收购)宣布停运。
Zed团队意识到基于浏览器内核(Electron)的编辑器性能上限太低。于是决定彻底抛弃 HTML/JS,用底层的 Rust 从零开始写一个最快的编辑器。
他们希望代码编辑能像游戏一样,每一帧都由 GPU 渲染,消除任何可感知的延迟。
当初在开发 Atom 时就想做"多人实时编程",但在旧架构上很难实现,所以 Zed 从第一行代码开始就考虑了"多人联机"功能。
小结
简单来说,这是一群懂编辑器的人,在经历过 Atom 的失败与瓶颈后,利用 Rust 这种高性能语言,试图在 AI 时代重新定义开发工具该有的样子。
几个特性
Zed 官网宣传的几个关键特性,本文简单分析一下。
输入延迟
Zed 在性能对比中强调了一个指标:插入延迟(Insertion Latency)。
Zed 的延迟约为 58ms,而 VS Code 约为 97ms。 这种差距类似于从 60Hz 屏幕切换到 144Hz 屏幕------没用过时不觉得,用过之后就再也回不去了。
这来源于 Zed 独特的渲染模式 。 不同于传统应用使用系统控件(Retained 模式),Zed 使用了基于 Vulkan 后端的 Immediate 模式。它把编辑器当成一个 3D 游戏,每一帧都由 GPU 直接渲染。虽然 GPU 渲染在局部更新场景下(如只改动一行代码)不一定总是比 CPU 优化算法快,但它带来的丝滑动效和极低的整体延迟,确实重新定义了编写代码的触觉。
语法分析
一个优秀的编辑器,不仅要快,还要"懂"你的代码。Zed 的快,很大程度上得益于其团队开发的 Tree-sitter ------ 这是一个通用的 parser(语法解析器)生成器。
在 Tree-sitter 之前,大多数编辑器(包括 VS Code)仍在使用基于正则匹配的 TextMate 规则。这种方式只能处理单行,且在代码存在语法错误时往往会失效。
而 Tree-sitter 能够实时构建完整的语法树,支持增量更新。这意味着无论是代码高亮还是自动补全,Zed 都能在毫秒级给出准确反馈,甚至在你的代码写到一半、语法一团乱时,它依然能精准识别出代码逻辑。
协作
除了极致的单机体验,Zed 还内置了强大的协作功能。不同于传统的屏幕共享,Zed 基于 CRDT(无冲突复制数据类型) 实现了真正的实时多人编辑。
虽然它目前在 Remote 功能(如远程服务器开发)上还无法撼动 VS Code 的地位,但其原生协作的体验,确实让团队 Pair Programming 变得前所未有的顺畅。
小结
坦白说,现阶段的 Zed 还无法完全替代 VS Code。
- 生态差距: VS Code 拥有数以万计的插件,而 Zed 的插件库才刚刚起步。
- 功能完备度: 像 VS Code 那样颠覆性的 Remote 开发模式,目前还是没有对手的。
Zed 并不一定要取代你那个装满了几十个插件、配置复杂的 VS Code。当你需要阅读源码、极速修改单个文件、或者想要进入纯粹编写状态时,Zed 是不错的选择。
下一篇文章中,我会分享一下如何配置 Zed,打造成自己的 AI Code Agent。