这篇文章是对如何从每个索引条目中普遍删除逗号。
在链接中,我正在寻找一种通用的方法来删除每个索引条目中的逗号。
沃纳建议在序言中纳入以下内容:
\begin{filecontents*}[overwrite]{\jobname.ist}
delim_1 " "
\end{filecontents*}
\makeindex[options=-s \jobname]
然而,由于我最近安装的 TexLive 版本存在问题,我无法使用他的答案。
因此,我想我会尝试修改他的答案,希望能够利用他的优秀方法。
长话短说就是这样的——最终,我发现我可以消除[overwrite]
(这给我带来了问题),将改为\makeindex[options=-s \jobname]
简单的\makeindex
,并将jobname
扩展名从ist
改为mst
,从而给我有效的代码:
\documentclass{book}
\begin{filecontents*}{\jobname.mst}
delim_1 " "
\end{filecontents*}
\usepackage{imakeidx}
\let\cleardoublepage\clearpage
%\makeindex[options=-s \jobname]
\makeindex
\usepackage{idxlayout}
\usepackage{xcolor}
\begin{document}
\large
Some words.
\index{HEADING@\textbf{HEADING}!02@\textbf{\color{red}{\textit{How to universally remove the comma?}}}}
\index{HEADING@\textbf{HEADING}!03@\textbf{\color{red}{\textit{How to universally remove the comma?}}}}
\index{HEADING@\textbf{HEADING}!04@\textbf{\color{red}{\textit{How to universally remove the comma?}}}}
\index{HEADING@\textbf{HEADING}!05@\textbf{\color{red}{\textit{How to universally remove the comma?}}}}
\index{HEADING@\textbf{HEADING}!06@\textbf{\color{red}{\textit{How to universally remove the comma?}}}}
\idxlayout{columns=1}
\printindex
\end{document}
使用所需的索引:
问题:有人能解释一下,在我进行的所有消除之后,为什么当我使用\jobname.mst
(Werner 没有使用)时代码似乎运行良好,但当我使用 时却异常终止\jobname.ist
;更简单地说,相对于这个问题,为什么\jobname.mst
有效而\jobname.ist
无效?
谢谢。
答案1
makeindex 的选项-s
(以及\makeindex
此包中的命令)必须是包括扩展名的完整文件名,因此-s \jobname.ist
尽管 makeindex 样式不依赖于特定的 tex 文件内容,但我不会每次都用 写出来filecontents
。将其另存为nocomma.ist
并使用-s nocomma.ist