LaTeX技巧912:使用latexmk自动编译LaTeX

说明,本文所述内容基于Mac OS X+TeXLive 2016。在Windows和Linux平台下可以实现同样的功能,但需要修改部分命令,请自行搜索。
latexmk 是LaTeX自动编译工具。 与make等通用工具相比,latexmk更灵活、更有针对性。使用latexmk,可以实现LaTeX文档自动编译,指定输出目录等功能。 latexmk的参数可以在命令行指定,也可以在配置文件中指定。个人推荐使用配置文件,这样可以避免命令过长,也方便与其他工具集成。配置文件可以放置在4个位置:
  1. 系统目录,如 /usr/local/lib/latexmk/LatexMk ,视系统设置而定。
  2. 个人根目录, $HOME/.latexmkrc
  3. 当前LaTeX主文件所在目录, .latexmkrclatexmkrc 均可。
  4. 任何其他位置,执行 latexmk 时由 -r 参数指定。
执行 latexmk 时,会依次在上述位置查询配置文件。建议使用第3种,即在当前LaTeX主文件所在目录放置一个 latexmkrc 文件。 latexmkrc 文件示例:
$pdf_mode = 1;
$pdflatex = "xelatex -file-line-error --shell-escape -src-specials -synctex=1 -interaction=nonstopmode %O %S;cp %D %R.pdf";
$recorder = 1;
#$pdf_previewer = "SumatraPDF -reuse-instance -inverse-search -a %O %S";
$pdf_previewer = "open -a %S";
#连续编译模式
$preview_continuous_mode = 1;
$pdf_update_method = 0;
$clean_ext = "synctex.gz acn acr alg aux bbl bcf blg brf fdb_latexmk glg glo gls idx ilg ind ist lof log lot out run.xml toc dvi";
$bibtex_use = 2;
$out_dir = "temp";
#指定生成PDF文件的文件名,可以与LaTeX主文件名不一致
#$jobname = "Book";
使用上述设置,编译:
latexmk main.tex
latexmk 会根据情况,自动执行多次编译。编译完成后不退出,处于等待状态,监视源文件。一旦有更新,会实时编译,并刷新PDF阅读器(要求阅读器支持,如skim)。编译生成的文件都会输出到$out_dir指定的目录。但是,将最终的PDF文件复制到当前目录(代码第2行最后的命令)。 使用
latexmk -c
可以清空临时文件。临时文件对应的扩展名由 $clean_ext 指定。 VIM用户可以配合 vimtex 一起使用。
参考链接: 选自:http://www.ai7.org/blog/posts/latexmk.html
分享到:
未经允许不得转载:LaTeX技巧912:使用latexmk自动编译LaTeX
已有 条意见

    最新文章

    加载中...
      本站提供专业LaTeX排版、咨询、定制服务,请点击下图咨询详情


      全国首个精品的LaTeX视频教程,大牛带着你入门,让LaTeX学习不再纠结,请点击下图咨询详情

      热门评论

        联系我们

        交流QQ群:91940767
        本站QQ号:343083553
        邮箱联系latexstudio@qq.com
        淘宝店铺latexstudio.taobao.com 提供排版,模板定制,培训,图片处理,视频教程等LaTeX服务。

        关注微信公众号: latex2015

        如果您投稿或者希望加入我们团队,请发送您的简历到latexstudio@qq.com。

        科技艺术的完美融合,专业精致的排版体验

        联系我们联系我们