事实上自带的 TeXworks 和 TeX studio 已经能满足大多数人的需要,教程 install-latex-guide-zh-cn 中也给出了介绍,此处不再赘述.
然而很多人和我一样,想要更现代化的界面和更快捷的编辑方式 (也可能是为了 All in One),而选择把 VSCode 作为 La 前端. 下面是配置概要:
安装配置 LaTeX Workshop 拓展
点击小齿轮,点击「拓展设置」(Extension Settings),并搜索 latex-workshop.latex.recipes.
点击「在 settings.json 中编辑」
复制并添加以下内容
{
"latex-workshop.latex.autoBuild.run": "onSave",
"latex-workshop.showContextMenu": true,
"latex-workshop.intellisense.package.enabled": true,
"latex-workshop.message.error.show": false,
"latex-workshop.message.warning.show": false,
"latex-workshop.latex.tools": [
{
"name": "xelatex",
"command": "xelatex",
"args": [
"-synctex=1",
"-interaction=nonstopmode",
"-file-line-error",
"%DOCFILE%"
]
},
{
"name": "pdflatex",
"command": "pdflatex",
"args": [
"-synctex=1",
"-interaction=nonstopmode",
"-file-line-error",
"%DOCFILE%"
]
},
{
"name": "latexmk",
"command": "latexmk",
"args": [
"-synctex=1",
"-interaction=nonstopmode",
"-file-line-error",
"-pdf",
"-outdir=%OUTDIR%",
"%DOCFILE%"
]
},
{
"name": "bibtex",
"command": "bibtex",
"args": [
"%DOCFILE%"
]
}
],
"latex-workshop.latex.recipes": [
{
"name": "XeLaTeX",
"tools": [
"xelatex"
]
},
{
"name": "PDFLaTeX",
"tools": [
"pdflatex"
]
},
{
"name": "BibTeX",
"tools": [
"bibtex"
]
},
{
"name": "LaTeXmk",
"tools": [
"latexmk"
]
},
{
"name": "xelatex -> bibtex -> xelatex*2",
"tools": [
"xelatex",
"bibtex",
"xelatex",
"xelatex"
]
},
{
"name": "pdflatex -> bibtex -> pdflatex*2",
"tools": [
"pdflatex",
"bibtex",
"pdflatex",
"pdflatex"
]
},
],
"latex-workshop.latex.clean.fileTypes": [
"*.aux",
"*.bbl",
"*.blg",
"*.idx",
"*.ind",
"*.lof",
"*.lot",
"*.out",
"*.toc",
"*.acn",
"*.acr",
"*.alg",
"*.glg",
"*.glo",
"*.gls",
"*.ist",
"*.fls",
"*.log",
"*.fdb_latexmk"
],
"latex-workshop.latex.autoClean.run": "onFailed",
"latex-workshop.latex.recipe.default": "lastUsed",
"latex-workshop.view.pdf.internal.synctex.keybinding": "double-click"
}
对配置的解释
"latex-workshop.latex.autoBuild.run": "onSave"
表示何时编译, 有三种方案 (笔者选择第二种,兼顾方便和稳定):onFileChange
:在检测任何依赖项中的文件更改 (甚至被其他应用程序修改) 时构建项目,即当检测到代码被更改时就自动编译 tex 文件;onSave
: 当代码被保存时自动编译文件;never
: 从不自动编译 (即需编写者手动编译文档).
"latex-workshop.showContextMenu": true
用于控制是否显示 LaT e X 菜单于左侧菜单栏,笔者认为有作用故保留"latex-workshop.intellisense.package.enabled": true
用于从使用的宏包中自动提取命令和环境,从而补全正在编写的代码"latex-workshop.message.error.show": false
和"latex-workshop.message.warning.show": false
控制是否显示错误和警告弹窗,笔者认为很烦人故关闭"latex-workshop.latex.tools"
编译链的配置,一般用默认就好,不用动"latex-workshop.latex.autoClean.run": "onFailed"
设置编译完成后要清除掉的辅助文件类型 (具体文件的后缀名在这行上面), 有三种方式,由于部分编译情况需要用到辅助文件,折中之下笔者选择第二种:onBuilt
: 无论是否编译成功,都选择清除辅助文件;onFailed
: 当编译失败时,清除辅助文件;never
: 无论何时,都不清除辅助文件.
"latex-workshop.latex.recipe.default": "lastUsed"
默认编译链的选择,可选 (此处选用第二条):first
:第一条编译规则lastUsed
:上一次使用的编译规则
"latex-workshop.view.pdf.internal.synctex.keybinding": "double-click"
双向同步 (即在预览中快速找到代码以及反过来) 配置,有以下选项,笔者选用第二条:ctrl-click
:为默认选项,使用 Ctrl/cmd+ 鼠标左键单击double-click
: 使用鼠标左键双击
进阶
事实上,latexworkshop
默认使用的是latexmk
,以上配置实质上没有很好的利用latexmk
的优势. 如果你不知道latexmk
是什么,可以忽略这一部分.