PDFLatex:無法產生索引

PDFLatex:無法產生索引

主文件:

\documentclass[dvipsnames,cmyk]{book}

% File Containing All the Control Settings
\usepackage{../../Style/mystyle}
\makeindex

\begin{document}

% Front Cover
\include {Front_Cover/frontcover}


% Chapters
\include {Chapters/CH_Analysis_of_Algorithms/Analysis_of_Algorithms}
\include {Chapters/CH_Abstract_Data_Types/Abstract_Data_Types}
\include {Chapters/CH_Arrays/Arrays}
\include {Chapters/CH_Linked_Lists/Linked_Lists}
\include {Chapters/CH_Stacks/Stacks}
\include  {Bibliography/biblio}

% Index
\printindex
\end{document}

我編譯如下:

$pdflatex master.tex

=>idx產生空文件

$makeindex master.idx

這是 makeindex,版本 2.15 [TeX Live 2012](kpathsea + 泰語支援)。掃描輸入檔 master.idx...done(接受 0 個條目,拒絕 0 個條目)。 master.ind 中沒有寫任何內容。成績單寫在 master.ilg 中。

$pdflatex master.tex

輸出:沒有索引的 PDF。

我正在使用命令列進行編譯pdflatex(不要使用latex以避免圖形裝箱問題)

請指導我解決這個問題。

答案1

(只是為了結束這件事:)在你給定的 MWE 中有兩個問題:

  1. 我看不到您加載 package makeidx。看來你加載了它mystyle.sty(你引用的消息告訴了這一點)。
  2. 正如 Heiko 提到的,你的 MWE 中沒有宏\index{...}

適合您的情況的真實工作 MWE 如下所示:

%http://tex.stackexchange.com/questions/68538/pdflatex-unable-to-generate-index
\documentclass{book}

\usepackage{makeidx}   % load package
\makeindex             % make file(s) *.idx

\begin{document}
Test\index{Test} Text\index{Text|textbf}

\printindex            % print index here
\end{document}

結果是,現在一切正常。自己建造這樣的 MWE 對您了解 TeX/LaTeX 的工作原理有很大幫助。希望這對您有幫助。

答案2

從 TexnicCenter呼叫時makeindex我收到了相同的錯誤訊息。它篩選了mydocument.idx運行 LaTeX 時創建的空文件,隨後發現沒有任何條目,也沒有產生任何輸出。我在mydocument.nlo它們應該在的地方找到了術語。因此,makeindex只是採用了錯誤的輸入文件,因此沒有產生任何輸出,因為它是空的。

所以你必須makeindex透過windows中的命令視窗(cmd)自行調用。您必須進入文件所在的目錄(帶有cd...)然後運行

makeindex <filename>.nlo -s nomencl.ist -o <filename>.nls

並且確實makeindex生成了輸出檔mydocuemnt.nls

當您再次執行 LaTeX 時,它會尋找mydocument.nls並產生術語清單。

相關內容