Скомпилировать файл xelatex tex с latexmk

как можно скомпилировать 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 (как предложено этот пост):

% !TEX TS-program = xelatexmk

и я пробовал другие (например, program=xelatex), но безрезультатно.

latexmk описывает свои команды следующим образом:

$ 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 ответов


Это мой быстро исправить, так что latexmk работает с XeLaTeX:
Добавить

`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.


latexmk -v
Latexmk, John Collins, 16 January 2010. Version 4.13a

Я поставил

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

в моем .файл latexmkrc. Это обходной путь, конечно. Но это работает для меня, когда я называю

latexmk -pvc -pdf MyXetexFile

$ latexmk -v
Latexmk, John Collins, 27 July 2010. Version 4.18

Я бегу с командой:

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

что в основном совпадает с ответами от andre-r и Kay, но только из командной строки.


latexmk --xelatex job.tex В этой простой форме аргументация вполне сносна.