任何一款 LaTeX 编辑器最终都要回答同一个问题:相对于「文本编辑器加 latexmk」,它究竟多了什么。TeX64 的答案是紧挨着数学摆放的三件工具——无需记忆语法即可搭建公式的可视化编辑器 Blocks、在设备端把图片中的公式转成 LaTeX 的数学 OCR,以及以差分形式提出修改的 AI Axiom。它是运行在 macOS 与 Windows 上的本地优先桌面应用,本身并不做排版。另外,发布这份参考资料的也正是开发 TeX64 的 Fermion Inc.。正因如此,本页只写能在仓库与公开文档中查证的内容,不放宣传辞令。
TeX64 是什么,又不是什么
首先,TeX64 不是排版引擎。应用内部并不附带 LaTeX 引擎;每次构建都会调用你另行安装的 TeX 发行版中的 latexmk、lualatex、latexindent 与 synctex。文档明确写着:没有 TeX 发行版就无法编译。因此 TeX64 是把编辑、构建与预览捆在一起的前端,输出的 PDF 由标准 TeX 工具链生成。这既是限制也是保证——没有专有文档格式,稿件始终是普通的 .tex,随时可以带去别的编辑器或别的机器。
其次是本地优先在这里的含义。编辑、构建、PDF 预览、SyncTeX 与数学 OCR 全部在设备端运行。需要联网的只有 Axiom AI、账户与计费功能,以及下文所述的受管理 TeX Live 的下载。支持的平台是 macOS 12 及以上(Apple Silicon / Intel) 与 Windows 10/11(x64);Windows Store 版本的更新由 Microsoft Store 管理。目前没有 Linux 版本,文档对此有明确说明。挑选编辑器时,这三点——能否离线写作、同一份稿件能否在两个系统上通用、是否需要 Linux——就是第一道筛子。
安装,以及确认它能否找到 TeX
下载页(/download)会给出与操作系统匹配的路径。在 Windows 10/11 x64 上运行由 Microsoft 签名的 Store 安装程序,此后的更新由 Microsoft Store 管理。在 macOS 12 及以上 上打开 Apple Silicon 或 Intel 的 DMG,把 TeX64.app 拖入「应用程序」。macOS 的构件已签名并完成公证,且每个版本都会公布逐构件的 SHA-256,因此下载到的文件可以当场核对。若不确定该拿哪一个 Mac 版本,在终端运行 uname -p:arm 表示 Apple Silicon,i386 表示 Intel。
装好之后第一件该做的事,是确认 TeX 环境已被找到。打开 Settings > 环境(Environment),lualatex、latexmk、latexindent、synctex 这四项在检测到时显示绿色对勾,未检测到则显示红色。若在还是红色时就开始写稿,日后构建失败时就无法区分究竟是编辑器的问题还是缺少 TeX。若完全没有 TeX 环境,也可以在用户确认之后由 TeX64 安装受其管理的 TeX Live。这条路径会从镜像获取 TeX 宏包并安装到应用管理的文件夹中——正如隐私政策明确写明的,此过程不会上传你的项目。
- Windows:已有的 TeX Live,或经你确认后安装的 TeX64 管理版 TeX Live。
- macOS:MacTeX(约 4 GB,该有的都有)、BasicTeX(约 100 MB,缺什么用
tlmgr补),或 TeX64 管理版 TeX Live。 - 验证:Settings > 环境 中
lualatex、latexmk、latexindent、synctex四项全部为绿色。 - PATH:MacTeX 会加入
/Library/TeX/texbin;经 Homebrew 安装则在/opt/homebrew/bin。改动 PATH 后请重启终端与 TeX64。
工作区——在长稿件中移动的工具
TeX64 把文件夹作为工作区打开:左侧是文件树,中间是可纵向或横向分割的标签式编辑器,右侧是 PDF 查看器。查看器可以拆分为独立窗口,因此在多显示器环境下,一块屏放源码,另一块放 PDF。在长稿件中真正管用的是大纲面板,它按层级列出章、节、图、表、标签、引用与 TODO,并随输入实时更新。点击任一条目即可跳转,三百页的论文也不会失去结构感。用 Cmd+Shift+O(Windows 为 Ctrl+Shift+O)开关。
搜索分两层。Cmd+F 在当前文件内查找;Cmd+Shift+F 则对整个工作区做全文搜索(由 ripgrep 支撑),以带行号的列表列出全部匹配,可直接跳转。该面板还支持全项目替换,把 \mycommand 改名为 \mynewcommand 一次即可完成——养成替换前先预览结果的习惯。另有一个不起眼却能大幅减少事故的功能:重命名文件。在文件树中改名后,项目里所有指向它的 \input、\include、\graphicspath 引用都会自动跟着改。对于每次整理章节文件都要手工修补引用的人来说,仅凭这一点就足以构成迁移的理由。
thesis/ # open this folder as the workspace
main.tex # \documentclass + preamble + \begin{document}
chapters/
intro.tex # pulled in with \input{chapters/intro}
methods.tex
figures/
setup.pdf # ASCII names, hyphens, no spaces
refs.bib- 把
\documentclass、宏包与\begin{document}集中在main.tex,章节用\input{chapters/intro}引入。项目里只有一处\documentclass,根文件的自动识别就不会出错。 - 图片文件名使用字母、数字与连字符或下划线,避免空格。日后要改名时,请从文件树执行「重命名」,引用会自动跟随。
- 在添加章节或图形之前,先用
Cmd+Enter把一份短文档 通过一次。若此时失败,原因必定在 TeX 环境而非你的源码。 - 请 Axiom 做较大改动之前,先让项目处于可编译状态;再拿提出的差分与重新编译的 PDF,与最后一个正常版本对照判断。
- 若多文件项目里 SyncTeX 失效,先查根文件设置,再看构建后是否生成了
.synctex.gz。
构建如何运行,以及 Cmd+B 为何不是构建
构建由 latexmk 驱动。这意味着为解析交叉引用而重复运行、BibTeX/Biber、makeindex 或 xindy,以及文件未变动时跳过重建的判定,全部遵循 latexmk 自身的规则。根文件(含 \documentclass 的那一个)通过扫描项目自动识别;若结构中存在多处 \documentclass,也可手动指定。你还能保留多个构建配置,各自绑定引擎(pdflatex、xelatex、lualatex)与附加参数。要清除中间文件,使用 Settings > 构建配置 中的 Clean;Clean -C 连生成的输出一并删除。日志在编译过程中实时滚动,因此 latexmk 跑到第几遍一目了然。
这里有一个从别的编辑器过来的人最先感到意外的分配:Cmd+B 不是构建。在 TeX64 中,Cmd+B 用于插入 \textbf{},Cmd+I 用于插入 \textit{},而构建是 Cmd+Enter 或工具栏上的播放按钮。乍看像是标新立异,依据其实在使用频率:在写 LaTeX 的一个小时里,比较一下敲 \textbf{} 的次数与启动构建的次数,谁该占据最短的按键便不言自明。附带的好处是,被文字处理软件训练成「Cmd+B 即粗体」的手指可以照旧使用。在 Windows 上,Cmd 对应 Ctrl,Option 对应 Alt。
| 按键(macOS) | 作用 |
|---|---|
Cmd+Enter | 构建:运行 latexmk 并刷新 PDF 预览 |
Cmd+B | 插入 \textbf{}(有选区则包裹之)。不是构建 |
Cmd+Click | 在 PDF 上点击以跳回对应的源代码行(反向 SyncTeX) |
Cmd+Shift+E | 打开 Blocks(可视化数学编辑器) |
Cmd+Shift+A | 打开 Axiom 的 AI 聊天面板 |
Cmd+Shift+F | 对整个工作区做全文搜索(全项目替换也在这里) |
Cmd+P | 按文件名的部分匹配打开文件 |
Cmd+D | 选中该词的下一处;重复按下即得到多光标 |
不记语法也能搭建公式(Blocks)
Blocks 是一个可视化编辑器,让你不必背下 LaTeX 语法也能搭建公式。它在底层使用交互式公式构建器 MathLive:你从希腊字母、运算符、关系符、箭头、集合记号、分数与根式等结构以及重音符号的面板中挑选,把式子拼起来。输入过程中会实时绘出排版结果,确认后对应的 LaTeX 代码会自动写回源文件。这最后一点才是关键:Blocks 不发明自有格式——产出的就是你本可以手写的那段 .tex。
进入方式有三种:把光标放在数学环境中右键 >「Edit in Block」、使用菜单 Math > Block Editor,或按 Cmd+Shift+E(Windows 为 Ctrl+Shift+E)。TeX64 会自动检测数学环境并为其启动 Blocks。覆盖的环境包括行间的 equation、align、gather、multline、split、cases,matrix 一族的矩阵环境,以及写作 $...$ 或 \(...\) 的行内公式。它的用武之地很明确:面对含有你尚不知其命令的符号的式子,或者括号嵌套已经理不清的长式时格外好用;而要敲一个早已熟练的 \frac{a}{b},键盘依然更快。
把图片里的公式变成 LaTeX——在设备端运行的 OCR
数学 OCR 把图像中的公式转换成 LaTeX 代码。从菜单 Math > OCR 选取屏幕区域后,随附的 ONNX / Tesseract 组件会在设备端完成解析,再把结果插入编辑器。这里值得把事实写准:正如隐私政策与服务条款都明确写明的,所选的屏幕或图像捕获不会发送给 OpenAI。该 OCR 可离线运行,并包含在免费方案中。手写笔记的照片、PDF 中的公式、教科书截图都在适用范围之内。
实务上有三点提醒。其一,抓取屏幕区域可能需要操作系统的屏幕捕获权限;在 macOS 上,系统询问时请允许「屏幕录制」。其二是精度:越是使用高对比度图像并且只裁出公式本身,结果越稳定。其三是校验:OCR 是辅助而非誊清,所以务必把插入的代码编译一次,对照 PDF 检查。下标与上标、1 与 l、\times 与 x 之类的混淆,排出来比反复读源码更容易发现。至于两者的取舍:从零开始写新式子用 Blocks,导入纸面或 PDF 上已有的式子用 OCR。
Axiom——以差分提出建议的 AI,及其边界
Axiom 是内置于 TeX64 的 AI 写作助手,有两个入口:以自然语言交流的 AI 聊天(Cmd+Shift+A),以及在编辑器中给出下一行、下一个公式或下一段的行内补全。它的特点在于不止于对话,而是直接在项目内部工作。据文档所述,Axiom 会读取项目文件与文件树、以差分(diff)形式提出修改、编译项目并读取构建日志,还能检索 arXiv 并获取 BibTeX 条目(arxiv_search、arxiv_bibtex)。这些能力对所有可使用 AI 的方案开放。
凡是让 AI 触碰源码的工具,边界比能力更重要。其一,被提出的差分在你审阅并批准之前不会被应用。其二,Axiom 无法访问工作区之外的文件,也无法执行任意系统命令——它可用的工具受到限制。其三,API 密钥与令牌会被自动屏蔽。至于数据流向,隐私政策与服务条款说的是同一件事:只有在你调用 Axiom 时,该请求所需的提示词与上下文(可能包含所选文本或相关项目内容)才会发送到所配置的 AI 服务(目前为 OpenAI API)。数学 OCR 的捕获不会发送。站点 FAQ 也明确写明,论文数据不会被用于训练 AI 模型。若稿件涉及机密内容,请在发送之前亲自查阅隐私政策。
了解方案的划分也能少走弯路。编辑器、构建系统、PDF 预览、SyncTeX、Blocks 与设备端的数学 OCR 都包含在免费方案中。至于 AI,所有方案都带有每月的 Axiom 额度,当前数量在应用内显示。付费的 Basic 与 Pro 会扩大该额度,Pro 还提供优先处理、面向长文的更大上下文,以及最强的 Axiom 模型。额度用尽后,本地的 OCR、编辑、构建与 PDF 预览照常可用。最后再提一条使用习惯——在请 Axiom 做较大改动之前,先让项目处于可编译状态。这样一来,只需把提出的差分以及应用后重新编译的 PDF 与最后一个正常版本相比较,即可作出判断。
SyncTeX——在源码与 PDF 之间往返
SyncTeX 在两个方向上关联源码与 PDF 中的对应位置,并已内建于 TeX64 的 PDF 查看器。正向(源码 → PDF) 时,与光标位置对应的 PDF 区域会被高亮,查看器自动滚动到那里。反向(PDF → 源码) 时,在 PDF 上 Cmd+点击即可跳到对应的源码行并高亮该行(若是段落或 figure 这类多行块,则跳到块首)。它只依赖两个前提——synctex 可用,以及构建会生成 .synctex.gz;TeX64 的构建默认启用了该生成。
多文件项目同样有效:点击属于经 \input 或 \include 拆分出的文件中的元素,正确的外部文件会打开并跳到对应行。前提是根文件(含 \begin{document} 的主文件)设置正确;根文件不对,SyncTeX 就完全不工作。TeX64 会尝试自动检测,必要时可通过菜单中的「Set Root File」显式指定。对跳转精度也应抱有现实的预期:多数情况下能以段落级精度落到正确的行,但当涉及 tikz、pgfplots 这类通过宏生成大量内容的宏包时,对应关系会变难,可能只剩下较粗的精度(有时是页级)。构建后检查项目中是否存在 .synctex.gz,正是排查这一切的第一步。