Zee:闪电般的终端文本编辑器
1,788 星标
是否曾有过这样的冲动:想在终端中高效工作,却发现标准编辑器要么太慢,要么学习曲线陡峭?认识一下 Zee —— 一款重新定义控制台代码编辑的现代化编辑器。
Zee 是什么?
Zee 是一款为追求速度和效率的用户打造的文本编辑器。它采用 Rust 编写,继承了 Emacs 的理念,同时提供:
- 闪电般的性能(编辑时可达 100 FPS)
- Tree-sitter 等现代技术用于代码分析
- 便捷的类 Emacs 按键绑定
顺便说一句,开发者称其为"实验性"项目,但根据其功能来看,它已经相当成熟。
现在尝试 Zee 的三个理由
-
速度优先
- 光标渲染和编辑操作耗时少于 10ms
- 异步语法解析和文件操作
- 基于高效 B 树 rope 实现的缓冲区(通过 ropey 库)
-
智能代码处理
- Tree-sitter 用于 AST 构建和语法高亮
- 支持高达 100 万行的文件
- 内置实时代码验证
-
舒适的界面
- 多缓冲区支持和窗口分屏
- 模糊高亮的快速文件搜索
- 树形变更历史记录(撤销/重做树)
技术实现原理
Zee 基于几项关键技术构建:
- Rust — 提供安全性和高性能
- Tree-sitter — 强大的代码分析解析器
- Ropey — 高效的文本操作数据结构
- ripgrep — 超快速文件搜索
有趣的是,所有资源密集型操作(解析、文件操作)都被移到了独立的异步线程中,确保了界面的流畅性。
Zee 对哪些人特别有用?
- 通过 SSH 工作的开发者 — 轻量级但功能强大的远程会话编辑器
- 终端工具爱好者 — 具有现代功能的 Vim/Emacs 替代品
- Rust 开发者 — 实践语言应用的优秀范例
- 处理大文件的用户 — 得益于优化,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 与你当前使用的编辑器相比如何!
相关项目