Closed maxnoe closed 10 years ago
Bei mir geht's:
$ vim make.tex
$ make
$TEX --jobname=make make.tex
"/home/ismo/documents/TU:26: Undefined control sequence \fooooo.
"/home/ismo/documents/TU:26: leading text: \fooooo
"/home/ismo/documents/TU: [biblatex] Patching footnotes failed. Footnote detection will not work. (page 1)
Makefile:4: recipe for target 'build/make.pdf' failed
make: *** [build/make.pdf] Error 1
Es benutzt rubber, um den Log zu parsen. Falls du rubber nicht installiert hast, zeigt er die letzten Zeilen des Logs an, falls es einen Error gab.
Tatsache, mit nem Testfile gehts bei mir auch, bei der latex Präsentation war aber nichts dabei. Wäre ne undefined control sequence gewesen, die stand auch im logfile.
Es werden keine Fehler angezeigt, wenn die in einem File stehen, das mit \input eingebunden wird, nur die aus dem Hauptfile werden angezeigt.
Bei mir geht auch das.
Lad doch einen Commit hoch, der das Problem zeigt, dann guck ich mir das an. Lad auch direkt danach einen Revert hoch, damit keiner böse ist.
ich hab in latex/conten/grundlagen.tex ein \TEST
eingefügt, taucht nicht als undefined control sequence
auf
Habe den Bug in rubber gefunden. Das Problem ist, dass rubber Zeilen, die genau 79 Zeichen lang sind als gebrochen interpretiert und die nächste zeile anhängt. In diesem Fall hast du genau einen Fall erwischt wo das falsch ist, weil die Zeile echt genau 79 Zeichen lang ist und nicht gebrochen wurde.
Fazit: Es funktioniert fast immer. Ich sollte das parsen des Logs aus rubber extrahieren und korrigieren. Dann bräuchte auch nicht so eine veraltete Software installieren.
Bravo! :clap:
So ganz verstehe ich den Grund für das Problem noch nicht. Was spricht gegen ein einfaches Makefile?
Das Skript tex.sh (in common) macht was das Makefile machen würde (3 mal lualatex, biber) und zeigt zusätzlich nur Errors und Warnungen an.
Das Anzeigen des Fehlers funktioniert aber nicht, falls die Zeile in des .tex genau 79 Zeichen lang ist. Dann kann man halt im .log nachschauen. Es wird aber immer korrekt angezeigt, dass es einen Error überhaupt gab.
Hab einen eigenen Log-Parser geschrieben, der viel besser funktioniert. LaTeX-Logs sind strukturierter als ich dachte……
Zusätzlich führt das Build-Skript TeX und biber nur so oft aus wie notwendig.
Beide Skripte leben in https://bitbucket.org/itoijala/tex-utils Hab sie hier in das Repo kopiert.
wenn ich die tex-dateien kompiliere werden keine errors angezeigt, nur die warnings.