在一个索引条目中抑制问号后的逗号

在一个索引条目中抑制问号后的逗号

我想索引以问号结尾的书名。我得到的是

\textit{生命是什么?}, 27,

但我想要的是

\textit{什么是生命?} 27.

换句话说,我想删除逗号。只有当我成功删除逗号后,我才会知道这样是否看起来更好。

答案1

您必须使用合适的索引样式,其中标准分隔符(逗号后跟空格)更改为仅在没有标点符号时才添加逗号的宏。

\begin{filecontents*}{athel.ist}
delim_0 "\\possiblecomma "
delim_1 "\\possiblecomma "
delim_2 "\\possiblecomma "
\end{filecontents*}

\documentclass{book}
\usepackage{imakeidx}
\usepackage{amsthm} % for \@addpunct

\makeindex[options=-s athel]

\makeatletter
\newcommand{\possiblecomma}{\@addpunct{,} }
\makeatother

\begin{document}

Here we index that title\index{whatislife@\textit{What is life?}}

We also index another entry\index{normal}

\printindex

\end{document}

在此处输入图片描述

相关内容