imakeidx での二重カウント

imakeidx での二重カウント

私は系図に関する内容の科学論文を書いています。そのため、ファイルにはたくさんの名前が出てきます。そこで、imakeidx を使ってすべての名前のインデックスを作成しました。それでは、私の問題です。

場合によっては、2 人の人物が同じ名前を持ち、PDF ファイルの同じページに登場することがあります。そのため、この名前のエントリはインデックスに 1 回だけ登場します。しかし、私は自分の論文で言及されているすべての人物をインデックスに含めたいと考えています。それは可能ですか?

これが私の最小限の LaTeX コードです:

\documentclass[10pt,a4paper]{book}
\usepackage[paper=a4paper,left=25mm,right=25mm,top=25mm,bottom=50mm]{geometry}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage[english]{babel}

\usepackage{imakeidx}
\makeindex[name=A,title={index of mentioned persons},columns=2] 

\begin{document}
John Doe\index[A]{John Doe}\newline
John Doe\index[A]{John Doe}


\printindex[A] 
\end{document}

この例の出力は次のようになります。

ジョン・ドゥ、1

でも私はこんなものが欲しい

ジョン・ドゥ、1、1

編集: なぜそのようにする必要があるのか​​、理由を問わないでください。奇妙に見えるのはわかっています。特定の統計評価のために必要なだけです。

答え1

および `.idx ファイルがあるはずです.ind。アルファベット順に並べられた .ind ファイルで「重複した」名前を探し、重複しているページ番号と追加のページ番号を確認します。

Makeindexには「ダム」ASCIIソート機能があります。エントリがその通りスペースも含めてすべて同じで、別々にソートされるので、解決策は通常、「余分な」スペースを取り除くことです。

ファイル内の名前を探します.idx。ファイルはページ番号順に並べられています。エントリは中括弧で囲まれているため、異常なスペースを見つけるのは簡単です。

次にテキストファイルを開き、一致しないエントリを見つけて修正します。インデックスの「余分な」行に表示された他のエントリを修正して、この手順を再度実行しなくて済むようにします。全て名前が重複している場合は、再実行してください。

ちなみに、リストに載ることはありません

ジョン・ドゥ、1、1

同じページ上のすべてのインスタンスは、単一のページ番号の下にリストされます。

関連情報