安装TexLive
前前后后也配过很多次LaTeX的环境了,但是仍然是个新手.如果有人让我帮忙看看的话,我仍然比较建议参照刘鹏的教程texlive 2019安装指南 - 知乎,我记得他的专栏里对当年度的新版本都是有小白教程的.
刘鹏在教程里推荐使用wsl+texlive.我尝试过,然后放弃了,因为尝试的时候对vsc还不是很熟悉,而且犯了一个很nc的错误: 使用Ubuntu 18.04 LTS
的源去更新Ubuntu 16.04 LTS
版本的wsl.之后如果有需要的话,可能会尝试一下.因为实现思路也不是很难,说白了就是vsc开远程桌面连到wsl,在wsl下跑编译.
此外,一位科研圈的师兄提到,说wsl下的texlive不要安装在默认路径,但是鉴于他没说建议安装在哪,所以我也不解其意,姑且先记录下来吧.
配置 vsc 的 LaTeX Workshop 插件
- 编译工具(tool)的装载和编译菜单(recipe)的编辑.
- 参考了ceba 同学的博客以及一堆教程,结果还是有点问题.
- 最后是直接在 settings.json 里面用自动补全连蒙带猜手撕的.
- 果然还是去看插件作者 James Yu 在插件官网上关于 tool 和 recipe 的说明比较文明啊.
- 在比较之后,还是选择使用外部的 pdf 阅读器Sumatra pdf进行预览.
- 这也是后面一些配置的铺垫.毕竟,我之前用的一直是 Sublime Text 3,当时配置 LaTeX 集成环境参考的教程要比最近折腾 vsc 之路上参考的教程要良心得多——这让我把对某些功能的需求刻进了 DNA
没错我又往 DNA 里乱刻东西了.
- 这也是后面一些配置的铺垫.毕竟,我之前用的一直是 Sublime Text 3,当时配置 LaTeX 集成环境参考的教程要比最近折腾 vsc 之路上参考的教程要良心得多——这让我把对某些功能的需求刻进了 DNA
- 配置了正向和反向搜索搜索(按照教程修改了一些参数)
- 正向搜索
- 更改了"latex-workshop.view.pdf.external.synctex.args"这一项的内容,修改进去的参数控制的大概有:外部浏览器的路径,vsc 窗口复用(避免打开多个窗口),etc.
- 窗口复用参考了Liam 博客上的一个 piece.
- 反向搜索
- 使用 Sumatra pdf 设置中的“双击命令行设置”功能,键入
"Code.exe" "resourcesappoutcli.js" -g "%f":"%l"
即可(注意根据实际情况修改路径名). - 这里参考了使用 VSCode 编写 LaTeX(latex+vscode+SumatraPDF,这个页面
虽然第一眼看上去很山寨,但却意外地相当实用.
- 使用 Sumatra pdf 设置中的“双击命令行设置”功能,键入
- 正向搜索
附上我的部分配置文件:
//这是我的vscode中的`settings.json`,仅供参考.
"latex-workshop.showContextMenu": true, //右键菜单
"latex-workshop.intellisense.package.enabled": true, //根据加载的包,自动完成命令或包
"latex-workshop.latex.autoBuild.run": "never", //禁止保存文件时自动build
"latex-workshop.view.pdf.viewer": "external",//使用外部pdf阅读器
"latex-workshop.view.pdf.external.viewer.args": [
"%PDF%"
],
"latex-workshop.view.pdf.external.viewer.command": "C:\Program Files (x86)\SumatraPDF\SumatraPDF.exe",//(在cmd中)打开外部阅读器的命令,应替换为你电脑中的外部pdf阅读器的可执行文件地址
"latex-workshop.view.pdf.external.synctex.args": [
"-forward-search",//允许正向搜索
"%TEX%",
"%LINE%",
"-reuse-instance",//复用窗口实例,控制从外部pdf阅读器对tex代码进行反向搜索时不打开新窗口
"-inverse-search",//允许反向搜索
""C:\Users\[username]\AppData\Local\Programs\Microsoft VS Code\Code.exe" "C:\Users\[username]\AppData\Local\Programs\Microsoft VS Code\resources\app\out\cli.js" -r -g "%f:%l"",
"%PDF%"
],//前一个是vscode的本地路径,后一个是本地一个特定js的路径,一般只要把[username]改为你系统内的个人文件夹名字即可.
"latex-workshop.view.pdf.external.synctex.command": "C:\Program Files (x86)\SumatraPDF\SumatraPDF.exe",//(在cmd中)打开外部阅读器的命令,应替换为你电脑中的外部pdf阅读器的可执行文件地址
"latex-workshop.latex.tools": [
// 编译工具和命令
{
"name": "xelatex",
"command": "xelatex",
"args": [
"-synctex=1",
"-interaction=nonstopmode",
"-file-line-error",
"-pdf",
"%DOCFILE%"
]
},
{
"name": "latexmk",
"command": "latexmk",
"args": [
"-synctex=1",
"-interaction=nonstopmode",
"-file-line-error",
"-pdf",
"-outdir=%OUTDIR%",
"%DOCFILE%"
],
"env": {}
},
{
"name": "pdflatex",
"command": "pdflatex",
"args": [
"-synctex=1",
"-interaction=nonstopmode",
"-file-line-error",
"%DOCFILE%"
],
"env": {}
},
{
"name": "bibtex",
"command": "bibtex",
"args": [
"%DOCFILE%"
],
"env": {}
},
{
"name": "lualatexmk",
"command": "latexmk",
"args": [
"-synctex=1",
"-interaction=nonstopmode",
"-file-line-error",
"-lualatex",
"-outdir=%OUTDIR%",
"%DOCFILE%"
],
"env": {}
},
{
"name": "latexmk_rconly",
"command": "latexmk",
"args": [
"%DOCFILE%"
],
"env": {}
}
],
"latex-workshop.latex.recipe.default": "first",//设置默认的编译(组合)方式
"latex-workshop.latex.recipes": [//这里可以依照需要定制一些编译组合,在某些场景下会很方便,比如使用众所周知要编译四次的IEEE论文模板的时候
{
"name": "xelatex",
"tools": [
"xelatex"
]
},
{
"name": "pdflatex",
"tools": [
"pdflatex"
]
},
{
"name": "xe->bib->xe->xe",
"tools": [
"xelatex",
"bibtex",
"xelatex",
"xelatex"
]
}
],
"latex-workshop.view.pdf.backgroundColor": "#fdf6e3",//这个浅黄色预览界面是为了方便我自己,因为我的vscode配色为solarized-light,你也可以根据自己的喜好调整成其他背景色
参考过的文档
VSCode 配置:插件与设置 | Zhechen's Personal Website
Visual Studio Code 折腾记:LaTeX 集成编辑环境 | Ceba's Blog
Compile · James-Yu/LaTeX-Workshop Wiki