Home Manjaro Latex
Post
Cancel

Manjaro Latex

准备开始写数学笔记,先记录下软件的安装。

使用 Neovim 和 vimtex 高效撰写 LaTeX 学术论文

LaTeX 以及 TeX Live 发行版

LaTeX 是一个专业的排版引擎,其中包含有众多的宏包(撰写 LaTeX 文档时使用的依赖库)与编译器(比如输出 PDF 的 pdflatex、能够处理 UTF-8 与东亚字符的 xelatex、支持增量编译的 latexmk 等)。在参考本文前,我们需要在本机上安装 TeX Live 发行版才能完整拥有 LaTeX 环境,并用来编译、撰写 LaTeX 文档。我们将主要使用 latexmk 来编译 LaTeX 文档,latexmk 能够按需调用其他编译引擎,来根据文档内容(比如文档是否包含中文、文档中是否需要编译参考文档等)动态调整编译指令和编译内容。

撰写、预览 LaTeX 文档时,编辑器背后究竟在干什么?

很多集成度很高的编辑器(比如 TeXstudio)将编译 LaTeX 文档的整个过程隐藏在复杂的界面背后,实际上不易于我们理解 LaTeX 的完整编译闭环。因此,当我们在使用 Neovim 或者其他编辑器来撰写 LaTeX 文档时,我们实际上是做这样的一件事情:

  • 我们使用纯文本编辑器(Neovim)编辑 .tex 文件的文本内容,也就是 LaTeX 文档本身;
  • 在后台运行的 latexmk 发现我们的 .tex 文件内容发生了变化,于是开始编译新增内容:
    • latexmk 会根据我们的 .tex 文件具体更改内容动态的调整编译命令和编译次数;
    • 比如新增了参考文献的引用,则需要使用 biber 编译,或是增加了新的图表以及相应的引用,则需要两次至四次的调用 pdflatex 编译文档……
  • 编译后会生成相应的 .pdf 文件来给我们预览,我们使用合适的 PDF 阅读器打开即可;
  • 最后,同步编辑器和 PDF 阅读器的显示位置的任务,通常会使用 SyncTeX 来完成。

TeX Live

Manjaro 安装各种软件都很方便,TeX Live 也不例外。

1
2
3
4
5
# 全家桶安装(3G 左右)
$ sudo pacman -S texlive-most
$ sudo pacman -S texlive-lang
# 或最小安装
$ sudo pacman -S texlive-core texlive-langchinese texlive-latexextra

编辑器

习惯用 vim 的,安装插件 lervag/vimtex,简单配置即可:

1
2
3
4
5
6
7
let g:tex_flavor='latex' 
let g:vimtex_compiler_latexmk_engines={'_':'-xelatex'}
let g:vimtex_compiler_latexrun_engines={'_':'xelatex'}
let g:vimtex_view_method='zathura'
let g:vimtex_quickfix_mode=0
set conceallevel=1
let g:tex_conceal='abdmg'
  • \ll:使用默认编译器(latexmk)开始监听 .tex 文件的变化,编译 LaTeX 项目并打开 PDF 预览界面;
  • \lk 或第二次 \ll:停止编译器监听文件变动,停止编译;
  • \lv:正向从光标位置同步 PDF 显示区域;
  • \lc:清理编译生成的中间文件;

不用 vim 可以选 vscode、texstudio。

预览

Manjaro 默认使用 ePDFViewer 查看 pdf 文件,但可以安装其它 pdf 浏览器,譬如:zathura

1
2
3
4
5
$ sudo pacman -S zathura
# EPUB, PDF and XPS support based on MuPDF
$ sudo pacman -S zathura-pdf-mupdf
# ~/.config/zathura/zathurarc
set synctex true
This post is licensed under CC BY 4.0 by the author.

树莓派摄像头

xargs