Работа в системе LaTeX




Общие положения


Чтобы разметить файл для автоматической генерации индекса, нужно сделать две вещи. Во-первых, в преамбулу документа необходимо включить команду \makeindex. Во-вторых, при условии, что это сделано, можно пометить те места в тексте, на которые вы хотите сослаться в предметном указателе, командой \index (если команда \makeindex в преамбуле отсутствует, то команды \index ничему не мешают, но и никакого действия не оказывают). У этой команды один обязательный аргумент — текст вашей пометки (в простейшем случае такая пометка — это ключевое слово будущего предметного указателя). Информация о том, на какие страницы попали ваши пометки, будет записана в специальный файл с тем же именем, что и у вашего файла, и расширением idx (мы будем называть его idx-файлом). Пусть, например, в исходном файле встречались такие фрагменты4):

Многие люди любят домашних кошек.\index{Кошки} .... Хорошо также иметь собаку.\index{Собаки} .... Мало кто рискнет держать дома такую дикую кошку\index{Кошки}, как тигр.

Предположим, что первая ссылка на кошек попала на страницу 5, ссылка на собак попала на страницу 7, а вторая ссылка на кошек попала на страницу 9. Тогда в idx-файл запишется вот что:

\indexentry{Кошки}{5} \indexentry{Собаки}{7} \indexentry{Кошки}{9}

Полученный таким образом idx-файл — это и есть полуфабрикат указателя, созданный LaTeX'ом. Использовать этот полуфабрикат, однако же, еще нельзя: ссылки в idx-файле расположены не по алфавиту, а записаны " в порядке поступления", в idx-файле может присутствовать несколько строк с одним заглавным словом и ссылками на разные страницы, наконец, команда indexentry, с которой начинается каждая строка idx-файла, не определена в LaTeX'е (это сделано сознательно!).

Поэтому, получив idx-файл, надо его обработать с помощью программы makeindex; в результате получится файл с отсортированными по алфавиту терминами (обычно он имеет расширение ind и называется ind-файлом), который можно будет включить в окружение {theindex}, написав

\begin{theindex} \input{text.ind} \end{theindex}

Если вы заглянете в файл, полученный в результате работы программы makeindex, то увидите, что в окружении {theindex} каждый элемент указателя вводится командой \item ; команды \subitem и \subsubitem вводят элементы указателя, печатающиеся с дополнительными отступами (обычно это уточнения к заглавному слову) — вскоре мы объясним, что надо писать в аргументе команды \index, чтобы получить такую иерархию элементов указателя.


Содержание  Назад  Вперед