
Ich war an einer Methode interessiert, um zu überprüfen, ob ein Makro aus einem Paket in einer TEX-Datei verwendet wird.
So möchte ich beispielsweise ein Paket angeben (sagen wir, es ist fontawesome
), dann auf eine .tex-Datei zeigen und fragen, ob in dieser .tex-Datei ein Makro aus dem angegebenen Paket gefunden werden kann.
Ist es möglich?
Antwort1
(1) Kommentieren Sie die Zeile, die das Paket lädt, das Sie testen möchten:
\documentclass{article}
%\usepackage{fontawesome}
\begin{document}
The \faBook
And
the \faCloud
\end{document}
(2) Kompilieren Sie von der Kommandozeile aus yourfile
in nonstopmode
:
lualatex -interaction=nonstopmode yourfile
Mit dem obigen MWE sehen Sie in der Ausgabe, dass die Zeilen 4 und 6 jetzt undefinierte Makros haben:
! Undefined control sequence.
l.4 The \faBook
! Undefined control sequence.
l.6 the \faCloud
Beim Aktivieren des Pakets treten keine Fehler auf,ergoDiese Befehle sind in diesem Paket definiert (oder durch dieses Paket, wie der Kommentar von Egreg andeutete).
Beachten Sie, dass diese Fehlermeldungen auch yourfile.log
für spätere forensische Analysen in gespeichert werden. Wahrscheinlich kann Ihr bevorzugter LaTeX-Editor die Ausgabe-/Protokollfehler direkt kompilieren und anzeigen (nur die ersten ohne nonstopmode
), sodass Sie sich nicht mit der Befehlszeile herumschlagen müssen.