LaTeX bietet \listfiles
, das für eine bestimmte Quelldatei Folgendes bereitstellt:
scrreprt.cls 2016/06/14 v3.21 KOMA-Script document class (report)
scrkbase.sty 2016/06/14 v3.21 KOMA-Script package (KOMA-Script-dependent bas
ics and keyval usage)
scrbase.sty 2016/06/14 v3.21 KOMA-Script package (KOMA-Script-independent b
asics and keyval usage)
keyval.sty 2014/10/28 v1.15 key=value parser (DPC)
scrlfile.sty 2016/06/14 v3.21 KOMA-Script package (loading files)
tocbasic.sty 2016/06/14 v3.21 KOMA-Script package (handling toc-files)
scrsize11pt.clo 2016/06/14 v3.21 KOMA-Script font size class option (11pt)
typearea.sty 2016/06/14 v3.21 KOMA-Script package (type area)
chngcntr.sty 2009/09/02 v1.0a change counter resetting
etoolbox.sty 2017/01/02 v2.4 e-TeX tools for LaTeX (JAW)
...
Werden die Linien zwischen *File List*
und***********
identisch, unabhängig von Quelldatei (nach Präambel), Distribution und Betriebssystem, vorausgesetzt jedes Paket/jede Klasse ist auf dem neuesten Stand? Wenn nicht, was wird anders sein?
Ich verteile eine cls
Datei und möchte ein Skript bereitstellen, das die Protokolldatei analysiert, um sicherzustellen, dass Benutzer aktuelle Pakete verwenden. Ich weiß, dass ich einen regulären Ausdruck wie diesen schreiben kann:
^\\s*([a-z]+\\.(?:(?:cls)|(?:sty))) ([12][0-9]{3}/[0-9]{2}/[0-9]{2}) (v?\\s?(?:er)?[0-9]+(?:\\.[0-9a-z]+)?)?.*$
aber ich frage mich, ob ich einfach die Rohzeilen ( die „ .sty
und “ enthalten .cls
) überprüfen kann.
(Wenn mein regulärer Ausdruck falsch ist, lassen Sie es mich auch gerne wissen :-).)