Classicthesis: un comando di sezionamento che ora non va più

  • Creatore
    Topic
  • #14123
    lorenzo.pantieri
    Partecipante
      Up
      0
      Down
      ::


      Ciao a tutti, prometto che questa è una delle ultime domande che faccio su Classicthesis…

      Ho bisogno di un comando di sezionamento che centri i titoli delle sezioni. Il comando
      `\newcommand{\ssection}[1]{\section*{\centering{#1}}}`
      funziona perfettamente con le classi standard (article, book, …), ma con Classicthesis produce un errore in compilazione:
      `! Use of \@icentercr doesn't match its definition.
      \reserved@a #1#2->\let #2#1\reserved@a

      l.16 \ssection{Bla}

      ?
      `
      Come si può fare?

      Ancora grazie,
      L.

    Visualizzazione 2 filoni di risposte
    • Autore
      Risposte
      • #14124
        Up
        0
        Down
        ::

        Ciao a tutti, prometto che questa è una delle ultime domande che faccio su Classicthesis…

        Ho bisogno di un comando di sezionamento che centri i titoli delle sezioni. Il comando
        `\newcommand{\ssection}[1]{\section*{\centering{#1}}}`
        funziona perfettamente con le classi standard (article, book, …), ma con Classicthesis produce un errore in compilazione:
        `! Use of \@icentercr doesn't match its definition.
        \reserved@a #1#2->\let #2#1\reserved@a

        l.16 \ssection{Bla}

        ? `
        Come si può fare?

        Come avrai certamente scoperto, classicthesis si appoggia a titlesec per i comandi di sezionamento. Il manuale di titlesec è molto chiaro, al riguardo. Devi semplicemente definirti un comando di sezionamento, chiamiamolo \specialsection come vuoi:
        `\titleclass{\specialsection}{straight}

        \titleformat{\specialsection}[block]
        {\normalfont\bfseries\filcenter}{}{1em}{}

        \titlespacing{\specialsection}{0pt}{*2}{*1}
        \newcommand{\ssection}{\specialsection*}`
        Aggiusta tu i parametri di spaziatura e di formato del testo del titolo, magari guardando come fa classicthesis con \section.

        Ciao
        Enrico

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

          `\titleclass{\specialsection}{straight}

          \titleformat{\specialsection}[block]
          {\normalfont\bfseries\filcenter}{}{1em}{}

          \titlespacing{\specialsection}{0pt}{*2}{*1}
          \newcommand{\ssection}{\specialsection*}`

          Ciao Enrico, ci siamo quasi: se compilo, ottengo un errore,
          `! Package titlesec Error: Unknown sectioning level.`
          che però non sembra “fatale”: se proseguo con la compilazione, ottengo esattamente il risultato che cerco.

          C’è modo di eliminare l’errore, lasciando inalterato il risultato tipografico?

          Ancora grazie,
          Lorenzo

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


            Ciao, il comando
            `\titleformat{\section}[block]
            {\filcenter\normalfont\scshape\addvspace{6pt}}
            {\thesection}{1em}{\spacedlowsmallcaps}`
            (dopo aver eliminato l’originale \section da classicthesis.sty) mi sembra funzionare egregiamente: ottengo il risultato desiderato senza alcun warning.

            L.

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

        Go to top