保持流畅
高效的编码从工具开始。Zed 将 IDE 的强大功能与轻量级编辑器的响应能力相结合,让您拥有触手可及的生产力。
专为性能而设计
Zed 有效地利用每个 CPU 和 GPU,立即启动、瞬时加载文件,并在下一次显示刷新时响应您的击键。稳定的性能让您保持流畅,并让其他工具感觉缓慢。
插入延迟
启动时间
内存占用
按键即用的人工智能
通过人工智能生成代码来节省时间和击键次数。Zed 开箱即用地支持 GitHub Copilot,您可以通过按 ctrl-enter 并键入自然语言提示来使用 GPT-4 生成或重构代码。与模型进行对话式交互,无需在内置助手面板中切换上下文,然后在内联生成过程中引用您的对话。
语言感知
当您键入时,Zed 会为每个缓冲区维护完整的语法树,从而实现精确的代码突出显示、自动缩进、可搜索的大纲视图和结构选择。Zed 还使用语言服务器协议来提供自动完成、代码导航、诊断和重构。
编辑器内
综合终端
Zed 集成了功能齐全的终端,让您可以在编辑代码的同一位置进行 shell 访问。在内置底部框中使用,可切换到您想要的任何位置,或使用它来容纳其他选项卡。
Vim 模式
通过可搜索的命令面板、VS Code 风格的默认绑定和 Vim 风格的模式编辑,让您的手指可以保持在按键上。刚开始用快捷方式?按键绑定带有提示,以便您下次工作得更快。
主题
Zed 附带了各种开箱即用的浅色和深色主题。接近 1.0 的 Zed 还将提供一种创建自己的主题或加载其他人创建的主题的方法。
与您的团队协作
借助 Zed,多个开发人员可以在共享工作区中导航和编辑。这使得您可以轻松地对代码库的任何部分进行详细的实时对话,无论相关代码是去年提交的还是尚未保存到磁盘。
软件团队的虚拟办公室
频道是与您的团队讨论、计划和编写软件的空间。每个频道都有一个共享文档,用于记笔记和跟踪项目,频道嵌套在层次结构中,让您井然有序。通过频道共享项目,并使用基于音频或文本的聊天,与协作者实时互动。
在任何机器上协作开发
当您加入团队成员的项目时,您可以导航和编辑,就像代码位于本地计算机上一样。打开任何文件、低延迟键入并与语言服务器交互。无论您是与隔壁办公桌的人还是在不同大陆的人一起工作,这一切都可以无缝地进行。
同步导航
跳转到队友的位置并跟随他们执行代码,然后切换角色并让他们跟随您。这是查看更改或帮助新队友熟悉代码库的好方法。您还可以使用内置屏幕共享来关注 Zed 之外的人员,查看文档或试验正在开发的应用程序。
由内而外的美丽
伟大的产品始于伟大的工程。我们非常关心您看不到的实现细节,以生成一个您会忘记您正在使用的编辑器的产品。
像视频游戏一样构建
Zed 的突破性性能始于我们的 GPUI 框架,这是一种构建 2D 用户界面的新方法。GPUI 在 GPU 上光栅化整个窗口,就像 3D 视频游戏一样。结果如何?快速、可靠且流畅地传输每一帧上的像素。
专为多核时代而设计
Rust 独特的类型系统使我们能够跨多个核心并行工作,而不会影响应用程序的稳定性。Zed 使用写时复制数据结构和 Rust 富有表现力的异步原语将 CPU 密集型任务从主线程转移出去,从而产生单线程编辑器不可能实现的响应能力。
对稳定性做了大量的测试
如果没有可靠性,性能和能力就毫无意义。这就是为什么我们对 Zed 的关键代码路径进行了大量随机测试,以帮助我们发现并修复罕见的边缘情况。通过在开发过程中制造受控的混乱,我们确保了产品的稳定性。
语法的原则性方法
正则表达式是分析上下文无关语言的错误工具。这就是我们创建 Tree-sitter 的原因,这是一个开源解析框架,基于编译器中使用的相同理论基础:上下文无关语法。Tree-sitter 使用广义 LR 解析的增量版本,为通用编辑器启用了语言感知功能,而这些功能曾经只能在语言特定的 IDE 中实现。
每个缓冲区都是一个 CRDT
无冲突复制数据类型(CRDT)是一类最终一致的数据结构,允许数据在面对并发突变时保持同步。在 Zed 中,默认情况下每个缓冲区都是 CRDT,这为多种形式的协作提供了基础。它们也是多线程架构的关键组件,使您可以轻松地使用 Zed。
来自: