![AUCTeX falha ao colocar arquivos auxiliares em um determinado diretório](https://rvso.com/image/391724/AUCTeX%20falha%20ao%20colocar%20arquivos%20auxiliares%20em%20um%20determinado%20diret%C3%B3rio.png)
Estou usando Emacs + Auctex
para editar e compilar o arquivo .tex no xelatex
momento. 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-list
pode 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, fontspec
ele 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-engine
e 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).