
Beim Laden von Chemmacros erhalte ich folgende Fehlermeldung (ich verstehe sie nicht ...):
! Extra alignment tab has been changed to \cr.
<template> ...egin \relax \d@llarend \endtemplate
l.62 \end{document}
You have given more \span or & marks than there were
in the preamble to the \halign or \valign now in progress.
So I'll assume that you meant to type \cr instead.
Mein sehr vereinfachtes Testdokument, welches auch funktioniert, wenn ich es nicht lade {chemmacros}
, sondern nur alle Pakete etc. im PDF ausdrucken möchte:
\documentclass{scrreprt}
\usepackage{xparse}
\usepackage{etoolbox}
\usepackage{longtable}
\usepackage{calc}
\usepackage{array}
\usepackage{booktabs}
\usepackage{seqsplit}
%\usepackage{chemmacros}
\listfiles%
\AtEndDocument{\printfilelist}%
\newcolumntype{L}[1]{>{\raggedright\arraybackslash}p{#1}}%
\ExplSyntaxOn%
\NewDocumentCommand{\printfilelist}{}{%
\setlength{\LTleft}{\fill}%
\setlength{\LTright}{\fill}%
\begin{longtable}{@{}%
>{\ttfamily}%
L{0.3\textwidth-\tabcolsep}%
L{\widthof{9999/99/99}}%
>{\raggedright}%
p{0.7\textwidth-\widthof{9999/99/99}-3\tabcolsep}%
@{}}%
\toprule%
\multicolumn{1}{@{}l}{\bfseries File~name} & \multicolumn{1}{c}{\bfseries Date} & \bfseries File~info%
\tabularnewline%
\midrule%
\endhead%
\bottomrule%
\endfoot%
\Holou_print_filelist:%
\end{longtable}%
}%
\tl_new:N \l_filelist_body_tl%
\tl_new:N \l_fileinfo_tl%
\cs_new_protected:Npn \Holou_print_filelist: {%
\clist_map_inline:cn {@filelist}{%
\Holou_print_fileinfo:n {##1}%
}%
\tl_use:N \l_filelist_body_tl%
}%
\cs_new_protected:Npn \Holou_print_fileinfo:n #1 {%
\regex_match:nnT { \.(sty|cls|tex|clo|fd|cfg|bbx|cbx|lbx|ldf|def|hak)\Z } {#1}{%
\Holou_print_pkginfo:n {#1}%
}%
}%
\cs_new_protected:Npn \Holou_print_pkginfo:n #1 {%
\tl_set_eq:Nc \l_fileinfo_tl {ver@#1}%
\tl_replace_once:Nnn \l_fileinfo_tl {~} {&}%
\tl_put_right:Nx \l_filelist_body_tl {%
\exp_not:N \seqsplit{#1}%
&%
\exp_not:V \l_fileinfo_tl%
\exp_not:N \tabularnewline%
}%
}%
\ExplSyntaxOff%
\begin{document}
\end{document}
Hier ein Bild ohne {chemmacros}
für diejenigen, die sehen möchten, was der Code macht:
Nun meine Frage, warum es beim Laden nicht funktioniert {chemmacros}
. Habe ich etwas falsch gemacht? :D
Lösung (Bearbeiten): Das Problem war das &-Symbol in der Chemmacros-Dateiinfo, das ich jetzt einfach durch zB ersetzt habe, \tl_replace_all:Nnn \l_fileinfo_tl {&} {-}
bevor ich selbst das &-Symbol hinzufüge, indem ich das erste ~-Symbol nach dem Datum ersetze. Danke Ulrike. <3
Antwort1
Wie bereits in den Kommentaren erläutert, werden Sie von &
den Dateiinformationen von gebissen chemmacros
. Sie können dieses Problem umgehen, indem Sie die Dateiinformationen in Zeichenfolgen umwandeln.
Ersetzen
\tl_set_eq:Nc \l_fileinfo_tl {ver@#1}
von
\tl_set:Nx \l_fileinfo_tl { \tl_to_str:c {ver@#1} }
zum Beispiel und Ihr Code funktioniert…