%%%%%%% Internal basic commands for package \newcommand{\relax}{} \newcommand{\@empty}{} \newcommand{\@gooble}[1]{} %%%%%% Iter #1 on #3, a #2 separated list of non-empty elements \def\@iter #1#2#3{% \def\@test{#3}% \ifx\@test\@empty\else \def\@@iter##1#2{% \def\@test{##1}% \ifx\@test\@empty \let\@next\relax\else #1{##1}% \let\@next\@@iter\fi \@next}% \@callsubst{\@@iter}{#3#2#2}\fi} %%%%%%%%%% eat leading spaces in argument \def\@eatspaces#1,{#1}% %%%%% \newcommand{\Let}[2]{\ifu#2\else\let#1#2\fi} \newcommand{\IfDisplay}[2]{\ifdisplay#1\else#2\fi} \newcommand{\@non@kk}[2][]{} \newcommand{\@non@k}[1][]{\@non@kk} \newcommand{\NoCommand}[1]{\@non@k} %%%shortcuts for defining/using strange csname %%% \newcommand{\@namedef}[1]{\def\csname#1\endcsname} \newcommand{\@nameuse}[1]{\csname#1\endcsname}