Dies ist eine einfache Frage, hat aber keine so einfachen Antworten. Die temporären Dateien werden wiederholt bei der Erstellung von PDF-Ausgaben verwendet. Weder AUCTeX noch ORG wissen, wann es sicher ist, sie zu löschen. Daher werden sie dort zur manuellen Löschung belassen, nachdem festgestellt wurde, ob sie nicht mehr benötigt werden.
Hier sind einige Möglichkeiten, um den manuellen Löschvorgang zu beschleunigen. Ein einfacher Shell-Befehl erledigt die Aufgabe ohne großen Aufwand (fügen Sie nach Bedarf weitere Erweiterungen hinzu):
(defun clear-latex-temp-files () (shell-command "rm -rf *.tex *.prv preview.fmt"))
Verwenden Sie latexmk (anstelle von pdflatex) zum Generieren Ihres PDFs, damit Sie die -c
Option zum Löschen der temporären Dateien verwenden können:
latexmk -c
und fügen Sie dann die folgende Zeile in diese Datei ein ~\.latexmkrc
, um alle temporären Dateien abzudecken, nicht nur *.tex
und *.prv
:
@generated_exts = qw(aux idx ind lof lot out toc acn acr alg glg glo gls ist);
Sie können je nach Bedarf weitere temporäre Dateien (.synctex .gz .nav .vrb .snm .blg -blx .bib .bbl .run .xml) hinzufügen. Dies ist die am besten anpassbare Option.
Um diese Komplikation für einfache Organisationsdateien zu vermeiden, können Sie die integrierte -output-directory
Option von pdflatex verwenden.
pdflatex -output-directory=target <file>
Dadurch wird auch die PDF-Ausgabe dort im Zielverzeichnis abgelegt. Sie können die PDF-Datei dann von dort weg verschieben, sobald Sie zufrieden sind, dass sie ordnungsgemäß generiert wurde. Alle löschbaren Dateien befinden sich an einem Ort, der regelmäßig gelöscht werden kann.
Warum nicht ein Makro delete-file
nachher verwenden org-latex-compile
? Weil das manchmal die temporären Dateien vorzeitig löschen kann. Möglicherweise erhalten Sie fehlerhafte Links, nicht verknüpfte Biblioeinträge, nicht verknüpfte Kapitelüberschriften im Inhaltsverzeichnis und unvollendete Indizes, eine Liste der Tabellen und eine Liste der Abbildungen. In der Dokumentationszeichenfolge im Organisationsmodus finden Sie Folgendes C-h f org-latex-compile
:
Der Grund, warum dies eine Liste ist, ist, dass es normalerweise mehrere Durchläufe von 'pdflatex' dauert, möglicherweise gemischt mit einem Aufruf von 'bibtex'. Org verfügt nicht über einen cleveren Mechanismus, um zu erkennen, welche dieser Befehle ausgeführt werden müssen, um ein stabiles Ergebnis zu erzielen, und führt auch keine Fehlerprüfung durch.
(add-hook 'org-mode-hook (lambda ()(add-to-list 'org-latex-logfiles-extensions "tex")))