VSCode是微软开发的一款编辑器,插件很多,功能强大,不仅可以用来编写程序也可以用来写文档。为了节约磁盘空间,想把所有任务用一个软件完成,所以选用VSCode挑战一下。
电脑:Win10(已安装VSCode)
LaTeX是一种基于TeX的标记语言和编程语言,所以类似于其他编程语言Python等,Latex的文档也需要一个专门的编译器进行编译。我选择的是TexLive。
在清华大学镜像网站中找到TeXlive镜像:
镜像网址链接
选择想要安装的版本,建议直接下载iso文件,这样可以离线安装。
双击打开以后右键点击bat文件以管理员身份运行,开始安装
个性化修改安装位置,不修改也可以,看个人
编辑器如果要使用VSCode的话可以不用TeXworks前端。
安装完成后测试是否安装好。
输入指令tex -v
测试是否安装完成
在VSCode中安装Latex workshop插件。
此时按说可以在VSCode中进行编写和查看了,比如:
新建后缀为.tex
的文件,然后写入以下内容:
\documentclass[UTF8]{ctexart}
\begin{document}
你好,world!
\end{document}
如下图所示:
然后ctrl+s
保存一下就可以看到文件夹内出现了一系列文件:
如果没有也可以使用页面右上角的蓝色build
按钮,建立项目。
就可以生成pdf
。
还有一种更快捷的方式就是在VSCode中打开侧边栏的TEX
选项。
然后在COMMANDS
栏目中点击Build LaTeX project
就可以生成pdf
,点击View LaTeX PDF
就可以在侧边预览PDF。
在.tex
文件中进行编写,然后保存就可以在侧边PDF中实时预览效果。
当然仅有以上内容写文档可能只能满足初步要求,可能需要对VSCode中的插件选项进行配置。
VSCode中的设置按照控制的内容可以分为界面设置、编译器设置、插件设置;按照适用范围可以分为用户设置、工作空间设置、文件夹设置。
用户设置(User Settings
)就是对于任何文件都适用的;工作空间设置(Workspace Settings
)就是对于工作空间内的文件适用的设置;文件夹设置(Folder Settings
)就是对当前文件的环境进行配置。
打开VSCode中的用户设置,可以通过ctrl+,
,或者File->Preference->settings
,或者通过ctrl+shift+p
,然后输入settings
打开用户设置,进行全局设置。
对于工作区和文件夹设置一般是以文件夹形式存在的,比如对于一个文件夹想进行文件夹设置,需要在文件夹内建立一个.vscode
文件夹,在里面写一些.json
文件来进行文件夹设置的说明。有点类似于Python中把写好的程序作为包打包一样,需要写一个__init__.py
文件来说明包含的内容。如下所示对TEST文件夹进行文件夹设置:
而WorkSpace的设置就是以.code-workspace
结尾的文件,里面说明了与该工作区关联的文件夹以及相应的VScode配置信息。也就是在任意位置写一个后缀为.code-workspace
的文件,说明界面、路径、编辑器、插件等设置内容然后双击这个文件就可以打开这个工作区。
如果要在工作区里禁用插件,需要先点击插件然后选择禁用(工作区),关闭工作区需要点击File->Close Workspace
。在文件夹内没有禁用插件功能。
本部分内容参考:texlive2023+vscode安装与配置(简洁版)比较好。
打开VScode中的设置文件,如下所示:
然后打开settings.json
不过其中的内容需要注意,如果没有内容的话,可以全文替换;如果有内容,在原来内容的最后一句加上英文逗号以后再把配置粘贴进去,同时要注意缩进报错。
//------------------------------LaTeX 配置----------------------------------
// 设置是否自动编译
"latex-workshop.latex.autoBuild.run":"never",
//右键菜单
"latex-workshop.showContextMenu":true,
//从使用的包中自动补全命令和环境
"latex-workshop.intellisense.package.enabled": true,
//编译出错时设置是否弹出气泡设置
"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",
"%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%",
"%DOC%"
],
"env": {}
},
{
"name": "lualatex",
"command": "lualatex",
"args": [
"-synctex=1",
"-interaction=nonstopmode",
"-file-line-error",
"-shell-escape",//这个命令行在网上的Latex Workshop设置里一般没有,所以直接recipe会报错
"%DOCFILE%"
]
},
{
"name": "bibtex",
"command": "bibtex",
"args": [
"%DOCFILE%"
]
}
],
// 用于配置编译链
"latex-workshop.latex.recipes": [
{
"name": "PDFLaTeX",
"tools": [
"pdflatex"
]
},
{
"name": "LuaLaTeX",
"tools": [
"lualatex"
]
},
{
"name": "XeLaTeX",
"tools": [
"xelatex"
]
},
{
"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"
],
//设置为onFaild 在构建失败后清除辅助文件
"latex-workshop.latex.autoClean.run": "onFailed",
// 使用上次的recipe编译组合
"latex-workshop.latex.recipe.default": "lastUsed",
//使用 SumatraPDF 预览编译好的PDF文件
// 设置VScode内部查看生成的pdf文件
"latex-workshop.view.pdf.viewer": "tab",
// PDF查看器用于在\ref上的[View on PDF]链接
"latex-workshop.view.pdf.ref.viewer": "auto",
"editor.renderControlCharacters": false
以上是手动对齐以后的内容。