![如何使用知识包区分索引条目](https://linux22.com/image/475875/%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8%E7%9F%A5%E8%AF%86%E5%8C%85%E5%8C%BA%E5%88%86%E7%B4%A2%E5%BC%95%E6%9D%A1%E7%9B%AE.png)
我正在使用知识包来标记定义并简化索引的创建。
我的条目均按以下示例定义:
\documentclass{book}
\usepackage[paper,makeidx]{knowledge}
\makeindex
\knowledge{index style=textbf,index=time!sidereal}
| sidereal time
| Sidereal time
\knowledge{index style=textbf,index=time!solar}
| solar time
| Solar time
\begin{document}
\intro{Sidereal time} is defined as a thing.
\newpage
If you remember, \kl{sidereal time} is a thing.
\newpage
Stuff\index{time} is still a thing. \kl{Solar time} is something else.
\printindex
\end{document}
这会产生以下索引条目:
时间,3
恒星,1、2
太阳的,2
“恒星时”的术语\intro
在第 1 页,其余参考资料是一个\kl
条目和一个简单的\index
条目。
没有\intro
“太阳时”的术语(即定义)。
我希望这些\intro
术语是唯一以粗体引用的术语。
我在知识包文档中找到了此自定义示例,但它改变了\intro
和\kl
:
\def\knowledgeIntroIndexStyle#1{\fbox{#1}}
我如何区分\intro
风格(自动或甚至仅部分自动)?
答案1
如果你通过样式来设置它,它就会起作用。定义样式
\knowledgestyle{indexbf}{index style=textbf}
并将其用作intro style
\knowledge{intro style=indexbf, index=time!sidereal}
...
注意你也可以默认设置
\knowledgedefault*{intro style=indexbf}
完整示例:
\documentclass{book}
\usepackage[paper,makeidx]{knowledge}
\makeindex
\knowledgestyle{indexbf}{index style=textbf}
\knowledgedefault*{intro style=indexbf}
\knowledge{index=time!sidereal}
| sidereal time
| Sidereal time
\knowledge{index=time!solar}
| solar time
| Solar time
\begin{document}
\intro{Sidereal time} is defined as a thing.
\newpage
If you remember, \kl{sidereal time} is a thing.
\newpage
Stuff\index{time} is still a thing. \kl{Solar time} is something else.
\printindex
\end{document}