Indice dei nomi

  • Creatore
    Topic
  • #109695
    Up
    0
    Down
    ::


    Con `\usepackage{imakeidx}
    \makeindex
    \newcommand{\ii}[1]{{\it #1}}
    \newcommand{\nn}[1]{#1n}` nel preambolo e indicizzando con `\index{blablabla}
    \index{blablabla|nn}` per le note ottengo un l’indice dei nomi. Il mio problema è che un nome indicizzato sia nel testo che in un una footnote mi compare due volte. Invece io vorrei nell’Indice il nome, seguito dal numero di pagina quando è nel testo, e dal numero di pagina con n dopoi se è in una footnote (es. blablabla, 34, 22n). Qualcuno di può aiutare?

Visualizzazione 12 filoni di risposte
  • Autore
    Risposte
    • #109696
      OldClaudio
      Partecipante
        Up
        0
        Down
        ::


        La soluzione è già indicata nel paragrafo 5.2.5 della documentazione di imakeidx. Non ti preoccupare se l’intestazione del paragrafo fa riferimento a ledmac. La soluzione è ugualmente valida.

      • #109697
        Up
        0
        Down
        ::


        Grazie della risposta. Non avrei mai capito che quel paragrafo di imakeidx conteneva la soluzione al mio problema. Che, comunque, rimane. Non riesco assolutamente a inserire il codice suggerito nel contesto del mio lavoro. Temo che sia troppo difficile per me. Possibile che non ci sia qualcosa di più semplice?

      • #109698
        OldClaudio
        Partecipante
          Up
          0
          Down
          ::


          Personalemente non ne conosco altre, anche perché evito el note con grande cura ed evito con grande cura di mettere riferimenti all’indice analitici nelle parole che compaiono in nota. Capisco che la soluzione che ti ho indicato può essere legata al fatto che è stata richiesta dagli autori che usano ledmac, eledmac, reledmac, per comporre edizioni critiche, dove quei pacchetti possono creare fino a 5 diversi apparati di note; cercare nelle nell’indice chi fosse Carneade, che è talmente ben conosciuto che è stato citato solo in uno dei 5 apparati di note; cercare quindi Carneade nel corpo del documento comprese le note diventa difficile se non si specifica che va cercato in nota, ma quale?

          Ecco allora che una voce da indicizzare aaabbb, da inserire come sottovoce di cccddd, a sua volta sottovoce di eeefff, fa si che nel file .idx vada a finire una stringa del tipo [tt]eeefff!cccddd!aaabbb@aaabbb|nn{157}[/tt] Al momento di indicizzare la voce da parte di makeindex, tutta la stringa da eeee fino al segno | viene confrontata con le altre per mettere il tutto in ordine alfabetico; è ovvio che se tutto quel che precede il numero della pagina è uguale a quello di altre voci, il numero della pagina viene inserito in aggiunta i numeri già presenti per quella voce, ma se è diverso viene creata un’altra voce.

          Quindi esamina il file .idx per vedere come è fatta la voce per il tuo riferimento; se vedi delel discrepanze, correggile, ma se sono uguali, a parte il numero della pagina e il modo di scriverlo, non c’è niente da fare.

          Se non te la senti, mandaci un esempio minimo compilabile che riproduca il tuo problema: stessi pacchetti relativi agli indici, ma senza altri pacchetti che non abbiano nulla a che vedere con gli indici; col minimo di testo necessario per replicare il problema; e vediamo che cosa riusciamo a dirti; magari io non riesco a dirti niente, ma qualcun altro, abituato a citere nell’indice anche parole delle note e con la lettera n aggiunto al numero della apgina, ti può dire qualcosa.

          La documentazione per gli indici si troava nei documenti makeindex.pdf, makeindx.pdf e ind.pdf, oltre al già citato imakeidx.pdf; li puoi leggere tutti dando nel terminale il comando texdoc seguito dal nome del file senza l’estensione .pdf.

        • #109699
          Up
          0
          Down
          ::


          Grazie della documentata risposta. Nel frattempo ho capito meglio qual’è il problema e spero che qualcuno me lo sappia risolvere nella nuova formulazione.
          imakeidx fa esattamente quello che voglio nell’indice (blablabla, 34, 92n, 99). Il problema è che io indicizzo non solo un nome ma una stringa blablabla\index{blablabla blaterami boh}. In questo caso imakeidx fa differenza tra quello che c’è nel testo e quello che c’è nella nota, anche se formalmente metto la stessa stringa con copia e incolla, e li tratta come due nomi diversi. Il problema è rappresentato quindi dagli spazi. C’è la possibilità di dire a inakeidx di non considerare gli spazi e di considerare una stringa composta da lettere e spazi come composta sa sole lettere?
          Io sto rileggendo la documentazione per vedere se il mio problema ha soluzione.
          Grazie Pas

        • #109700
          Up
          0
          Down
          ::


          Sempre a proposito di imakeindex qualcuno sa dirmi perché se io indicizzo per es. Arago\index{Arago Jean Fran\c{c}ois Dominique} sia nel testo che in una nota imakeindex li considera due nomi diversi? Se invece scrivo Arago\index{Arago Jean Francois Dominique} sono invece la spessa persona. Pasquale

        • #109701
          OldClaudio
          Partecipante
            Up
            0
            Down
            ::


            Probabilmente perché l’argomento della nota viene svilupato e successivamente eseguito, mentre quello nel testo viene solo eseguito; quindi il cmando per la cediglia arriva all’indice una volta così com’è, e una volta sviluppato. Questo sarebbe anche il motivo epr il quale il comando \verb, che funziona benisismo nel testo, nelle note si “rommpe” dimostrando la sua fragilità.

            È il rischio che si corre a mettere macro nelle note.

            Comunque, visto che probabilmente usi sia la codifica d’entrata utf8 e la codifica dei font T1, e che probabilmente usi la tastiera italiana e disponi della ç, usala e vedrai che il nome è uno solo, non sono due diversi nomi.
            Eccoti infatti la prova: considera questo semplice esempio:`% !TEX TS-program = pdflatex
            % !TEX encoding = UTF-8 Unicode
            \documentclass{article}
            \usepackage[utf8]{inputenc}
            \usepackage[T1]{fontenc}

            \usepackage{imakeidx}

            \makeindex

            \begin{document}
            François\index{François} \footnote{François\index{François}}
            \newpage
            Fran\c{c}ois\index{Fran\c{c}ois} \footnote{Fran\c{c}ois\index{Fran\c{c}ois}}
            \newpage
            Francois\index{Francois} \footnote{Francois\index{Francois}}

            \printindex

            \end{document}`Esegui e vedrai che le voci relative alla pagina 2, dove hai usato il comando per la cediglia, sono diverse. Infatti il file .idf è così:`\indexentry{Fran\IeC {\c c}ois}{1}
            \indexentry{Fran\IeC {\c c}ois}{1}
            \indexentry{Fran\c{c}ois}{2}
            \indexentry{Fran\c {c}ois}{2}
            \indexentry{Francois}{3}
            \indexentry{Francois}{3}`Delle coppie di voci, la prima è l’indicizzazione nel testo, la seconda nella nota.
            Per quel che riguarda la pagina 2, per esempio c’è uno spazio dopo \c che non c’è nella versione della voce tratta dal testo; Perché Proprio eprché nel testo la stringa da indicizzare è stata riprodotta verbatim, mentre nella nota la stringa da indicizzare è stata recuperata dopo aver scritto il testo delle note in un insert register e averlo riletto per comporre la nota; ogi macro viene semrpe scritta con il suo spazio di terminazione del nome.
            Se invece vedi le due righe relative alla pagina 1, noto che la ç è stata trasformata in una serie di macro dopo diversi passaggi sia nel testo sia nella nota e le due stringhe sono uguali.
            Come fare per evitarlo? Usi ç invece di \c{c}.

          • #109702
            Up
            0
            Down
            ::


            A me non funziona. Ho provato a mettere c con la cedille (uso texmaker su mac) ma il problema permane.

          • #109703
            Up
            0
            Down
            ::


            Scusa ma ho realizzato che il codice funziona. Se al primo tentativo non ha funzionato la cosa dipendeva dal fatto che l’argomento di index era in corsivo, vale a dire inserito in \textlit{}. Sai darmi la soluzione anche per questo problema? Grazie

          • #109704
            OldClaudio
            Partecipante
              Up
              0
              Down
              ::


              `François\index{{\itshape François}} \footnote{François\index{{\itshape François}}}` con due spazi dopo \itshape nella parte testuale, e un solo spazio dopo \itshape nella nota.

              Continuo ad essere dell’idea che non si debbano usare macro nelle note.
              Se i tuoi dati devono essere sempre in corsivo {perché? in genere i nomi delle persone, caso mai vanno in maiuscoletto, ma non negli indici analitici) sarebbe meglio, allora definire uno stile di indice analitico, un file .ist, che preveda lui di mettere in corsivo el voci, in modo da non dover usare macro nell’argomento di \index né quando sei nel testo né quando sei nelle note.
              La documentazione di makeindex (texdoc makeindex) o in ind.pdf (texdoc ind) potrebbe dire come si fa, ma sarebbe meglio che questo te lo cercassi tu.

              Sapevo che le macro nelle note erano fastidiose; per analizzare il tuo problema mi sono accorto che lo sono più di quel che immaginavo. La soluzione che avevo escogitato per un altro problema di ordine alfabetico, che richiedeva di togliere gli spazi tranne quelli indispensabili, funzionava in quel caso, ma non funzionerebbe nel tuo.

            • #109705
              Up
              0
              Down
              ::


              Grazie del suggerimento. In effetti ho trovato una soluzione non troppo complessa al problema di trovare una voce di indice (in corsivo, costituita da una stringa composta da caratteri, spazi, etc. ) sotto la quale ci fossero indicate la pagina di testo e la pagina di note. Ecco l’esempio dell’indicizzazione del seguente testo:
              “blabla blaba bababala \textit{Nome della rivista}\textit{\index{\textit{Nome della rivista}}}\footnote{La rivista \textit{Nome della rivista\index{\textit{Nome della rivista}|nn}} fu fondata nel 1786.}blabla balba etc.”
              Onestamente non capisco perché funziona ma funziona. Sarebbe interessante se riesci a darmi una spiegazione di una cosa che a me sembra illogica anche se funziona.

            • #109706
              OldClaudio
              Partecipante
                Up
                0
                Down
                ::


                Perché nella prima indicizzazione (quella nel testo) il comando index è argomento di \textit e come tale viene letto e appare lo spazio dopo il \textit dento al comando \index (che è la stessa cosa di quello che ti ho detto io, cioè di non usare i comandi, ma le dichiarazioni e di aggiungere uno spazio dopo il comando \itshape nell’argomento del comando \index della parte testuale.
                Confronta le voci che compaiono nel file .idx e constaterai che gli spazi dopo le macro sono gli stessi.

                Ma vuoi davvero usare le cose che hai messo nell’esempio?
                Non ha senso perché la nota si riferisce alla stessa rivista il ci nome compare nella stessa pagina dove compare la nota; in sostanza avresti nell’indice dei nomi

                Nome della rivista, 58, 58n

                La cosa è del tutto assurda. Ecco perché bisogna stare attenti ad usare il minor numero di note possibili, senza ri-citare qualcosa che hai già detto nel testo.

                Se vuoi davvero mettere una nota, tipo “Fondata da Merio Rossi, nel 1777” mettila nel campo Note della bibliografia, ma certamente è fuori luogo nella main matter, nella aprte principale del tuto documento.

              • #109707
                Up
                0
                Down
                ::


                Hai ragione quando dici che è un controsenso mettere sia nel testo che in nota il riferimento alla stessa rivista. E in effetti non lo faccio. Ma l’esempio era molto sintetico per non appesantire inutilmente la lettura del messaggio. In effetti io ho il nome della rivista in una pagina e la stessa rivista in un’altra pagina in nota. Per questa ragione ho la necessità di una indicizzazione sia nel testo che nelle note e che le pagine sia del testo che delle note siano indicate sotto il nome della rivista nell’indice.
                Comunque io ho cercato anche di usare il comando \itshape ma non mi funzionava. Se ne hai voglia potresti farmi un esempio di come usarlo?
                Grazie delle tue considerazioni e dei tuoi suggerimenti.

              • #109708
                OldClaudio
                Partecipante
                  Up
                  0
                  Down
                  ::


                  L’esempio te l’ho fatto nel mio messaggio http://www.guitex.org/home/forum/5-tex-e-latex/109917-indice-dei-nomi?lang=en#109946

                  In realtà ritengo che la cosa sia priva si senso anche se le due indicizzazioni appaiono in pagine diverse. Le voci dell’indice devono essere limitate a qei punti in cui si dice qualcosa di particolare a proposito del nome messo nell’indice. Ora i nomi dele riviste sono già nella bibliografia, quandi è privo di senso metterli nell’indice analitico; inoltre se l’informazioen di chi ha fondato al rivista e quando è importante, il luogo giusto per dirlo è la bibliografia.

                  Naturalmente questa è la mia idea di come comporre bibliografia e indice analitico; tu naturalmente sei padrone di fare come vuoi. Cerca solo di distaccarti dal modo umanistico di vedere le note e la bibliografia, dove lo stesso testo è citato nella bibliografia in modo completo e, spesso ancora in modo completo, in moltissime note. Questo sembra un ottimo modo per allungare il brodo; solo che a forza di allungarlo il brodo finisce per non sapere di niente.
                  Gli umanisti non me ne vogliano se non condividono e non apprezzano questo mio parere personale.

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

              Go to top