谢谢大卫·卡莱尔他帮助我按中间名对索引条目进行排序。现在我希望关联的子条目不重复条目的文本:因此条目将读作
Gaius Julius Sneezer
Hayfever, 1
March, 1
而不是每次都重复输入。
\documentclass[a4paper]{article}
\usepackage{imakeidx}
\makeindex[title=Index of Romans]
\newcommand\rindex[1]{\xrindex#1\relax}
\def\xrindex#1 #2 #3\relax{\index{#2 #1 #3@#1 #2 #3}}
\begin{document}
This is text.
\rindex{Gaius Julius Sneezer!Hayfever}
\rindex{Gaius Julius Sneezer!March}
\rindex{Marcus Tullius Snifero!Allergies}
\rindex{Marcus Tullius Snifero!Dust}
\printindex
\end{document}
答案1
我为这些案例引入了第二个命令!
,当然您可以变得更复杂,并使用单个命令进行一些测试,但我会保持简单。
\documentclass[a4paper]{article}
\usepackage{imakeidx}
\makeindex[title=Index of Romans]
\newcommand\rrindex[1]{\xrrindex#1\relax}
\def\xrrindex#1 #2 #3!#4\relax{\index{#2 #1 #3@#1 #2 #3!#4}}
\begin{document}
This is text.
\rrindex{Gaius Julius Sneezer!Hayfever}
\rrindex{Gaius Julius Sneezer!March}
\rrindex{Marcus Tullius Snifero!Allergies}
\rrindex{Marcus Tullius Snifero!Dust}
\printindex
\end{document}