![长表处理中的宏](https://linux22.com/image/357860/%E9%95%BF%E8%A1%A8%E5%A4%84%E7%90%86%E4%B8%AD%E7%9A%84%E5%AE%8F.png)
我有两个关于长表项处理的问题:
1.
我预定义了一些宏,以便更好地处理我的长表。在我的样式文件中,我得到了以下非最终行结尾的宏:
\newcommand{\tableRowEnd}
{
\\ \midrule
}
这是我最后一行的结尾:
\newcommand{\lastTableRowEnd}
{
\\ \addlinespace
}
因此,我必须知道哪一行是最后一行,以防止表格末尾出现双行,但我想在那里添加行距。有没有更好的方法,这样我就不必关心最后一行了?
2.
我在 longtable 中使用宏来区分两个不同的构建,这两个构建是通过外部脚本中的 pdflatex 触发的。根据构建选项,我想要或不想要表中的某些行。因此我创建了这个:
\newcommand{\tableEntryRelease}[2]
{
\ifdefined\isReleaseBuild
#1
\else
#2
\fi
}
按照以下方式使用:
[Longtable...]
\tableEntryRelease{\xxx}{
5 & Info & Description \tableRowEnd
6 & AnotherInfo & More Description \lastTableRowEnd
}
[... Longtable]
我的问题是关于 #2:如果我想为插入此处的所有行着色,我该如何实现?使用 \rowcolor 命令只会为第一行着色,而不会为后面的行着色。我可以为所有“非发布”条目单独使用我的宏,但我更喜欢只使用一个命令的解决方案。
提前致谢。
由于问了两个问题,没有提供 MWE,所以我提出了一个新问题这里。