重新定义页码会导致索引消失

重新定义页码会导致索引消失

这是我的代码:

\documentclass[a4paper]{scrbook}
\usepackage{imakeidx}
\makeindex
\begin{document}
\renewcommand*\thepage{\thechapter---\arabic{page}}

text\index{test}

\printindex
\end{document}

此文件只有两页,没有索引。当我注释掉该行时\renewcommand*\thepage{\thechapter---\arabic{page}},索引会在第三页生成。

我按照故障排除步骤操作,并从中获取了 MWE,这个问题;我从中获取了修改后的页码这个。

答案1

默认的“页面合成器”是一个连字符。

---你可以使用个人风格来改变它。最简单的方法是.ist在工作目录中生成一个文件。

\begin{filecontents*}{emdash.ist}
page_compositor "---"
\end{filecontents*}

\documentclass[a4paper]{scrbook}
\usepackage{imakeidx}

\makeindex[options=-s emdash]

\renewcommand*\thepage{\thechapter---\arabic{page}}

\begin{document}

\chapter{Title}

text\index{test}

\printindex

\end{document}

在此处输入图片描述

来源:http://texdoc.net/texmf-dist/doc/support/makeindex/ind.pdf

可在您的 TeX Live 系统上使用texdoc ind

当然,在打印索引之前,您可以自行更改页码格式。

相关内容