开源LaTeX编辑器网页版:直接读写本地文件夹,编译器和Git全内置

开源LaTeX编辑器网页版:直接读写本地文件夹,编译器和Git全内置

💡 原文中文,约3100字,阅读约需8分钟。
📝

内容提要

TeXbrain是一款免费开源的浏览器内LaTeX编辑器,无需安装即可编译PDF,支持按需加载宏包、完整Git操作及本地文件读写。基于CodeMirror 6提供专业编辑功能,但仅支持pdfTeX,缺少bibtex支持,宏包版本较旧,对Chromium浏览器最友好,适合无法安装本地环境的用户。

🔎

延伸解读

浏览器内编译的代价

TeXbrain通过WebAssembly运行pdfTeX,但仅支持pdfTeX,不支持XeTeX和LuaTeX,因此依赖fontspec或polyglossia的文档无法编译。同时,宏包版本锁定在TeX Live 2020 era,新宏包可能无法使用。参考文献方面,缺少bibtex和biber,只能使用预生成的.bbl文件,样式受限。这些限制意味着它更适合简单文档或旧宏包项目。

浏览器内Git的实用性与限制

TeXbrain内置Git操作,通过isomorphic-git实现克隆、提交、推送等,但远程操作依赖CORS代理,默认使用公共代理,可能影响速度和隐私。用户可自建代理,但需要额外配置。此外,Git认证令牌存储在localStorage,虽不经过服务器,但需注意浏览器安全。对于需要频繁远程协作的用户,这可能不如本地Git客户端方便。

浏览器兼容性差异

TeXbrain对Chromium系浏览器(Chrome、Edge等)支持最好,可直接读写本地文件夹;Firefox和Safari则回退到虚拟文件系统,且Safari上新建项目可能受限,需通过“Open file”打开已有文件。用户若使用非Chromium浏览器,体验会大打折扣,建议优先使用Chrome或Edge。

调试体验的潜在问题

有用户反馈,编译错误信息可能指向错误行号,例如200行文档报错指向第39行,实际问题在宏包内部。这种误导性报错可能增加排查难度。虽然本地TeX Live也可能有类似问题,但浏览器环境的错误提示可能更不直观。用户需注意,遇到报错时需结合宏包上下文分析,而非仅依赖行号。

Q&A

TeXbrain是什么?它有哪些主要特点?

TeXbrain是一款免费开源的浏览器内LaTeX编辑器,无需安装即可编译PDF。它支持按需加载宏包、完整的Git操作、本地文件读写(基于Chromium浏览器),并基于CodeMirror 6提供专业编辑功能。

TeXbrain是如何在浏览器中实现LaTeX编译的?

TeXbrain通过WebAssembly版本的pdfTeX引擎(SwiftLaTeX)在浏览器中直接编译.tex文件为PDF,所有编译都在浏览器沙箱中完成,文件不会上传到服务器。

TeXbrain支持哪些Git操作?它是如何实现的?

TeXbrain支持克隆仓库、创建分支、暂存、提交、推送、拉取和合并等Git操作。它使用isomorphic-git库,在浏览器中模拟Git文件系统,数据存储在IndexedDB中。远程操作通过CORS代理进行。

TeXbrain能直接读写本地文件夹吗?哪些浏览器支持?

是的,TeXbrain使用Chrome的File System Access API,可以直接读写本地文件夹。支持Chromium系浏览器(如Chrome、Edge、Arc、Brave),Firefox和Safari不支持,只能使用虚拟文件系统。

TeXbrain有哪些局限性?

TeXbrain目前只支持pdfTeX,不支持XeTeX和LuaTeX;没有bibtex和biber支持,参考文献处理能力有限;宏包版本锁定在TeX Live 2020 era;对Chromium浏览器最友好,Safari和Firefox体验不佳。

TeXbrain的隐私和安全性如何?

TeXbrain不收集数据,没有遥测、分析、追踪,无需注册账号,不存cookies。Git认证令牌存储在浏览器localStorage中,编译在WebAssembly沙箱中运行,没有命令行执行,无命令注入风险。

TeXbrain适合哪些用户使用?

TeXbrain适合在公用电脑、Chromebook或学校机房工作,无法安装本地TeX Live环境,又不想付费使用在线编辑器会员的用户。作者明确表示它不打算取代本地LaTeX环境。

🏷️

标签

➡️

继续阅读