LaTeX 辅助编译命令行程序 LaTeX Auxiliary Compilation Command Line Tool
官方版本 PyTeXMK 发布在 PyPI 上,并且可以通过 pip 包管理器从 PyPI 镜像轻松安装。
请注意,您必须使用 Python 3 版本pip:
pip3 install pytexmk
pip3 install --upgrade pytexmk
PyTeXMK 默认参数:xelatex 编译、主文件名 main.tex、batch 模式(编译过程信息不显,如需显示编译过程信息请使用 -nq 参数)、编译结果存放在 LaTeX 项目的 Build 文件夹下 ( VSCode 用户则需要在 settings.json 中注意设置 "latex-workshop.latex.outDir": "./Build", 使得 LaTeX-Workshop 能够找到 pdf )、辅助文件存放在 LaTeX 项目的 Auxiliary 文件夹下。
请仔细阅读:主文件及编译类型选定逻辑
PyTeXMK,仅支持 utf-8 编码的 TeX 文件。
PyTeXMK 支持:
xelatex pdflatex lualatexbibtex biblatex thebibliographyglossaries nomencl mkeidx位置参数:
| Option | Description |
|---|---|
| document | 要被编译的文件名 |
选项:
| Option | Description |
|---|---|
| -h, --help | 显示帮助信息 |
| -v, --version | 显示程序版本号 |
| -p, --pdflatex | pdflatex 进行编译 |
| -x, --xelatex | xelatex 进行编译 |
| -l, --lualatex | lualatex 进行编译 |
| -c, --clean | 清除所有辅助文件 |
| -C, --Clean | 清除所有辅助文件和 pdf 文件 |
| -nq, --no-quiet | 非安静模式运行,此模式下显示编译过程 |
| -cp, --clean-pdf | 修复所有根目录以外的 pdf 文件 |
说明:
-cp 参数的功能是 "当 LaTeX 编译过程中报类似 invalid X X R object at offset XXXXX 的警告时,可使用此参数清理所有 pdf 文件"
invalid X X R object at offset XXXXX 警告的出现是由于 PDF 图片文件在创建、编辑或传输过程中发生了某种形式的损坏或非法操作导致的,可能的原因包括文件部分内容缺失、xref表损坏、或者是文件结构中的其他问题
PyTeXMK 支持使用魔法注释来自定义编译命令、编译类型、编译结果存放位置等(仅支持检索文档前 50 行)。
| Magic Comment | Description |
|---|---|
% !TEX program = xelatex |
指定编译类型,可选 xelatex pdflatex lualatex |
% !TEX root = file.tex |
指定主 LaTeX 文件名,仅支持主文件在项目根目录下的情况 |
% !TEX outdir = PDFfile |
指定编译结果存放位置,仅支持文件夹名称 |
% !TEX auxdir = auxfiles |
指定辅助文件存放位置,仅支持文件夹名称 |
PyTeXMK 优先使用终端输入命令 -p -x -l 参数指定的编译类型,如果没有指定,则会使用 % !TEX program = xelatex 指定的编译类型,如果没有指定,则会使用默认的编译类型 xelatex
PyTeXMK 主文件选定逻辑顺序:
% !TEX root = file.tex 指定的主 LaTeX 文件名main.tex\documentclass[]{} 或 \begin{document} 来判断(仅支持检索文档前 200 行)PyTeXMK 会优先使用 % !TEX outdir = PDFfile 指定的编译结果存放位置,如果没有指定,则会使用默认的编译结果存放位置 Build
invalid X X R object at offset XXXXX 的警告的问题)\documentclass[]{} 或 \begin{document} 来判断xelatex)Build 子文件夹下)待定 子文件夹下)