当我在命名法条目中有像 $\|\|$ 这样的符号时,该条目不会显示。使用这个最小的例子:
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{nomencl}
\makenomenclature
\begin{document}
\mbox{}
\nomenclature{$c$}{Speed of light in a vacuum inertial frame}
\nomenclature{$h$}{Planck constant}
\nomenclature{$\|\|$}{Norm}
\printnomenclature
\end{document}
我得到了光速和普朗克常数的条目,但规范条目却被忽略了。这是故意的吗?我怎样才能让规范显示在命名法中?
答案1
您需要转义特殊字符、反斜杠和竖线:
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{nomencl}
\makenomenclature
\begin{document}
\mbox{}
\nomenclature{$c$}{Speed of light in a vacuum inertial frame}
\nomenclature{$h$}{Planck constant}
\nomenclature{$"\"|\,{\cdot}\,"\"|$}{Norm}
\printnomenclature
\end{document}
另一方面,使用\lVert
和\rVert
更简单(也更正确)
\nomenclature{$\lVert\,{\cdot}\,\rVert$}{Norm}
答案2
正如@Nicola-Talbot 指出的那样,| 是 makeindex 的特殊字符。但无论如何,最好使用 $\Vert$。顺便说一句,我非常喜欢包中的成对分隔符设置mathtools
:它可以确保您永远不会有不匹配的括号。
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{amsmath}
\usepackage{nomencl}
\makenomenclature
\begin{document}
hello
\nomenclature{$c$}{Speed of light in a vacuum inertial frame}
\nomenclature{$h$}{Planck constant}
\nomenclature{$\Vert$}{Norm}
\printnomenclature
\end{document}