Re: Problema indici

#69191
OldClaudio
Partecipante
    Up
    0
    Down
    ::


    Suppongo che tu abbia letto la documentazione di imakeidx. Avrai quindi notato che nel preambolo devi specificare con le opzioni per \makeindex il titolo da dare all’indice particolare, il valore della etichetta particolare con ci identificare ogni indice, se il titolo dell’indice particolare va inserito nell’indice generale, quale file di stile devi usare, eccetera.
    Poi quando usi il comando \index devi specificare l’etichetta particolare che ti identifica l’indice nel quale vuoi inserire la particolare parola.

    Per esempio, nella GuidaGuIT ci sono sei indici analitici, uno general e 5 particolari; nel preambolo, quindi, ho messo sei dichiarazioni di \makeindex, delle quali una senza etichetta per l’indice generale.
    `
    \makeindex[options={-s GuidaGuIT.ist},intoc]
    \makeindex[options={-s GuidaGuIT.ist},intoc,name=GuidaGuITamb,title=Indice degli ambienti]
    \makeindex[options={-s GuidaGuITfiles.ist},intoc,name=GuidaGuITfile,title=Indice dei file]
    \makeindex[options={-s GuidaGuIT.ist},intoc,name=GuidaGuITclass,title=Indice delle classi]
    \makeindex[options={-s GuidaGuIT.ist},intoc,name=GuidaGuITpack,title=Indice dei pacchetti]
    \makeindex[options={-s GuidaGuIT.ist},intoc,name=GuidaGuITprog,title=Indice dei programmi e~delle distribuzioni]
    `
    Per tutti gli indici analitici passo al programma makeindex l’opzione per usare un particolare stile GuidaGuIT.ist di composizione dell’indice analitico diverso da quello di default; per l’indice dei file uso un altro stile ancora., ma trannee il primo indice di tipo generale, gli altri hanno la specificazione di un “name” e un “title”; il “name” è l’etichetta con cui identifico ciascun indice; quindi per mandare la locuzione “unità di misura” all’indice analitico generale scrivo semplicemente \index{unità di misura}, mentre per mandare nell’indice dei file il nome del file della classe book.cls, scrivo \index[GuidaGuITfile]{book.cls].

    Naturalmente in fondo al documento ci sono sei differenti comandi per stampare i sei indici:
    `
    \printindex
    \printindex[GuidGuITamb]

    \printindex[GuidaGuITprog]
    `

    Ci pens il pacchetto imakeidx a lanciare dietro el quinte il programma che separa gli indici (se ce ne fosse bisogno) e a lanciare sei volte il comando da terminale makeindex con tutti i parametri che occorrono per produrre i veri indici ordinati alfabeticamente e strutturalmente, in modo che i vari comandi printindex possano incorporare i vari file da comporre come LaTeX sa fare con il suo ambiente theindex.

    Sono contento che tu sia “incappato” in imakeindx; è talmente comodo che io non ne potrei più fare a meno e non risco a convincere il curatore della classe memoir che si tratta di una vera leccornia tipografica; e non lo dico perché sono stato io il primo ad averne l’idea, ma perché Enrico è stato bravissimo a crearne il codice avanzato con il quale, con una fatica minima, si ottiene un risultato che secondo i procedimenti tradizionali dovrebbe essere condotto a mano con spreco di tempo e con la possibilità di infiniti errori nello scrivere i comandi sul terminale.

    Go to top