![可选参数中的括号](https://linux22.com/image/398794/%E5%8F%AF%E9%80%89%E5%8F%82%E6%95%B0%E4%B8%AD%E7%9A%84%E6%8B%AC%E5%8F%B7.png)
数学文本
${\mathbb Z}[\sqrt{2}]$
在一般文本中效果很好,但我想将其作为小节标题。然而,
\subsection${\mathbb Z}[\sqrt{2}]$
当我尝试排版时,会产生错误消息“缺少插入$”。
进一步的调查显示,\subsection 标题中的括号在不在数学分隔符 $ $ 内时会排版,但排版不正确。例如,
\subsection{This is [rubbish]}
将产生小节编号,后面跟着一个右括号 ](与小节编号相同的粗体字体大小),然后在下一行以普通文本字体显示“这是 [垃圾]”。
那么,有没有办法在 \subsection 标题中包含括号 [ ],无论是在数学分隔符内还是外?
答案1
欢迎来到 TeX.SE!
以下工作:
\documentclass{article}
\usepackage{amsfonts}
\begin{document}
\section{$\mathbb{Z}[\sqrt{2}]$}
\subsection{This is [rubbish]}
\end{document}
请注意,section 的强制参数必须在括号 ( {...}
) 内给出,并且这\mathbb
不是声明:它必须用作\mathbb{CORRECT}
,而不是{\mathbb INCORRECT}
。
如您所见,括号没有什么特殊之处,只要您像往常一样将参数放在括号内即可。
可选参数中的括号
如果你需要括号可选参数—但问题中并非如此—然后有个技巧:你可以将整个内容放在括号内,例如[{stuff with brackets}]
:
\documentclass{article}
\begin{document}
\tableofcontents
\section[{For TOC [with brackets]}]{Long title}
\end{document}
如屏幕截图所示,此操作For TOC [with brackets]
在目录中使用标题(使用 等类时也在标题中book
)并Long title
在文本中使用。以下操作不正确:
\section[For TOC [with brackets]]{Long title}
确实,在这种情况下:
所看到的可选参数
\section
将是For TOC [with brackets
(如果没有括号,则可选参数开始后的第一个右括号标志着该参数的结束);强制参数将是
]
(可选参数后的第一个括号平衡标记列表 - 这里只有一个标记),并且{Long title}
将被解释为该部分后面的纯文本(在无用的组内写的简单文本)。
答案2
现在我终于解决了这个问题,通过在每个括号周围放置一个 \mbox:
\subsection{$\mathbb{Z}\mbox{[}\sqrt{2}\mbox{]}$}
但问题似乎特定于发布者的样式文件,因为我不需要对任何不使用此样式文件的 LaTeX 代码进行如此大的努力。