Skip to content

LaTeX 编辑与 PDF 预览

ReasLab 将 LaTeX 编辑、编译和同步 PDF 预览整合在同一工作区中,内置补全与诊断,并可在需要时通过 ReasLingo 获得帮助。

快速开始

  1. 创建或打开一个 .tex 文件。
  2. 点击编辑器工具栏中的眼睛图标(Toggle TeX Preview)。
  3. 点击 Compile,编译解析得到的根文档。
  4. 编辑源码,并在右侧查看 PDF。

ReasLab 工作区中的 LaTeX 源码和 PDF 预览

如果编译后的 PDF 已经存在,ReasLab 会在打开预览时加载它;如果尚无 PDF,ReasLab 可以自动开始构建。需要明确重新构建最新源码时,请点击 Compile。编译得到的 PDF 会带锁图标显示在文件树中,它由构建生成,无法直接编辑。

编辑 LaTeX

语言辅助

编辑器连接 TexLab,并在输入过程中提供语言感知功能:

  • 语法高亮、括号匹配和代码折叠。
  • LaTeX 命令、宏包、标签、交叉引用,以及项目 .bib 文件中的 citation key 补全。
  • 支持的命令和符号的参数提示与 Hover 文档。
  • 补全或输入环境时,自动插入匹配的 \end{...}
  • 编辑器内联错误、警告和 gutter 诊断标记。
  • 编辑器右键菜单中的 Go to Definition
  • 编辑器工具栏中的 Format Document

LaTeX 编辑器中的项目级交叉引用补全

编辑器工具栏

LaTeX 工具栏为常用源码编辑提供了快捷操作:

  • BoldItalic 使用 \textbf{...}\textit{...} 包裹选区。
  • Math 插入行内公式 \(...\) 或行间公式 \[...\]
  • Insert 插入 section、subsection、项目符号列表、编号列表,以及 2×2、3×3 或 4×4 表格模板。
  • Format Document 应用 TexLab 返回的格式化修改。

当编辑器面板较窄时,不常用的操作会移入 More LaTeX actions 菜单。

数学公式预览

启用 Math Formula Preview 后,将光标放入数学表达式即可打开渲染后的公式预览。它是轻量级的编辑辅助;最终文档效果仍以编译后的 PDF 为准。

大纲与代码折叠

文件树下方的 OUTLINE 区域显示当前 TeX 文件的章节层级。

  • 点击 section 或 subsection,将编辑器光标移动到对应位置。
  • 展开或折叠嵌套条目,也可以使用大纲标题栏中的 Collapse AllExpand All
  • 光标所在的章节会被高亮。
  • 编辑器 gutter 中的折叠控件可以折叠章节、环境和分组,同时保留章节标题。

LaTeX 文档大纲和章节层级

确定要编译的文档

一个项目可以包含一个根文档和多个被引用的子文件。每次显式编译前,ReasLab 都会解析构建目标,而不是始终把当前文件直接交给编译器。

ReasLab 会按以下顺序依次判断,并采用第一条能解析出有效目标的规则:

  1. 当前文件中的 % !TEX root = ... 指令。
  2. 当前文件本身是否为可编译的根文档。
  3. TexLab 维护的依赖关系图。
  4. 当前项目会话中之前选择过的根文档。
  5. 配置的 Main document,作为回退入口。

打开 Compile options 可以查看当前的 Build target,以及 Resolved by 所显示的解析依据。

指定明确的根文档

将根文档指令放在子文件的前 20 行内。路径相对于该子文件:

tex
% !TEX root = ../main.tex

目标必须是项目中实际存在的 TeX 文件。无效的指令会直接报告错误,而不会被静默忽略。

在多个根文档之间选择

如果当前文件同时被多个根文档引用,编译时会出现 Choose a TeX root 对话框。选择需要构建的文档后,ReasLab 会在当前项目会话中记住该源文件的选择。

配置主文档

前往 Menu → Settings → LaTeX → Main document,选择回退入口文件。当依赖关系分析找不到可编译的根文档,或 TexLab 依赖关系图暂时不可用时,将使用这项设置。如果分析出多个根文档,ReasLab 会要求你选择,而不是直接使用回退文档。有效的显式根文档指令优先级更高。

编译控制

点击 Compile 旁边的菜单,可以查看解析后的目标和其他构建操作。

LaTeX 构建目标、编译器和编译选项

  • Cancel compilation 停止正在进行的构建。
  • Clear cache & recompile 删除 LaTeX 辅助输出和之前编译的 PDF,然后执行一次干净构建。
  • Download generated files 将当前目标生成的构建文件打包为 ZIP 下载。
  • Compiler engine 可选择 AutoXeLaTeXpdfLaTeXLuaLaTeX
  • Compile mode 可选择 NormalFast [draft]

Fast [draft] 会用占位符替换图片,以减少编译时间。检查最终版式前应切回 Normal。选择 Auto 时,ReasLab 会为文档选择编译器;构建完成后,工具栏可以在 Auto 设置旁显示实际解析出的引擎。

每次构建都会按文档需要多次运行 LaTeX 引擎,并在文档定义了参考文献时调用 BibTeX 或 Biber,因此引用、交叉引用和目录无需手动重复编译即可正确生成。

自动 PDF 预览

Menu → Settings → LaTeX 中启用 Auto PDF Preview,即可在源码变化后重新构建。停止输入约 1.5 秒后开始编译,因此连续输入通常会被合并为一次构建。手动和自动编译使用相同的根文档解析逻辑。

PDF 预览

PDF 工具栏会根据预览面板宽度自动调整,并提供:

  • 上一页、下一页和直接输入页码跳转。
  • 放大、缩小,以及在适应宽度和实际大小之间切换的百分比按钮。
  • Download PDF
  • 用于全屏单页查看的 Presentation Mode
  • 在 PDF 和完整编译日志之间切换的按钮。

Presentation Mode 支持方向键、Page Up/Page Down、空格键、Home 和 End 翻页。按 Escape 退出全屏。在条件允许时,ReasLab 会在重新编译期间继续显示现有 PDF,并为每个源文档记住 PDF 滚动位置。

SyncTeX 双向跳转

成功构建后,SyncTeX 会把源码位置和 PDF 中的位置关联起来。

从 Results 章节正向跳转到 PDF 的 SyncTeX 效果

从源码跳转到 PDF

  • 将光标放在 TeX 文件中,点击编辑器与 PDF 之间分隔栏上的右箭头。
  • 也可以在编辑器中右键,然后选择 Jump to PDF (SyncTeX Forward)

PDF 会滚动到对应页面,并短暂高亮匹配区域。

从 PDF 跳转到源码

  • 点击分隔栏上的左箭头,将当前 PDF 视口中心映射回源码。
  • 双击 PDF 中的具体位置,可以从该位置进行反向定位。

如果目标位于另一个文件,ReasLab 会打开该文件并把编辑器移动到解析出的代码行。SyncTeX 需要当前版本的已编译 PDF;如果映射缺失或已过期,请先重新编译。

诊断、日志与 Chat

编辑源码时,内联诊断会直接显示在代码中。点击 PDF 工具栏中的 View full compilation log,可以打开当前编译问题的项目级结构化视图。

带有加入 Chat 操作的 LaTeX 编译诊断

日志视图将消息分为 ErrorsWarningsTypesetting 信息三组。

点击可编辑文件的位置可以直接打开文件并定位到报告的代码行。如果构建失败且没有生成 PDF,预览会切换到日志,并说明 PDF 未生成。当结构化诊断信息不足时,可以展开 Raw Log Output 查看完整输出。

将诊断上下文加入 Chat

使用诊断视图中的操作,可以把格式化后的构建上下文附加到 Chat,交给 ReasLingo 分析:

  • Add All to Chat 附加当前显示的全部诊断。
  • Add Errors to ChatAdd Warnings to Chat,以及 Typesetting 分组上的同类操作,各自只附加对应的一组消息。
  • Raw Log Output 中选中文字,会出现 Add to ChatCopy

加入诊断或日志只会在 Chat 输入区创建上下文片段,不会直接发送消息,也不会自动修改源码。随后可以补充指令,例如:

解释这些编译错误,定位它们的来源,并给出改动最小的修复方案。

请审阅建议或已应用的修改,然后重新编译以验证文档。

LaTeX 设置

打开 Menu,滚动到 Settings,找到 LaTeX 分组。

主文档、编译器与预览相关的 LaTeX 设置

  • Main document 设置回退根文档。
  • LaTeX compiler 为项目选择 Auto、XeLaTeX、pdfLaTeX 或 LuaLaTeX。
  • Math Formula Preview 控制编辑器中的公式渲染提示。
  • Auto PDF Preview 在文本变化后重新编译解析出的根文档。

也可以从 PDF 工具栏的 Compile options 中切换编译器。

常见问题

编译了错误的文档

打开 Compile options,检查 Build targetResolved by。确认当前文件的 % !TEX root 指令、处理多个根文档时的选择,以及配置的 Main document

没有生成 PDF

打开完整编译日志并处理 Errors 下的问题。也可以把错误加入 Chat 寻求帮助。如果源码已经修复,但旧的辅助文件仍然干扰构建,请使用 Clear cache & recompile

字体或 Unicode 文本编译失败

Auto 会根据文档选择编译引擎。如果字体或 Unicode 内容仍然编译失败,请显式选择 XeLaTeXLuaLaTeX,并确认文档加载了合适的字体和语言宏包。

自动预览没有更新

确认已启用 Auto PDF Preview,编辑后稍作停顿,并检查 ReasLab 是否能解析出构建目标。可以点击 Compile,手动测试同一个目标。

SyncTeX 无法找到位置

先成功编译当前源码,再从确实会出现在 PDF 中的位置重试。注释、仅用于导言区的命令、生成文件和过期的 PDF 数据可能无法映射到可见位置。

相关指南