
Im folgenden Code \csname ... \endcsname
und \cs_if_exist_use:c
darin \NewDocumentCommand
verhält es sich nicht wie erwartet.
\documentclass{article}
\usepackage{xparse}
\expandafter\def\csname test 1\endcsname{a,$\alpha$,b}
\ExplSyntaxOn
\clist_new:N \l_test_clist
\NewDocumentCommand {\test} {}
{
\csname test 1\endcsname
\cs_if_exist_use:c {test 1}
}
\ExplSyntaxOff
\begin{document}
show: \test
use: \csname test 1\endcsname
\end{document}
Antwort1
Sie haben einen Befehl mit Namen definiert, test 1
aber im Expl3-Code werden Leerzeichen ignoriert und ergeben keine Token. Daher haben Sie getestet, test1
ob test ~ 1
zwischen Test und 1 ein Leerzeichen steht.