Coordinare combinazione fra testatine e indice

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


      Sto impostando uno scritto e, in qualche misura, mi sono ispirato alla classica grafica
      dei testi editi da Einaudi. Ora, volendo – come suol dirsi – la moglie ubriaca e la botte piena,
      ho steso un codice che tuttavia non fa tutto quanto io vorrei:
      `\documentclass[a4paper,11pt,twoside]{report}
      \usepackage[T1]{fontenc}
      \usepackage[no-math]{fontspec}
      \defaultfontfeatures{Contextuals=NoAlternate}
      \setmainfont[Ligatures=TeX,Numbers=OldStyle,Scale=1.1]{EB Garamond}
      \usepackage{polyglossia}
      \setmainlanguage[babelshorthands=true]{italian}
      \setotherlanguage[variant=polytonic]{greek}
      \newfontfamily\greekfont[Scale=MatchLowercase]{GFS Didot}
      \usepackage{microtype}

      % intestazioni
      \usepackage{emptypage}
      \usepackage{fancyhdr}
      \pagestyle{fancy}
      \fancyhf{}
      \setlength{\headheight}{14pt}
      \renewcommand{\chaptermark}[1]{\markboth{\footnotesize\textsc{\thechapter. #1}}{}}
      \renewcommand{\sectionmark}[1]{\markright{\footnotesize\textsc{\thesection. #1}}}
      \renewcommand{\headrulewidth}{0.5pt}
      \fancyhead[LE]{\nouppercase{\rightmark}}
      \fancyhead[RO]{\nouppercase{\leftmark}}
      \fancyhead[LO,RE]{\thepage}
      \renewcommand{\chaptermark}[1]{\markboth{\textsc{\footnotesize\thechapter. #1}}{\footnotesize\textsc{\thechapter. #1}}}
      \renewcommand \thesection {\arabic{section}}

      % titolo
      \newcommand*{\TitleFont}{%
      \usefont{\encodingdefault}{\rmdefault}{b}{n}%
      \fontsize{18}{16}%
      \selectfont}

      % titoli sezione
      \usepackage{titlesec}
      \renewcommand{\thechapter}{\scshape\roman{chapter}}
      \titleformat{\chapter}
      {\raggedright}
      {\thechapter\quad}
      {0pt}
      {\scshape}
      \titleformat{\section}
      {\raggedright}
      {\thesection\quad}
      {0pt}
      {\normalfont}

      % formato indice
      \usepackage{tocloft,interfaces}
      \settowidth{\cftchapnumwidth}{00.00\enspace}
      \settowidth{\cftsecnumwidth}{000.000\enspace}
      \renewcommand{\cfttoctitlefont}{\scshape}
      %\renewcommand{\cfttoctitlefont}{\normalfont\Large\bfseries\MakeUppercase}
      \renewcommand{\cftchapfillnum}[1]{\nobreak\hspace{1.5em}#1\cftparfillskip\par}
      \renewcommand{\cftsecfillnum}[1]{\nobreak\hspace{1.5em}#1\cftparfillskip\par}
      \renewcommand{\cftsubsecfillnum}[1]{\nobreak\hspace{1.5em}#1\cftparfillskip\par}
      \setcounter{tocdepth}{2}
      \tocsetup{chapter/skip=5pt}

      \usepackage{kantlipsum}

      \author{}
      \title{\TitleFont Il mito. Antologia critica}
      \date{}

      \begin{document}
      \maketitle
      \tableofcontents

      \chapter{Introduzione}
      \kant[1-5]

      \chapter{Il problema dell'oralità}

      \section{Vegetti, La tradizione orale}
      \kant[6-10]

      \section{Godart, La nascita della scrittura}
      \kant[11-15]

      \chapter{Miti cosmogonici}

      \section{Miti arcaici}
      \kant[16-20]

      \section{Miti greci}
      \kant[21-25]

      \section{Miti indiani}
      \kant[26-30]

      \section{Miti amerindi}
      \kant[31-35]

      \section{Miti nordici}
      \kant[36-40]

      \chapter{Interpretazioni}

      \section{Cassirer, Il mito come forma simbolica}
      \kant[41-45]

      \section{Kérenyi, Il mito come racconto esplicativo}
      \kant[46-50]

      \end{document}`
      I miei desiderata sarebbero i seguenti:
      1. nelle testatine tutto e solo in maiuscoletto
      2. i titoli di capitolo tutti e solo in maiuscoletto
      3. nell’indice i numeri dei capitoli in (romano) maiuscoletto.
      Invece succede che nelle testatine e nei titoli di capitolo l’iniziale è maiuscola,
      e se scrivo tutto in minuscolo (con \scshape), nelle testatine il risultato
      è quello voluto, ma poi le maiuscole saltano nell’indice.
      Nell’indice, i numeri dei capitoli sono in minuscolo, e non capisco dove
      eventualmente mettere l’indicazione per \scshape.
      È possibile avere il risultato che vorrei?

      grazie
      m

      PS
      Certo che kantlipsum lo avremmo voluto in tedesco! 🙂

    Visualizzazione 6 filoni di risposte
    • Autore
      Risposte
      • #90833
        OldClaudio
        Partecipante
          Up
          0
          Down
          ::


          Marco, buona parte dei problemi nascono dal fatto che:

          a) usi report come classe di base
          b) definisci due volte \chaptermark
          c) non specifichi prima di \thepage \scshape
          d) non usi una classe che possa fare tutte quelle cose da sola, senza bisogno di ricorrere a pacchetti esterni.

          Ora, l’ultima osservazione taglierebbe la testa al toro se usassi la classe suftesi; credo che il numero totale delle combinazioni che puoi ottenere con gli stili preconfigurati siano diverse migliaia; c’è sicuramente una combinazione che fa al caso tuo; il punto critico è che Ivan NON vuole che siano modificati gli elementi grafici delle sue innumerevoli varianti.

          La classe prevede diversi formati di pagina; i testi pubblicati da Einaudi sono composti in uno di questi formati? Sì? allora sei a cavallo con la classe suftesi. No? se si può fare con suftesi, quello che vuoi ottenere si può fare, solo che suftesi prevede formati di carta diversi da quello che vuoi tu; non ti resta che chiedere a Ivan se puoi inserire un ulteriore formato di pagina, comunicandogli le tue impostazioni in modo che le possa approvarle, dopo di che le puoi usare. In realtà Ivan dice che si può usare la sua classe in modo anonimo, senza colophon e simili cose che fanno capo a lui, cambiandole nome e togliendo alcune parti; in fondo la sua classe è rialsciata con Licenza LPPL con la clausola aggiuntiva specificata da Ivan nell’Introduzione del suo file di documentazione da leggere con texdoc suftesi.

          In realtà non credo che la Einaludi pubblichi testi in formati tanto diversi da quelli “standard” in Italia, e credo che Ivan abbia previsto la maggior parte di questi formati, quindi sono sicuro al 95% che suftesi vada bene per il tuo caso.

        • #90834
          samiel
          Partecipante
            Up
            0
            Down
            ::


            Richiesta chiarimenti 🙂
            1) che problemi nascono dal’uso della classe report?
            Article non mi consente di usare i capitoli, book “spreca” troppe pagine bianche,
            ecco il perché della mia scelta
            2) \chaptermark è definito due volte perché la prima volta chiede di mettere
            nelle pagine pari li titolo del capitolo e in quelle dispari il titolo della sezione.
            Ma l’Introduzione non ha sezioni, per cui la testatina delle pagine dispari rimarrebbe vuota.
            3) Ho provato a modificare il codice mettendo \scshape prima di \thepage,
            ma il problema è che se il titolo è “Introduzione”, la I iiniziale resta maiuscola
            (molto brutto), e una cosa come \MakeTextLowercase non so se qui funziona
            e ho provato a metterlo senza risultati.
            4) dopo provo senz’altro suftesi, ma in effetti proprio perché da solo
            quello che vorrei fare non mi riesce 🙁

            m

          • #90835
            OldClaudio
            Partecipante
              Up
              0
              Down
              ::


              Chiarimenti.

              1) La classe book non spreca pagine bianche se usi l’opzione openany; per altro il problema non è quello; è che le classi standard non hanno testatine e piedini configurabili, a meno che ti non ridefinisca i comandi interni del file di classe., non solo quelli delle testaitne, ma anche di ciò che \captiomark e \sectionmark e scrivono nei mark.

              2) Sì per quello basta il secondo \renewcommand{\chaptermark}; il primo è del tutto inutile.

              3) I tre campi in cui fancyhdr divide le testatine e i piedini sono indipendenti; se metti \scshape nel campo che contiene il numero della pagina, questo \scshape non deve avere nessuna influenza sul campo centrale e sull’altro campo laterale; e quindi la I di introduzione resta maiuscola, perché il \chaptermark manda nella testatina “Introduzione” e non c’è nulla che trasformi quella stringa in minuscolo. Nota che \scshape come \textsc scrivono in caps-and-small-caps, non solo in small-caps. Caso mai, invece di \nouppercase devi metterci solo o anche \MakeLowercase.

              4) Non è assolutamente necessario usare suftesi; è solamente fortemente consigliabile; e il consiglio non è perché non riesci a farlo da solo, ma perché il risultato è molto bello; Ivan ci ha lavorato per 2 o 3 anni e non ha ancora finito; suppongo che tu non voglia “reinventare l’acqua calda”, come si suole dire. Vedi, io sono abituato a ridefinre il codice originale, senza ricorrere a pacchetti, mentre tu ancora non lo sai fare; quindi è meglio farlo con l’aiuto di pacchetti affidabili e di classi affidabili, piuttosto che arrampicarsi su per i vetri; anch’io mi arrampicavo su per i vetri all’inizio, e di cretinate ne ho fatte moltissime; a forza di insistere, qualcosa ho imparato, ma come ho detto altre volte non è la strada che consiglierei ad altri.

            • #90836
              samiel
              Partecipante
                Up
                0
                Down
                ::


                Ottimo consiglio, grazie! Con suftesi ho risolto quasi tutti i miei problemi
                nel giro di un quarto d’ora. Per alcuni chiarimenti apro un post specifico

                m

              • #90837
                samiel
                Partecipante
                  Up
                  0
                  Down
                  ::

                  le classi standard non hanno testatine e piedini configurabili, a meno che ti non ridefinisca i comandi interni del file di classe., non solo quelli delle testaitne, ma anche di ciò che \captiomark e \sectionmark e scrivono nei mark.

                  Per la cronaca, giocando con tocloft e fancyhr sono riuscito a ottenere esattamente quello che volevo
                  semplicemente ridefinendo un comando interno di tocloft

                  m

                • #90838
                  OldClaudio
                  Partecipante
                    Up
                    0
                    Down
                    ::


                    Bene; quindi in sostanza hai seguito la mia strada non consigliabile a nessuno…

                  • #90839
                    samiel
                    Partecipante
                      Up
                      0
                      Down
                      ::


                      Eheh già… ma era un ridefinizione facile facile
                      altrimenti da solo non ci sarei arrivato…

                      m

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

                  Go to top