Autori nell’indice analitico con NatBib

  • Questo topic ha 5 risposte, 2 partecipanti ed è stato aggiornato l'ultima volta 21 anni, 3 mesi fa da Gus.
  • Creatore
    Topic
  • #6035
    Up
    0
    Down
    ::


    Voglio mettere che gli autori citati nel testo vadano in automatico nell’indice analitico e, utilizzando NatBib, ho inserito come da manuale il comando \citeindextrue nel preambolo. Tutto funziona per il meglio se non fosse che tutti gli autori vengono messi sotto la voce symbols dell’indice analitico e non insieme alle altre parole in ordine alfabetico. Mi sono insospettito e sono dunque andato ad aprire il mio file .idx scoprendo che NatBib genera le voci dell’indice in modo sbagliato; ad esempio se l’autore è Neuber si ottiene

    \indexentry{{Neuber}\ (1968)|hyperpage}{1}

    invece del corretto

    \indexentry{Neuber\ (1968)|hyperpage}{1}

    La presenza della parentesi graffa prima del nome fa sì che la voce finisca tra i symbols e non alla lettera N come invece vorrei.

    Per risolvere il problema credo che si debba intervenire direttamentente sui comandi di NatBib che generano le voci del .idx; sulla guida si dice che le modifiche possono essere messe in un file natbib.cfg senza dover modificare il .sty originale.

    Quello che chiedo adesso è: cosa devo modificare per far sparire la doppia parentesi?

    Riporto di seguito i comandi che, a quanto ho capito, dovrebbero generare le voci del .idx.
    `\newcommand\NAT@index{}
    \let\NAT@makeindex=\makeindex
    \renewcommand\makeindex{\NAT@makeindex
    \renewcommand\NAT@index{\@bsphack\begingroup
    \def~{\string~}\@wrindex{\NAT@idxtxt}}}
    \newcommand\NAT@idxtxt{\NAT@name\ \NAT@open\NAT@date\NAT@close}
    \@ifundefined{@indexfile}{}{\let\NAT@makeindex\relax\makeindex}
    \newif\ifciteindex \citeindexfalse
    \newcommand\citeindextype{default}
    \newcommand\NAT@index@alt{{\let\protect=\noexpand\let~\relax
    \xdef\NAT@temp{\NAT@idxtxt}}\expandafter\NAT@exp\NAT@temp\@nil}
    \newcommand\NAT@exp{}
    \def\NAT@exp#1\@nil{\index[\citeindextype]{#1}}`

Visualizzazione 4 filoni di risposte
  • Autore
    Risposte
    • #6036
      Up
      0
      Down
      ::


      Per chiunque volesse darmi una mano, riporto un file minimale che produce il problema.
      `\documentclass{article}
      \usepackage{makeidx}
      \usepackage{natbib}
      \makeindex
      \citeindextrue

      \begin{document}

      Consiglio\index{consiglio} la lettura\index{lettura} di
      \citep{05neuber}.

      \begin{thebibliography}{13}
      \bibitem[{Neuber(1958)}]{05neuber}
      \textsc{Neuber H.} (1958).
      \newblock \emph{Theory of notch stresses}.
      \newblock Springer Verlag, Berlin DEU.
      \end{thebibliography}

      \printindex

      \end{document}`

      E’ necessario eseguire le seguenti operazioni:

      1. compilare

      2. BibTeX

      3. compilare

      4. compilare

      5. Make Index

      6. compilare

      Come vedete la voce dell’indice “Neuber”, a causa della parentesi graffa, viene erroneamente messa in ordine prima di “consiglio” e di “lettura”.

      Il file .idx creato è
      `\indexentry{consiglio}{1}
      \indexentry{lettura}{1}
      \indexentry{{Neuber}\ (1958)}{1}`
      e modificandolo manualmente in
      `\indexentry{consiglio}{1}
      \indexentry{lettura}{1}
      \indexentry{Neuber\ (1958)}{1}`
      tutto funziona come dovrebbe ma mi rifiuto di dover intervenire a mano sull’.idx.

    • #6037
      Gus
        Up
        0
        Down
        ::


        Purtroppo non so rispondere alla tua domanda.
        Ti faccio però presente che quello generato automaticamente non è un indice degli autori ma, in effetti, delle citazioni (ad esempio produce un entry “Pinco e Pallino 2000” e non due per il singolo autore). Io lo usavo per un apposito “Indice delle citazioni”, in cui l’ordinamento naturalmente funzionava bene.
        Avrei in progetto di pensare a come rendere veramente automatico l’indice dei nomi tramite Natbib, ma Daly dice che non è molto facile!
        Ciao,

        Gus

      • #6038
        Up
        0
        Down
        ::

        Ti faccio però presente che quello generato automaticamente non è un indice degli autori ma, in effetti, delle citazioni (ad esempio produce un entry “Pinco e Pallino 2000” e non due per il singolo autore).

        Sì, è vero. Un indice degli autori sarebbe anche meglio, tuttavia, se riuscissi a risolvere il problema detto sopra, sarei comunque soddisfatto.

      • #6039
        Up
        0
        Down
        ::


        Per il tuo obiettivo credo che vada bene il pacchetto authorindex, tuttavia io vorrei risolvere la questione direttamente su NatBib.

      • #6040
        Gus
          Up
          0
          Down
          ::

          Per il tuo obiettivo credo che vada bene il pacchetto authorindex, tuttavia io vorrei risolvere la questione direttamente su NatBib.

          Hai ragione, l’avevo dimenticato! Ma per ora non mi funziona.

          Gus

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

      Go to top