为什么选择本地LaTeX环境?

性能对比

对比项 Overleaf云端 VSCode本地环境
平均编译耗时 120s 18s(↓85%)
功能扩展性 5个基础功能 20+专业插件支持

核心优势

  • 🚩 编译加速:本地多核CPU并行编译
  • 🛠️ 深度定制:支持LaTeX Workshop等20+插件
  • 🔐 版本控制:可用Git全流程追踪 + 差异对比
  • 📈 离线可用:无需依赖网络环境

TeX Live 安装

多平台安装方案

对于需要长期进行学术写作的用户,本地LaTeX环境具有显著优势。以下场景特别推荐:

  • 处理超过100页的大型文档(如学位论文)
  • 需要自定义编译流程和模板
  • 涉及敏感数据的科研论文写作
  • 追求极致编译性能

进入Tex Live官网Windows用户可以下载安装包,安装过程较为简单。windows可以在线下载或者iso镜像下载,速度比较快清华镜像中科大镜像

我这里介绍Linux系统的安装过程。 20250227172923

Linux环境安装Tex Live

20230831155431 安装命令解释:

# 下载最新安装脚本
wget https://mirror.ctan.org/systems/texlive/tlnet/install-tl-unx.tar.gz # 或者用curl代替wget

# 解压并进入目录
tar -xzf install-tl-unx.tar.gz
cd install-tl-*  #*是你的文件夹名称后的一串数字

# 启动安装程序(推荐使用智能方案)
sudo perl ./install-tl --no-interaction #原方案
sudo ./install-tl --profile=texlive.profile #新方案

# 设置环境变量
echo 'PATH=/usr/local/texlive/YYYY/bin/x86_64-linux:$PATH' >> ~/.bashrc
source ~/.bashrc

安装验证与组件管理

# 验证基础组件
tex --version
latex --version
xelatex --version

执行成功之后的界面: 20230831165142

VSCode环境配置

编辑器安装

  1. 下载VSCode(支持Windows/macOS/Linux)
  2. 选择对应系统版本安装
  3. 首次启动后建议安装中文语言包

必备插件矩阵

插件名称 功能描述 安装量
LaTeX Workshop 核心编译/预览功能 500万+
Code Spell Checker 英语拼写检查 300万+
GitLens 版本控制增强 2000万+

{% note danger modern %} 核心插件警告
LaTeX Workshop 是 LaTeX 写作的必备插件,必须正确配置以下引擎支持:

  • ✅ XeLaTeX(推荐中文用户)
  • ✅ PDFLaTeX(基础编译) {% endnote %}

编译链配置优化

20250227174959 进入VSCode的设置,在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": "XeLaTeX*2",
            "tools": [
                "xelatex",
                "xelatex"
            ]
        },
        {
            "name": "PDFLaTeX",
            "tools": [
                "pdflatex"
            ]
        },
        {
            "name": "PDFLaTeX*2",
            "tools": [
                "pdflatex",
                "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"
    ],
    //设置为onFaild 在构建失败后清除辅助文件
    "latex-workshop.latex.autoClean.run": "onFailed",
    // 使用上次的recipe编译组合
    "latex-workshop.latex.recipe.default": "lastUsed",
    // 用于反向同步的内部查看器的键绑定。ctrl/cmd +点击(默认)或双击
    "latex-workshop.view.pdf.internal.synctex.keybinding": "double-click",
    "latex-workshop.view.pdf.viewer": "tab",
}

环境验证与编译

核心功能测试

  1. 创建 demo.tex 文件测试:
\documentclass{article}
\title{Environment Validation}
\author{Test User}
\date{\today}

\begin{document}
\maketitle

\section{Basic Features}
Basic math: $a^2 + b^2 = c^2$

\section{Advanced Features}
Cross-reference test: See section \ref{sec:math}

\section{Math Environment}\label{sec:math}
\begin{equation}
  \sum_{n=1}^{\infty} \frac{1}{n^2} = \frac{\pi^2}{6}
\end{equation}
\end{document}
  1. 编译与预览(推荐插件面板操作):

    • 插件面板方案(可视化操作): a. 点击VSCode侧边栏的LaTeX Workshop图标 b. 在构建项目列表选择XeLaTeX c. 点击▶️按钮开始编译 d. 编译完成后点击👁️图标预览PDF

    • 快捷键方案(高效操作):Ctrl+Alt+B ➔ 选择XeLaTeX

    • 专家模式Ctrl+Shift+P ➔ 输入Build with recipe ➔ 选择LaTeXmk(适合复杂文档)

  2. 效果验证: 编译预览界面 成功标志:

  • ✅ 中文字体完整渲染
  • ✅ 数学公式正确解析
  • ✅ 交叉引用自动编号
  • ✅ PDF书签生成

常见编译问题

错误现象1:字体缺失警告

! Font "FandolSong-Regular" not found.

解决方案

sudo tlmgr install fandol  # 安装缺失字体包

错误现象2:路径包含中文

! I can't find file `Document/测试/paper.tex'.

解决方案

  • 将项目路径改为全英文
  • 更新TeX至2023版:sudo tlmgr update --self --all

错误现象3:环境变量未生效

which xelatex  # 验证路径是否为/usr/local/texlive/2023/bin/x86_64-linux/xelatex

解决方案

echo $PATH | grep texlive  # 检查环境变量
source ~/.bashrc  # 重新加载配置

技术支援:遇到未列出的问题,可参考TeX Live官方排错指南第6章,或访问TeX.SE社区