Скомпилируйте текстовый файл XeLaTeX с latexmk - PullRequest
21 голосов
/ 26 июня 2010

Как можно скомпилировать XeLaTeX текстовый документ, используя 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 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 ]

16 голосов
/ 13 июня 2011
latexmk -v
Latexmk, John Collins, 16 January 2010. Version 4.13a

Я положил

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

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

latexmk -pvc -pdf MyXetexFile
10 голосов
/ 29 июля 2010

Это мое быстрое исправление , поэтому 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.

9 голосов
/ 18 июля 2011
$ latexmk -v
Latexmk, John Collins, 27 July 2010. Version 4.18

Я запускаю с командой:

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

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

1 голос
/ 25 мая 2018

latexmk --xelatex job.tex Теперь аргумент можно пройти в этой простой форме.

...