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
的速度确实很快,不管是启动还是日常使用中的响应,写代码的多多少少都用过好几款不同的编辑器,比如VSCODE
、Jetbrains
系列的产品、Vim
等等。但用Zed
写了一段时间的Rust
之后我发现,他最大的优点就是速度快。最主要,在速度快的同时内存占用并不高,和其他同类产品比起来。
功能
至于Zed
全部的功能上面也介绍了,但由于我编译的并不是完整的功能版本,因此很对功能还是没能体验到,不过就已有的功能来说,Zed
的插件系统包括主题插件和功能插件,虽然整个插件系统还没有Vscode
丰富,但也有不少主题和核心插件提供,对于日常开发来说绰绰有余了。
建议
由于目前尚未支持Win
和Linux
,想要尝鲜的可以自己手动编译。但BUG
确实还是不少的,这一点无可厚非,毕竟做开发的都能理解,如果你追求完善的体验,那还是建议你安心等官方发布吧,这是一款非常Nice
的编辑器,起码我非常喜欢和认可。