需要使用带有破折号的LaTeXmakeindex
样式来指示子项和子子项。发布Makeidx、子条目和破折号看起来像是这张票。根据建议的补充,以及从其他地方补充的几条内容,这是修改后的.ist
preamble "\\begin{theindex}\\thispagestyle{empty}\n"
quote '+'
headings_flag 1
heading_suffix ""
item_1 "\n \\subitem --- "
item_x1 "\n \\subitem --- "
item_2 "\n \\subsubitem --- --- "
item_x2 "\n \\subsubitem --- --- "
delim_0 ": "
delim_1 ": "
delim_2 ": "
delim_r "-"
suffix_2p "\\,f."
suffix_3p "\\,ff."
以下 LaTeX MWE 使用上述样式文件进行了测试(idxlayout 包用于消除缩进并获取多列索引)
\documentclass{article}
\usepackage{makeidx}
\usepackage[subindent=0pt,subsubindent=0pt, totoc=true]{idxlayout}
\makeindex
\begin{document}
ParentA\index{ParentA}, SubAA\index{ParentA!SubAA}, SubAB\index{ParentA!SubAB}, SubAC\index{ParentA!SubAC}
ParentB\index{ParentB}, SubBA\index{ParentB!SubBA}, SubsubBAA\index{ParentB!SubBA!SubsubBAA}, SubsubBAB\index{ParentB!SubBA!SubsubBAB}, SubBB\index{ParentB!SubBB}
\printindex
\end{document}
问题是,在输出中,子项列表中的第一个子项没有得到前面的破折号
即使第二个、第三个等也一样。所需的索引输出是
仅当父项本身在文档中被索引(因此在索引中获得页码)时,才会出现不期望的输出。我如何才能实现所需的索引格式?
答案1
我做了一些研究,找到了答案。两个更多的需要在.ist
文件中添加以下行,即
item_01 "\n \\subitem --- "
item_12 "\n \\subsubitem --- --- "
例如item_01
,
Command to be inserted between a level 0 item and a level 1 item.
该命令item_x1
是
Command to be inserted between a level 0 item and a level 1 item, where the level 0 item does not have associated page numbers.
item_12
和之间有类似的区别item_x2
。将这两个命令添加到.ist
文件即可达到所需的效果,无论父索引项是否具有页码。
引用的描述来自 Overleaf 网站,网址为https://www.overleaf.com/learn/latex/Indices。