Seite 1 von 2

Latex und Arara nutzen

Verfasst: Mi 13. Jan 2016, 00:15
von V00d00
Hallo,

ich möchte gerne auf meinem Mac Arara nutzen, die Installation mittels der Java-Installationsroutine habe ich bereits hinter mir.

Im arara-usermanual steht folgendes drin, wobei ich mit "create a file named arara" nicht genau verstehe was für eine Dateiendung diese erstellte Datei den haben soll?!
If you are deploying arara in Linux or Mac, we also need to create a
shortcut to java -jar $ARARA_HOME/arara.jar. Create a file named arara inside the ARARA_HOME directory, in the same level of arara.jar, and add the content from Code 10.
In dieser erstellten Datei soll wohl folgendes enthalten sein:
#!/bin/bash
# Example script of arara
# Installation and usage are described in the documentation
SOURCE="${BASH_SOURCE[0]}"
while [ -h "$SOURCE" ] ; do SOURCE="$(readlink "$SOURCE")";
done
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && cd -P "$(
dirname "$SOURCE" )" && pwd )"
java -jar "$DIR/arara.jar" "$@"
Hier mal ein kleines Beispielprogramm:
% arara: pdflatex
\documentclass{article}
\begin{document}
Hello, world!
\end{document}
Wobei das Beispielprogramm wohl erst funktioniert, wenn ich die entsprechende Datei erstellt habe oder? Vielleicht hat ja jemand einen Tipp, was für eine Datei dies genau sein soll. Automator Script? Irgendwas für den Terminal?

Verfasst: Mi 13. Jan 2016, 07:55
von saputello
In TeX-Live ist arara bereits enthalten. Das sollte eigentlich auch für MacTeX gelten. Es wird dann auch gleich so installiert, dass man es direkt nutzen kann. Das Script, das dabei für den Aufruf verwendet wird, ist:
#!/bin/bash
jarpath=`kpsewhich --progname=arara --format=texmfscripts arara.jar`
java -jar "$jarpath" "$@"
Da bei Deiner manuellen Installation vermutlich nicht in TEXMF installiert wurde, musst Du einfach nur die Variable jarpath im Script passend ändern. Am besten gibst Du dort direkt den kompletten Pfad von arara.jar an.

Dieses Skript muss dann natürlich vom Editor auch gefunden werden und als LaTeX-Compiler eingetragen sein. Siehe dazu auch:

Verfasst: Mi 13. Jan 2016, 15:04
von V00d00
Auf meinem Mac ist natürlich MacTeX-2015 installiert gewesen. Zum Schreiben meiner Latex Dokumente nutze ich TeXworks, da es nicht soviel schnick schnack bietet.

Ich habe in den Einstellungen bei TeXworks folgendes ergänzt:
Bild

Anschließend dann mein Minibeispiel ergänzt, da ich die ganzen Hilfsdateien auch gelöscht haben möchte.
% arara: pdflatex
% arara: pdflatex
% arara: clean: { files: [ *.aux, *.bbl ] }
% arara: clean: { files: [ *.bcf, *.cod ] } 
% arara: clean: { files: [ *.blg, *.lof ] }
% arara: clean: { files: [ *.lot, *.out ] } 
% arara: clean: { files: [ *.toc, *.log ] } 
\documentclass{article} 
\begin{document} 
Hello, world! 
\end{document}
Dann starte ich das Kompilieren und bekomme folgende Fehlermeldung in der Konsole angezeigt:
__ _ _ __ __ _ _ __ __ _
/ _` | '__/ _` | '__/ _` |
| (_| | | | (_| | | | (_| |
\__,_|_| \__,_|_| \__,_|

I'm sorry, but the file '%wm [.tex, .dtx, .ltx]' does not exist.
Note that when you provide only the basename (i.e, the filename
without the extension) or with an unknown extension, arara will
try to look for files ending with the predefined extensions
[.tex, .dtx, .ltx] in that order. You can override the order, the
search pattern or even add support for new extensions through the
configuration file. Please refer to the arara manual to learn
more about this feature.
Das was ich mit Arara erreichen möchte ist folgendes:
- Ich möchte nur einmal mit Arara kompilieren
- Nach dem letzten kompilieren sollen die Hilfsdateien gelöscht werden

Verfasst: Mi 13. Jan 2016, 15:22
von Besserwisser
%wm ist bei Texworks kein Platzhalter. Wie es richtig geht, steht in der [d]arara[/d]-Anleitung (siehe Abbildung 4.3).

Verfasst: Mi 13. Jan 2016, 15:27
von V00d00
Das mit $fullname habe ich auch gerade rausgefunden.

Ein Problem habe ich noch.
% arara: pdflatex
% arara: pdflatex
% arara: clean: { files: [ *.aux, *.bbl ] }
% arara: clean: { files: [ *.bcf, *.cod ] } 
% arara: clean: { files: [ *.blg, *.lof ] }
% arara: clean: { files: [ *.lot, *.out ] } 
% arara: clean: { files: [ *.toc, *.log ] } 
\documentclass{article} 
\begin{document} 
Hello, world! 
\end{document}
liefert folgende Fehlermeldung in der Konsole:
__ _ _ __ __ _ _ __ __ _
/ _` | '__/ _` | '__/ _` |
| (_| | | | (_| | | | (_| |
\__,_|_| \__,_|_| \__,_|

It appears there is a malformed directive found at line 3, that
is, a directive that might have a YAML syntax error or an invalid
field. I tried my best to dump the error message, so here it is:

Context: while scanning an alias
Problem: expected alphabetic or numeric character, but found but
found .
Error found in line 0, column 19.
clean: { files: [ *.aux, *.bbl ] }
^
Ich will ja nicht ständig den Dateinamen vor die Dateiendungen schreiben. Müsste doch mit einem * als Platzhalter eigentlich gehen oder nicht?


EDIT: Frage 2...Wo werden die yaml rules auf dem Mac global gespeichert?
Frage 3...Wie kann ich die yaml rules temporär in mein Minibeispiel einbinden? Mit dem \include Befehl?

Verfasst: Mi 13. Jan 2016, 16:06
von Besserwisser
http://tex.stackexchange.com/questions/ ... h-wildcard

AFAIR kennt arara bereits Alternative-Regeln. Schau mal in der Anleitung nach (bin unterwegs).

Verfasst: Mi 13. Jan 2016, 16:34
von V00d00
Ne, funktioniert leider nicht. Sobald ich da eine Wildcard eingebe also mit * bekomme ich ne Fehlermeldung und der fängt garnicht an zu kompilieren.

Ist zwar nicht so elegant, aber es funktioniert. Man kann das bestimmt auch irgendwie auslagern (nur weiß ich noch nicht wie das geht):
% arara: pdflatex
% arara: pdflatex

% arara: clean: { files: [ Belegarbeit.aux, Belegarbeit.bbl ] }
% arara: clean: { files: [ Belegarbeit.bcf, Belegarbeit.cod ] } 
% arara: clean: { files: [ Belegarbeit.blg, Belegarbeit.lof ] }
% arara: clean: { files: [ Belegarbeit.lot, Belegarbeit.out ] } 
% arara: clean: { files: [ Belegarbeit.toc, Belegarbeit.log ] } 
% arara: clean: { files: [ Belegarbeit.run.xml, Befehle.aux, Deckblatt.aux, Belegarbeit-blx.bib ] }

% arara: clean: { files: [ Inhalt/Einleitung.aux, Inhalt/Modellbildung.aux ] }
% arara: clean: { files: [ Inhalt/Quellen.aux, Inhalt/Schluss.aux ] }
% arara: clean: { files: [ Inhalt/Simulation.aux, Inhalt/StandDerTechnik.aux ] }
% arara: clean: { files: [ Inhalt/TheoretischeGrundlagen.aux ] }

Verfasst: Mi 13. Jan 2016, 17:18
von Johannes_B
Mein Rechner ist recht langsam. Ich hätte keine Lust jedes mal ein paar Minuten zu warten bis das Dokument gebaut ist, besonders wenn man nur kleine Änderungen macht.

Warum fordderst du die Löschung der bbl-Datei an, obwohl dein Dokument gar keine Literatur erstellt?

Weißt du, welchen Zweck all diese Dateien haben?

Hast du schon mal was von latexmk gehört?

Verfasst: Mi 13. Jan 2016, 17:58
von V00d00
Ich arbeite mit einem Macbook Air 2012. Es dauert immer ein paar Sekunden bis das Dokument vollständig kompiliert ist. Zumindest geht es mit TeXworks am schnellsten. Andere Programme brauchen echt ewig dafür.
aux Laufende Nummern und Seitenzahlen für Referenzen, Zitierbefehle
toc Seitenzahlen und laufende Nummern für das Inhaltsverzeichnis (Table of Contents)
lof/lot Abbildungs- bzw. Tabellenverzeichnis (List of figures/tables)
log (Lua/Xe/pdf)(La)TeX-Protokolldatei
blg Bibliography-log (Biber/BibTeX)
bbl Hilfsdatei für das Literaturverzeichnis
Genau denselben Beitrag hatte ich mir auch durchgelesen. Im groben wusste ich auch davor, wofür die Dateien genau gebraucht werden.

Abgesehen von meinem Minibeispiel habe ich natürlich in meinem eigentlichen Dokument ein Literatur und Quellenverzeichnis
% Biblatex Einstellungen für das Quellenverzeichnis --------------------------------
\usepackage[backend=bibtex, sorting=none ,style=numeric, maxbibnames=50]{biblatex}
Bisher habe ich immer mit pdflatex, Bibtex und MakeIndex gearbeitet. Musste dann immer das kompilieren einzeln durchführen, dass nimmt mir jetzt Arara natürlich ab.

Was kann den Latexmk? Magst du mir das erklären? Scheint ja irgendwie die Änderungen im Dokument zu überwachen und dann irgendwas zu tun.

ltx2any

Verfasst: Mi 13. Jan 2016, 18:00
von Gast
@V00d00 Es scheint dir ja vor allem darum zu gehen, nach dem Kompellieren ein aufgeraeumtes Verzeichnis zu haben, da koennte dir vielleicht

https://github.com/akerbos/ltx2any

als Alternative zu Arara gefallen.