Windows下通过VSCode编写latex
为什么需要latex
你都有这个需求了,那肯定就是因为latex很牛撒。在我看来,它牛在:
- 自动排版格式
- 在投稿论文的时候,可以直接借用相关期刊提供的模板,填充信息即可。
如何安装配置latex
这里讲的配置,主要针对的是windows平台下的latex配置。学过编程的可以这样理解。我们需要对tex语言进行编译相关的工作。比如g++,gcc。而我们写c,c++的工具或者说编程环境会选择用vscode,clion。那么对于latex,我们就主要需要安装两部分东西。texlive(类似于windows下的mingw)以及texstudio(clion等)。
怎么安装,我依然要贴我觉得很nice的一个教程
【texlive 和 texstudio 】及【VSCode 编写 LaTeX】安装与设置 - YuanXin的文章 - 知乎
这时候,其实就可以用texstudio直接写latex了。很长一段时间我都是这么做的。现在想用vscode编写latex。原因有几点:
- 我在texstudio上写的时候没办法提示补全
- 操作没有多么渐变(如果用vscode,还可以用vim编辑模式)
如何在vscode中安装latex必要的插件
这也有很多比较完善的教程。
这里,我只想着重分享一下教程没有提到的注意事项。
快捷键设置
首先看下我的完整的配置:
{
// "latex-workshop.latex.autoBuild.run": "never", // 是否保存后自动编译
"latex-workshop.message.error.show": false,
"latex-workshop.message.warning.show": false,
"latex-workshop.view.pdf.viewer": "external",
"latex-workshop.view.pdf.external.viewer.command": "E:/Program Files/SumatraPDF/SumatraPDF.exe", // 注意修改路径
"latex-workshop.view.pdf.external.viewer.args": [
"%PDF%"
],
"latex-workshop.view.pdf.external.synctex.command": "E:/Program Files/SumatraPDF/SumatraPDF.exe", // 注意修改路径
"latex-workshop.view.pdf.external.synctex.args": [
"-forward-search",
"%TEX%",
"%LINE%",
"-reuse-instance",
"-inverse-search",
//"\"E:\\Program Files (x86)\\Microsoft VS Code\\Code.exe\" -r -g \"%f:%l\"", //无cli版本,需外界启动
"\"E:\\Program Files (x86)\\Microsoft VS Code\\Code.exe\" \"E:\\Program Files (x86)\\Microsoft VS Code\\resources\\app\\out\\cli.js\" -r -g \"%f:%l\"", //有cli,必须内部启动
"%PDF%"
],
// 编译工具配置(命令及参数):pdflatex还是xelatex还是latexmk
"latex-workshop.latex.tools": [
{// 编译工具和命令
"name": "pdflatex",
"command": "pdflatex",
"args": [
"-synctex=1",
"-interaction=nonstopmode",
"-file-line-error",
"%DOCFILE%"
]
},
{
"name": "xelatex",
"command": "xelatex",
"args": [
"-synctex=1",
"-interaction=nonstopmode",
"-file-line-error",
"-pdf",
"%DOCFILE%"
]
},
{
"name": "bibtex",
"command": "bibtex",
"args": [
"%DOCFILE%"
]
},
{
"name": "latexmk",
"command": "latexmk",
"args": [
"-synctex=1",
"-interaction=nonstopmode",
"-file-line-error",
"-pdf",
"%DOCFILE%",
]
},
],
// 根据配置好的工具tools,进行顺序调用执行。
// 一般情况下,建议将"latexmk"放在第一个,就是默认编译方式
"latex-workshop.latex.recipes": [
{
"name": "xe->bib->xe->xe",
"tools": [
"xelatex",
"bibtex",
"xelatex",
"xelatex"
]
},
{ // latexmk编译方式
"name": "latexmk",
"tools": [
"latexmk"
]
},
{ // xelatex编译方式
"name": "xelatex",
"tools": [
"xelatex",
]
},
{ // pdflatex编译方式
"name": "pdflatex",
"tools": [
"pdflatex"
]
},
],
}
在完成以上的设置之后,我们的tex插件就会呈现出下图中的编译方案。
与我们的recipes的顺序相对应。并且,默认为第一个xe->bib->xe->xe
。因此,可以根据自己的情况调整顺序。一般情况下,默认用latexmk
,可以避免很多不必要的麻烦。只是编译时间会比较久。
正反方向搜索
这个也是很牛皮的东西。没有什么好说的。看教程即可。
通过vim模式快速编写latex文档
留个尾巴,下次更新如何实现这一功能。
以及如何在vim通过ESC
退出到normal模式下,自动切换为英文。使得我们可以方便的操作,而不用进行一次额外的输入法切换工作。而在insert模式下,默认为中文输入。方便我们编写中文文档。