知識パッケージを使用してインデックスエントリを区別する方法

知識パッケージを使用してインデックスエントリを区別する方法

定義をマークし、インデックスの作成を簡素化するために、ナレッジ パッケージを使用しています。

私のエントリはすべて次の例のように定義されています。

\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}

完全な例

関連情報