Personalizzare indice analitico

  • Creatore
    Topic
  • #67191
    samiel
    Partecipante
      Up
      0
      Down
      ::


      Nell’«Arte» si consiglia di comporre l’indice analitico facendo ricorso a -s classic,
      per migliorarne l’aspetto standard che altrimenti risulterebbe.
      Ho visto però che si tratta dello stile previsto per arsclassica.
      Cercando ipotetici altri file di stili, con locate trovo:
      `usr/local/texlive/2011/texmf-dist/makeindex
      /usr/local/texlive/2011/texmf-dist/makeindex/arsclassica
      /usr/local/texlive/2011/texmf-dist/makeindex/arsclassica/classic.ist
      /usr/local/texlive/2011/texmf-dist/makeindex/babel
      /usr/local/texlive/2011/texmf-dist/makeindex/babel/bbglo.ist
      /usr/local/texlive/2011/texmf-dist/makeindex/babel/bbind.ist
      /usr/local/texlive/2011/texmf-dist/makeindex/base
      /usr/local/texlive/2011/texmf-dist/makeindex/base/din.ist
      /usr/local/texlive/2011/texmf-dist/makeindex/base/icase.ist
      /usr/local/texlive/2011/texmf-dist/makeindex/base/latex.ist
      /usr/local/texlive/2011/texmf-dist/makeindex/base/math.ist
      /usr/local/texlive/2011/texmf-dist/makeindex/base/mkind.ist
      /usr/local/texlive/2011/texmf-dist/makeindex/base/puncts.ist
      /usr/local/texlive/2011/texmf-dist/makeindex/base/tex.ist
      /usr/local/texlive/2011/texmf-dist/makeindex/bibarts
      /usr/local/texlive/2011/texmf-dist/makeindex/bibarts/gbibarts.ist
      /usr/local/texlive/2011/texmf-dist/makeindex/confproc
      /usr/local/texlive/2011/texmf-dist/makeindex/confproc/confproc1.ist
      /usr/local/texlive/2011/texmf-dist/makeindex/confproc/confproc2.ist
      /usr/local/texlive/2011/texmf-dist/makeindex/disser
      /usr/local/texlive/2011/texmf-dist/makeindex/disser/dtx.ist
      /usr/local/texlive/2011/texmf-dist/makeindex/dtk
      /usr/local/texlive/2011/texmf-dist/makeindex/dtk/dtk-adr.ist
      /usr/local/texlive/2011/texmf-dist/makeindex/dtk/dtk-idx.ist
      /usr/local/texlive/2011/texmf-dist/makeindex/fixlatvian
      /usr/local/texlive/2011/texmf-dist/makeindex/fixlatvian/lv.ist
      /usr/local/texlive/2011/texmf-dist/makeindex/gatech-thesis
      /usr/local/texlive/2011/texmf-dist/makeindex/gatech-thesis/gatech-thesis-index.ist
      /usr/local/texlive/2011/texmf-dist/makeindex/gmdoc
      /usr/local/texlive/2011/texmf-dist/makeindex/gmdoc/gmglo.ist
      /usr/local/texlive/2011/texmf-dist/makeindex/index
      /usr/local/texlive/2011/texmf-dist/makeindex/index/bibref.ist
      /usr/local/texlive/2011/texmf-dist/makeindex/iso
      /usr/local/texlive/2011/texmf-dist/makeindex/iso/iso.ist
      /usr/local/texlive/2011/texmf-dist/makeindex/juraabbrev
      /usr/local/texlive/2011/texmf-dist/makeindex/juraabbrev/laws.ist
      /usr/local/texlive/2011/texmf-dist/makeindex/l3kernel
      /usr/local/texlive/2011/texmf-dist/makeindex/l3kernel/l3doc.ist
      /usr/local/texlive/2011/texmf-dist/makeindex/latex
      /usr/local/texlive/2011/texmf-dist/makeindex/latex/gglo.ist
      /usr/local/texlive/2011/texmf-dist/makeindex/latex/gind.ist
      /usr/local/texlive/2011/texmf-dist/makeindex/memoir
      /usr/local/texlive/2011/texmf-dist/makeindex/memoir/basic.gst
      /usr/local/texlive/2011/texmf-dist/makeindex/minitoc
      /usr/local/texlive/2011/texmf-dist/makeindex/minitoc/minitoc-fr.ist
      /usr/local/texlive/2011/texmf-dist/makeindex/minitoc/minitoc.ist
      /usr/local/texlive/2011/texmf-dist/makeindex/mkgrkindex
      /usr/local/texlive/2011/texmf-dist/makeindex/mkgrkindex/lowercase-headers.ist
      /usr/local/texlive/2011/texmf-dist/makeindex/mkgrkindex/uppercase-headers.ist
      /usr/local/texlive/2011/texmf-dist/makeindex/multibib
      /usr/local/texlive/2011/texmf-dist/makeindex/multibib/mbgglo.ist
      /usr/local/texlive/2011/texmf-dist/makeindex/multibib/mbgind.ist
      /usr/local/texlive/2011/texmf-dist/makeindex/nomencl
      /usr/local/texlive/2011/texmf-dist/makeindex/nomencl/nomencl.ist
      /usr/local/texlive/2011/texmf-dist/makeindex/nomentbl
      /usr/local/texlive/2011/texmf-dist/makeindex/nomentbl/nomentbl.ist
      /usr/local/texlive/2011/texmf-dist/makeindex/nostarch
      /usr/local/texlive/2011/texmf-dist/makeindex/nostarch/nostarch.ist
      /usr/local/texlive/2011/texmf-dist/makeindex/plain
      /usr/local/texlive/2011/texmf-dist/makeindex/plain/plaintex.ist
      /usr/local/texlive/2011/texmf-dist/makeindex/repeatindex
      /usr/local/texlive/2011/texmf-dist/makeindex/repeatindex/repeatindex.ist
      /usr/local/texlive/2011/texmf-dist/makeindex/songbook
      /usr/local/texlive/2011/texmf-dist/makeindex/songbook/songbook.ist
      /usr/local/texlive/2011/texmf-dist/makeindex/startex
      /usr/local/texlive/2011/texmf-dist/makeindex/startex/stxglo.ist
      /usr/local/texlive/2011/texmf-dist/makeindex/startex/stxind.ist
      /usr/local/texlive/2011/texmf-dist/makeindex/xdoc
      /usr/local/texlive/2011/texmf-dist/makeindex/xdoc/docindex.ist`
      La GuidaGUIT al § 17.8 spiega come modificare il file di classe
      che genera l’indice determinandone l’aspetto. Ma tutti i file che ho elencato
      sopra sono file di stile alternativi? MI pare che in rete non ci sia molto
      su come modificare l’indice analitico. Io, nel caso specifico, adottando un font
      di una certa ampiezza (ad es TeXGyre Bonum anche lasciandolo a 10 pt)
      mi trovo ad esempio che le due colonne dell’indice
      quasi si toccano, e l’effetto non è certo gradevole… QUalche lume?

      Grazie
      M

    Visualizzazione 27 filoni di risposte
    • Autore
      Risposte
      • #67192
        Up
        0
        Down
        ::

        samiel” post=66168Nell’«Arte» si consiglia di comporre l’indice analitico facendo ricorso a -s classic,
        per migliorarne l’aspetto standard che altrimenti risulterebbe.
        Ho visto però che si tratta dello stile previsto per arsclassica.
        Cercando ipotetici altri file di stili, con locate trovo:
        `usr/local/texlive/2011/texmf-dist/makeindex
        /usr/local/texlive/2011/texmf-dist/makeindex/arsclassica
        /usr/local/texlive/2011/texmf-dist/makeindex/arsclassica/classic.ist
        /usr/local/texlive/2011/texmf-dist/makeindex/babel
        /usr/local/texlive/2011/texmf-dist/makeindex/babel/bbglo.ist
        /usr/local/texlive/2011/texmf-dist/makeindex/babel/bbind.ist
        /usr/local/texlive/2011/texmf-dist/makeindex/base
        /usr/local/texlive/2011/texmf-dist/makeindex/base/din.ist
        /usr/local/texlive/2011/texmf-dist/makeindex/base/icase.ist
        /usr/local/texlive/2011/texmf-dist/makeindex/base/latex.ist
        /usr/local/texlive/2011/texmf-dist/makeindex/base/math.ist
        /usr/local/texlive/2011/texmf-dist/makeindex/base/mkind.ist
        /usr/local/texlive/2011/texmf-dist/makeindex/base/puncts.ist
        /usr/local/texlive/2011/texmf-dist/makeindex/base/tex.ist
        /usr/local/texlive/2011/texmf-dist/makeindex/bibarts
        /usr/local/texlive/2011/texmf-dist/makeindex/bibarts/gbibarts.ist
        /usr/local/texlive/2011/texmf-dist/makeindex/confproc
        /usr/local/texlive/2011/texmf-dist/makeindex/confproc/confproc1.ist
        /usr/local/texlive/2011/texmf-dist/makeindex/confproc/confproc2.ist
        /usr/local/texlive/2011/texmf-dist/makeindex/disser
        /usr/local/texlive/2011/texmf-dist/makeindex/disser/dtx.ist
        /usr/local/texlive/2011/texmf-dist/makeindex/dtk
        /usr/local/texlive/2011/texmf-dist/makeindex/dtk/dtk-adr.ist
        /usr/local/texlive/2011/texmf-dist/makeindex/dtk/dtk-idx.ist
        /usr/local/texlive/2011/texmf-dist/makeindex/fixlatvian
        /usr/local/texlive/2011/texmf-dist/makeindex/fixlatvian/lv.ist
        /usr/local/texlive/2011/texmf-dist/makeindex/gatech-thesis
        /usr/local/texlive/2011/texmf-dist/makeindex/gatech-thesis/gatech-thesis-index.ist
        /usr/local/texlive/2011/texmf-dist/makeindex/gmdoc
        /usr/local/texlive/2011/texmf-dist/makeindex/gmdoc/gmglo.ist
        /usr/local/texlive/2011/texmf-dist/makeindex/index
        /usr/local/texlive/2011/texmf-dist/makeindex/index/bibref.ist
        /usr/local/texlive/2011/texmf-dist/makeindex/iso
        /usr/local/texlive/2011/texmf-dist/makeindex/iso/iso.ist
        /usr/local/texlive/2011/texmf-dist/makeindex/juraabbrev
        /usr/local/texlive/2011/texmf-dist/makeindex/juraabbrev/laws.ist
        /usr/local/texlive/2011/texmf-dist/makeindex/l3kernel
        /usr/local/texlive/2011/texmf-dist/makeindex/l3kernel/l3doc.ist
        /usr/local/texlive/2011/texmf-dist/makeindex/latex
        /usr/local/texlive/2011/texmf-dist/makeindex/latex/gglo.ist
        /usr/local/texlive/2011/texmf-dist/makeindex/latex/gind.ist
        /usr/local/texlive/2011/texmf-dist/makeindex/memoir
        /usr/local/texlive/2011/texmf-dist/makeindex/memoir/basic.gst
        /usr/local/texlive/2011/texmf-dist/makeindex/minitoc
        /usr/local/texlive/2011/texmf-dist/makeindex/minitoc/minitoc-fr.ist
        /usr/local/texlive/2011/texmf-dist/makeindex/minitoc/minitoc.ist
        /usr/local/texlive/2011/texmf-dist/makeindex/mkgrkindex
        /usr/local/texlive/2011/texmf-dist/makeindex/mkgrkindex/lowercase-headers.ist
        /usr/local/texlive/2011/texmf-dist/makeindex/mkgrkindex/uppercase-headers.ist
        /usr/local/texlive/2011/texmf-dist/makeindex/multibib
        /usr/local/texlive/2011/texmf-dist/makeindex/multibib/mbgglo.ist
        /usr/local/texlive/2011/texmf-dist/makeindex/multibib/mbgind.ist
        /usr/local/texlive/2011/texmf-dist/makeindex/nomencl
        /usr/local/texlive/2011/texmf-dist/makeindex/nomencl/nomencl.ist
        /usr/local/texlive/2011/texmf-dist/makeindex/nomentbl
        /usr/local/texlive/2011/texmf-dist/makeindex/nomentbl/nomentbl.ist
        /usr/local/texlive/2011/texmf-dist/makeindex/nostarch
        /usr/local/texlive/2011/texmf-dist/makeindex/nostarch/nostarch.ist
        /usr/local/texlive/2011/texmf-dist/makeindex/plain
        /usr/local/texlive/2011/texmf-dist/makeindex/plain/plaintex.ist
        /usr/local/texlive/2011/texmf-dist/makeindex/repeatindex
        /usr/local/texlive/2011/texmf-dist/makeindex/repeatindex/repeatindex.ist
        /usr/local/texlive/2011/texmf-dist/makeindex/songbook
        /usr/local/texlive/2011/texmf-dist/makeindex/songbook/songbook.ist
        /usr/local/texlive/2011/texmf-dist/makeindex/startex
        /usr/local/texlive/2011/texmf-dist/makeindex/startex/stxglo.ist
        /usr/local/texlive/2011/texmf-dist/makeindex/startex/stxind.ist
        /usr/local/texlive/2011/texmf-dist/makeindex/xdoc
        /usr/local/texlive/2011/texmf-dist/makeindex/xdoc/docindex.ist`
        La GuidaGUIT al § 17.8 spiega come modificare il file di classe
        che genera l’indice determinandone l’aspetto. Ma tutti i file che ho elencato
        sopra sono file di stile alternativi? MI pare che in rete non ci sia molto
        su come modificare l’indice analitico. Io, nel caso specifico, adottando un font
        di una certa ampiezza (ad es TeXGyre Bonum anche lasciandolo a 10 pt)
        mi trovo ad esempio che le due colonne dell’indice
        quasi si toccano, e l’effetto non è certo gradevole… QUalche lume?

        Grazie
        M

        Parecchi di quei file .ist sono per scopi particolari, collegati con classi o pacchetti specializzati. Lo stile classic.ist fa pochissimo di diverso dallo standard: aggiunge le intestazioni per i gruppi di lettere (A, B, C, …).

        Le due colonne non si toccano se non dici loro che lo possono fare (eccetto il caso di “Overfull \hbox”, naturalmente). Come modifichi il codice per l’indice?

        Ciao
        Enrico

      • #67193
        samiel
        Partecipante
          Up
          0
          Down
          ::


          Le due colonne non si toccato, ma come nell’esempio allegato
          sono molto, probabilmente troppo ravvicinate.
          Mi chiedevo poi se ci fosero altri stili preconfezionati.
          Al momento non ho apportato alcuna modifica,
          nemmeno in termini di spazio anche perché non so ancora
          che font alla fine utilizzerò.
          Ad esempio, se modifico la riga
          `heading_prefix “\n \\item \\textsc {“`
          aggiungendo \\bfseries tutto il testo dell’indice risulta in grassetto.
          E se io volessi che solo le intestazioni (A, B, C, ecc)
          risultassero in grassetto? C’è qualcosa che si può leggere
          sull’argomento? Google mi ha portato a poco…

          M

          Attachments:
          You must be logged in to view attached files.
        • #67194
          OldClaudio
          Partecipante
            Up
            0
            Down
            ::


            Non ocnfondere i file .ist che dicono a makeindex come creare il codice da scrivere nel file .ind, con lo stile che usa LaTeX per comporre il file .ind nel documento composto;

            Il file .ist segue una grammatica molto semplice, ma anche limitata; qualche indicazione è scritta nel file ind.pdf nelle tabelle 1 e 2 e nella sezione 32.2; puoi leggere i documento con texdoc ind

            In ogni caso non devi scirvere cose come :
            `
            heading_prefix “\n \\item \\textsc {”
            `
            e poi chiedere il neretto, visto che il font small caps (maiuscoletto) non ha il neretto; caso mai potresti scirvere
            `
            heading_prefix “\n \\item \\textbf {”
            `
            Visto che tanto gli heaidngs sono costituiti solo da singole lettere maiuscole (tranne per l’intestazione dei simboli e quella dei numeri)
            Oppure ti accontenti del maiuscoletto chiaro, visto che quello scuro non c’è.

            Spero che l’indicazione della documentazione ti possa essere utile.

          • #67195
            samiel
            Partecipante
              Up
              0
              Down
              ::


              Ho dato un’occhiata veloce alla documentazione,
              stasera la leggo meglio. Grazie della segnalazione.
              Il testo di classic.ist è:
              `headings_flag 1
              heading_prefix “\n \\item \\textsc {”
              heading_suffix “}”
              symhead_positive “Simboli”
              symhead_negative “simboli”
              numhead_positive “Numeri”
              numhead_negative “numeri”`
              Peraltro nella documentazione di ind
              la voce “headings_flag” non esiste.
              A questo punto suppongo che per aumentare
              lo spazio fra colonne non sia da ritoccare
              classic.ist o qualsivoglia file personale del genere,
              bensì creare un ambiente personalizzato
              con multicol. Ma è solo un’ipotesi…
              Per quanto attiene alla personalizzazione ulteriore,
              non so quanto spazio ci sia per operare.
              Ad esempio, in un post a questo indirizzo
              http://www.linuxquestions.org/questions/linux-software-2/how-to-change-style-of-index-in-latex-550451/
              si chiedeva se era possibile formattare l’indice in questo modo:

              Index

              —-B—–
              background, 1

              —-H—–
              H.264, 2

              —-U—–
              UMTS, 3

              e la soluzione suggerita era:
              `headings_flag 1
              heading_prefix “{\\bfseries\\hfil— ”
              heading_suffix ” —\\hfil}\\nopagebreak\n”`
              Per cui un po’ di varietà è possibile produrla…
              M

            • #67196
              OldClaudio
              Partecipante
                Up
                0
                Down
                ::


                Ti ripeto, non confondere lo stile della cose che makeindex scrive nel file ind e quello che LaTeX produce con l’ambiente theindex.

                Per aumentaro lo spazio fra le colonne devi aocnfigurare questo spazio come lo usa theindex, cioè devi cambiare \columnwidth e \columnsep prima di invocare \printindex (magari confinando il tutto dentro a un gruppo affinché la modifica non si propaghi altrove.

                Siccome nella classe book (se è quella che usi,, lo spazio fra le colonne è hardwired dentro la definizione dell’ambiente theindex, devi procedere alla sua ridefinizione come indicato nella GuidGuIT.

              • #67197
                samiel
                Partecipante
                  Up
                  0
                  Down
                  ::


                  Chiarissimo, almeno in teoria.
                  Mi proverò….

                  Un’ultima cosa: è possibile, ad esempio, distinguere
                  le voci primarie, cioè item, dai subitem dell’indice,
                  facendo risultare le prime e solo quelle, in maiuscoletto?

                  M

                • #67198
                  OldClaudio
                  Partecipante
                    Up
                    0
                    Down
                    ::


                    Non lo puoi ottenere direttamante con il file di stile .ist, ma devi crearti una macro di indicizzazione che ti scriva la voce in maiuscoletto, per esempio:
                    `
                    \newcommand*\csindex[1]{\texsc{#1}\index{#1@\textsc{#1}}}
                    `

                    Cosi nel testo puoi scrivere:
                    `… \csindex{Pippo}, \csindex{Pluto} e \csindex{Topolino}…`

                  • #67199
                    samiel
                    Partecipante
                      Up
                      0
                      Down
                      ::


                      L’idea è buona, ma presenta un problema con i subitem.
                      Se infatti scrivo accelerazione/csindex{accelerazione}
                      tutto sembra filare liscio. Ma laddove io abbia dei subitem,
                      non posso scrivere \csindex invece di \index perché il mio
                      obiettivo è avere solo le voci principali in grassetto. Se allora
                      scrivo normalmente \index{accelerazione!schede ATI},
                      la voce principale non viene riconosciuta come tale.
                      Il risultato infatti è quello mostrato nell’immagine
                      che allego

                      M.

                      Attachments:
                      You must be logged in to view attached files.
                    • #67200
                      OldClaudio
                      Partecipante
                        Up
                        0
                        Down
                        ::


                        Non hai guardato bene la macro: \csindex fa due cose: scrive il suo argomento in maiuscoletto e scive nell’indice la chiave di sotring non maiuscoletta, ma maiuscoletta la voce nell’indice; se vuoi puoi togliere il ptrimo \textsc nella deifnizione, cosicché nel testo sciva la vace non maiuscoletta, e nell’inidice invece sì. ma quando metti un subitem, allora sciverai
                        `
                        … l'\csindex{accelerazione} misurata secondo la norma ATI\index(accelerazione!ATI} …
                        `
                        Poi puoi fare tutte le mdfiche che vuoi, ma certamente devi usare i comandi correttamente, sapendo che casa fa ciascuno e come l’hai deifinito.

                        Io ti ho dato solo un esempio, non ti ho risolto il problema; il tuo problema, dipende anche da come e che cosa vuoi scrivere.

                      • #67201
                        samiel
                        Partecipante
                          Up
                          0
                          Down
                          ::


                          Io vorrei che nel corpo del testo tutto risultasse normale.
                          Per cui si elimina il primo \textsc. Vorrei che nell’indice
                          le voci primarie, ossia gli item, risultassero in maiuscoletto
                          mentre le voci secondarie, cioè i subitem, in tondetto normale.
                          Con la tua macro ottengo due cose strane:
                          1. nel testo la voce da indicizzare risulta doppia
                          (se utlizzo la tua macro senza modifiche la voce la prima volta
                          appare normale e la seconda in maiuscoletto, se lo modifico
                          togliendo \textsc compare due volte, scritta di seguito in tondetto);
                          2. nell’indice scrivo le voci come tu stesso esemplificavi,
                          ma queste continuano ad apparire come nell’immagine
                          allegata al post precedente. Io naturalmente vorrei
                          una cosa del genere (uso il maiuscolo qui al posto
                          del maiuscoletto);

                          ACCELERAZIONE, 123
                          schede ATI, 125
                          schede Nvidia, 128

                          Grazie
                          M

                        • #67202
                          OldClaudio
                          Partecipante
                            Up
                            0
                            Down
                            ::


                            Riprendiamo tutto dal principio:
                            `
                            \newcommand*\csindex[1]{\texsc{#1}\index{#1@\textsc{#1}}}
                            `
                            esegue le azioni seguenti che usano l’argomento del comando tre volte:
                            1) \textsc{#1} scrive nel testo l’argomento in maiuscoletto;
                            2) \index{#1@\textsc{#1}} usa due volte l’argomento, e precisamente la prima volta per dare a makeindex una chiave per alfabetizzare, e la seocndo volta per scrivere la voce da indicizzare in maiuscoletto.

                            Perciò non puoi usare questo comando come se fosse semplicemente \index; è ovvio che se scrivi
                            `
                            accelerazione\csindex{accelerazione}
                            `
                            ti scrive due volte di seguito accelerazione, la prima volta perché l’hai scritto tu e la seconda perché l’ha scritto \csindex.

                            Vediamo se possiamo risolvere il tuo problema in modo che tu possa usare il comando \index nel solito modo, sia per la voce primaria, sia per le subalterne: non definire nessuna macro ma scrivi:
                            `
                            accelerazione\index{accelerazione@\textsc{accelerazione}} e le schede ATI\index{accelerazione!schede ATI}
                            `

                            Scrivere macro serve per introdurre meno roba nel file sorgente, e ridurre il rischio di errori; siccome la prima scrittura ti obbliga a scrivere accelerazione tre vole, la mia macro ti avrebbe permesso di scriverla una volta sola. Ma siccome non l’hai saputa leggere/interpretare e quindi non l’hai saputa usare bene (nonostante i miei esempi d’uso fossero espliciti), non usare macro e vai tranquillo.

                          • #67203
                            samiel
                            Partecipante
                              Up
                              0
                              Down
                              ::


                              Dici che una vita senza macro è comunque degna di essere vissuta? 🙂

                              Comunque adesso capisco il primo errore. Infatto ho corretto:

                              Se è abilitata l’\csindex{accelerazione grafica} nel kernel…

                              e in tal modo ho l’occorrenza giusta. Eliminando il primo \textsc inoltre
                              nel testo ho l’espressione in tondetto e non in maiuscoletto,
                              Perciò la macro risulta adesso:
                              `\newcommand*\csindex[1]{{#1}\index{#1@\textsc{#1}}}`

                              Poi però, come subitem, ho messo ad esempio:

                              il caso delle schede ATI Radeon\index{accelerazione grafica!schede ATI}

                              che non mi pare difforme dal tuo esempio. Ma appunto nell’indice ritrovo
                              li problema di cui sopra (vedi immagine). Cosa continua a sfuggirmi?
                              Ho semplicemente compilato il tuo esempio e il risultato è nell’immagine allegata.

                              M

                              Attachments:
                              You must be logged in to view attached files.
                            • #67204
                              samiel
                              Partecipante
                                Up
                                0
                                Down
                                ::


                                Dovendo stilare un lavoretto, mi son ridotto a modificare il file di indice a mano…

                                Per quanto riguarda il secondo problema (il primo in effetti era dovuto
                                al mio cattivo intendimento dell eindicazioni di Claudio), sbalgio io ancora
                                qualcosa? C’è una via d’uscita?

                                Grazie
                                M

                              • #67205
                                OldClaudio
                                Partecipante
                                  Up
                                  0
                                  Down
                                  ::


                                  Il tuo risultato mi ha lasciato di stucco; ho fatto delle prove e il file idx viene come deve venire, mentre poi l’elaborazione attraverso makeindex dà il tuo (e ora anche mio) risultato insoddisfacente. Nota che prescrivere la voce pricipale in carattere normale e il subitem in carattere diverso funziona benissimo.

                                  Devo penssarci su. Ti farò sapere; e nota che non si tratta di modificare l’ambiente theindex. devo trovare l’inghippo dentro a makeindex.

                                • #67206
                                  samiel
                                  Partecipante
                                    Up
                                    0
                                    Down
                                    ::


                                    Intanto ho corretto delle cose a mano per una cosa che dovevo terminare.
                                    Mi “solleva” un poco il fatto di non aver fatto altre “cavolate”.
                                    Attendo nuove perché da solo non saprei da dove incominciare
                                    nemmeno sotto tortura 🙂

                                    Grazie mille!
                                    M

                                  • #67207
                                    OldClaudio
                                    Partecipante
                                      Up
                                      0
                                      Down
                                      ::


                                      Ho letto con attenzione il file di documentazione di makeindex, ind.pdf.

                                      La cosa che desideri fare è impossibile con makeindex (non so se sia possibile con xindi, perché non l’ho mai usato, ma ne dubito).

                                      Ecco perché: le voci \index{pippo} e \index{pippo@\texsc{pippo}} sono due voci distinte che producono due entries distinte nel file ind, quello alfabetizzato e strutturato. Se è così, e chiaramente deve essere cosi, altrimenti verrebbero accomunate due voci distinte in una sola entry, e sarebbe sbagliato, non c’è niente da fare.

                                      Dunque bisogna rassegnarsi a non mettere in maiuscoletto la voce primaria. Nel caso uno fosse masochista, potrebbe editare a mano il file ind, ma se le voci sono tante ci sarebbe non solo da perderci una vita, ma anche ogni volta che si ricrea l’indice per aggiornarlo, bisognerebbe rifare tutto il lavoro. 🙁

                                      Scusami se ti ho fatto perdere tempo per una cosa che io ritenevo possibile, ma che invece non lo è. Mi spiace che l’ho imparato a tue spese.:oops:

                                    • #67208
                                      samiel
                                      Partecipante
                                        Up
                                        0
                                        Down
                                        ::


                                        Ma no, che scusa, figurati,,,, Se dovessi davvero scusarmi io
                                        per tutto il tempo che ho strappato a voi che mi aiutate sempre,
                                        ci vorrebbe un post chilometrico…

                                        Il lavoro manuale è ovviamente possibile, anzi con le funzioni
                                        degli editor magari si potrebbe pensare a un qualche tipo
                                        di script, forse. Anche se in effetti sarebbe da effettuare
                                        solo ed esclusivamente a lavoro finito, anzi “finitissimo”.

                                        Di xindi ho letto qualcosa in questi giorni, cercando appunto
                                        informazioni sulla personalizzazione dell’indice.
                                        Magari adesso provo a vedere meglio se lo consente

                                        Grazie
                                        M

                                      • #67209
                                        Up
                                        0
                                        Down
                                        ::


                                        Rispolvero questa discussione perché l’indice analitico non cambia dallo stile standard. Ho provato a inserire lo stile che ho trovato su LaTeXpedia ma non succede nulla. Ho copiato il preambolo e rifatto un nuovo file e sembrava andar bene, rifaccio un altro file e di nuovo il problema.
                                        Allego esempio minimo. Il file stile.ist è quello di LaTeXpedia
                                        `\documentclass[11pt]{scrreport}
                                        \usepackage[T1]{fontenc}
                                        \usepackage[utf8]{inputenc}
                                        \usepackage[italian]{babel}
                                        \usepackage{imakeidx}
                                        \makeindex[options=stile.ist]
                                        \begin{document}
                                        \chapter{Introduzione}
                                        In questo capitolo metteremo un punto \index{azioni} \index{trave} \index{fondazione!rigida} \index{fondazione!flessibile}
                                        \printindex
                                        \end{document}`
                                        Grazie.

                                      • #67210
                                        lorenzo.pantieri
                                        Partecipante
                                          Up
                                          0
                                          Down
                                          ::


                                          `\documentclass{scrreport}
                                          \usepackage{imakeidx}
                                          \makeindex [options={-s classic.ist}]

                                          \begin{document}
                                          \chapter{Introduzione}
                                          In questo capitolo metteremo un punto \index{azioni} \index{trave} \index{fondazione!rigida} \index{fondazione!flessibile}
                                          \printindex
                                          \end{document}`
                                          Questo codice funziona, dove classic.ist è:
                                          `headings_flag 1
                                          heading_prefix “\\goodbreak\\textbf{\\scshape\\bfseries\\MakeUppercase{”
                                          heading_suffix “}}\\par\\nobreak\\vskip\\smallskipamount\\nobreak”
                                          symhead_positive “Comandi speciali”
                                          symhead_negative “comandi speciali”
                                          numhead_positive “Numeri”
                                          numhead_negative “numeri”
                                          `
                                          Sicuro di non aver dato un \makeinidex dopo
                                          `\makeindex [options={-s classic.ist}]`
                                          ?

                                        • #67211
                                          Up
                                          0
                                          Down
                                          ::


                                          Il codice gira bene su diversi file ma su quello che mi ha dato problemi, continua a darmeli e sì, sono sicuro di non aver dato altri \makeindex. Allego il preambolo:

                                          `\documentclass[11pt,twoside,titlepage]{scrreport}
                                          \usepackage[italian]{babel}
                                          \usepackage[T1]{fontenc}
                                          \usepackage[utf8]{inputenc}
                                          \usepackage{lmodern}
                                          \usepackage{geometry,fancyhdr,amssymb,amsmath,upgreek,tikz,pgfplots}
                                          \usepackage{caption}
                                          \captionsetup{tableposition=top,figureposition=bottom,font=small}
                                          \geometry{top=2.5cm,bottom=2.5cm,left=2.5cm,right=2.8cm}
                                          \usepackage[output-decimal-marker={,}]{siunitx}
                                          \usepackage{imakeidx}
                                          \makeindex [intoc=true,options={-s classic.ist}]
                                          %\usepackage[style=authortitle,backend=biber]{biblatex}
                                          %\addbibresource{riferimenti.bib}
                                          \usepackage{hyperref}
                                          \pagestyle{fancy}
                                          \renewcommand{\chaptermark}[1]{%
                                          \markboth{\thechapter.\ #1}{}}
                                          \fancyhead[RO,LE]{}
                                          \fancyfoot[LE,RO]{\thepage}
                                          \fancyfoot[LO,CE]{}
                                          \fancyfoot[CO,RE]{}
                                          \renewcommand{\headrulewidth}{0.4pt}
                                          \renewcommand{\footrulewidth}{0.4pt}
                                          \title{APPUNTI DI DINAMICA DELLE TERRE}
                                          \author{\dots}
                                          \date{}
                                          \begin{document}
                                          \maketitle
                                          \tableofcontents
                                          \thispagestyle{empty}
                                          \cleardoublepage
                                          \chapter{Considerazioni generali}
                                          \index{profondità} \index{moti convettivi} \index{placca} \index{Aquila}
                                          \printindex
                                          \end{document}`

                                        • #67212
                                          OldClaudio
                                          Partecipante
                                            Up
                                            0
                                            Down
                                            ::


                                            Il pacchetto hyperef va sempre messo per ultimo, a meno che certi pacchetti, di cui bisogna aver leto la documentazione, non ne richiedano il caricamento prima. questi pacchetti sono pochissimi

                                            Spostane la chiamata subito prima di [tt]\begin{document}[/tt]

                                          • #67213
                                            Up
                                            0
                                            Down
                                            ::


                                            Sapevo che hyperref andasse caricato per ultimo, ma credevo ultimo per quanto riguarda il gruppo di pacchetti e non prima di \begin{document} anche se ha sempre funzionato bene. Comunque non cambia nulla, continua a non funzionare!

                                          • #67214
                                            OldClaudio
                                            Partecipante
                                              Up
                                              0
                                              Down
                                              ::


                                              A me funziona.`\documentclass[11pt,twoside,titlepage]{scrreport}
                                              \usepackage[italian]{babel}
                                              \usepackage[T1]{fontenc}
                                              \usepackage[utf8]{inputenc}
                                              \usepackage{lmodern}
                                              \usepackage{kantlipsum}
                                              \usepackage{geometry,fancyhdr,amssymb,amsmath,upgreek,tikz,pgfplots}
                                              \usepackage{caption}
                                              \captionsetup{tableposition=top,figureposition=bottom,font=small}
                                              \geometry{top=2.5cm,bottom=2.5cm,left=2.5cm,right=2.8cm}
                                              \usepackage[output-decimal-marker={,}]{siunitx}
                                              \usepackage{imakeidx}
                                              \makeindex [intoc=true,options={-s classic.ist}]
                                              %\usepackage[style=authortitle,backend=biber]{biblatex}
                                              %\addbibresource{riferimenti.bib}
                                              \pagestyle{fancy}
                                              \renewcommand{\chaptermark}[1]{%
                                              \markboth{\thechapter.\ #1}{}}
                                              \fancyhead[RO,LE]{}
                                              \fancyfoot[LE,RO]{\thepage}
                                              \fancyfoot[LO,CE]{}
                                              \fancyfoot[CO,RE]{}
                                              \renewcommand{\headrulewidth}{0.4pt}
                                              \renewcommand{\footrulewidth}{0.4pt}
                                              \title{APPUNTI DI DINAMICA DELLE TERRE}
                                              \author{\dots}
                                              \date{}
                                              \usepackage{hyperref}

                                              \begin{document}
                                              \maketitle
                                              \tableofcontents
                                              \thispagestyle{empty}
                                              \cleardoublepage
                                              \chapter{Considerazioni generali}

                                              \kant[1-4]
                                              Profondità\index{profondità}

                                              \kant[5-8]
                                              Moti convettivi\index{moti convettivi}

                                              \kant[9-12]
                                              Placca\index{placca}

                                              \kant[13-16]
                                              Aquila\index{Aquila}
                                              \printindex
                                              \end{document}
                                              `
                                              Ho solo aggiunto con il pacchetto kantlipsum ( che mi piace di più di lipsum) un po’ di testo di riempimento per verificare che i numeri di pagina dei contenuti dell’indice analitico siano corretti.
                                              Il fatto che hyperref sia l’ultimo pacchetto caricato dipende dal fatto che ridefinisce i comandi specificati dai pacchetti precedenti per poter aggiungere le ancore e i bersagli per i collegamenti ipertestuali. Solo pochissimi pacchetti (per esempio glossaries) ridefiniscono a loro volta i comandi ridefiniti da hyperref.

                                            • #67215
                                              MatteoF
                                              Partecipante
                                                Up
                                                0
                                                Down
                                                ::


                                                Anche a me il tuo codice funziona. Per caso non è che ti stai confondendo con i nomi del file di stile? All’inizio parli di [tt]stile.ist[/tt], poi di [tt]classic.ist[/tt]… magari, semplicemente, il tuo preambolo richiama un file con nome diverso 😛
                                                Altrimenti, prova a caricare il file di stile direttamente dal preambolo (tramite l’ambiente [tt]filecontents[/tt])
                                                `
                                                % !TEX encoding = UTF-8 Unicode
                                                % !TEX TS-program = pdflatex

                                                \begin{filecontents}[overwrite]{\jobname.ist}
                                                headings_flag 1
                                                heading_prefix “\\goodbreak\\textbf{\\scshape\\bfseries\\MakeUppercase{”
                                                heading_suffix “}}\\par\\nobreak\\vskip\\smallskipamount\\nobreak”
                                                symhead_positive “Comandi speciali”
                                                symhead_negative “comandi speciali”
                                                numhead_positive “Numeri”
                                                numhead_negative “numeri”
                                                \end{filecontents}

                                                \documentclass[11pt,twoside,titlepage]{scrreport}
                                                \usepackage[utf8]{inputenc}
                                                \usepackage[T1]{fontenc}
                                                \usepackage{lmodern}
                                                \usepackage[italian]{babel}
                                                \usepackage{amssymb,amsmath,upgreek,tikz,pgfplots}
                                                \usepackage{geometry}
                                                \geometry{top=2.5cm,bottom=2.5cm,left=2.5cm,right=2.8cm}
                                                \usepackage{fancyhdr}
                                                \pagestyle{fancy}
                                                \renewcommand{\chaptermark}[1]{%
                                                \markboth{\thechapter.\ #1}{}}
                                                \fancyhead[RO,LE]{}
                                                \fancyfoot[LE,RO]{\thepage}
                                                \fancyfoot[LO,CE]{}
                                                \fancyfoot[CO,RE]{}
                                                \renewcommand{\headrulewidth}{0.4pt}
                                                \renewcommand{\footrulewidth}{0.4pt}
                                                \usepackage{caption}
                                                \captionsetup{tableposition=top,figureposition=bottom,font=small}
                                                \usepackage[output-decimal-marker={,}]{siunitx}
                                                \usepackage{imakeidx}
                                                \makeindex [intoc=true, options=-s \jobname.ist]
                                                %\usepackage[style=authortitle,backend=biber]{biblatex}
                                                %\addbibresource{riferimenti.bib}
                                                \usepackage{hyperref}

                                                \title{APPUNTI DI DINAMICA DELLE TERRE}
                                                \author{\dots}
                                                \date{}

                                                \begin{document}
                                                \maketitle
                                                \tableofcontents
                                                \thispagestyle{empty}
                                                \cleardoublepage
                                                \chapter{Considerazioni generali}
                                                \index{profondità} \index{moti convettivi} \index{placca} \index{Aquila}
                                                \printindex
                                                \end{document}
                                                `

                                                Un’altra prova che puoi fare è quella di rinominare il file di stile, salvandolo con l’estensione [tt].mst[/tt]

                                                Matteo

                                              • #67216
                                                Up
                                                0
                                                Down
                                                ::

                                                OldClaudio” post=121782A me funziona.`\documentclass[11pt,twoside,titlepage]{scrreport}
                                                \usepackage[italian]{babel}
                                                \usepackage[T1]{fontenc}
                                                \usepackage[utf8]{inputenc}
                                                \usepackage{lmodern}
                                                \usepackage{kantlipsum}
                                                \usepackage{geometry,fancyhdr,amssymb,amsmath,upgreek,tikz,pgfplots}
                                                \usepackage{caption}
                                                \captionsetup{tableposition=top,figureposition=bottom,font=small}
                                                \geometry{top=2.5cm,bottom=2.5cm,left=2.5cm,right=2.8cm}
                                                \usepackage[output-decimal-marker={,}]{siunitx}
                                                \usepackage{imakeidx}
                                                \makeindex [intoc=true,options={-s classic.ist}]
                                                %\usepackage[style=authortitle,backend=biber]{biblatex}
                                                %\addbibresource{riferimenti.bib}
                                                \pagestyle{fancy}
                                                \renewcommand{\chaptermark}[1]{%
                                                \markboth{\thechapter.\ #1}{}}
                                                \fancyhead[RO,LE]{}
                                                \fancyfoot[LE,RO]{\thepage}
                                                \fancyfoot[LO,CE]{}
                                                \fancyfoot[CO,RE]{}
                                                \renewcommand{\headrulewidth}{0.4pt}
                                                \renewcommand{\footrulewidth}{0.4pt}
                                                \title{APPUNTI DI DINAMICA DELLE TERRE}
                                                \author{\dots}
                                                \date{}
                                                \usepackage{hyperref}

                                                \begin{document}
                                                \maketitle
                                                \tableofcontents
                                                \thispagestyle{empty}
                                                \cleardoublepage
                                                \chapter{Considerazioni generali}

                                                \kant[1-4]
                                                Profondità\index{profondità}

                                                \kant[5-8]
                                                Moti convettivi\index{moti convettivi}

                                                \kant[9-12]
                                                Placca\index{placca}

                                                \kant[13-16]
                                                Aquila\index{Aquila}
                                                \printindex
                                                \end{document}
                                                `
                                                Ho solo aggiunto con il pacchetto kantlipsum ( che mi piace di più di lipsum) un po’ di testo di riempimento per verificare che i numeri di pagina dei contenuti dell’indice analitico siano corretti.
                                                Il fatto che hyperref sia l’ultimo pacchetto caricato dipende dal fatto che ridefinisce i comandi specificati dai pacchetti precedenti per poter aggiungere le ancore e i bersagli per i collegamenti ipertestuali. Solo pochissimi pacchetti (per esempio glossaries) ridefiniscono a loro volta i comandi ridefiniti da hyperref.

                                                Ho provato ma non cambia nulla, ho anche usato l’ambiente “filecontents” come suggeritomi da Matteo ma non posso cambiare l’estensione da “ist” a “mst” perché richiama i file di un altro programma.
                                                Ho eliminato i file di output di TeXmaker, aggiornato MiKteX – che tra l’altro era aggiornato – disinstallato e reinstallato TeXmaker ma il risultato non cambia. La cosa buffa è che nemmeno su file nuovi funziona, cosa che faceva ieri ed ho lo stesso problema sia sul portatile a casa che sulla macchina in studio.
                                                Non so cosa altro fare.

                                              • #67217
                                                OldClaudio
                                                Partecipante
                                                  Up
                                                  0
                                                  Down
                                                  ::


                                                  Con questo tuo ultimo messaggio scopro una cosa che non immaginavo; cioè che usi MiKTeX.
                                                  Siccome non dispongo di una macchina Windows non posso verificare, ma ho un vago ricordo che MiKTeX non esegua makeindex.exe quando deve compilare il file .idx per trasformarlo in file .ind.

                                                  Siccome ho vaghi ricordi, potrebbe essere che quanto io ricordo sia sbagliato.
                                                  Ma se fosse giusto, dovresti lanciare a mano la compilazione con pdfLaTeX spo=ecificandogli l’opzione -shell-escape o -enable-write18, comunque si chiamai questa opzione con MiKTeX. Se continua a non funzionare, esamina attentamente la fine del file .log dove dovrebbe esserci l’indicazione che pdfLaTeX ha lanciato il programa makeindex.exe e l’informazione è seguitada una fila di puntini che “punteggiano” il tempo che makeindex.exe impiega per eseguire il suo lavoro. Esamina anche il file .ilg (ilfile .log di makeindex.exe) e controlla nel file log che cosa ha fato.
                                                  Infine controlla TeXmaker e le sue impostazioni per gli eseguibili da lanciare in background; di ognuno puoi specificare le opzioni da fornire al programma di compilazione; leggi attentamente l’Helpdi TeXmaker per sapere come fare, ma eventualmente aggiungi per pdfLaTeX l’opzione giusta fra le due che ricordo da quando i programmi di compilazione sono in grado di lanciare in background.

                                                  Sulmio Mac ho la versione Mac di TeXLive e non ho problemi con il tuo indice analitico. Come hai visto nel mio codice l’unica veramodifica è stata quella di spostare [tt]\usepackage{hyperref}[/tt] più in basso appena prima di [tt]\begin{document}[/tt].

                                                • #67218
                                                  Up
                                                  0
                                                  Down
                                                  ::


                                                  Grazie, ho provato a lanciare con l’opzione shell-escape (write18 già disabilitato) ma nulla, controllo i file di log e vedo un po’ cosa posso fare, altrimenti per l’indice analitico mi affiderò a Overleaf, dove funziona benissimo.

                                                • #67219
                                                  Up
                                                  0
                                                  Down
                                                  ::


                                                  Credo di aver risolto, ho copiato il tutto in un nuovo file, compilato UNA sola volta con PdfLaTeX senza passare da MakeIndex e ha funzionato!
                                                  Grazie comunque a tutti per i contributi.

                                              Visualizzazione 27 filoni di risposte
                                              • Devi essere connesso per rispondere a questo topic.

                                              Go to top