[工具] LaTeX-(1)环境配置

LaTeX 环境配置

LaTeX 的发行版软件众多,一般使用texlive/mactex+合适的编辑器即可。

进入清华大学镜像源,根据需要下载最新版本的镜像文件。

Windows/Linux 推荐使用 texlive,Mac 则推荐使用 mactex。虽然 texlive 也可以在 Mac 下用 Unix 的方式安装(这是因为 mactex 是一个基于 texlive 之上的封装),但是 mactex 采用 Mac 专用的方式打包,安装简便且不劳心配置,所以下面就只记录 texlive 的安装过程。

texlive 的安装

Windows 安装

  • 加载镜像文件。
  • 点击install-tl-advanced.bat文件,进行安装。(可以选择安装的内容,修改需要安装的包)
    • 去掉多余的语言包,只保留 Chinese 和 English 即可。
    • 去掉 Texworks editor 自带编辑器。
  • 相关命令:
    • tex -v, latex -v, xelatex -v
    • 更新:tlmgr update --all

Linux 安装

  • sudo apt install perl-tk:使用图形化安装界面,需要安装 perl-tk 组件。
  • sudo mount -o loop texlive2021.iso /mnt
  • cd /mnt && sudo ./install-tl -gui
  • 同 Windows 安装,去除多余语言包和自带编辑器后,点击安装即可。
  • cd / && sudo umount /mnt

配置环境变量

安装完成后,需要配置如下的环境变量,vim ~/.zshrc

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

配置字体

texlive 虽然可以直接使用系统字体,然而 texlive 自带的字体并不在系统的字体目录里面。为了让系统可以使用 texlive 所带的字体,需要进行如下配置:

  • sudo cp /usr/local/texlive/2021/texmf-var/fonts/conf/texlive-fontconfig.conf /etc/fonts/conf.d/09-texlive.conf
  • sudo fc-cache -fv

配置更新源

配置合适的 CTAN 源可以加快宏包更新的网速,以清华的源为例:

  • tlmgr option repository https://mirrors.tuna.tsinghua.edu.cn/CTAN/systems/texlive/tlnet,默认是https://mirrors.dgut.edu.cn/CTAN/systems/texlive/tlnet
  • tlmgr update --list:查看更新列表。
  • tlmgr update --self --all:更新软件包。

vscode 及 LaTeX Workshop 插件的安装

vscode 是一款很优秀的编辑器,适合各种开发及编辑工作。LaTeX Workshop 则是适用于在 vscode 上编辑 LaTeX 的很好用的插件,下面主要是它的配置介绍。

编译方式(tool)

LaTeX 有很多编译方式, 比如latexxelatexpdflatexlatexmk等等。这里推荐使 xelatex, 它使用的是 utf-8 编码方式,支持中文,但是 LaTeX Workshop 默认的编译方式是 latexmk,可以通过修改 LaTeX Workshop 的 tool 设置来自定义编译方式,如下:

"latex-workshop.latex.tools": [
    {
        "name": "xelatex",
        "command": "xelatex",
        "args": [
            "-synctex=1",
            "-interaction=nonstopmode",
            "-file-line-error",
            "-pdf",
            "%DOCFILE%"
        ]
    },
    {
        "name": "pdflatex",
        "command": "pdflatex",
        "args": [
            "-synctex=1",
            "-interaction=nonstopmode",
            "-file-line-error",
            "%DOCFILE%"
        ]
    },
    {
        "name": "bibtex",
        "command": "bibtex",
        "args": [
            "%DOCFILE%"
        ]
    }
]

将 tools 中的%DOC%替换成%DOCFILE%就可以支持中文路径下的文件。

编译组合(recipe)

如果我们要对一个文档/项目完整的编译(比如pdflatex->bibtex->pdflatex->pdflatex)我们需要用到编译组合(recipes)。LaTeX Workshop 默认添加了两个recipes,分别是latexmkpdflatex -> bibtex -> pdflatex*2,初此之外,也可以在设置的recipe选项中修改组合方式,如下:

"latex-workshop.latex.recipes": [
    {
        "name": "xelatex",
        "tools": [
            "xelatex"
        ]
    },
    {
        "name": "xelatex ➞ bibtex ➞ xelatex × 2",
        "tools": [
            "xelatex",
            "bibtex",
            "xelatex",
            "xelatex"
        ]
    },
    {
        "name": "pdflatex ➞ bibtex ➞ pdflatex × 2",
        "tools": [
            "pdflatex",
            "bibtex",
            "pdflatex",
            "pdflatex"
        ]
    }
]

常见问题

1. 格式化问题

在 vscode 中使用 LaTeX Workshop 插件的时候发现格式化文档的时候会报错说格式化失败,这是因为该插件依赖一个叫做 latexindent 的可执行程序(位于/usr/local/texlive/2021/bin/x86_64-linux/latexindent),如果没有安装可以使用命令安装:sudo tlmgr install latexindent

安装完成后可以创建一个 tex 文档来测试 latexindent 是否可用:latexindent test.tex,如果该命令能够正确输出格式化后的文档则表示该程序已经安装正确且能工作;如果不能正常工作则需要安装如下依赖包:sudo cpan -i Log::Log4perl Log::Dispatch::File YAML::Tiny File::HomeDir Unicode::GCString

posted @ 2021-08-04 21:17  香蕉不是芒果  阅读(859)  评论(0)    收藏  举报