mobile wallpaper 1mobile wallpaper 2mobile wallpaper 3mobile wallpaper 4mobile wallpaper 5mobile wallpaper 6
2279 字
6 分钟
LaTeX 使用教程
2026-03-19

LaTex 发行版部署 (Windows)#

下载 texlive 并装载。装载 ISO 完成后,执行批处理文件安装。

image.png


考虑到一些人可能对 ISO 文件没有概念,这里详细说一下具体的操作流程。如果你能顺利的完成上一步骤,分割线内的操作可以略过。

点击上面的下载地址,选择下载最新的(你看到的时候不一定是 2024 了)texlive$year.iso 文件即可。

image.png

找到下载的文件,鼠标右键,找到 装载 选项,点击它,完成后你会发现有一个新的 DVD 驱动器装载到了你的电脑(如下图)。ISO 文件是一种光盘镜像文件,常用于存储光盘的内容,如 CD 或 DVD 的数据,这里你可以理解为 texlive 的安装包通过一个虚拟的 U 盘插在了你的电脑上,现在你只需要进去找到安装文件执行就 OK 了。

image.png

右键这个驱动器,打开它,你就可以成功找到 文章开头 提到的批处理安装文件

或者你直接双击上方图片的这个驱动器也行,会自动弹出安装界面的,all right?


酌情修改安装位置。

image.png

注意,他的修改很有意思,子路径是分割开的进行设置的,所以一般只需要修改盘符即可。

image.png

点击 Advanced 进入高级设置菜单,这里还可以设置一些东西。

image.png

首先是语言。通常情况下中文 + 英文即可。在 Customize 菜单中,勾选 “Chinese”、“C hinese/Japanese/Korean (base)”,再往下拉,勾选 “US and UK English”,然后点击 “确定”。

准备就绪后,点击右下角“安装”。

image.png

安装过程涉及大量 4K 小文件读写,硬盘拉跨可能会很慢,请耐心等待。

LaTex 发行版部署 (Linux)#

安装来源同 Windows 一致,仍然需下载 texlive ISO。

TIP

如果使用 WSL 进行部署,无需迁移复制,直接跨文件系统读取即可。

挂载镜像#

sudo mkdir /mnt/texlive
sudo mount /mnt/d/Downloads/texlive2026.iso /mnt/texlive

启动安装程序#

cd /mnt/texlive
sudo ./install-tl

安装配置#

WARNING

本节为可选内容,你可以在启动安装程序后直接输入 I 进行安装。

启动安装程序后,可以在终端看到如下内容: image.png|300*400

输入 C 进行安装组件配置:

===============================================================================
Select collections:
a [X] Essential programs and files w [X] Italian
b [X] BibTeX additional styles x [X] Japanese
c [X] TeX auxiliary programs y [X] Korean
d [X] ConTeXt and packages z [X] Other languages
e [X] Additional fonts A [X] Polish
f [X] Recommended fonts B [X] Portuguese
g [X] Graphics and font utilities C [X] Spanish
h [X] Additional formats D [X] LaTeX fundamental packages
i [X] Games typesetting E [X] LaTeX additional packages
j [X] Humanities packages F [X] LaTeX recommended packages
k [X] Arabic G [X] LuaTeX packages
l [X] Chinese H [X] MetaPost and Metafont packages
m [X] Chinese/Japanese/Korean (base) I [X] Music packages
n [X] Cyrillic J [X] Graphics, pictures, diagrams
o [X] Czech/Slovak K [X] Plain (La)TeX packages
p [X] US and UK English L [X] PSTricks
s [X] Other European languages M [X] Publisher styles, theses, etc.
t [X] French N [ ] Windows-only support programs
u [X] German O [X] XeTeX and packages
v [X] Greek
P [X] Mathematics, natural sciences, computer science packages
S [X] TeXworks editor; TL includes only the Windows binary
Actions: (disk space required: 9388 MB)
<-> deselect all
<+> select all
<R> return to main menu
<Q> quit
Enter letter(s) to (de)select collection(s):

每个配置项通过字母进行控制,输入对应的字母并回车即可进行选中/取消选中。该过程可以反复操作,因此不必力求一次性输入所有字母。这里给出一个较为保守的取消配置方案:

knostuvxyzABC # 语言类 (保留了中/英)
iI # 游戏和音乐排版,极其小众的需求
S # 编辑器, 由于使用vscode, 因此不需要
TIP

完整安装其实也就 9G,上面一顿操作也就省 1G 左右空间,代价则是编译某个模板报错或者某个 Journal 模板炸了。 但是,即使有些宏包在上面精简了,后期仍然可以使用 tlmgr 工具来单独安装。因此不用太担心。

确认配置完成后,输入 R 并回车,返回上一级菜单。

开始安装#

输入 I 并回车,开始安装。由于安装过程涉及大量小文件读写,因此安装时间取决于机器的硬件性能,耐心等待即可。

安装完成后,配置环境变量:

export PATH="/usr/local/texlive/2026/bin/x86_64-linux:$PATH"
export MANPATH="/usr/local/texlive/2026/texmf-dist/doc/man:$MANPATH"
export INFOPATH="/usr/local/texlive/2026/texmf-dist/doc/info:$INFOPATH"

然后注册 texlive 字体:

sudo cp /usr/local/texlive/2026/texmf-var/fonts/conf/texlive-fontconfig.conf /etc/fonts/conf.d/09-texlive.conf
sudo fc-cache -fsv

此外,Linux 上需要额外下载 ghostscript,否则 eps 转 pdf 时会失败:

sudo apt update
sudo apt install ghostscript

上述步骤做完后,即可卸载 texlive 镜像:

sudo umount /mnt/texlive

vscode 配置#

首先声明,在 texlive 安装完成后,默认会自带一个编辑器 TeXworks editor,是可以正常使用的。但谁能拒绝宇宙第一开源编辑器 vscode 呢🤣。

只需要安装插件 LaTex Workshop 即可让 vscode 支持 LaTeX 编辑。此外,还需要添加如下配置文件。

注意,该配置仅需工作区生效即可。

如果不清楚 vscode 的分区管理,那就在项目根目录下新建一个 .vscode/settings.json,然后将下面配置复制粘贴进去即可。

{
//输出文件的保存目录(会自动在当前路径下创建build文件夹)
"latex-workshop.latex.outDir": "%DIR%/build",
//光标在公式上时会自动悬浮渲染
"latex-workshop.mathpreviewpanel.cursor.enabled": true,
//使用默认的(第一个)编译链自动构建 LaTeX 项目
"latex-workshop.latex.autoBuild.run": "onSave",
"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",
"--output-directory=%OUTDIR%",
"%DOCFILE%" //%DOC%
]
},
{
"name": "pdflatex",
"command": "pdflatex",
"args": [
"-synctex=1",
"-interaction=nonstopmode",
"-file-line-error",
"--output-directory=%OUTDIR%",
"%DOCFILE%"
]
},
{
"name": "latexmk",
"command": "latexmk",
"args": [
"-synctex=1",
"-interaction=nonstopmode",
"-file-line-error",
"-pdf",
"-outdir=%OUTDIR%",
"%DOCFILE%"
]
},
{
"name": "bibtex",
"command": "bibtex",
"args": [
"build/%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": "pdflatex -> bibtex -> pdflatex*2",
//反向同步快捷键绑定
"latex-workshop.view.pdf.internal.synctex.keybinding": "double-click",
"[latex]": {
"editor.wordWrap": "on", //自动换行
"editor.wordWrapColumn": 80
},
}

理论上说,安装过程中会自动配置环境变量,从而让 xelatex 等命令全局生效。但如果编译时一直检测不到,可以换成绝对路径引用,或者尝试重启电脑

看不懂上面的内容就看这里。你要做的是三件事:

  1. 下载安装 vscode
  2. 下载一个叫做 LaTex Workshop 的插件,图标是一个钢笔一样的东西
  3. 在 vscode 中打开你的 LaTeX 模板文件夹
  4. 在这个文件夹的根目录下,新建一个文件夹 .vscode,然后在 .vscode 文件夹里再新建一个 settings.json 文件
  5. 把上面的配置文件内容复制粘贴到 settings.json,保存
  6. 你的 vscode 右侧会多出一个 LaTeX 的操作面板,点进去试吧
  7. 还有任何不会用的就百度去,只要你投的不是什么十分野鸡的期刊,网上很容易就能找到 LaTeX 模板的使用方法

LaTex Workshop 占位符说明#

参考 https://github.com/James-Yu/LaTeX-Workshop/wiki/Compile#placeholders

首先在配置项 outDir 中指定全局输出路径,这里 %DIR 指工作区根路径:

"latex-workshop.latex.outDir": "%DIR%/build",

注意编译前请提前创建好对应路径 build/

然后,在各编译器中,即可使用占位符 %OUTDIR% 表示输出路径。

参考官方文档:“%OUTDIR% is the output directory configured in latex-workshop.latex.outDir

xelatex 编译器为例,可以看见其输出参数为 -output-directory

xelatex -help
-output-directory=DIR use existing DIR as the directory to write files in

因此配置编译工具 latex-workshop.latex.tools

// 使用占位符 %OUTDIR%
{
"name": "xelatex",
"command": "xelatex",
"args": [
"-synctex=1",
"-interaction=nonstopmode",
"-file-line-error",
"--output-directory=%OUTDIR%",
"%DOCFILE%"
]
}

类似的,为 latexmk 添加参数:

{
"name": "latexmk",
"command": "latexmk",
"args": [
"-synctex=1",
"-interaction=nonstopmode",
"-file-line-error",
"-pdf",
"-outdir=%OUTDIR%",
"%DOCFILE%"
]
}

但注意,bibtex 没有该参数,直接通过 bibtex xxx 进行编译,因此修改为:

{
"name": "bibtex",
"command": "bibtex",
"args": [
"build/%DOCFILE%"
]
}

注意这里 bibtex 的配置,需指定参数为 build/ 而不是用占位符 %OUTDIR% 代替,这是由于 LaTeX 的安全考虑,可参考如下链接:

中文支持#

参考 overleaf latex Chinese

推荐使用 XeLaTeX 和 LuaLaTeX 来编译含有中文字符的 .tex 文件:

  1. 直接使用 ctexart 文档类即可支持中文
  2. 或者使用 ctex 包来支持中文
\documentclass{ctexart}
\begin{document}
\tableofcontents
\begin{abstract}
这是简介及摘要。
\end{abstract}
\section{前言}
\section{关于数学部分}
数学、中英文皆可以混排。You can intersperse math, Chinese and English (Latin script) without adding extra environments.
這是繁體中文。
\end{document}

或者

\documentclass{xxx}
\usepackage{ctex}

latexdiff#

TIP

本节内容需要你在撰写文档时,使用 Git 进行了版本控制。

换言之,如果你对工程项目的管理使用的是复制粘贴大法,恕我爱莫能助。

1. 确认环境#

在命令行(cmd 或 PowerShell)里输入:

latexdiff --version

如果能看到版本号,说明 TeXLive 已经带有 latexdiff

如果报错,就需要安装(TeXLive 通常自带)。

2. 使用 git 导出不同 commit 的文件版本#

假设论文主文件叫 paper.tex,你有两个 commit:

  • 老版本:OLD_COMMIT
  • 新版本:NEW_COMMIT

可以这样导出:

git show OLD_COMMIT:paper.tex > old.tex
git show NEW_COMMIT:paper.tex > new.tex

这样你就得到了 old.texnew.tex 两个版本。通常情况下,new.tex 就是当前修改完成的版本,因此只需要根据 commit 记录导出修订前的版本即可。

3. 用 latexdiff 生成标记文档#

latexdiff 本质是“文本级 diff”,它不理解 LaTeX 结构,所以 99% 的情况下,生成的标记文档是无法编译成功了。请耐心排查问题,虽然这很麻烦,但相比于你手动修订还是快很多的。

当然,你也可以选择 WORD 投稿 🤝

如果你能理解 latexdiff 的风险,那么可执行以下指令:

latexdiff --math-markup=1 \
--disable-citation-markup \
--config="PICTUREENV=(?:figure|table|table*|tabular|tabular*)" \
--exclude-textcmd="section,subsection,subsubsection,caption" \
old.tex new.tex > diff.tex

上述命令相比于默认的 latexdiff 操作,做了如下几件事情:

  1. 保留默认对数学环境的标记。
  2. 禁止对引用命令的内容做差异标记:即使两个版本中 \cite{A} 变成了 \cite{B},也不会显示为“删除 A、新增 B”,而是整体视为未变或原样保留。
  3. 扩展 latexdiff 认为“不应拆分内部内容”的浮动体/表格环境列表:对声明的环境视为一个不可分割的单元,不在内部插入 \DIFadd 或者 `\DIFdel
  4. 指定部分命令的参数不参与字词级差异分析,而是作为整体处理:包括各级标题、图表名。

需注意,上述指令关闭了一些内容的对比生成,但不代表你应该忽视。对于一些重要的改变,你应当手动注明修改:添加 DIFadd/DIFdel 标记等。此外,如存在大量复杂公式,则 --math-markup=1 仍可能导致编译失败,可尝试置其为 0 以避免数学公式的嵌套标记生成。

如果碰上字符集报错,例如:

latexdiff .\origin.tex .\sn-article.pdf > major_diff.tex
utf8 "\xD0" does not map to Unicode at f:\texlive\2024\texmf-dist\scripts\latexdiff\latexdiff.pl line 1826, <FILE> chunk 1.
Either both texts must have preamble or neither text must have the preamble.

可通过手动指定字符集解决:

latexdiff --encoding=utf8 .\origin.tex .\sn-article.tex > major_diff.tex

然后编译生成的对比文档即可获得带修订版本的稿件。

参考#

分享

如果这篇文章对你有帮助,欢迎分享给更多人!

LaTeX 使用教程
https://blog.085404.xyz/posts/latex-使用教程/
作者
sun2ot
发布于
2026-03-19
许可协议
CC BY-NC-SA 4.0

部分信息可能已经过时

封面
Sample Song
Sample Artist
封面
Sample Song
Sample Artist
0:00 / 0:00