Allgemein,  Programmieren,  Studium

Temporäre LaTeX-Dateien nach dem Kompilieren automatisch löschen

LaTeX erstellt beim Kompilieren immer ein ganze Liste temporärer Dateien, die eigentlich nach der Fertigstellung des PDFs nicht mehr unbedingt benötigt werden und nur Chaos in die Ordnerstruktur bringen. Warum also nicht einfach automatisch nach dem Kompilieren löschen? In VSCode mit den LaTeX Workshop-Plugin ist das ganze über entsprechende Ergänzungen in der Settings.json ganz einfach möglich.

Die settings.json in VSCode folgendermaßen geöffnet werden:

Suchzeile öffnen (Tastenkombination cmd/ctrl + shift + P) > settings eingeben > Preferences: Open User Settings (JSON) auswählen

In der settings.json wird unter der "latex-workshop.latex.tools"-Struktur folgendes eingefügt:

{
    ...
    "latex-workshop.latex.tools": [
        ...
    ],
    "latex-workshop.latex.autoClean.run": "onBuilt",
    "latex-workshop.latex.clean.fileTypes": [
        "*.aux",
        "*.bbl",
        "*.blg",
        "*.fdb_latexmk",
        "*.fls",
        "*.log",
        "*.out",
        "*.synctex.gz",
        "*.toc"
    ],
    "latex-workshop.latex.recipes": [
        {
            "name": "latexmk with clean",
            "tools": ["latexmk", "clean-synctex"]
        }
    ],
}

Demnach wird onBuild, also beim Kompilieren der LaTeX-Datei, ein autoClean durchgeführt. Die zu entfernenden Dateitypen entspricht einer Liste aller temporären LaTeX-Dateien, sodass anschließend lediglich die Dateien .tex, .pdf, .cls sowie etwaige Unterordner und Dateien mit Bildendungen usw. übrig bleiben. Das neue recipe "latexmk with clean" führt zusätzlich zum autoClean noch einen Clean der synctex-Datei durch, da diese durch den autoClean nicht immer gelöscht wird, wenn diese noch von VSCode gebraucht wird. Andernfalls würde diese Datei trotz autoClean weiterhin bestehen bleiben.

24660cookie-checkTemporäre LaTeX-Dateien nach dem Kompilieren automatisch löschen

Leave a Reply

Your email address will not be published. Required fields are marked *