Make for LaTeX --- latexmk 宏包

众所周知,在编译的时候,make 非常好用,LaTeX 源文件也是要编译,是不是也可以用 make 呢?答案当然是可以的,但是实际自己写一个 Makefile 并非那么简单,因为这很明显涉及到交叉引用的时候需要重复编译,具体什么时候需要重新编译可不是那么容易搞定。
还好,已经有人为我们做好可用的工具。latexmk 宏包可以方便的为我们做好这件事。latexmk 的使用非常简单,你并不需要在导言区使用 usepackage{packagename} 俩引入宏包,实际上这个宏包应该是一系列的 perl 脚本。我们使用它的时候,只要在源文件目录下,执行命令

latexmk -xelatex [file]

其中 -xelatex 选项表示使用 xelatex 来编译,中文处理一般都是用 ctex 宏包,并且用 xelatex 编译,latexmk 会自动确定正确编译得到正确结果所需要重复编译的次数,他会帮你搞定一切,只要耐心地等一下编译结果就好了。简单的帮助信息可以用命令
latexmk --help
来查看,详细的文档可以用命令
texdoc latexmk
来查看。

用这个东东跟直接编译比有啥优势?没看出有任何使用这玩意的必要~

需要重复编译得到正确的交叉引用结果的时候可以不用重复输入命令或者点哪个按钮啊,只要 latexmk 一下就好了。多文件的编译也可以类似于一般的编译那样只需要更新部分目标而不是全部重建一遍。

额,感觉还是在 texstudio 这类的编辑中按几下按钮来的简单一些~

额,感觉还是在 texstudio 这类的编辑中按几下按钮来的简单一些~
texstudio 或者 kile 都可以添加自定义的按钮吧,还是会很方便的。