用 VSCode 编辑 LaTeX
LaTaX 明显比 Markdown 要难用很多,数学公式的部分 Markdown 也已经可以胜任大部分情况了。但是如果说到需要排版,那么一定会优先想到 LATEX。
插件 LaTeX Workshop
这个插件主要添加了以下功能
- 编译
- 格式化
- 代码提示
格式化功能现在推荐使用 tex-fmt,它是用 Rust 编写的,速度极快、配置简单,支持 .tex、.bib、.cls、.sty 多种文件类型。代码提示是安装后自动启用的。以下是编译所使用的配置,
{
// latex workshop
"latex-workshop.formatting.latex": "tex-fmt", // use tex-fmt for formatting
"latex-workshop.latex.recipe.default": "first",
"latex-workshop.latex.recipes": [
{
"name": "xelatex -> bibtex -> xelatex * 2",
"tools": ["xelatex", "bibtex", "xelatex", "xelatex"],
},
{
"name": "tectonic",
"tools": ["tectonic"],
},
],
"latex-workshop.latex.tools": [
{
"args": [
"-synctex=1",
"-interaction=nonstopmode",
"-file-line-error",
"%DOC%",
],
"command": "xelatex",
"env": {},
"name": "xelatex",
},
{
"args": ["%DOCFILE%"],
"command": "bibtex",
"env": {},
"name": "bibtex",
},
{
"args": ["--synctex", "--keep-logs", "--print", "%DOC%.tex"],
"command": "tectonic",
"env": {},
"name": "tectonic",
},
],
"latex-workshop.linting.lacheck.enabled": true,
}预览 PDF
如果编译成功,及会生成对应的 PDF 文件。VSCode 有自带的 PDF 查看器。
代码格式化
我们使用 tex-fmt 这个用 Rust 编写的格式化工具。它速度极快、配置简单,是替代 latexindent.pl 或 prettier-plugin-latex 的更好选择。之前的 VSCode 配置文件已经包含了 tex-fmt 的配置。
安装 tex-fmt
# 使用 Cargo 安装
cargo install tex-fmt命令行使用
# 格式化单个文件
tex-fmt document.tex
# 格式化目录下所有文件
tex-fmt docs/
# 检查但不修改文件
tex-fmt --check document.tex