AUCTeX falha ao colocar arquivos auxiliares em um determinado diretório

AUCTeX falha ao colocar arquivos auxiliares em um determinado diretório

Estou usando Emacs + Auctexpara editar e compilar o arquivo .tex no xelatexmomento. Quero colocar esses arquivos auxiliares (criados durante a compilação) em outro diretório, por exemplo/tmp. Então eu tenho o seguinte código no meu init.el. Mas não funciona - os arquivos auxiliares ainda estão no diretório raiz. O que há de errado com meu código e alguém pode me ajudar com isso?

(add-to-list 'TeX-command-list '("XeLaTeX" "%`xelatex%(mode)%' %t" TeX-run-TeX nil  t))
(setq TeX-command-default "XeLaTeX -aux-directory=./tmp")

Responder1

Adicionar XeLaTeX explicitamente TeX-command-listpode fazer as coisas funcionarem (não tentei), mas certamente não é muito "AUCTeXy", por assim dizer.

AUCTeX tenta adivinhar o mecanismo correto a ser usado (digamos, se você carregá-lo, fontspecele perguntará sobre isso) e permite configurá-lo facilmente para o arquivo atual, com variáveis ​​locais.

Quanto ao seu uso de TeX-command-default, pelo que entendi, não é isso que se espera aí.

Eu sugiro que você use variáveis ​​locais para definir isso, em vez de mexer no seu arquivo init. E deixe o AUCTeX fazer o trabalho duro, pois faz bem.

Você pode adicionar variáveis ​​locais ao seu arquivo com M-x add-file-local-variable. Você pode adicionar dois: TeX-enginee TeX-command-extra-options. (Você será perguntado se essas opções devem ser executadas ao abrir o arquivo; você pode optar por salvar a opção). Você deve terminar com algo como o seguinte na parte inferior do seu arquivo:

% Local Variables:
% TeX-engine: xetex
% TeX-command-extra-options: "-aux-directory=./tmp"
% End:

(assumindo "-aux-directory=./tmp"que funciona. Não posso testar aqui, acredito que esta é uma opção exclusiva do MikTeX. Mas funciona com "-output-directory=./tmp".)

Com isso implementado, crie seu documento LaTeX(e tudo o mais que for necessário).

informação relacionada