我正在使用该imakeidx
包来生成和格式化我的索引。我想要删除索引的两个子条目之间的换行符。这样,属于同一索引类别的条目将一个接一个地放置 - 用逗号或其他用户定义的分隔符分隔。
下面我提供一个 MWE:
\documentclass{article}
\usepackage{lipsum}
\usepackage{imakeidx}
\makeindex[name=wdes,title=Initia Heirmorum,columns=1]
\begin{document}
\lipsum \index[wdes]{1st!38@38, 35}
\lipsum \index[wdes]{1st!38@38, 30}
\lipsum \index[wdes]{1st!38}
\lipsum \index[wdes]{1st!25@25}
\lipsum \index[wdes]{2nd!a}
\lipsum \index[wdes]{2nd!b}
\printindex[wdes]
\end{document}
输出中生成的索引如下所示:
我需要的是类似以下内容:
有任何想法吗???
答案1
您要做的是创建一个名为的文件,mystyle.ist
其内容如下:
item_1 ", "
options=-s mystyle
然后在生成索引时添加选项
\makeindex[name=wdes,title=Initia Heirmorum,columns=1,options=-s mystyle]
您就完成了。
平均能量损失
\documentclass{article}
\usepackage{lipsum}
\usepackage{imakeidx}
\makeindex[name=wdes,title=Initia Heirmorum,columns=1,options=-s mystyle]
\begin{document}
\lipsum \index[wdes]{1st!38@38, 35}
\lipsum \index[wdes]{1st!38@38, 30}
\lipsum \index[wdes]{1st!38}
\lipsum \index[wdes]{1st!25@25}
\lipsum \index[wdes]{2nd!a}
\lipsum \index[wdes]{2nd!b}
\printindex[wdes]
\end{document}
输出
如果你使用评论中提到的样式文件,那么它的内容应该是
delim_0 "\\dotfill "
delim_1 ": "
delim_2 " \\dotfill "
item_1 ", "
结果是
例如,有关在线参考资料,请参见http://www.miwie.org/tex-refs/html/makeindex-style-file.html#makeindex-output-style-specs。当然,如果您有“The LaTeX Companion”,里面有描述。
答案2
我建议
delim_1 "; "
item_1 ", "
单独设置,longlines.ist
因为这样可以清楚地区分索引号和页码。item_1
如果没有按上述设置,则换行符来自设置。
将其添加options=-s longlines.ist
到\makeindex
选项列表。
\documentclass{article}
\usepackage{lipsum}
\usepackage{imakeidx}
\makeindex[name=wdes,title=Initia Heirmorum,columns=1,options=-s longlines.ist]
\begin{document}
\lipsum \index[wdes]{1st!38@38, 35}
\lipsum \index[wdes]{1st!38@38, 30}
\lipsum \index[wdes]{1st!38}
\lipsum \index[wdes]{1st!25@25}
\lipsum \index[wdes]{2nd!a}
\lipsum \index[wdes]{2nd!b}
\printindex[wdes]
\end{document}