Hallo Zusammen.

Ich benutze LaTeX zusammen mit TeXStudio.

Aktuell liegen bei mir alle Dateien für ein Dokument in einem Verzeichnis. Das führt dazu, daß zusammen mit den generierten Zusatz-Dateien das Verzeichnis unübersichtlich wird. Da ich von Haus aus als C/Cpp Programmierer da etwas verwöhnt bin würde ich das gerne ändern.

Ich möchte ein wenig Ordnung schaffen und möglichst alle beteiligten Dateien in verschiedenen Ordnern unterbringen bzw. erzeugen lassen. Zumindest soll das Ziel-Dokument in einem anderen Verzeichnis gegebenenfalls mit einem selbst definierten Namen erzeugt werden.

Da TeXStudio keine eigene Projekt-Datei benutzt, wo man so etwas spezifisch konfigurieren kann müßte man das wohl in der TeX-Datei unterbringen.

Gibt es LaTeX Befehle, mit denen man festlegen kann, wie die Ausgabe-Dateien heiße und wo sie erzeugt werden sollen?

Vielen Dank für die Hilfe

Mit freundlichen Grüßen, Eckard Klotz.

gefragt 17 Jan '20, 08:01

Eckard%20Klotz's gravatar image

Eckard Klotz
2713
Akzeptiert-Rate: 0%

bearbeitet 17 Jan '20, 10:55

saputello's gravatar image

saputello
11.1k154365

Man kann in TeXstudio sicher auch Nachbearbeitungsskripte festlegen. Ein solches Skript kann das erzeugte PDF dann irgendwo hin kopieren oder verschieben. Wobei es eigentlich immer einfach ist, das PDF zu finden, da es immer den Basisnamen der Hauptdatei hat. Und die ganzen Hilfsdateien am Ende (aber bitte erst dann) zu löschen ist auch kein Problem. Und dann gibt es natürlich noch Programme wie latexmk oder arara, die auch mit TeXstudio verwendet werden können.

(17 Jan '20, 08:14) saputello
1

Normalerweise macht es nur Probleme, wenn man die Dateien verschiebt. Die meisten erzeugten Dateien werden beim nächsten Schritt als Eingabedatei benötigt und das funktioniert viel besser, wenn sie dort sind, wo die diversen Tools (bibtex, makeindex, biber, pdflatex, etc) sie auch erwarten.

(17 Jan '20, 18:21) Ulrike Fischer

Verwende (unabhängig vom Editorprogramm) arara's move.yaml (hier für Arara version 4, siehe Kommentare unten):

!config
identifier: move
name: Move
authors:
- Paulo Cereda
commands:
- name: Moving feature
  command: >
    @{
        prefix = [];
        if (isUnix()) {
            prefix = [ 'mv', '-f' ];
        }
        else {
            prefix = [ 'cmd', '/c', 'move', '/y' ];
        }
        if (extensions == '') {
            if (getOriginalFile() == file) {
                throwError('I cannot move the main file reference.');
            }
            return getCommand(prefix, file, target);
        }
        else {
            base = getBasename(file);
            removals = [];
            foreach(extension : extensions) {
                if (base.concat('.').concat(extension) == getOriginalFile()) {
                    throwError('I cannot move the main file reference.');
                }
                removals.add(getCommand(prefix, base.concat('.').concat(extension), target));
            }
            return removals;
        }
    }
arguments:
- identifier: extensions
  flag: >
    @{
        if (isList(parameters.extensions)) {
            return parameters.extensions;
        }
        else {
            throwError('I was expecting a list of extensions.');
        }
    }
- identifier: target
  required: true
  flag: >
    @{
        return parameters.target;
    }

Verwende dann eine oder mehrere move-Regeln im Dokument:

% Datei: move01.tex ====================

% arara: pdflatex
% arara: pdflatex
% arara: move: { extensions: [ log, toc, aux ], target: Backup }

% oder: 
% #arara: move: { files: [ move01.log, move01.aux ], target: Backup }

% oder:
% #arara: move: { files: [ move01.log, move01.aux ], target: 'C:/Pfad/Backup/' }

% Der Ordner 'Backup' muss in allen drei  Fällen existieren!

\documentclass{article}
\begin{document}
\tableofcontents

\section{Test}
foo bar foofoo aaa
\end{document}

Siehe auch:

https://texwelt.de/fragen/8764/was-ist-arara

https://texwelt.de/fragen/5571/wie-integriere-ich-arara-in-meinen-editor

PS: Ich habe mich jetzt nur auf die Aufgabe bezogen. Nach erfolgreichem Übersetzen braucht man Hilfsdateien eigentlich nimmer; daher würde ich sie nicht verschieben, sondern einfach löschen, und zwar mit der (im Originalregelsatz vorhandenen) arara-Regel clean; oder sogar mit der Regel cleanx.

Permanenter link

beantwortet 17 Jan '20, 15:29

cis's gravatar image

cis
9.5k75452491
Akzeptiert-Rate: 29%

bearbeitet 27 Jan '20, 17:33

stefan's gravatar image

stefan ♦♦
18.1k143048

Hallo Allerseits.

Vielen Dank für die Tips.

Ich denke das arara tool mit dem move script ist das was ich gesucht habe. Ich habe zwar noch ein paar Probleme mit der Umsetzung aber ich denke, die Richtung stimmt.

Mit dankbaren Grüßen, Eckard Klotz.

(20 Jan '20, 09:44) Eckard Klotz
1

@Eckard Klotz Ich habe Deine Antwort in einen Kommentar umgewandelt. Hier sind Antworten stets als Lösungsvorschlag für die Frage zu verstehen. Kommentare oder Bemerkungen zu Fragen oder Antworten bitte als Kommentar. Bezüglich »Danke« sei außerdem auf »Ich habe auf meine Frage eine Antwort bekommen. Wie geht es weiter?« hingewiesen.

(20 Jan '20, 10:18) saputello

So ich hoffe jetzt mache ich es richtig.

Ich habe jetzt arara auf den neusten satnd gebracht, in dem ich von der Seite "https://github.com/cereda/arara/releases" das Archiv "arara.zip" heruntergeladen habe um dessen Unterordner "arara.zip\arara\scripts" als neuen Ordner "arara" in den Ordner "texmf-dist\scripts" meiner TeXLive Installation zu kopieren. Wenn ich hier nun wie schon beschrieben das neue Skript "move.yaml" einfüge, dann wird es auch akzeptiert und der Aufruf funktioniert wie geplant.

(20 Jan '20, 16:16) Eckard Klotz

Wichtig ist, daß dieses Skript auf der arara Version 4 basiert und bei älteren Versionen zu Fehler-Meldungen führt.

(20 Jan '20, 16:18) Eckard Klotz

@Eckard Klotz arara 4.0.7 ist sowohl als Paket für TeX Live als auch als Paket für MiKTeX verfügbar. Es kann also über den Paketmanager der TeX-Distribution installiert werden. arara 4 ist AFAIK schon seit über einem Jahr verfügbar. Wenn also Deine TeX-Distribution noch eine ältere Version hat, dann ist die vermutlich insgesamt ziemlich veraltet. Unsere Antworten orientieren sich in der Regel an dem, was zum Zeitpunkt der Antwort aktuell ist. Daher würde ich einem Anfänger generell empfehlen, mit einer aktuellen TeX-Distribution zu beginnen.

(20 Jan '20, 16:57) saputello

Ich sehe das jetzt alles erst. Und ja, immer schön brav aktuellstes TeXLive und arara verwenden, dann klappt es auch.

(24 Jan '20, 16:33) cis

Hallo Cis. Erst ein Mal vielen Dank für Deine Hilfe und in meinem speziellen Fall in diesem Zeitraum hast Du auch bestimmt recht, wenn Du schreibst:

"... immer schön brav aktuellstes TeXLive und arara verwenden, dann klappt es auch ..."

Wie ich aber inzwischen erfahren habe, hat es bei diesem Tool in der letzten Zeit einige Änderungen in der Skript-Syntax gegeben, so daß alte Scripts nicht mehr funktionieren.

Es müßte also genaugenommen heißen:

"... immer schön brav die passende Version von TeXLive und arara verwenden, dann klappt es auch ..."

(27 Jan '20, 07:31) Eckard Klotz

Hallo Saputello.

Da meine Frage damit hinreichend beantwortet ist, könntest Du aus meiner Sicht diese Diskussion schließen.

Gegebenenfalls solltest Du aber das Stichwort "Arara 4" mit als Such-Hilfe konfigurieren. Ansonsten würde nach einer erneuten Änderung der Arara-Syntax dieser Beitrag erneut zu den gleichen Problemen führen, wie ich sie hatte.

Im Übrigen möchte ich mich für die Unannehmlichkeiten entschuldigen, die ich Dir und allen anderen Usern bereitet habe und Dir und allen anderen für Eure Geduld danken.

Mit freundlichen Grüßen, Eckard Klotz.

(27 Jan '20, 07:41) Eckard Klotz

Ich habe das eigentlich nicht angemerkt, um eine Debatte loszutreten: "Wer ist hier der größere Besserwisser". Dann nutze eben irgendwelche älteren Versionen, wenn es Dir mehr Spaß macht.
Ich habe bereits ausgeführt, dass ich die ganze Aufgabe für unnötig halte. Da ich seit Ewigkeiten mit arara rumbastle, wusste ich, dass einmal eine "inoffizielle" move-Regel geschrieben wurde. Diese wurde jetzt überarbeitet für die neuste Version. Du kannst auch mit Gewalt arara3 installieren und die arara3-Syntax verwenden, die anderen Regeln tun dann nimmer; aber wenn Du das für besser hälst...

(27 Jan '20, 12:54) cis

@Eckard Schließen geht hier mit "Abhaken" (klick auf den Haken links neben der passenden Antwort). Diese abgehakte bleibt dann immer oben (auch wenn 10 andere kommen). Hab ich eben für Dich gemacht, kein Problem der Klick ;-) @cis ich hab den Hinweis auf Arara version 4 oben in die Antwort eingefügt, danke!

(27 Jan '20, 17:35) stefan ♦♦
Ergebnis 5 von 10 show 5 more comments
Deine Antwort
Vorschau umschalten

Folgen dieser Frage

Per E-Mail:

Wenn sie sich anmelden, kommen Sie für alle Updates hier in Frage

Per RSS:

Antworten

Antworten und Kommentare

Markdown-Grundlagen

  • *kursiv* oder _kursiv_
  • **Fett** oder __Fett__
  • Link:[Text](http://url.com/ "Titel")
  • Bild?![alt Text](/path/img.jpg "Titel")
  • nummerierte Liste: 1. Foo 2. Bar
  • zum Hinzufügen ein Zeilenumbruchs fügen Sie einfach zwei Leerzeichen an die Stelle an der die neue Linie sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Frage-Themen:

×25
×2
×1

gestellte Frage: 17 Jan '20, 08:01

Frage wurde gesehen: 4,509 Mal

zuletzt geändert: 27 Jan '20, 17:35