在巨集中包裹表格儲存格

在巨集中包裹表格儲存格

我想使用回憶錄表格環境的列規範語法來自動將表格的儲存格包裝在巨集中。那可能嗎?我嘗試了以下方法

\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}

但無需打字。當然,對於 simple 來說\bracketit,不需要宏,我可以直接插入括號。然而,我想要應用的巨集並不是那麼簡單並且超出了我的控制範圍(mhchem.sty's \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}

相關內容