
을 \multicolumn
사용하여 생성된 매크로에 를 삽입하려고 하면 오류 가 발생합니다 . 를 사용하여 "동일한" 명령을 정의하면 모든 것이 잘 작동합니다.xparse
\NewDocumentCommand
Misplaced \omit
\def
왜요? 어떻게든 이 문제를 해결할 수 있나요?
\documentclass{article}
\usepackage{xparse}
% This definition does not work.
\NewDocumentCommand\foo{}{%
\multicolumn{1}{c}{asdf}%
}
% This one does.
%\def\foo{%
% \multicolumn{1}{c}{asdf}%
%}
\begin{document}
\begin{tabular}{ c }
\foo
\end{tabular}
\end{document}
답변1
\multicolumn
매크로 확장 후 셀에서 첫 번째 항목이어야 합니다. 이것 으로는 \NewDocumentCommand
불가능합니다.
당신은 필요
\NewExpandableDocumentCommand{\foo}{}{\multicolumn{1}{c}{asdf}}