LaTeX+VSCode+ChatGPT智能化论文写作环境搭建教程
简介
LaTeX 是一种流行的排版系统,广泛用于学术论文和科技文献的撰写。对于广大科研工作者(ps:也就是一线研究生啦,教授、大老板们谁还趴着写论文啊),无论哪个专业,总是要使用LaTeX写论文的,因其强大美观标准化的排版。常用的LaTex写作环境也就三种:传统的Texlive和自带的Studio编辑器、Overleaf网页版、MiKTex+VSCode插件。VSCode插件只是组成了前端编辑器,需要搭配后端LaTex编译器使用,可以使用笨重的Texlive,但是这里推荐使用MiKTex。
这三种主流方法的优缺点对比如下表:
特性 | Texlive | Overleaf | VSCode |
---|---|---|---|
轻量化 | ❌ | ✅ | ✅ |
可扩展性 | ❌ | ❌ | ✅ |
安装方便 | ❌ | ✅ | ❌ |
稳定性 | ✅ | ❌ | ✅ |
界面美观 | ❌ | ✅ | ✅ |
个性化配置 | ❌ | ❌ | ✅ |
跨平台 | ✅ | ✅ | ✅ |
拼写检查 | ❌ | ✅ | ✅ |
语法纠错 | ❌ | ❌ | ✅ |
ChatGPT辅助写作 | ❌ | ❌ | ✅ |
参考文献管理 | ❌ | ❌ | ✅ |
数学符号辅助 | ❌ | ✅ | ✅ |
多人协同 | ❌ | ✅ | ✅ (结合git) |
结果显而易见,除了安装配置不方便,MiKTex+VSCode的方案具备所有优势。这篇文章就帮您解决安装配置的问题。
就我最近的实践而言,结合最新的写作辅助插件Github Copilot,写作生产力可以提升3倍以上!
安装步骤
由于作者Frank已经从Windows转战Mac,所以本教程以MacOS系统为例进行介绍,但如果想迁移到Windows甚至Linux并不难,因为本文所用到的所有软件都是跨平台支持的,只需要根据各自系统特点进行简单适配(主要是文件路径),作者在介绍时也尽可能兼顾所有系统平台做出必要提示。
安装 LaTeX 发行版
前往MikTex官网下载系统对应版本的MikTex并安装。Windows和Mac直接点击相应的安装包一键安装即可,Linux需要根据命令行提示进行操作,这里不再赘述。
安装 VSCode 与插件
-
前往官网下载安装VSCode。如果你的Mac是M1芯片请下载
Apple silicon
,Intel芯片请选择Intel chip
;也可以直接下载通用版Universal
,两种芯片都兼容。 -
安装号VSCode之后打开,点击左边栏图标进入插件市场,搜索以下插件依次安装。
插件名称 | 功能 | 备注 |
---|---|---|
LaTeX Workshop | LaTex编辑核心 | 必须 |
LaTeX language support | 语法高亮, snippets | 可选,建议 |
LaTeX Snippets | snippets提示 | 可选,建议 |
LTeX | 离线语法检查 | 可选,建议 |
LaTeX Table Helper | LaTex表格辅助 | 可选,建议 |
Chinese (Simplified) | vscode汉化 | 可选 |
Shades of Purple | vscode漂亮护眼主题(深色) | 可选,推荐 |
GitHub Copilot | ChatGPT辅助coding和writing | 可选,墙裂推荐! |
-
插件启用
- LaTex相关套件在你打开tex文件时会自动启动。
- LTex会在tex文件中自动检查语法,在首次启用时会自动下载200~300MB的模型文件,如果网络不佳可能下载很慢或失败,这不影响使用,等到网络通畅后会继续下载。如一直失败,最好使用科学上网,也可以直接禁用插件。
- 换主题:按下
F1
键打开命令面板,搜索框输入“color theme”,依次选择:Preferences: Color Theme Shades of Purple。 - GitHub Copilot 只需要登录你的Github账号就可以了,如果需要高级功能或者不再能免费使用,可以获取github学生大礼包权益。目前作者是未注册学生权益的,但是Copilot能免费用。如有这方面需求,后期专门出一篇教程讲解,也可暂时参考这里。
环境配置
接下来进行最关键的一步,配置VSCode的LaTex编译环境。首先需要对MikTex进行配置,保证可以正常安装和使用LaTex宏包;然后对VSCode的编译环境配置。
MikTex配置
- 打开安装好的
MikTex Console
,建议直接选择管理员模式进行后续操作。
- 检查更新,进入更新页,点击“立即更新”将会更新所有LaTex宏包,完成之后按提示重启MikTex。
如果检查更新或安装失败,可以选择更改检索源:点击“更改…”按钮,选择“远程宏包存储库”,下一步,选择一个距离较近的即可。但是一般建议保持默认项<互联网上的随机宏包存储库>。
- 进入MikTex设置页,推荐打开自动安装缺失包的选项,因为MikTex不像Texlive那些安装了所有包,它是按需安装的,第一次编译时如果缺失包,它会自动下载安装,无需担心。
以上,MikTex的所有配置就完成了,它只负责对LaTex宏包的管理,后续编辑、编译操作无需打开它,VSCode会通过后台调用它的命令行工具完成pdf编译。
VSCode 配置
-
首先,打开VSCode,按
F1
打开命令面板,输入“settings.json”,选择打开用户设置的json文件。
-
在你的
settings.json
文件中按格式插入以下内容;如果你的settings文件是空的,则可以直接完全替换为以下: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{
// 编译工具和命令
"latex-workshop.latex.tools": [
{
"name": "pdflatex",
"command": "pdflatex",
"args": [
"-synctex=1",
"-interaction=nonstopmode",
"-file-line-error",
"%DOCFILE%"
]
},
{
"name": "bibtex",
"command": "bibtex",
"args": [
"%DOCFILE%"
]
},
{
"name": "makeindex",
"command": "makeindex",
"args": [
"%DOCFILE%"
]
},
{
"name": "texify",
"command": "texify",
"args": [
"--synctex",
"--pdf",
"--tex-option=\"-interaction=nonstopmode\"",
"--tex-option=\"-file-line-error\"",
"%DOCFILE%.tex"
]
},
{
"name": "xelatex",
"command": "xelatex",
"args": [
"-synctex=1",
"-interaction=nonstopmode",
"-file-line-error",
"%DOCFILE%"
]
}
],
// 编译链
"latex-workshop.latex.recipes": [
{//放在最前面为默认编译方案, 适用于MikTex
"name": "texify",
"tools": [
"texify"
]
},
{
"name": "pdflatex",
"tools": [
"pdflatex"
]
},
{
"name": "xelatex",
"tools": [
"xelatex"
]
},
{// 论文常用编译链,如需要可以放在第一位
"name": "pdflatex -> bibtex -> pdflatex*2",
"tools": [
"pdflatex",
"bibtex",
"pdflatex",
"pdflatex"
]
},
{
"name": "xelatex -> bibtex -> xelatex*2",
"tools": [
"xelatex",
"bibtex",
"xelatex",
"xelatex"
]
},
{
"name": "pdflatex -> makeindex",
"tools": [
"pdflatex",
"makeindex",
"bibtex"
]
},
{
"name": "xelatex -> makeindex",
"tools": [
"xelatex",
"makeindex",
"bibtex"
]
}
],
// 自动清理
"latex-workshop.latex.autoClean.run": "onBuilt",
//从使用的包中自动补全命令和环境
"latex-workshop.intellisense.package.enabled": true,
"latex-workshop.intellisense.file.base": "both",
"latex-workshop.intellisense.unimathsymbols.enabled": true,
"latex-workshop.intellisense.update.aggressive.enabled": true,
// 设置是否自动编译(onSave/never): 保存时编译
"latex-workshop.latex.autoBuild.run": "onSave",
//编译出错时设置是否弹出气泡设置
"latex-workshop.message.error.show": true,
"latex-workshop.message.warning.show": false,
"latex-utilities.message.update.show": false,
// pdf查看方式(tab/external): 内置tab,不建议使用别的文章推荐的SumatraPDF
"latex-workshop.view.pdf.viewer": "tab",
// 需要自动清理的辅助文件
"latex-workshop.latex.clean.fileTypes": [
"*.aux",
"*.brf",
"*.blg",
"*.idx",
"*.ind",
"*.lof",
"*.lot",
"*.out",
"*.toc",
"*.acn",
"*.acr",
"*.alg",
"*.glg",
"*.glo",
"*.gls",
"*.ist",
"*.fls",
"*.log",
"*.fdb_latexmk",
"*.bbl", // for arXiv submission,如果需要提交arxiv则注释掉,保留.bbl文件
// "*.gz" // for forward search,tex->pdf 前向跳转、搜索依赖的文件
],
"ltex.enabled": true, // 启用插件
"ltex.language": "en-US", // 设置语言,这里是English
}关于以上json配置,必要的解释都写在注释中了,可以根据需要修改。需要注意的事项有:
- 可以更改的代码为,将编译方式: pdflatex、 xelatex 和 latexmk 中的%DOC更改为%DOCFILE。%DOCFILE表明编译器访问没有扩展名的根文件名,而%DOC表明编译器访问的是没有扩展名的根文件完整路径。这就意味着,使用%DOCFILE可以将文件所在路径设置为中文,但笔者不建议这么做,因为毕竟涉及到代码,当其余编译器引用时该 tex 文件仍需要根文件完整路径,且需要为英文路径。更多详情可以访问 github 中 LaTeX-Workshop 的 Wiki。
- 可以根据使用习惯和场景自行调整编译链的顺序。
- 许多教程都教大家使用SumatraPDF,作者也使用过,但是感觉很鸡肋,从VSCode编辑器再跳转到外面查看很麻烦,而且不利于跨平台使用,SumatraPDF的路径在不同系统下也需要额外配置,前向、后向跳转也需要额外配置。以前是很多人没发现LaTeX-Workshop 其实自带前向、后向跳转才转而用 SumatraPDF。如果正确配置了以上json,使用内置tab查看pdf也可以自由跳转。使用方式见下节。
使用说明
-
打开VSCode新建一个测试文件
test.tex
,并写入以下内容:1
2
3
4
5
6
7
8
9\documentclass[12pt,a4paper]{article}
\usepackage{amsmath, amsthm, amssymb, graphicx}
\title{Hello \LaTeX}
\author{Frank}
\begin{document}
\maketitle
This is a test file.
\end{document} -
当打开
*.tex
文件时,VSCode左功能栏会自动显示LaTex-Workshop功能区、数学符号快捷输入区等。
在功能区菜单中可以选择编译方式(pdflatex、xelatex等),之后保存会自动使用上次选用的方式编译,无需再次选择。使用快捷键⌘
+S
保存文件即可自动编译。点击“View LaTeX PDF”会分离出右侧tab显示编译好的pdf文件。还可以清理辅助文件、整理参考文献、导航跳转等。
-
对于MacOS,tex pdf 跳转快捷键:
⌥
+⌘
+J
,pdf tex 快捷键:鼠标左键单击+⌘
。
Windows 或 Linux 可以在VSCode左下角设置键盘快捷键中查看:
-
一般的论文投稿都是使用bibtex组织参考文献,将编译链设置为“pdflatex->bixtex->pdflatex*2”即可。如果使用中文则选择对应的xelatex编译工具。中文编译在Mac上会有很多奇怪的问题,都写英文论文的咳盐工作者了,谁还自找麻烦用中文呢是吧?另外,文件路径最好也不要用中文。
-
Github Copilot 是Microsoft的产品,当然获得了ChatGPT加持,所以在代码、文字生成方面时世界无敌的。可以看到当右下角的Copilot图标转圈圈完成之后,就会为你生成文字提示,按
Tab
键即可插入。甚至在写论文、公式、引用参考文献、引用表格数据时,会根据上下文帮你生成citation、表格分析等等。开始欢乐地造论文吧!
以上就是全部内容,如配置过程中遇到问题随时联系Frank,也可以在下面评论留言,乐意帮您解决~