我正在格式化一本有相当广泛索引的书,我正在尝试弄清楚如何更改长行换行的缩进量。作者想要引用整个书名,这些书名可能很长而且会换行。其余行缩进量很大,远远超过我们需要的量。它是两列格式,每列约 2 英寸,缩进量至少为 3/4 英寸,只留下大约 1.25 英寸作为长书名的细长列。
我想做的是减少缩进量。没必要缩进那么多。
我不清楚索引的缩进设置存储在哪里或如何更改它们。
似乎有两个缩进级别。一个用于子元素(约 3/8 英寸,另一个用于换行,正好是其两倍。
我正在使用 makeindex 和 printindex,并使用 scrbook (koma) 书籍类通过 xelatex 将其编译为 PDF。我真的很想继续使用这些,因为这本书已经格式化了,我现在担心交换基本格式参数。
一些网页表明我可能能够使用“.ist”文件,但我无法找到有关如何使用该文件来更改缩进级别的文档。
答案1
theindex
基本上是一个可能是列表但也可能不是列表的环境。.ist
声明了序言的样子以及\item
解释的方式。例如,作为 LaTeX 默认设置, \item
是\n\item
,如所定义item_0
。
您可以(至少)在两个位置更改格式:
- 您可以编写自己的 .ist 文件。有关文档,请参阅例如makeindex 的手册页。
- 如果是
scrapbook.cls
,您可以使用默认设置,并尝试重新定义\@idxitem
(什么是本地的\item
),如果您愿意的话,还可以尝试\subitem
和\subsubitem
。
目前,它们可能会按以下方式进行修改:
\makeatletter
\renewcommand*\@idxitem{\par\hangindent 40\p@}
\renewcommand*\subitem{\@idxitem \hspace*{20\p@}}
\renewcommand*\subsubitem{\@idxitem \hspace*{30\p@}}
\makeatother