Múltiplos índices

As capacidades de indexação padrão do LaTeX (as fornecidas pelo pacote makeidx) fornecem apenas um índice em seu documento; mesmo documentos bastante modestos podem ser melhorados por índices para tópicos separados.

O pacote multind fornece indexação múltipla simples e direta. Você marca cada comando \makeindex, \index e \printindex com o nome de um arquivo, e os comandos de indexação são gravados no (ou lidos do) nome com a extensão apropriada (idx ou ind) incluída. O comando \printindex foi modificado a partir de uma versão antiga do padrão LaTeX 2.09 , de modo que ele não cria seu próprio título de capítulo ou seção; portanto, você decide quais nomes (ou mesmo o nível de secionamento) devem ser usados para os índices, e o \indexname é completamente ignorado.

Para criar um índice “geral” e outros de “autores”, pode-se escrever:

\usepackage{multind}
\makeindex{general}
\makeindex{authors}
...
\index{authors}{Eccentric Professor}
...
\index{general}{FAQs}
...
\printindex{general}{General index}
\printindex{authors}{Author index}
Para concluir o trabalho, execute o LaTeX em seu arquivo um número de vezes suficiente para que os rótulos etc. fiquem estáveis e, em seguida, execute os comandos
makeindex general
makeindex authors
antes de executar o LaTeX novamente. Observe que os nomes dos arquivos de índice a serem processados não estão necessariamente relacionados ao nome do arquivo LaTeX que você está processando. (Não há documentação que venha com o pacote: o que você vê acima é o melhor que você vai obter…)

O pacote multind não funciona com as classes AMSLaTeX classes, mas a AMS fornece um substituto, o pacote amsmidx . O pacote amsmidx é utilizado mais ou menos da mesma maneira que o multind, mas se as coisas não estiverem claras, existe documentação (ao contrário do multind).

O pacote index fornece um conjunto abrangente de recursos de indexação, incluindo um comando \newindex que permite a definição de novos estilos de índice. O \newindex aceita uma ‘tag’ (para ser usada em comandos de indexação), substituições para as extensões de arquivos idx e ind e um título para o índice quando ele for finalmente impresso; ele também pode alterar o item que está sendo indexado (por exemplo, pode-se ter um índice de artistas cuja referência seja o número da figura em que o trabalho de cada um é mostrado).

Ao utilizar o index para criar um índice de autores junto com um índice “normal”, deve-se começar pelos comandos de preâmbulo

\usepackage{index}
\makeindex
\newindex{aut}{adx}{and}{Name Index}
que carregam o pacote, definem um índice “principal” (no estilo original) e, então, definem um índice de autores. Então, no corpo do documento, poderíamos encontrar comandos como:
\index[aut]{Another Idiot}
...
\index{FAQs}
que colocam uma entrada no índice de autores e, em seguida, uma no índice principal. No final do documento, temos os comandos:
\printindex
\printindex[aut]
que vão imprimir o índice principal e, em seguida, o índice de autores. Supondo que esta parte esteja em myfile.tex, depois de executar o LaTeX um número suficiente de vezes para que os rótulos fiquem estáveis, execute os seguintes comandos (comandos de shell do tipo Unix são mostrados aqui, mas o princípio é o mesmo para qualquer sistema que você esteja usando):
makeindex myfile
makeindex myfile.adx -o myfile.and
e execute o LaTeX novamente. Os comandos makeindex processam o myfile.idx para myfile.ind (essa é a ação “default”) e, em seguida, o myfile.adx para myfile.and, os dois arquivos necessários como entrada para os dois comandos \printindex em myfile.tex.

O pacote splitidx pode funcionar da mesma maneira que os outros: carregar o pacote com a opção split e declarar cada índice com um comando \newindex:

\newindex[‹index name›]{‹shortcut›}
e splitidx vai gerar um arquivo \jobname.‹shortcut para receber entradas de índice geradas por comandos como o \sindex[‹shortcut›]{‹item›}. Tal qual os outros pacotes, esse método é limitado pelo número total de arquivos de saída do TeX. Contudo, o splitindex também vem com um pequeno executável splitindex (disponível para uma variedade de sistemas operacionais); se você usar este programa auxiliar (e não usar o split), não haverá limite para o número de índices. Fora esse truque, o splitidx suporta as mesmas coisas que o index. Um exemplo de uso aparece na documentação.

O pacote imakeidx pode fazer uma série de coisas (em particular, ele pode executar um construtor de índice — via comandos \write18 — de modo a simplificar a geração da versão final de um documento). O pacote também pode fazer vários índices; ele pode fazer o trabalho da maneira convencional (multind), ou usar o script externo splitindex fornecido com o pacote splitindex. (Esse arranjo permite uma operação eficiente com números pequenos de índices, enquanto mantém a flexibilidade de permitir grandes números de índices sem esbarrar na restrição de números de fluxos de saída ativos.)

A classe memoir tem sua própria funcionalidade de índice múltiplo (assim como suas próprias opções de layout de índice, que outros pacotes delegam ao estilo de índice usado pelo makeindex).

amsmidx.sty
Part of the AMS class distribution amscls
imakeidx.sty
imakeidx
index.sty
index
makeidx.sty
Part of the LaTeX distribution
memoir.cls
memoir
multind.sty
multind
splitidx.sty and splitindex
splitindex


Do you have any question? Ask on: latex.net.br - we love qood questions!