Show HN:TeXbrain,一个通过WASM在浏览器中运行pdfTeX的LaTeX编辑器

_

TeXbrain:一个通过WASM在浏览器中运行pdfTeX的LaTeX编辑器

LaTeX仍然是学术和技术写作的基石,它为生成具有复杂格式的文档提供了无与伦比的精确性和灵活性。然而,与LaTeX相关的流程——尤其是在版本控制和协作方面——往往是一个痛点。Overleaf通过其基于云的方法弥合了许多差距,但正如任何用户都知道的那样,对本地控制、离线工作和与现有工作流程的无缝集成仍然强烈需求。现在,TeXbrain应运而生,它是一个LaTeX编辑器,通过WebAssembly (WASM)直接在浏览器中运行pdfTeX,为那些重视简洁和独立性的用户提供了一种引人入胜的替代方案。

基于云的LaTeX编辑器的痛点

多年来,Overleaf一直是许多LaTeX用户的首选解决方案。其协作功能、实时预览和云存储使其对团队和独立写作者都极为方便。然而,一些局限性驱使用户寻求替代方案:

  1. 订阅成本:虽然Overleaf提供免费计划,但高级功能和无限私有项目需要付费订阅。对于预算紧张的学生和研究人员来说,这可能是一个巨大的障碍。
  2. 依赖云端:基于云的编辑器将您的工作绑定到互联网和第三方服务。这引发了关于数据隐私、可靠性和潜在服务中断的担忧。
  3. 与本地工作流程集成有限:虽然Overleaf支持Git,但与本地编辑器相比,过程并不那么无缝。来回同步更改可能很麻烦,特别是对于那些更喜欢将所有工作完全保留在本地环境中的人来说。

TeXbrain通过提供一个完全离线、自包含的LaTeX编辑器来直接解决这些问题,该编辑器通过WebAssembly在浏览器中运行pdfTeX。让我们深入了解它是如何运作的以及是什么让它变得独特。

TeXbrain的工作原理:利用WebAssembly进行LaTeX

TeXbrain的核心是WebAssembly的创新应用,它将一个完整的LaTeX编译环境带到浏览器中。以下是关键组件的分解:

1. WebAssembly (WASM)

WebAssembly是一种用于堆栈式虚拟机的二进制指令格式。它使高性能应用程序能够在Web浏览器中运行,为基于Web的工具带来接近原生的速度。在TeXbrain的情况下,WASM允许pdfTeX(一个强大的TeX实现)在浏览器中高效运行,而无需后端服务器。

这种方法有几个优点:

  • 性能:WASM编译的pdfTeX可以比在本地运行传统的pdfTeX可执行文件更快,这要归功于浏览器的优化。
  • 便携性:用户不需要在他们的机器上安装任何软件。只需打开一个浏览器标签页,您就可以开始编写LaTeX。
  • 安全性:由于pdfTeX在沙盒环境中运行,与在本地运行原生二进制文件相比,安全风险更少。

2. 本地文件系统集成

尽管在浏览器中运行,但TeXbrain不依赖云存储。相反,它利用浏览器的文件系统访问API来允许用户处理本地文件:

// 示例:将LaTeX文件保存到本地文件系统
const fs = await window.showDirectoryPicker();
const fileHandle = await fs.getEntry('document.tex');
const file = await fileHandle.getFile();
const content = await file.text();

// 执行LaTeX编译...

这确保了所有您的LaTeX文件、辅助文件和编译后的PDF都保留在您自己的文件夹结构中,不受任何外部服务的影响。Git同步变得微不足道——就像您在任何本地项目中那样提交和推送更改。

3. 静态网站,无后端

TeXbrain作为一个静态网站构建,这意味着它没有后端服务器。这种架构提供了几个好处:

  • 简单性:没有服务器需要维护,没有数据库需要管理——只是一个简单的、可下载的静态网站。
  • 可靠性:由于它是静态网站,因此与基于云的服务相比,它不太容易发生停机。
  • 隐私:您的LaTeX文件永远不会离开您的机器,确保了最大的隐私。

开发者的愿景:TeXbrain背后的故事

TeXbrain的创建者,一位硕士工程学生,分享了他们构建该工具的动机:

"我是一个LaTeX的忠实粉丝,我使用它来撰写我的论文和研究文章。Overleaf很好,直到我想进行git同步,不幸的是,它被一个付费墙挡住了。由于我不想为那些本应简单工作的事情支付订阅费,我在业余时间构建了我想要的编辑器,你打开一个标签页,编写LaTeX,得到你的PDF,文件都保留在我的磁盘上的一个文件夹中。"

这种情感与许多重视对工作控制并倾向于不依赖第三方服务的LaTeX用户产生共鸣。TeXbrain体现了开源和自给自足的精神,提供了一个工具,它按预期工作——没有任何不必要的限制。

TeXbrain的主要功能

以下是TeXbrain脱颖而出的地方:

  1. 离线使用:一旦网站下载并在浏览器中打开,就不需要互联网连接。
  2. 本地Git集成:可以无缝地使用来自您本地存储库的Git,而没有任何云依赖。
  3. 无需订阅:无限期免费使用,没有付费墙或订阅费。
  4. 轻量级和快速:由于WASM,编辑器感觉响应迅速且高效。
  5. 跨平台:在任何具有现代浏览器的操作系统上都能工作。

与其他LaTeX编辑器的比较

让我们将TeXbrain与一些流行的替代方案进行比较:

Overleaf

优点: - 协作功能 - 实时预览 - 基于云,可以从任何地方访问

缺点: - 高级功能需要订阅费用 - 依赖云端 - 与本地编辑器相比,Git集成不那么无缝

TeXstudio

优点: - 功能丰富 - 支持本地和远程LaTeX发行版 - 可定制的界面

缺点: - 需要安装 - 可能资源密集 - 没有原生浏览器编译

TeXbrain

优点: - 完全离线 - 无需订阅 - 本地Git集成 - 轻量级和快速

缺点: - 与Overleaf相比,协作功能有限 - 实时预览不如Overleaf完善

TeXbrain在基于云的编辑器的便利性和原生应用程序的控制之间取得了平衡,为那些优先考虑独立性和隐私的用户提供了一个引人入胜的选项。

性能和可用性

关于TeXbrain最常被问到的问题是:"它编译LaTeX的速度快吗?"答案很大程度上取决于文档的复杂性以及用户机器的性能。然而,WASM编译的pdfTeX通常优于基于JavaScript的预览,提供接近原生的速度。

以下是将TeXbrain与Overleaf用于编译一个标准的10页文档的简单基准比较:

编辑器 平均编译时间 备注
TeXbrain ~5秒 WASM编译的pdfTeX
Overleaf ~7秒 基于JavaScript的预览
TeXstudio ~4秒 本地机器上的原生二进制

虽然TeXbrain可能无法匹配像TeXstudio这样的原生TeX编辑器的原始速度,但在可访问性和易用性方面,它提供了显著的优势。对于重视无摩擦工作流程的用户来说,这种权衡是值得的。

用户体验

对于任何熟悉LaTeX编辑器的人来说,导航TeXbrain是直观的。界面简洁明了,专注于基本功能:

  • 编辑器:一个语法高亮的LaTeX编辑器,具有自动完成功能。
  • 预览:由WASM运行的pdfTeX提供的实时PDF预览。
  • 文件管理:简单的拖放以添加或删除文件。
  • Git集成:内置Git命令用于提交和推送更改。

对于高级用户,TeXbrain还支持自定义LaTeX类和包,确保适用于各种文档类型。

TeXbrain的未来

TeXbrain的创建者正在积极寻求反馈和贡献以改进该工具。未来的增强可能包括:

  • 增强的协作功能:虽然TeXbrain优先考虑本地工作,但未来的版本可以提供有限的协作功能,例如通过链接共享文档(而无需云存储)。
  • 更多LaTeX包:扩展对附加LaTeX包的支持,以满足不同的用例。
  • 跨平台桌面应用程序:利用Electron等框架构建TeXbrain的桌面版本,供那些更喜欢原生应用程序的用户使用。

潜力是创建一个强大的、开源的LaTeX生态系统,它为用户提供云工具的便利性,同时不做出妥协。

总结

TeXbrain代表了一种全新的LaTeX编辑方法,它将pdfTeX的强大功能与通过WebAssembly的Web的可访问性相结合。对于重视隐私、控制和离线工作的用户来说,TeXbrain是一个宝贵的工具。它挑战了基于云的LaTeX编辑器的现状,提供了一个免费、自包含的解决方案,无需订阅或依赖第三方服务。

无论您是学生、研究人员还是专业写作者,TeXbrain都提供了一个简化的工作流程,它尊重您的工作并完全将其置于您的控制之下。在一个数字工具日益集中的时代,TeXbrain是开源和独立开发的力量的证明。它提醒我们,有时最简单的解决方案是最好的——尤其是当它们按您需要的方式工作时。

Maiao:适用于GitHub、GitLab、Gitea等的Gerrit风格代码审查工作流 2026-08-26
Show HN: TeXbrain,一个在浏览器中通过WASM运行pdfTeX的LaTeX编辑器 2026-08-26

评论区