放弃 VS Code:新代码编辑器 Zed 的时代已经到来(附使用感受)

1.Zed 是什么?

Zed 由 Nathan Sobo 和一个曾在 GitHub 开发 Atom 和 Tree-sitter 的团队开发。他们的目标是创建一个快速、简单且用户友好的代码编辑器,以提升开发人员的编码体验。以下是关于 Zed 历史的一些关键点:

  • 起源:团队利用他们在 GitHub 开发 Atom 和 Tree-sitter 的经验,学习了许多关于为开发者创建工具的知识。
  • 目标:他们的主要目标是通过使用 Rust 来提高速度,保持简单性,增加智能工具以改进编码,并确保开发人员享受他们的工作,从而打造出完美的代码编辑器。
  • 现有选项的挑战:他们发现其他流行的选项(如 VS Code)过于缓慢和复杂,想尝试一些不同的东西。
  • 发布和演变:Zed 于 2023 年首次作为封闭产品发布。然而在 2024 年,他们决定将其开源,允许任何人根据用户反馈来帮助改进它。
  • 平台可用性:目前,Zed 仅适用于 Mac 电脑,但由于需求很高且 Rust 与 Linux 兼容,他们计划很快支持 Linux。
  • 开源决策:开源 Zed 是一个重要决定。团队相信,与社区合作会使 Zed 变得更好。

总体而言,Zed 代表了一种新的代码编辑方式,专注于开发人员对速度、易用性和良好体验的需求。基于 Rust 并以对编码的热情驱动,Zed 团队旨在设定新的标准。通过将其开放给社区,他们希望更多的人能为使 Zed 更加出色做出贡献。

2. 技术特性

从技术角度来看,Zed 是一种使用 Rust 开发的新型编辑器。它能够同时利用计算机的 CPU 和 GPU。这使开发人员可以在各种编程语言中进行不同的"游戏",解决从简单到复杂的问题。

对于一个简单的文本编辑器来说,这听起来有点夸张,对吧?这正是它与其他编辑器的不同之处。通过启用 GPU 和 CPU 的使用,Zed 确实比大多数主流文本编辑器更快,如 VS Code 和 Sublime。虽然它可能不像默认的 vim 或 Neovim 那么快,但肯定比 VS Code 快,并且使用更少的内存。

对于程序员来说,这意味着整体性能的提升。

访问计算机的 GPU 是 Zed 的一个独特特性,但这并不是唯一使它与其他编辑器不同的地方。

有关更多信息,请访问 Zed 官方网站。

2.1 AI 开发

使用 Zed,开发人员可以获得强大的内置工具,如 GitHub Copilot 和 GPT-4。你可以通过按 "Ctrl+Enter" 来使用 GPT-4 重构代码。

如果这有点困难,你甚至可以用简单的英文或其他自然语言输入命令,并得到相应的源代码。你还可以在面板中与助手聊天而不改变任务,不久之后,它将在对话中生成内联文本(直接在你的源代码中)。

所有这些 AI 功能都可以开箱即用,几乎不需要配置和调整。

2.2 速度和性能

从技术和实际操作来看,Zed 比任何其他文本编辑器都要快,这通过同时利用 CPU 和 GPU 实现。Zed 编辑器的行为像一个游戏窗口,其中文本编辑器元素的渲染类似于游戏元素。

这使得它比 Sublime Text 和 VS Code 更快。大多数文本编辑器只运行在单个处理器上,但 Zed 同时运行在 CPU 和 GPU 上,使其更快且更节省内存。

2.3 代码助手

Zed 在你输入代码时进行跟踪,启用语法高亮、自动缩进、可搜索的概要视图和轻松的代码选择等功能。它还通过语言服务器协议(LSP)进行通信,提供自动补全建议、代码导航、错误检查和代码改进。

2.4 与 Discord 和 Slack + Google Docs 集成

好吧,这个小标题可能有点误导。我的意思是,Zed 提供了集成的频道,如 Discord 和 Slack,允许你在会议期间与团队沟通并共同编写代码。

同样,在 Discord 和 Slack 中,如果你想在编辑器之外做些事情,可以与他人分享你的屏幕。

与分别使用 VS Code 和 Discord 的优势相比,你不需要切换两个不同的应用程序。相反,你可以直接导航到需要展示的代码库,从而节省时间和精力。

使用 Zed,你可以跳到队友的位置并跟踪他们的代码。然后,你可以切换角色,让分享代码的人跟随审阅它的人。这比搜索或导航到特定行要更容易和更快。

2.5 CRDT

CRDT(无冲突复制数据类型)是一种数据结构,确保最终一致性,即使在并发修改时也能保持数据同步。

在 Zed 中,每个缓冲区默认就是一个 CRDT,为各种形式的协作提供了基础。它们也是多线程架构的关键组成部分,使得使用 Zed 更加愉快。


个人使用感受

由于目前官方只有mac版本得下载支持。所以我用的使用自己编译的Windows版本,当然,出于简单考虑,我并没有编译全部的功能,但是核心的编辑和插件、主题系统以及代码提示等功能还是有的,编译还是比较简单的,只要环境没问题,按照官方提供的步骤自己就可以完成。

速度

确实如官方介绍,Zed的速度确实很快,不管是启动还是日常使用中的响应,写代码的多多少少都用过好几款不同的编辑器,比如VSCODEJetbrains系列的产品、Vim等等。但用Zed写了一段时间的Rust之后我发现,他最大的优点就是速度快。最主要,在速度快的同时内存占用并不高,和其他同类产品比起来。

功能

至于Zed全部的功能上面也介绍了,但由于我编译的并不是完整的功能版本,因此很对功能还是没能体验到,不过就已有的功能来说,Zed的插件系统包括主题插件和功能插件,虽然整个插件系统还没有Vscode丰富,但也有不少主题和核心插件提供,对于日常开发来说绰绰有余了。

建议

由于目前尚未支持WinLinux,想要尝鲜的可以自己手动编译。但BUG确实还是不少的,这一点无可厚非,毕竟做开发的都能理解,如果你追求完善的体验,那还是建议你安心等官方发布吧,这是一款非常Nice的编辑器,起码我非常喜欢和认可。

相关推荐
GPT祖弘40 分钟前
【VScode】第三方GPT编程工具-CodeMoss安装教程
ide·vscode·gpt
乐闻x40 分钟前
VSCode 插件开发实战(五):实现新语言支持和语法高亮
ide·vscode·编辑器
Dontla1 小时前
vscode怎么设置anaconda python解释器(anaconda解释器、vscode解释器)
ide·vscode·python
乐闻x1 小时前
VSCode 插件开发实战(六):配置自定义状态栏
ide·vscode·编辑器
漫天转悠1 小时前
VScode中配置ESlint+Prettier详细步骤(图文详情)
vscode·vue
张明奇-琦玉1 小时前
vscode添加全局宏定义
ide·vscode·编辑器
SZ1701102311 小时前
银河麒麟 SSH Vscode连接
vscode·ssh·银河麒麟
Code_流苏1 小时前
VSCode搭建Java开发环境 2024保姆级安装教程(Java环境搭建+VSCode安装+运行测试+背景图设置)
java·ide·vscode·搭建·java开发环境
星星不说话~1 小时前
VScode在远程服务器上安装Anaconda并确认安装成功的步骤
ide·vscode·编辑器
ZJ_.1 小时前
WPSJS:让 WPS 办公与 JavaScript 完美联动
开发语言·前端·javascript·vscode·ecmascript·wps