我想要一个索引条目引用另一个条目,但不添加逗号。我目前这样做:
\newcommand{\gobblecomma}[1]{}
然后在文本本身中出现一个条目时:
\index{<Entry>!{}\gobblecomma@|seealso{<AlsoEntry>}}
上面的部分正好产生了我正在寻找的索引格式。但是,由于每次在有此类条目的文本中输入第二行时,这行都相当长,所以我想缩短它。我尝试使用:
\newcommand{\gobblecomma}[1]{}
\newcommand{\alsoindex}[2]{\index{#1!{}\gobblecomma@|seealso{#2}}}
然后在文本本身中:
\alsoindex{<Entry>}{<AlsoEntry>}
但是,这完全忽略了“\gobblecomma@”部分。我该如何解决这个问题?编译后它看起来像这样:
\documentclass[10pt, twoside, a4paper, twocolumn, openany, makeidx]{book}
\usepackage[totoc, initsep=0pt, columns=4]{idxlayout}
\usepackage{makeidx}
\newcommand{\gobblecomma}[1]{}
\newcommand{\alsoindex}[2]{\index{#1!{}\gobblecomma@|seealso{#2}}}
\makeatother
\makeindex
\begin{document}
random text entry
\index{Entry}
\alsoindex{Entry}{Alsoentry}
random other entry text
\index{Otherentry}
\index{Otherentry!{}\gobblecomma@|seealso{Alsoentry}}
more random text
\clearpage
\printindex
\end{document}
区别仅在于最终结果中“另请参阅”前面的逗号。