论文写作的又一利器:VSCode + Latex Workshop + MikTex + Git

article/2025/9/8 1:38:23

论文写作的又一利器:VSCode + Latex Workshop + MikTex +Git

摘要

本文介绍了Windows平台下面,Miktex+VSCode+Latex Workshop+Git配置用于撰写学术论文的方法。

对正反向搜索的配置也进行了介绍。

1.引言

学术论文写作,Latex是不二的选择。它是免费的并且拥有丰富的package资源包,能很好的满足学术写作的图表、格式、公式等各种要求, 而且是大多数学术刊物和学术团体指定的论文投稿标准格式。Latex的实现软件有Texlive, Miktex, CTex等。好用的Latex编辑器有很多,甚至传统的编辑器例如Vim, Emacs, WinEdt, TeXworks, TexStudio, Sublime, Atom, LyX等。

Visual Studio Code, 简称VSCode, 是微软出品的一款免费的文本和源代码编辑器。其支持丰富的各种扩展,来延伸其功能。配合其扩展 Latex Workshop,可以非常方便的编辑Latex文件和预览PDF论文。

Git是最常使用的分布式源代码管理工具,用它来管理Latex源文件可以起到追溯历史,修改订正,以及版本备份的作用。

下面以Miktex + VSCode + Latex Workshop + Git为例说明安装和配置过程。

2.软件安装和配置

依次安装如下软件并进行配置。

  1. Miktex安装

官网下载MikTex: Home 的安装包,然后点击安装。安装完成有运行"Miktex console"进行配置(选择"以管理员身份运行")。

点击"Packages"标签,然后依次安装ctex和CJK包(cjk/cjk-font/xecjk)等(或者待编译时再按需安装也可), 以便支持中文。

  1. Git安装

官网下载 Git windows 安装包,Git - Downloading Package , 然后点击安装。

开始菜单运行"Git Bash", 然后运行命令"CD" 切换到Home目录,在运行"ssh-keygen"生成ssh秘钥。

将用户目录(通常为"c:\用户\<你的用户名>\.ssh\id_rsa.pub")的公钥文件上传到你的github服务器上。后续的代码提交就可以不需要输入任何密码了。

  1. VSCode安装

官网下载VSCode安装包然后安装。Visual Studio Code - Code Editing. Redefined

然后运行"vscode", 安装其扩展Latex Workshop.

对于Miktex, 需要对Latex Workshop配置其编译方案(recipe)。这里以latex workshop 5.5为例配置,如下:

//下面配置了3个编译方案:texify (默认), xelatex 和 "xe->bib->xe->xe"

//(打开latex源文件后,在编译时单击VSCode界面左下角的小勾,单击“Build LaTeX project, 就可以选择这几个编译方案)

// Latex workshop "latex-workshop.latex.recipes": [{"name": "texify",  //放在最前面为默认编译方案, 适用于MikTex"tools": ["texify"]},{"name": "xelatex","tools": ["xelatex"]},{"name": "xe->bib->xe->xe","tools": ["xelatex","bibtex","xelatex","xelatex"]}],"latex-workshop.latex.tools": [{"name": "texify","command": "texify","args": ["--synctex","--pdf","--tex-option=\"-interaction=nonstopmode\"","--tex-option=\"-file-line-error\"","%DOC%.tex"]},{// 编译工具和命令"name": "xelatex","command": "xelatex","args": ["-synctex=1","-interaction=nonstopmode","-file-line-error","%DOC%"]},{"name": "pdflatex","command": "pdflatex","args": ["-synctex=1","-interaction=nonstopmode","-file-line-error","%DOC%"]},{"name": "bibtex","command": "bibtex","args": ["%DOCFILE%"]}],  

如果需要在编译出PDF文件后,删除临时文件,则加上如下配置:

"latex-workshop.latex.clean.enabled": true,

3.验证

输入如下内容latex源文件并保存,然后右键选择“Build Latex Project”编译, 点击预览即可看到内容:

%!TEX program = xelatex
% 使用 ctexart 文类,UTF-8 编码
\documentclass[UTF8]{ctexart}
\title{文章标题}
\author{Siwind}
\date{\today}
\begin{document}
\maketitle
This is the context of the article.
这就是文章的所有内容。
\end{document}

4.FAQ

1) 指定pdflatex或者xelatex编译

A:  在latex源文件的第一行加入如下指令即可:

使用pdflatex编译

%!TEX program = pdflatex

使用xelatex编译:

%!TEX program = xelatex

2) 要使用SumatraPDF预览编译好的PDF文件

A: 配置文件中加入如下内容:

"latex-workshop.view.pdf.viewer": "external","latex-workshop.view.pdf.external.command": {"command": "E:/Programs/SumatraPDF/SumatraPDF.exe",  //SumatraPDF.exe的实际路径"args": ["%PDF%"]
},或者下述配置:
 "latex-workshop.view.pdf.external.command": {"command": "D:/DeveTools/SumatraPDF.exe", //SumatraPDF.exe的实际路径"args": ["-inverse-search","\"C:/Program Files/Microsoft VS Code/code.exe\" -g \"%f:%l\"", //修改为你的具体vscode.exe的路径"%PDF%"]},

3) 配置Syntex的正向搜索(Latex->PDF):右键文件空白处,单击“SyncTeX from cursor”即可正向搜索

A: 

"latex-workshop.view.pdf.external.synctex": {"command": "E:/Programs/SumatraPDF/SumatraPDF.exe",  //SumatraPDF.exe的实际路径"args": ["-forward-search","%TEX%","%LINE%","%PDF%"]
},

4) 配置反向搜索PDF->Latex源代码

A: 打开SumatraPDF,进入设置->选项 对话框,在“设置反向搜索命令行”处填入如下内容:

双击PDF中的任意一处即可跳转到VSCode中所对应的内容的源代码处。

(注意: 由于从vscode调用SumatraPDF时是作为子进程的,为避免反向搜索失败,最好是先独立的运行SumatraPDF.exe后再进行正反向搜索。)

"C:\Program Files\Microsoft VS Code\Code.exe"  -g "%f:%l"

5) Mixtex编译时,报"font..”字体类型的错误

A:  这种情况一般都是因为新安装了package, 然后缺乏相应字体

首先看看是不是缺少package,缺少则到Mixtex console安装相应的包。然后更新字体映射map.

方法为: 以管理员身份打开命令行窗口 cmd.exe, 然后运行如下命令(假设MixTex安装路径为:C:\Program Files\MiKTeX 2.9):

C:\Program Files\MiKTeX 2.9\miktex\bin\x64>updmap.exe

或者:(加参数 --force, 时间长)

C:\Program Files\MiKTeX 2.9\miktex\bin\x64>updmap.exe --force

6) latex源文件中如何使用块注释?bib源文件中如何使用行注释?

A:

latex源文件中的行注释可以使用 %。块注释可以使用预处理命令 \if 0 ... \fi 或者 \iffalse ... \fi 来进行(其中的\iffalse也可以换成\iftrue表示逻辑真)。如下所示:

\if 0
This is a comment!
And do not show in PDF file.\fi
\iffalse
I don't want all these happen!\fi

对于bib文件,按照规范,任何不在可识别的entry中的项都视为注释。 通常行注释可以使用 双斜杠 //.  块注释可以使用 @COMMENT.

// Chapter introduction@inproceedings{wang2010research,title={Research on Architecture and Definition of Content Security},author={Wang, Yinqing and Yuan, Kaiguo and Xu, Tianling},booktitle={2010 International Conference on Communications and Intelligence Information Security (ICCIIS)},pages={64--68},year={2010},organization={IEEE}
}

bib文件的@COMMENT块注释:

@COMMENT{this is a comment.I don't want all these happen!
}

7) 新版的latex workshop,在latex源文件上点右键,右键菜单未出现 "build latex project" 选项。

A:

新版本的latex workshop,  把右键菜单中latex相关编译/同步功能默认取消,而把这些功能放入了侧边栏的latex命令面板。

点击侧边栏的相应项即可实现编译/预览PDF/等功能。如果要开启latex相关的右键菜单,再配置文件中添加如下内容即可:

"latex-workshop.showContextMenu":true,

侧边栏命令面板如下:


http://chatgpt.dhexx.cn/article/7H6ZnAHk.shtml

相关文章

关于TeX,LaTeX,MikTex,CTeX,etc.

下文是王垠介绍的TeX&#xff0d;&#xff0d;一个专业的排版系统&#xff01; 这是一个介绍 TeX — 一个漂亮&#xff0c;有趣又可靠的排版程序的网页。希望通过我的介绍&#xff0c;你能体会到使用 TeX 的快乐感觉。 这页分成了很多小主题&#xff0c;可以叫做一个非技术性…

LaTeX相关概念介绍及CTeX、MiKTeX+TeXstudio环境搭建

1. LaTeX相关概念 TeX是Donald E.Knuth 开发的&#xff0c;用来进行文字排版的软件&#xff0c;特别的是TeX是数学公式排版最好的系统&#xff0c;很多世界一流的出版社均采用TeX系统出版书籍和期刊。 LaTeX 是一种格式&#xff0c;这种格式采用TeX作为自己的排版引擎。LaTeX…

Windows 下基于 MikTeX 的 Latex 环境配置小记

前言 前一阵子换了C盘&#xff0c;好多软件要重新安装。最近需要构建 tex 文件生成 pdf&#xff0c;发现之前配置好的后端已经无了。之前用的 TexLive&#xff0c;这次试试 MikTeX。TeX 相关的名词可以参考下面的链接。&#xff08;大概会被CSDN扣流量了&#xff09; TeX 家族…

MiKTeX 中文支持的解决方案

首先&#xff0c;在开始菜单中&#xff0c;展开MiKTeX 2.9文件夹&#xff0c;打开MiKTeX Console&#xff0c;并且选择以admin启动。然后切换到Packages面板&#xff0c;搜索ctex。选择ctex宏包右键安装。安装完毕后&#xff0c;列表中ctex右边的Installed on会出现安装日期。 …

Miktex update更新失败 code=7 更换镜像 取消代理

刚安装的miktex发现直接更新失败&#xff0c;提示connect failed, a connection to api2.miktex.org could not be established&#xff0c;报错如下&#xff0c;code 7&#xff1a; 搜索了一下发现国内最好要使用镜像源&#xff0c;新版的miktex需要在console里面更新&#xf…

【LaTeX】MikTex+TexStudio安装及配置论文写作环境

最近在BMC投稿&#xff0c;说真心&#xff0c;投稿真是比写代码麻烦多了&#xff0c;本来用word编辑好好的&#xff0c;满心喜悦等待着投稿&#xff0c;登上网站一看人家要Latex编辑成文的&#xff0c;好吧&#xff0c;开始下软件往死里搞&#xff0c;终于在今天投出去了&#…

windows下 MikTex的安装和初步使用

*2023.6.27更&#xff1a;推荐使用overleaf&#xff0c;可在线编辑&#xff0c;而且几乎不需要管各种bug&#xff0c;但是是适用于英文投稿&#xff0c;而且编译稍慢。* 以下原文&#xff1a; 这篇文章是给初次使用的小白看的&#xff0c;大神请离开。 作为小白一个&#xf…

【科研工具】【MikTex】MikTex安装和使用

MikTex下载地址&#xff1a;Getting MiKTeX MikTex&#xff1a;读作&#xff08;mick-tech&#xff09;是Tex/LaTeX及相关程序的最新实现。[1] Tex是Donald Ervin写的一个排版系统&#xff0c;用于书籍的美观排版&#xff0c;尤其是包含了大量数学内容的书[1]。 安装&#xf…

先验概率、后验概率、全概率

1、先验概率 即在事情发生之前事情发生的概率。是根据以往经验和分析得到的概率。 比如抛硬币&#xff0c;我们都认为正面朝上的概率是0.5&#xff0c;这就是一种先验概率。 2、后验概率 事情已经发生了&#xff0c;事情发生可能有很多原因&#xff0c;判断事情发生时由哪个…

朴素贝叶斯基本原理和预测过程、先验概率、后验概率、似然概率概念

贝叶斯原理是英国数学家托马斯贝叶斯提出的。 贝叶斯原理 建立在主观判断的基础上&#xff1a;在我们不了解所有客观事实的情况下&#xff0c;同样可以先估计一个值&#xff0c;然后根据实际结果不断进行修正。 举例&#xff1a; 一个袋子里有10个球&#xff0c;其中6个黑球&a…

先验概率与后验概率浅析

#先验概率和后验概率 先验&#xff08;Apriori&#xff1b;又译&#xff1a;先天&#xff09;在拉丁文中指“来自先前的东西”&#xff0c;或稍稍引申指“在经验之前”。近代西方传统中&#xff0c;认为先验指无需经验或先于经验获得的知识。它通常与后验知识相比较&#xff0c…

先验概率、似然函数与后验概率

先验概率、似然函数与后验概率 先验概率 Prior probability 在贝叶斯统计中&#xff0c;先验概率分布&#xff0c;即关于某个变量 p 的概率分布&#xff0c;是在获得某些信息或者依据前&#xff0c;对 p 的不确定性进行猜测。例如&#xff0c; p 可以是抢火车票开始时&#x…

先验概率and后验概率

from: https://blog.csdn.net/yangang908/article/details/62215209 and : https://my.oschina.net/xiaoluobutou/blog/688245 先验概率&#xff1a; 事件发生前的预判概率。可以是基于历史数据的统计&#xff0c;可以由背景常识得出&#xff0c;也可以是人的主观观点给出。…

先验概率、后验概率、条件概率等

概率定义 先验概率&#xff1a;事件发生前的预判概率。可以是基于历史数据的统计&#xff0c;可以由背景常识得出&#xff0c;也可以是人的主观观点给出。一般都是单独事件概率&#xff0c;如P(x),P(y)。后验概率&#xff1a;事件发生后求的反向条件概率&#xff1b;或者说&am…

机器学习34:贝叶斯先验概率

机器学习34:贝叶斯先验概率&#xff1a; 理解贝叶斯先验概率是为了更好的理解正则化的概念。 &#xff08;1&#xff09;贝叶斯先验概率和贝叶斯后验概率&#xff1a; 1.先验概率是指根据以往经验和分析得到的概率,即在事情发生之前事情发生的概率。它往往作为"由因求果&…

先验概率、后验概率、贝叶斯公式_学习笔记

先验概率(prior probability)&#xff1a; 先验概率是指根据以往经验和分析得到的概率&#xff0c;如全概率公式&#xff0c;它往往作为&#xff02;由因求果&#xff02;问题中的&#xff02;因&#xff02;出现的概率。 在贝叶斯统计推断中&#xff0c;不确定数量的先验概率…

先验概率VS后验概率

先验概率P(A) 先验概率&#xff0c;在贝叶斯统计推断中&#xff0c;是一个事件在收集新数据之前的概率。在进行实验之前&#xff0c;这是基于现有知识对结果概率进行的最佳合理评估。 随着新数据或信息的出现&#xff0c;事件发生的先验概率将被修正&#xff0c;以产生对潜在…

五分钟了解先验概率和后验概率

五分钟了解先验概率和后验概率 本文摘自我的公众号【车子的心智探索】 欢迎关注我&#xff01; 不理解先验概率和后验概率&#xff1f;莫慌&#xff0c;本文可以帮你。 从面积的角度看概率 在说正题之前&#xff0c;咱们从面积的角度认识一下概率。 拿掷骰子来说&#xff0…

先验概率、后验概率和似然概率

老是容易把先验概率,后验概率,似然概率混淆&#xff0c;所以下面记录下来以备日后查阅。区分他们最基本的方法就是看定义&#xff0c;定义取自维基百科和百度百科: 先验概率 百度百科定义&#xff1a;先验概率&#xff08;prior probability&#xff09;是指根据以往经验和分析…

2018 之后,Android 工程师将何去何从?

热文导读 | 点击标题阅读 欢迎加入Java和Android架构知识星球 阿里资深无线开发专家给程序员职业发展的几点建议 架构面试进阶大揭秘&#xff1a;5月份优秀文章精选推荐&#xff0c;值得推荐 作者&#xff1a;hamberluo链接&#xff1a;https://juejin.im/post/5af296226fb9a07…