Domanda

I edit tex file in Emacs, and compile it by C-c C-c, then LaTeX command. Another way to compile it is to use latex file.tex in a terminal.

Now, I would like to compile a file with xelatex, xelatex file.tex works already in a terminal line. So I want to make C-c C-c in Emacs be able to launch either LaTeX or XeLaTeX. Ideally, XeLaTeX should be added to the list of possible commands.

Here is the current .emacs, could anyone help?

È stato utile?

Soluzione

Say

M-x customize-group

and

tex-command

Then find the "Tex Command List" option. From there you can introduce new AUCTeX commands.

However, AUCTeX is meant to be used a little differently. Instead of creating a separate XeLaTeX command, you can do

  • M-x TeX-engine-set followed by xetex or
  • (TeX-engine-set 'xetex) in lisp code or
  • Command | TeXing Options | Use XeTeX engine in the menu bar

(the three methods are equivalent).

After that the LaTeX command will run xelatex instead of latex.

Altri suggerimenti

A more local way to specify the TeX-engine is to append the following text to the very end of your .tex file. This will set TeX-engine to xetex for the current file only.

%%% Local Variables:
%%% TeX-engine: xetex
%%% End:

Edit in reply to comment

The same answer was given here: https://tex.stackexchange.com/a/450955/90321, but that answer also shows how to call Tex-engine with command line arguments, by adding another line to the local variables:

%%% TeX-command-extra-options: "-shell-escape" 
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top