论文写作的又一利器:VSCode + Latex Workshop + MikTex + Git_当年老王的博客-CSDN博客
1.下载安装vscode
2.下载安装MiKTeX(比texalive小很多),安装后需要配置环境变量、
注意安装包到官网下载最新版本
安装后可以到开始中打开控制台,如果版本太旧会提示安装新版本

3.ctrl+alt+B 编译报错,是缺少了perl环境,又下载安装了 strawberry-perl-5.32.1.1-64bit.msi
4.安装latex相关插件
点击左下角齿轮, 搜索“latex”,在搜索结果中选择插件安装即可,我安装了如下插件

4.修改vscode的配置文件,参考下文
vscode中配置latex_最爱大盘鸡的博客-CSDN博客_vscode配置latex
在vscode中,按下F1,输入json,选择首选项:打开默认设置,如下图所示

settings 花括号中增加的内容如下
后来我又改成了这个配置,具体哪个好我不懂不好评说
- // 不进行自动编译,可以设置为 onSave -当代码被保存时自动编译文件
- "latex-workshop.latex.autoBuild.run": "onSave",
-
- // Latex workshop
- "latex-workshop.latex.tools": [
- {
- "name": "latexmk",
- "command": "latexmk",
- "args": [
- "-synctex=1",
- "-interaction=nonstopmode",
- "-file-line-error",
- "-pdf",
- "%DOC%"
- ]
- },
- {
- "name": "xelatex",
- "command": "xelatex",
- "args": [
- "--shell-escape",//新增加选项,不然minted会报错
- "-synctex=1",
- "-interaction=nonstopmode",
- "-file-line-error",
- "%DOC%"
- ]
- },
- {
- "name": "pdflatex",
- "command": "pdflatex",
- "args": [
- "--shell-escape",//新增加选项,不然minted会报错
- "-synctex=1",
- "-interaction=nonstopmode",
- "-file-line-error",
- "%DOC%"
- ]
- },
- {
- "name": "bibtex",
- "command": "bibtex",
- "args": [
- "%DOCFILE%"
- ]
- }
- ],
- "latex-workshop.latex.recipes": [
- {
- "name": "xelatex",
- "tools": [
- "xelatex"
- ]
- },
- {
- "name": "latexmk",
- "tools": [
- "latexmk"
- ]
- },
-
- {
- "name": "pdflatex -> bibtex -> pdflatex*2",
- "tools": [
- "pdflatex",
- "bibtex",
- "pdflatex",
- "pdflatex"
- ]
- }
- ],
- "latex-workshop.view.pdf.viewer": "tab",
- "latex-workshop.latex.clean.enabled": true,
- "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(VSCode) - 知乎
- {
- // 不进行自动编译,可以设置为 onSave -当代码被保存时自动编译文件
- "latex-workshop.latex.autoBuild.run": "never",
- // 开启上下文菜单。设置为true时,右键菜单中增添两个选项。第一个选项为进行tex文件的编译,而第二个选项为进行正向同步,即从代码定位到编译出来的 pdf 文件相应位置
- "latex-workshop.showContextMenu": true,
- // 自动补全,必备
- "latex-workshop.intellisense.package.enabled": true,
- // 是否显示错误和警告弹窗。不必要,可以Debug获取
- "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",
- // 可以更改的代码为,将编译方式: pdflatex 、 xelatex 和 latexmk 中的%DOCFILE更改为%DOC。%DOCFILE表明编译器访问没有扩展名的根文件名,而%DOC表明编译器访问的是没有扩展名的根文件完整路径。这就意味着,使用%DOCFILE可以将文件所在路径设置为中文,但笔者不建议这么做,因为毕竟涉及到代码,当其余编译器引用时该 tex 文件仍需要根文件完整路径,且需要为英文路径。笔者此处设置为%DOCFILE仅是因为之前使用 TeXstudio,导致路径已经是中文了。
- "%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%"
- ]
- }
- ],
- // 此串代码是对编译链进行定义,其中name是标签,也就是出现在工具栏中的链名称;tool是name标签所对应的编译顺序,其内部编译命令来自上文latex-workshop.latex.recipes中内容。
- "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"
- ],
- // 这条命令是设置什么时候对上文设置的辅助文件进行清除。保持即可。1. onBuilt : 无论是否编译成功,都选择清除辅助文件;2. onFailed : 当编译失败时,清除辅助文件;3. never : 无论何时,都不清除辅助文件。
- "latex-workshop.latex.autoClean.run": "onFailed",
- // 该命令的作用为设置 vscode 编译 tex 文档时的默认编译链。有两个变量: 1. first : 使用latex-workshop.latex.recipes中的第一条编译链,故而您可以根据自己的需要更改编译链顺序; 2. lastUsed : 使用最近一次编译所用的编译链。
- "latex-workshop.latex.recipe.default": "lastUsed",
- // 用于反向同步(即从编译出的 pdf 文件指定位置跳转到 tex 文件中相应代码所在位置)的内部查看器的快捷键绑定。变量有两种: 1. ctrl-click : 为默认选项,使用Ctrl/cmd+鼠标左键单击 2. double-click : 使用鼠标左键双击
- "latex-workshop.view.pdf.internal.synctex.keybinding": "ctrl-click"
- }
5.新建一个文件。如2.tex
- \documentclass{article}
- \usepackage[ruled,linesnumbered]{algorithm2e}
- \usepackage{geometry}
- \geometry{a4paper,scale=0.8}
- \begin{document}
- you are growing up now ...
- \end{document}
6.vscode 编译文件

7.vscode中的命令
编辑文件:ctrl+alt+b
定位与反向定位:ctrl + alt + j
同步位置; ctrl click 反向同步
