[RISOLTO] Scrivere “Capitolo” e “Appendice” nell’indice

  • Questo topic ha 7 risposte, 2 partecipanti ed è stato aggiornato l'ultima volta 15 anni fa da egreg9.
  • Creatore
    Topic
  • #62993
    Up
    0
    Down
    ::


    Buongiorno a tutti.
    Vorrei far scrivere nell’indice “Capitolo” prima del nome del capitolo e “Appendice” prima della lettera e del nome dell’appendice, si può fare?
    Grazie in anticipo.

    Paolo

Visualizzazione 6 filoni di risposte
  • Autore
    Risposte
    • #62994
      Up
      0
      Down
      ::

      Junior” post=61973Buongiorno a tutti.
      Vorrei far scrivere nell’indice “Capitolo” prima del nome del capitolo e “Appendice” prima della lettera e del nome dell’appendice, si può fare?

      La classe amsbook lo fa da sé. Con altre occorre usare il pacchetto tocloft.

      Ciao
      Enrico

    • #62995
      Up
      0
      Down
      ::


      Grazie per la risposta, ho provato amsbook ma non mi piace molto l’effetto ottenuto, allora ho provato anche tocloft, però ho avuto qualche problema: ho importato il pacchetto con `\package{tocloft}` e in compilazione mi ha dato un errore

      command \c@lofdepth already defined

      , ho cercato in rete è ho trovato una soluzione mettendo `\package[subfigure]{tocloft}` , ma non ho capito il problema. Poi in teoria dovrei utilizzare il comando `renewcommand{\cftbeforetoctitleskip}{NOMETITOLO}` per ottenere l’effetto desiderato, ma non mi riconosce il comando `\cftbeforetoctitleskip`..insomma sto sbagliando di sicuro qualcosa..

    • #62996
      Up
      0
      Down
      ::

      Junior” post=61988Grazie per la risposta, ho provato amsbook ma non mi piace molto l’effetto ottenuto, allora ho provato anche tocloft, però ho avuto qualche problema: ho importato il pacchetto con `\package{tocloft}` e in compilazione mi ha dato un errore

      command \c@lofdepth already defined

      , ho cercato in rete è ho trovato una soluzione mettendo `\package[subfigure]{tocloft}` , ma non ho capito il problema. Poi in teoria dovrei utilizzare il comando `renewcommand{\cftbeforetoctitleskip}{NOMETITOLO}` per ottenere l’effetto desiderato, ma non mi riconosce il comando `\cftbeforetoctitleskip`..insomma sto sbagliando di sicuro qualcosa..

      I comandi rilevanti sono \cftchappresnum e \cftchapnumwidth; il primo contiene ciò che va prima del numero di capitolo, il secondo è la larghezza riservata ai numeri e a ciò che li precede. Siccome usi anche le appendici, occorre dire a LaTeX che da \appendix in poi va cambiato il prefisso.
      `\usepackage[subfigure,titles]{tocloft}

      \renewcommand{\cftchappresnum}{\chaptername\ }
      \addto\appendix{\addtocontents{toc}{%
      \protect\renewcommand\protect\cftchappresnum{\protect\appendixname\ }}}
      \settowidth{\cftchapnumwidth}{Appendice A\qquad}`
      Ciao
      Enrico

    • #62997
      Up
      0
      Down
      ::


      Ottimo, grazie mille!
      Posso approfittare ancora? Io adesso mi trovo in questa situazione, ho l’indice con scritto Capitolo 1,2,3… e Appendice A,B,C… mentre nel testo ho Capitolo Primo, Secondo, e Appendice Primo, Secondo dato che avevo utilizzato il comando `\patchcmd\@makechapterhead{\thechapter}{\Ordinalem{chapter}}{}{}` (che mi avevi suggerito tu..) per avere i capitoli scritti in lettere e con numeri ordinali. Però se per i capitoli mi va ancora bene per le appendici preferirei il classico A,B,C. Si può fare qualcosa?

    • #62998
      Up
      0
      Down
      ::

      Junior” post=62001Ottimo, grazie mille!
      Posso approfittare ancora? Io adesso mi trovo in questa situazione, ho l’indice con scritto Capitolo 1,2,3… e Appendice A,B,C… mentre nel testo ho Capitolo Primo, Secondo, e Appendice Primo, Secondo dato che avevo utilizzato il comando `\patchcmd\@makechapterhead{\thechapter}{\Ordinalem{chapter}}{}{}` (che mi avevi suggerito tu..) per avere i capitoli scritti in lettere e con numeri ordinali. Però se per i capitoli mi va ancora bene per le appendici preferirei il classico A,B,C. Si può fare qualcosa?

      Scrivi, al posto di quella riga con \patchcmd le seguenti
      `\makeatletter
      \let\orig@makechapterhead\@makechapterhead
      \patchcmd\@makechapterhead{\thechapter}{\Ordinalem{chapter}}{}{}
      \appto\appendix{\let\@makechapterhead\orig@makechapterhead}
      \makeatother`
      Ho messo anche \makeatletter e \makeatother per maggiore chiarezza, non vanno raddoppiati.

      Nota: nell’altro codice ho usato \addto e qui \appto: sono del tutto equivalenti, il primo richiede solo babel, il secondo etoolbox.

      Ciao
      Enrico

    • #62999
      Up
      0
      Down
      ::


      Perfetto, grazie mille ancora una volta!! In pratica con il comando \let crei una “variabile temporanea” che ha in memoria l’impostazione di default che poi riapplichi per le appendici, giusto?

    • #63000
      Up
      0
      Down
      ::

      Junior” post=62003Perfetto, grazie mille ancora una volta!! In pratica con il comando \let crei una “variabile temporanea” che ha in memoria l’impostazione di default che poi riapplichi per le appendici, giusto?

      Con \let\A=\B, \A diventa una copia di \B, che non viene modificata se per caso \B lo è. Per le appendici faccio il rovescio.

      Ciao
      Enrico

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

Go to top