为什么不在表格中使用 \cr 代替 \\?

为什么不在表格中使用 \cr 代替 \\?

在普通 TeX 中,\cr它用于标记表格中行的结束。在 LaTeX 中\\通常使用它。

\\带有可选参数,\cr不支持。但我从来没用过,我更喜欢 booktabs 的\addlinespace

正如我最近发现的,\\并不总是有效,请参阅这个错误最后以这次提交它在文档中添加了一个小节,解释\cr应使用 。如果表格的最后一列是一S列(由包定义siunitx),并且文本附加到此列(使用array包的<{...}语法),则使用 时间距错误\\,但使用 时间距正确\cr

所以我想知道:为什么不总是用\cr而不是\\来表示表中一行的结尾?

答案1

反对使用的论点\cr实际上是适用于任何软件中未记录的内部接口的使用的通用论点。

\cr不是记录的 Latex 命令,记录的结束表行的命令是\\\tabularnewline

在默认实现中,如果您不使用表单*[]参数,\\基本上只需直接\cr使用\cr即可。但是,由于它不是记录的 latex 命令,因此表格的实现可能会发生变化,因此它们不等效,而且 latex 到 html 等的转换没有理由期望\cr在文档中看到,因此可能会失败。

如果某个包中有 bug,那就意味着\cr需要它,那么这就是一个需要修复的 bug,或者如果某个包定义了一个需要的环境\cr,那么那个包的文档而不是 latex 文档(或这个答案)会告诉你是否应该使用它。

相关内容