VScode+LaTex+双向搜索的配置

在写论文的时候需要用到 Latex , 但是其自带的编辑器非常丑,而且并不好用,所以尝试使用 VScode 来进行 Latex 编辑。

下载安装软件

下载 Latex 相关软件

官网 下载安装Tex Live,这一步用时比较长,最好使用国内的镜像下载。

下载 VScode

在 [官网](Download Visual Studio Code - Mac, Linux, Windows) 下载安装对应操作系统的VScode,按使用习惯可以选择是否安装中文语言的扩展。
安装VS code的Latex插件。

下载 Sumatra PDF

官网 下载安装 Sumatra PDF。

配置 VScode

在VScode界面中使用快捷键【Ctrl + Shift +P】打开命令框,输入settings选择 首选项:打开设置(JSON),打开配置文件,输入如下配置信息:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
// ======================== LaTeX 设置 BEGIN  ========================
// bibtex 格式
"latex-workshop.bibtex-format.tab": "tab",

// 自动编译,全部关闭,当且仅当你认为有需要的时候才会去做编译
"latex-workshop.latex.autoBuild.run": "never",
"latex-workshop.latex.autoBuild.cleanAndRetry.enabled": false,

// 设置 latex-workshop 的 PDF 预览程序,external 指的是外部程序
"latex-workshop.view.pdf.viewer": "external",
"latex-workshop.view.pdf.ref.viewer": "external",
"latex-workshop.view.pdf.external.viewer.command": "D:/SumatraPDF/SumatraPDF.exe",
"latex-workshop.view.pdf.external.viewer.args": [
"%PDF%"
],

// 配置正向、反向搜索:.tex -> .pdf
"latex-workshop.view.pdf.external.synctex.command": "D:/SumatraPDF/SumatraPDF.exe",
"latex-workshop.view.pdf.external.synctex.args": [
// 正向搜索
"-forward-search",
"%TEX%",
"%LINE%",
"-reuse-instance",
// 反向搜索
"-inverse-search",
"\"C:/Users/Aged_cat/AppData/Local/Programs/Microsoft VS Code/Code.exe\" \"C:/Users/Aged_cat/AppData/Local/Programs/Microsoft VS Code/resources/app/out/cli.js\" -gr %f:%l",
"%PDF%"
],

// 这是一些独立的编译选项,可以作为工具被编译方案调用
"latex-workshop.latex.tools": [
{
// Windows 原生安装 TeX Live 2020 的编译选项
"name": "Windows XeLaTeX",
"command": "xelatex",
"args": [
"-synctex=1",
"-interaction=nonstopmode",
"-file-line-error",
"-pdf",
"%DOCFILE%"
]
},
{
// Windows Biber 编译
"name": "Windows Biber",
"command": "biber",
"args": [
"%DOCFILE%"
]
},
{
// WSL XeLaTeX 编译一般的含有中文字符的文档
"name": "WSL XeLaTeX",
"command": "wsl",
"args": [
"/usr/local/texlive/2020/bin/x86_64-linux/xelatex",
"-synctex=1",
"-interaction=nonstopmode",
"-file-line-error",
"-pdf",
//"-output-directory=%OUTDIR%",
//"-aux-directory=%OUTDIR%",
"%DOCFILE%"
]
},
{
// WSL biber / bibtex 编译带有 citation 标记项目的文档
"name": "WSL Biber",
"command": "wsl",
"args": [
"/usr/local/texlive/2020/bin/x86_64-linux/biber",
"%DOCFILE%"
]
},
{
// macOS 或者 Linux 的简单编译
// 两种操作系统的操作方式相同
"name": "macOS / Linux XeLaTeX",
"commmand": "xelatex",
"args": [
"-synctex=1",
"-interaction=nonstopmode",
"-file-line-error",
"-pdf",
"%DOCFILE%"
]
},
{
// macOS 或者 Linux 的索引编译
// 两种操作系统的操作方式相同
"name": "macOS / Linux Biber",
"command": "biber",
"args": [
"%DOCFILE%"
]
}
],

// 这是一些编译方案,会出现在 GUI 菜单里
"latex-workshop.latex.recipes": [
{
// 1.1 Windows 编译简单的小文档,这个选项不太常用,因为绝大多数文章都需要有参考文献索引
"name": "Windows XeLaTeX 简单编译",
"tools": [
"Windows XeLaTeX"
]
},
{
// 1.2 Windows 编译带有索引的论文,需要进行四次编译;-> 符号只是一种标记而已,没有程序上的意义
"name": "Windows xe->bib->xe->xe 复杂编译",
"tools": [
"Windows XeLaTeX",
"Windows Biber",
"Windows XeLaTeX",
"Windows XeLaTeX"
]
},
{
// 2.1 WSL 编译简单的小文档,这个选项不太常用,因为我绝大多数文章都需要有引用。
"name": "XeLaTeX 简单编译",
"tools": [
"WSL XeLaTeX"
]
},
{
// 2.2 带有 citation 索引的文档,需要进行四次编译;-> 符号只是一种标记而已,没有程序上的意义
"name": "xe->bib->xe->xe 复杂编译",
"tools": [
"WSL XeLaTeX",
"WSL Biber",
"WSL XeLaTeX",
"WSL XeLaTeX"
]
},
{
// 3.1 macOS 简单 小文档
"name": "macOS XeLaTeX 简单编译",
"tools": [
"macOS XeLaTeX"
]
},
{
// 3.2 macOS 四次编译
"name": "macOS xe->bib->xe->xe 复杂编译",
"tools": [
"macOS / Linux XeLaTeX",
"macOS / Linux Biber",
"macOS / Linux XeLaTeX",
"macOS / Linux XeLaTeX"
]
}
],

// 清空中间文件
"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",
"*.bcf",
"*.run.xml",
//"*.synctex.gz"
],
"security.workspace.trust.untrustedFiles": "open"
// ======================== LaTeX 设置 END ========================

替换上述有关外部PDF的安装路径,正向搜索中VScode的安装路径。

配置 Sumatra PDF

这里也就是配置反向搜索。

打开 Sumatra PDF ,打开【设置 —— 选项】,选择反向搜索设置,输入如下命令:

1
2
"C:\Users\Aged_cat\AppData\Local\Programs\Microsoft VS Code\Code.exe" -g -r "%f":"%l"
"D:\Microsoft VS Code\Code.exe" "D:\Microsoft VS Code\resources\app\out\cli.js" -g -r "%f":"%l"

上述第一项就是VScode的安装路径,自行替换就行。

PS:

在使用反向搜索功能的时候,需要先打开 VScode ,并且用 Sumatra PDF 打开对应的PDF文件,否则会出现错误!