代码之家  ›  专栏  ›  技术社区  ›  Brian M. Hunt

用latexmk编译XeLaTeX-tex文件

  •  20
  • Brian M. Hunt  · 技术社区  · 16 年前

    XeLaTeX tex文档使用 latexmk 在Mac OS X上?

    目前我正在跑步 latexmk job.tex 并得到一个错误:

    ! 
     ********************************************
     * XeTeX is required to compile this document.
     * Sorry!
     ********************************************.
    \RequireXeTeX ...********************************}
                                                      \endgroup \fi 
    l.18 \RequireXeTeX
    
    ? ^D
    ! Emergency stop.
    \RequireXeTeX ...********************************}
                                                      \endgroup \fi 
    l.18 \RequireXeTeX
    

    我的tex文件的第一行是 this post ):

    % !TEX TS-program = xelatexmk
    

    我也尝试过其他方法(例如program=xelatex),但都没有用。

    晚点 其命令描述如下:

    $ latexmk -commands xelatex job
    Commands used by latexmk:
       To run latex, I use "latex %O %S"
       To run pdflatex, I use "pdflatex %O %S"
       ...
    

    从命令行中选择tex程序似乎没有任何逻辑机制,从源代码中也不清楚如何做到这一点。

    rubber ,但似乎也不管用。

    我很感激你能提供的任何见解。

    布瑞恩

    4 回复  |  直到 16 年前
        1
  •  10
  •   andre-r    15 年前

    那是我的 快速修复 ,所以 latexmk 与Xeletex配合使用:
    添加

    `elsif (/^-xelatex$/) { $pdf_mode = 1; $pdflatex = 'xelatex %O %S'; $pdf_previewer =
    'start evince %O %S';}`
    

    `elsif (/^-pdf$/) { $pdf_mode = 1; }`
    

    .

    然后你可以打电话 latexmk -xelatex file.tex lualatex .

        2
  •  18
  •   Kay Smarczewski    15 年前
    latexmk -v
    Latexmk, John Collins, 16 January 2010. Version 4.13a
    

    我把

    $pdflatex = 'xelatex --shell-escape %O %S';
    

    latexmk -pvc -pdf MyXetexFile
    
        3
  •  9
  •   RolKau    14 年前
    $ latexmk -v
    Latexmk, John Collins, 27 July 2010. Version 4.18
    

    我用命令运行:

    latexmk -pdf -e '$pdflatex=q/xelatex %O %S/' foo.tex
    

    这与andre-r和Kay给出的答案基本相同,但只是来自命令行。

        4
  •  5
  •   בנימן הגלילי    8 年前

    latexmk --xelatex job.tex 现在这个论点以这种简单的形式是可以接受的。

        5
  •  5
  •   user650654    6 年前

    在版本:4.65(2019年6月18日)中,使用 -xelatex 选项和设置 -pdflatex

    选项1:-Xeletex

    $ latexmk -xelatex file.tex
    

    选项,或 -pdfxe 选项时,tex文件首先被排版为 xdv ( extended DVI xdvipdfmx 调用以转换 xdv公司 文件到 pdf 文件。

    latexmk , $xelatex_default_switches -no-pdf (第395行)有 xelatex 产生 xdv公司 而不是默认的PDF文件。

    因此 选项相当于:

    $ xelatex -no-pdf file.tex  # called one or more times to produce file.xdv
    $ xdvipdfmx file.xdv        # called only once in the end
    

    pdflatex -pdf

    # %O is a substitution for options and %S is for source file
    $ latexmk -pdflatex='xelatex %O %S' -pdf file.tex
    

    在这种方法中, 希拉泰克斯 用于直接生成PDF文件,而不生成中间输出文件。注意,今天, 首先生成一个 xdv公司 生成PDF文件。

    因此,这种方法相当于:

    $ xelatex file.tex     # called one or more times to produce file.pdf
    

    2019.08.31更新自 user36296 的评论。

    推荐文章