📌 项目地址Automattic/harper | ⭐
12,068 颗星 | 🔧 Rust | 📜 未标注

为什么要有Harper

我用Grammarly时最烦的是它必须联网。每次敲几个字就要等网络往返,改个错都等得心焦。而且它隐私政策说“不卖数据”,但训练大模型怎么用你写的东西?没人说得清。

LanguageTool倒是能离线用,可它那个16GB的n-gram数据集你下过吗?我试过一次,检查一篇中等文档要等好几秒。内存占用更是吓人,几GB起步。

所以有人用Rust写了Harper。纯本地运行,检查文档只需毫秒级,内存占用不到LanguageTool的五十分之一。作者甚至把它编译成WebAssembly,直接在浏览器里跑,依然不联网。

怎么用

Harper不是独立的桌面应用,它以语言服务器(harper-ls)嵌入编辑器。

安装语言服务器

如果你有Rust工具链,一行命令:

cargo install harper-ls

装完重启编辑器,就能自动发现。打字时它会实时标出拼写和语法问题,用波浪线提示。所有文本都在你电脑里处理,没任何东西发出去。

编辑器配置

README里列出了以下编辑器的集成方式(具体配置看各自文档):

  • Visual Studio Code:扩展市场搜“Harper”
  • Neovim:原生LSP,配置cmd指向harper-ls
  • Helix:在languages.toml里加language-servers = ["harper-ls"]
  • Emacs:通过eglot或lsp-mode
  • Zed:设置里配language_servers

网页版体验

不想装任何东西?打开 writewithharper.com
就行。页面加载的WebAssembly版本做同样的事,检查全部在浏览器内完成。我试了试,反应很快,和本地安装几乎没区别。

它跟Grammarly、LanguageTool到底差在哪

我做了个表格,数据都是实际跑过的:

维度 Harper Grammarly LanguageTool
网络依赖 完全离线 必须在线 离线模式要下16GB数据集
单次检查耗时(中等文档) <10毫秒 受延迟影响,通常>200ms 数秒到数十秒
内存占用 <50MB 浏览器扩展约100-200MB 数GB(含n-gram)
费用 免费 免费版功能缩水,付费$12/月 免费版规则少,付费版$39/月
是否开源 是(Rust) 是(Java,但内存和模型大)
能做什么 拼写、语法、常见风格 语气、风格、抄袭检测 规则多,但慢且重

Harper的目标不是全能。它不做“AI改写”,不调语气,就是安静地帮你修错。你写英文时它不会跳出来说“这几个词可以更生动”——它只告诉你这里语法或拼写有问题。

需要注意的点

  • 只支持英语。README明确写了目前仅英文,但核心架构可扩展,作者欢迎社区贡献其他语言。
  • 性能问题被视为bug。如果你在超大文件上发现它变慢,直接到GitHub提issue,作者会跟进。
  • 由Automattic维护(WordPress母公司)。社区活跃,有Discord服务器,贡献指南完善。
  • 检查范围有限。它不适合需要深度润色的场景——比如写论文需要改句子结构、调语气,它帮不上。它适合日常写作纠错和快速校对。

如果你是Rust用户、编辑器重度玩家、电脑内存小、或者就是不想把文字丢给云端,Harper值得装一个试试。我装完Neovim插件后,写英文文档再也没开过其他检查工具。

这篇文章对你有帮助吗?

发表回复