浅谈次世代代码编辑器 Zed:Rust 原生性能、GPU 渲染

前言

提到 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。

参考资料

相关推荐
L-影6 小时前
vscode安装SQLAlchemy步骤
ide·vscode·编辑器
西门大盗8 小时前
pycharm自动进行python 测试(python test)
ide·python·pycharm
倾听一世,繁花盛开10 小时前
Java语言程序设计——篇十三(1)
java·开发语言·ide·eclipse
Uncertainty!!13 小时前
claude code在pycharm中的安装使用
ide·python·pycharm·claude code
Hy行者勇哥13 小时前
国内外与vscode类似的软件有哪些?国内那些软件可以平替?
ide·vscode·编辑器
写代码的小阿帆14 小时前
AI工具使用——外挂AI插件、AI原生IDE与AI终端
ide·人工智能·ai-native
此生只爱蛋1 天前
【vscode环境配置心得】C++版
c++·ide·vscode
xinhuanjieyi1 天前
windows安装vscode服务端
ide·windows·vscode
TOOLS指南1 天前
pycharm数据可视化【分析成绩】
ide·信息可视化·pycharm
永恒的溪流2 天前
学生如何申请专业版pycharm
ide·python·pycharm