Gibt es ein Befehl, der alle in einem .tex-Dokument verwendete TeX-Software incl. aller verwendeten Package mit aufgerufenen Dateien und mit Versionsnummer als (beispielsweise) Tabelle z.B. am Ende des Dokuments ausgibt?

gefragt 20 Jan '17, 20:07

asdfgh's gravatar image

asdfgh
5248
Akzeptiert-Rate: 0%

bearbeitet 20 Jan '17, 21:37

Schätze, dass man sowas basteln muss. Wäre aber interessant (besonders als Tabelle) ;)

PS: Ich empfehele auch ein (erlaubtes) Crossposting auf matheplanet.de

(20 Jan '17, 21:28) cis

In der Anleitung zur Erstellung eines Minimalbeispiels wird dafür der Befehl \listfiles erwähnt. Dieser gibt eine entsprechende Liste am Ende der log-Datei aus. Beispielsweise schreibt:

Öffne in Overleaf
\listfiles
\documentclass{article}

\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{mwe}

\begin{document}
\blinddocument
\end{document}

aktuell:

Öffne in Overleaf
 *File List*
 article.cls    2014/09/29 v1.4h Standard LaTeX document class
  size10.clo    2014/09/29 v1.4h Standard LaTeX file (size option)
 fontenc.sty
   t1enc.def    2016/06/19 v1.99m Standard LaTeX file
inputenc.sty    2015/03/17 v1.2c Input encoding file
    utf8.def    2016/02/28 v1.1s UTF-8 support for inputenc
   t1enc.dfu    2016/02/28 v1.1s UTF-8 support for inputenc
  ot1enc.dfu    2016/02/28 v1.1s UTF-8 support for inputenc
  omsenc.dfu    2016/02/28 v1.1s UTF-8 support for inputenc
   babel.sty    2016/04/23 3.9r The Babel package
 ngerman.ldf    2016/11/02 v2.9 German support for babel (new orthography)
     mwe.sty    2012/05/15 v0.3 Package to support minimal working examples (MWE)
graphicx.sty    2014/10/28 v1.0g Enhanced LaTeX Graphics (DPC,SPQR)
  keyval.sty    2014/10/28 v1.15 key=value parser (DPC)
graphics.sty    2016/07/10 v1.0t Standard LaTeX Graphics (DPC,SPQR)
    trig.sty    2016/01/03 v1.10 sin cos tan (DPC)
graphics.cfg    2016/06/04 v1.11 sample graphics configuration
  pdftex.def    2016/07/10 v0.06j Graphics/color for pdfTeX
infwarerr.sty    2016/05/16 v1.4 Providing info/warning/error messages (HO)
 ltxcmds.sty    2016/05/16 v1.23 LaTeX kernel commands for general use (HO)
  lipsum.sty    2014/07/27 v1.3 150 paragraphs of Lorem Ipsum dummy text
blindtext.sty    2012/01/06 V2.0 blindtext-Package
  xspace.sty    2014/10/28 v1.13 Space after command names (DPC,MH)
supp-pdf.mkii
pdftexcmds.sty    2016/05/21 v0.22 Utility functions of pdfTeX for LuaTeX (HO)
ifluatex.sty    2016/05/16 v1.4 Provides the ifluatex switch (HO)
   ifpdf.sty    2016/05/14 v3.1 Provides the ifpdf switch
epstopdf-base.sty    2016/05/15 v2.6 Base part for package epstopdf
  grfext.sty    2016/05/16 v1.2 Manage graphics extensions (HO)
kvdefinekeys.sty    2016/05/16 v1.4 Define keys (HO)
kvoptions.sty    2016/05/16 v3.12 Key value format for package options (HO)
kvsetkeys.sty    2016/05/16 v1.17 Key value parser (HO)
etexcmds.sty    2016/05/16 v1.6 Avoid name clashes with e-TeX commands (HO)
epstopdf-sys.cfg    2010/07/13 v1.3 Configuration of (r)epstopdf for TeX Live
  omscmr.fd    2014/09/29 v2.5h Standard LaTeX font definitions
 ***********

Was hier fehlt ist allerdings die LaTeX-Version, die man am Anfang der log-Datei findet:

Öffne in Overleaf
LaTeX2e <2016/03/31> patch level 3

und die verwendeten Fonts, die man ohne Angabe der Version am Ende der log-Datei unmittelbar nach obiger Dateiliste findet:

Öffne in Overleaf
{/usr/local/texlive/2016/texmf-dist/fonts/enc/dvips/cm-super/cm-super-t1.enc}</usr/local/texlive/2016/texmf-dist/fonts/type1/public/amsfonts/cm/cmsy10.pfb></usr/local/texlive/2016/texmf-dist/fonts/type1/public/cm-super/sfbx1000.pfb></usr/local/texlive/2016/texmf-dist/fonts/type1/public/cm-super/sfbx1200.pfb></usr/local/texlive/2016/texmf-dist/fonts/type1/public/cm-super/sfbx1440.pfb></usr/local/texlive/2016/texmf-dist/fonts/type1/public/cm-super/sfrm1000.pfb>

Ebenfalls am Anfang der log-Datei findet man die verwendete TeX-Engine:

Öffne in Overleaf
This is pdfTeX, Version 3.14159265-2.6-1.40.17 (TeX Live 2016)

Eine weitere Möglichkeit besteht darin, pdflatex mit Option --recorder aufzurufen. PDFTeX erzeugt dann eine weitere Datei mit Endung .fls, in der alle verwendeten Dateien (allerdings ohne Versionnummer) enthalten sind.

Basierend auf dem \listfiles-Mechanismus gibt es auch Pakete wie dateiliste, die es erlauben die entsprechenden Informationen direkt im Dokument selbst auszugeben. So erzeugt beispielsweise:

Öffne in Overleaf
\listfiles
\documentclass{article}

\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{mwe}
\usepackage{dateiliste}

\begin{document}
\printFileList
\blinddocument
\end{document}

Ausgaben wie:

Beispielausgabe

Übrigens braucht die Anweisung \printFileList mehr als einen LaTeX-Lauf, weil die Liste zunächst in eine Datei mit Endung .filelist geschrieben und diese dann beim nächsten Lauf wieder gelesen wird. Die Datei darf man sich auch ruhig einmal anschauen. Dann sieht man, dass die Liste in der Voreinstellung eine longtable mit Paket ltxtable verwendet und wie diese aufgebaut ist. Die Abhängigkeit von ltxtable, longtable und tabularx ist auch in der Anleitung explizit erwähnt.

Das Paket erlaubt auch Änderungen der Dateiinformationen und der Ausgabe. Näheres ist der Anleitung zu entnehmen.

Die Version des LaTeX-Formats kann man übrigens einfach über \fmtversion ausgeben lassen. Allerdings ist der Patch-Level darin nicht enthalten, diesen bekommt man nur über \patch@level. Die verwendete Version der TeX-Engine kann nur abhängig von der verwendeten Engine in der Regel ebenfalls ermittelt werden. So gibt es für pdfTeX \pdftexbanner, \pdftexrevision und \pdftexversion, für luaTeX \luatexbanner, \luatexrevision und \luatexversion, für XeTeX \XeTeXversion und \XeTeXrevision. Mit Hilfe von Paketen wie ifpdf, ifluatex und ifxetex kann man zwischen den dreien unterscheiden. Mit ifplatform kann man sogar ermitteln, welches System verwendet wurde. All diese Informationen kann man beispielsweise vor der Dateiliste des Pakets dateiliste zusätzlich ausgeben lassen.

Pakete und Programme zu diesem Themenkomplex sind im CTAN-Katalog unter dem Topic doc-mgmt bzw. env-query zusammengefasst.

Permanenter link

beantwortet 21 Jan '17, 09:48

saputello's gravatar image

saputello
10.8k103963
Akzeptiert-Rate: 51%

bearbeitet 21 Jan '17, 14:09

Ijon%20Tichy's gravatar image

Ijon Tichy
9.6k31227

@asdfgh Kommentar für mich unverständlich. Wenn ich printFileList direkt hinter begin{document} reinkopieren, dann bekomme ich im Dokument printFileList.

(21 Jan '17, 14:08) Ijon Tichy

@asdfgh Es wäre besser das als neue Frage zu posten.

(21 Jan '17, 18:30) Johannes
1

@asdfgh: Bevor Du Johannes Rat folgst, solltest Du Dich aber noch einmal mit korrektem Markdown befassen. Und natürlich braucht die neue Fragen dann auch endlich einmal ein Minimalbeispiel. So richtig verständlich wird es sonst eher nicht und nachvollziehbar schon gar nicht.

(21 Jan '17, 18:36) saputello
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:

×6
×3

gestellte Frage: 20 Jan '17, 20:07

Frage wurde gesehen: 2,931 Mal

zuletzt geändert: 21 Jan '17, 18:36