当我编译以下内容时:
\documentclass[a4paper]{book}
\usepackage[english]{babel}
\usepackage{showidx}
\usepackage{imakeidx}
\makeindex
\begin{document}
\mainmatter
\chapter{Lorem Ipsum}
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Donec quam felis, ultricies nec, pellentesque eu, pretium quis, sem. Nulla consequat massa quis enim. Donec pede justo, fringilla vel, aliquet nec, vulputate eget, arcu. In enim justo, rhoncus ut, imperdiet a, venenatis vitea\index{vitae}, justo. Nullam dictum felis eu pede mollis pretium. Integer tincidunt. Cras dapibus. Vivamus elementum semper nisi. Aenean vulputate eleifend tellus. Aenean leo ligula, porttitor eu, consequat vitae, eleifend ac, enim. Aliquam lorem ante, dapibus in, viverra quis, feugiat a, tellus. Phasellus viverra nulla ut metus varius laoreet. Quisque rutrum. Aenean imperdiet. Etiam ultricies nisi vel augue\index{augue}. Curabitur ullamcorper ultricies nisi. Nam eget dui.
Nam pretium turpis et arcu. Duis arcu tortor, suscipit eget, imperdiet nec, imperdiet iaculis, ipsum. Sed aliquam ultrices mauris. Integer ante arcu, accumsan a, consectetuer eget, posuere ut, mauris. Praesent adipiscing. Phasellus ullamcorper ipsum rutrum nunc. Nunc nonummy metus. Vestibulum volutpat pretium libero. Cras\index{cras} id dui. Aenean ut eros et nisl sagittis vestibulum. Nullam nulla eros, ultricies sit amet, nonummy id, imperdiet feugiat, pede. Sed lectus. Donec mollis hendrerit risus. Phasellus nec sem in justo pellentesque facilisis. Etiam imperdiet imperdiet orci. Nunc nec neque. Phasellus leo dolor, tempus non, auctor et, hendrerit quis, nisi.
\printindex
\end{document}
索引显示在页面顶部,而不是显示在索引定义位置旁边的页边距中。这很奇怪,我似乎找不到遇到此问题的人。
我在 Linux Mint 18 中使用 TeXLive (2015/Debian),它在 PDFLaTeX 和 XeLaTeX 中都出现这种情况。我做错了什么吗?我的文档在您的设置下编译是否相同?我希望这个问题能得到解决,因为我不想\marginpar{\small ...}}
每次都使用索引,也不想\index
冒着搞砸的风险更新命令。
答案1
一个小鸟告诉我,showidx
索引甚至不应该在页边空白处显示。showidx
在我看来,这有点违背了整个目的,但是嘿,我想我可以解决这个问题。
我的解决方案如下:
\let\oldindex\index
\renewcommand{\index}[1]{\oldindex{#1}\marginpar{\small#1}}
这似乎有效。索引没有关闭,并且仍然打印在文档末尾。最重要的是:我得到了文本旁边整齐的索引,就像我一直想要的那样。