Vscode使用LaTeX过程记录与疑难问题解决

为什么要使用Vscode编辑LaTeX?

使用LaTeX已经有近一年的时间了,但是大部分时候使用的工具还是overleaf网站等在线工具。作为小白,使用overleaf的使用体验还是不错的,但是免费版的overleaf只支持20s的编译时长,对于一些编译时长超过20s的文档就要开会员版。而且使用overleaf编译较慢,调试bug较难,文档的安全性难以保证。所以最近还是想要切换到本地编辑器上来。

通过比较几款本地编辑器,最终还是选择了功能十分强大的vscode。它可以结合多种插件扩展性比较强。比如可随时同步GitHub,结合overleaf使用实现在线编辑和本地编辑的同步。或者结合Zotero实现参考文献直接插入,十分方便。

如何使用Vscode编辑LaTeX?

  • 下载安装texlive

可以使用官方网站,选择texlive2019.iso进行下载:http://www.tug.org/texlive/

如果希望下载更快,可以使用国内的镜像网站:https://mirrors.tuna.tsinghua.edu.cn/CTAN/systems/texlive/Images/

点开镜像站后,选择 texlive2019.iso进行下载。

这里文件大小通常在4~5个G,下载较慢,尽量使用国内镜像网站,另外软件安装较慢,通常需要半小时以上,建议耐心等待。

  • 下载安装vscode

直接到官网下载最新版的 vscode ,当然官网需要科学上网,不然下载很慢,当然也有其他的法子。

这里我们需要记住 vscode 的安装路径,后面需要用到

  • 在vscode中安装拓展latexworkshop

安装好vscode后需要在拓展中安装这款插件。

  • 配置setting json文件

安装好插件我们重启一下 vscode ,点击左下角齿轮,打开设置,并打开配置文件 settings.json 。或者按ctrl+shift+p打开一下界面

然后点击“打开用户设置”进入以下界面

在settings.json中加入以下代码

{
    "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%",
                "%DOCFILE%"
            ]
        },
        {
            "name": "bibtex",
            "command": "bibtex",
            "args": [
                "%DOCFILE%"
            ]
        }
    ],
    "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"
    ],
    "latex-workshop.latex.autoClean.run": "onFailed",
    "latex-workshop.latex.recipe.default": "lastUsed",
    "latex-workshop.view.pdf.internal.synctex.keybinding": "double-click",
}

 此时点击下图中的build latex project

按照其他教程,一般情况下就可以编译出对应的PDF文件了。但是很多用户包括我的设备会报错“Recipe terminated with error. Retry building the project.”以及“I can't find the format file `pdflatex.fmt'!”

我所遇到的疑难杂症是如何解决的?

通过查找网上各种教程,询问各路大神,找到了几条可能的解决对策分享给大家。

  1. 可能是文件路径中包含中文路径。解决的对策很简单,将文件放在英文路径下即可解决
  2. 可能没有配置环境变量。相应地,直接在环境变量中添加“C:\texlive\2021\bin\win32”以及“C:\Windows\System32”即可解决。
  3. 如果此时还是提示错误,在cmd中输入以下命令“fmtutil-sys --all”即可。这里需要注意,需要以管理员身份运行cmd。

至此,全部操作已完成,可以愉快地使用vscode编写文档了!

总结

在历经数次失败,n次放弃后终于在本地配置好了LaTeX环境,成就感与幸福感溢于言表!特写此文,希望能够分享整个过程,帮助更多需要的人。

<think>好的,我现在需要处理用户关于VSCode中编译LaTeX常见问题及解决方案的查询。首先,用户提供了四个引用,我需要仔细分析这些引用内容,找出关键点,然后组织成一个结构清晰的回答。 首先,用户提到的引用[1]提到编译中文时出现的问题,尤其是路径问题。这可能涉及到中文字符路径导致编译失败的情况。解决方案可能需要检查路径是否有中文,或者配置编译器使用xelatex来处理中文。 引用[2]提到修改编译工具为xelatex,因为默认的latexmk可能不适合中文环境。这说明用户可能需要调整VSCodeLaTeX Workshop插件设置,更换编译工具。 引用[3]指出参考文献无法显示的问题,需要正确的编译顺序:XeLaTeX → BibTeX → XeLaTeX ×2。这涉及到BibTeX的使用流程,用户可能没有正确执行多次编译,导致参考文献未被处理。 引用[4]提到.bbl文件错误,可能参考文献列表的空项有关,需要检查thebibliography环境是否有内容,或者是否缺少\item条目。这可能要求用户检查参考文献条目是否正确填写。 接下来,我需要将这些信息分类整理,形成常见问题列表,每个问题对应原因和解决方案。需要确保每个问题点都覆盖到用户提供的引用内容,并且解决方案具体可行。此外,用户可能还关心其他常见问题,比如环境配置、宏包缺失等,但根据引用内容,主要应集中在中文支持、参考文献、编译工具设置和路径问题上。 需要确保回答结构清晰,分点列出问题,每个问题下分原因和解决,可能还需要添加配置示例,比如修改settings.json的内容。同时,注意使用正确的LaTeX格式,比如行内公式用$...$,独立公式用$$...$$,但在这个问题中可能不需要数学公式,但需要正确引用代码块和配置片段。 最后,生成相关问题部分需要考虑用户可能进一步的问题,比如如何安装LaTeX环境,处理宏包错误,或者实时预览设置等,这些可以作为相关问题提出。</think>[用户可见层] # VSCode编译LaTeX常见问题及解决方案 ## 一、中文路径/中文文档编译失败 **现象**: 使用中文路径或编译含中文文档时出现`spawn xelatex ENOENT`等报错 **原因**: 1. 默认编译工具`latexmk`对中文支持不足 2. 文件路径包含中文字符 **解决方案**: 1. 修改编译工具为`xelatex` 打开VSCode设置(JSON),添加配置: ```json "latex-workshop.latex.tools": [{ "name": "xelatex", "command": "xelatex", "args": ["-synctex=1", "-interaction=nonstopmode", "%DOCFILE%"] }] ``` 2. 确保文件路径不含中文字符[^1][^2] ## 二、参考文献无法显示 **现象**: 引用文献显示问号或编译后缺失 **原因**: 未正确执行BibTeX编译流程 **解决方案**: 按顺序执行以下编译命令: 1. XeLaTeX(生成.aux文件) 2. BibTeX(生成.bbl文件) 3. XeLaTeX ×2(更新交叉引用)[^3] ```json "latex-workshop.latex.recipes": [{ "name": "xelatex -> bibtex -> xelatex×2", "tools": ["xelatex", "bibtex", "xelatex", "xelatex"] }] ``` ## 三、参考文献环境报错 **现象**: 出现`Something's wrong - perhaps a missing \item`错误 **原因**: 1. `thebibliography`环境缺少条目 2. 未正确生成.bbl文件 **解决方案**: 1. 检查文献条目是否为空 2. 删除临时生成的.bbl文件重新编译[^4] ```latex \begin{thebibliography}{99} \item[] 作者. 标题. 出版社, 年份 % 确保有有效条目 \end{thebibliography} ``` ## 四、扩展建议配置 1. 安装LaTeX Workshop扩展 2. 推荐组合安装: - MikTeX/TeX Live(核心引擎) - SumatraPDF(轻量级PDF阅读器) 3. 启用自动编译: ```json "latex-workshop.latex.autoBuild.run": "onFileChange" ```
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

TUUG

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值