私は、memoirの表形式環境の列指定構文を使用して、マクロ内の表のセルを自動的にラップしたいと考えています。それは可能ですか?私は次のことを試しました
\documentclass{memoir}
\newcommand\bracketit[1]{[#1]}
\begin{document}
\begin{tabular}{l>{\bracketit\bgroup}c<{\egroup}}
1 & A \\
2 & B \\
\end{tabular}
\end{document}
失敗する
! Missing } inserted
私はそれが
\documentclass{memoir}
\newcommand\bracketit[1]{[#1]}
\begin{document}
\begin{tabular}{lc}
1 & \bracketit{A} \\
2 & \bracketit{B} \\
\end{tabular}
\end{document}
ただし、入力は不要です。もちろん、単純な では\bracketit
マクロは必要なく、括弧を直接挿入できます。ただし、適用したいマクロはそれほど単純ではなく、私の手に負えません (mhchem.sty
の\ce
)。私がやろうとしていることは、そもそも可能なのでしょうか?
答え1
これは、collcell
パッケージ:
\documentclass{memoir}
\usepackage{collcell}
\newcommand\bracketit[1]{[#1]}
\begin{document}
\begin{tabular}{l>{\collectcell\bracketit}c<{\endcollectcell}}
1 & A \\
2 & B \\
\end{tabular}
\end{document}