>_ DevTrendszh

语言

首页

语言

板块

前端 后端 移动端 DevOps AI / ML 游戏开发 区块链 安全
Rust

Zee:闪电般的终端文本编辑器

1,788 星标

是否曾有过这样的冲动:想在终端中高效工作,却发现标准编辑器要么太慢,要么学习曲线陡峭?认识一下 Zee —— 一款重新定义控制台代码编辑的现代化编辑器。

Zee 是什么?

Zee 是一款为追求速度和效率的用户打造的文本编辑器。它采用 Rust 编写,继承了 Emacs 的理念,同时提供:

  • 闪电般的性能(编辑时可达 100 FPS)
  • Tree-sitter 等现代技术用于代码分析
  • 便捷的类 Emacs 按键绑定

顺便说一句,开发者称其为"实验性"项目,但根据其功能来看,它已经相当成熟。

现在尝试 Zee 的三个理由

  1. 速度优先

    • 光标渲染和编辑操作耗时少于 10ms
    • 异步语法解析和文件操作
    • 基于高效 B 树 rope 实现的缓冲区(通过 ropey 库)
  2. 智能代码处理

    • Tree-sitter 用于 AST 构建和语法高亮
    • 支持高达 100 万行的文件
    • 内置实时代码验证
  3. 舒适的界面

    • 多缓冲区支持和窗口分屏
    • 模糊高亮的快速文件搜索
    • 树形变更历史记录(撤销/重做树)

技术实现原理

Zee 基于几项关键技术构建:

  • Rust — 提供安全性和高性能
  • Tree-sitter — 强大的代码分析解析器
  • Ropey — 高效的文本操作数据结构
  • ripgrep — 超快速文件搜索

有趣的是,所有资源密集型操作(解析、文件操作)都被移到了独立的异步线程中,确保了界面的流畅性。

Zee 对哪些人特别有用?

  1. 通过 SSH 工作的开发者 — 轻量级但功能强大的远程会话编辑器
  2. 终端工具爱好者 — 具有现代功能的 Vim/Emacs 替代品
  3. Rust 开发者 — 实践语言应用的优秀范例
  4. 处理大文件的用户 — 得益于优化,Zee 能轻松处理大型日志和转储文件

如何开始使用?

通过 Cargo(Rust 包管理器)安装:

cargo install --locked zee

要支持系统剪贴板:

cargo install --locked --features system-clipboard zee

在 Linux 上,需要额外的依赖项:

sudo apt install xorg-dev libxcb-shape0-dev libxcb-xfixes0-dev

个人体验

使用 Zee 一周后,我特别欣赏以下几点:

  • 界面流畅性 — 即使在活跃编辑时也真正无卡顿
  • 便捷的类 Emacs 按键绑定(虽然需要时间适应)
  • 通过 Tree-sitter 实现的高质量语法高亮

结论:值得一试吗?

如果你是以下情况,Zee 是个不错的选择:

  • 想要一个没有历史包袱的现代化终端编辑器
  • 重视速度和界面响应能力
  • 愿意学习类 Emacs 的按键绑定

该项目正在积极开发中,已经提供了性能和功能的独特组合。对于 Rust 开发者来说,它也是实际项目中实践语言应用的优秀范例。

不妨一试,并在评论中告诉我们 Zee 与你当前使用的编辑器相比如何!

相关项目