Я использую MikTeX и моя версия makeindex — 2.15
.
Простой документ, подобный следующему:
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{makeidx}
\makeindex
\begin{document}
\section{Introduction}
In this example several keywords\index{keywords} will be used
which are important and deserve to appear in the Index\index{Index}.
Terms like generate\index{generate} and some\index{others} will
also show up.
\printindex
\end{document}
pdflatex
после запуска и makeindex
на нем будет получен следующий вывод :
Scanning input file test.tex...done (0 entries accepted, 12 rejected).
Nothing written in test.ind.
Transcript written in test.ilg.
Однако в моем .idx явно есть все необходимые индексы, которые makeindex должен был создать:
\indexentry{keywords}{1}
\indexentry{Index}{1}
\indexentry{generate}{1}
\indexentry{others}{1}
Тем не менее, в .ind ничего не пишется, как указано в логе.
Это ошибка?
решение1
Если вы запустите LaTeX поверх своего файла, скажем , будет создан filename.tex
вспомогательный файл .filename.idx
Это файл, который makeindex
следует обработать; вызов
makeindex filename
выберет правильное расширение .idx
, поэтому нет необходимости его включать.
С другой стороны, нормальная работа imakeidx
заключается в автоматическом запуске makeindex
, поэтому этот дополнительный запуск не нужен, если только соответствующая noautomatic
опция не передана пакету.