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:
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\usepackage{multind} \makeindex{general} \makeindex{authors} ... \index{authors}{Eccentric Professor} ... \index{general}{FAQs} ... \printindex{general}{General index} \printindex{authors}{Author index}
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…)makeindex general makeindex authors
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
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:\usepackage{index} \makeindex \newindex{aut}{adx}{and}{Name Index}
que colocam uma entrada no índice de autores e, em seguida, uma no índice principal. No final do documento, temos os comandos:\index[aut]{Another Idiot} ... \index{FAQs}
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):\printindex \printindex[aut]
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 comandosmakeindex myfile makeindex myfile.adx -o myfile.and
\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
:
e splitidx vai gerar um arquivo\newindex
[‹index name›]
{‹shortcut›}
\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).
This question on the Web: http://latex.net.br/faq/FAQ-multind.html
Do you have any question? Ask on: latex.net.br - we love qood questions!