Profondità numerazione di equazioni e figure – classe Memoir

  • Creatore
    Topic
  • #66210
    Up
    0
    Down
    ::


    Ciao a tutti,

    torno con un quesito riguardante la classe memoir. Nelle classi standard per decidere la profondità della numerazione di equazioni e figure uso il seguente codice:
    `\numberwithin{equation}{section}
    \numberwithin{figure}{section}
    \numberwithin{subfigure}{section}`
    Come posso ottenere la medesima cosa anche utilizzando la classe memoir?

    Grazie e buona giornata,
    Marco.

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

      Marco87″ post=65264Ciao a tutti,

      torno con un quesito riguardante la classe memoir. Nelle classi standard per decidere la profondità della numerazione di equazioni e figure uso il seguente codice:
      `\numberwithin{equation}{section}
      \numberwithin{figure}{section}
      \numberwithin{subfigure}{section}`
      Come posso ottenere la medesima cosa anche utilizzando la classe memoir?

      Grazie e buona giornata,
      Marco.

      `\usepackage{chngcntr} % non serve con memoir

      \counterwithin{figure}{section}
      \counterwithin*{footnote}{chapter}`
      Ho aggiunto anche un esempio della variante *: senza asterisco viene anche modificata in modo “ovvio” la rappresentazione del contatore, con l’asterisco no. Con quei comandi la prima figura della sezione 3 del capitolo 4 sarà numerata 4.3.1; le note al piede invece sono azzerate a ogni capitolo e indicate solo con il loro numero specifico (lo so: le classi standard già fanno così, è solo per fare un esempio). Il pacchetto ha anche \counterwithout.

      La funzionalità di chngcntr è già incorporata in memoir; caricarlo comunque non fa danno.

      Ciao
      Enrico

    • #66212
      OldClaudio
      Partecipante
        Up
        0
        Down
        ::


        Puoi usare il pacchetto chngcntr del quale hai usato i comandi che esemplifichi.

        Ma senza caricare nessun pacchetto può usare direttamente i comandi \counterwithin e \counterwithout tenendo conto che la versione asteriscata aggiunge/rimuove il primo contatore dalla reset list del secondo contatore, mentre la versione non asteriscata ridefinisce anche il modo di scrivere il contatore.

        Questi due comandi sono definiti in memoir; Wilson li ha anche estratti e messi nel pacchetto chngcntr, quindi si tratta sempre della stessa origine e hanno la stessa funzionalità.

        La documentazione dei due comandi è a pagina 337 del manuale di memoir leggibile come al solito con texdoc memoir

      • #66213
        Up
        0
        Down
        ::


        Ciao,

        ringrazio molto sia Enrico che Claudio. Il comando:
        `\counterwithin{subfigure}{section}`
        genera l’errore:

        ! Class memoir Error: subfigure is not a counter.

        Che cosa devo fare? I comandi per equation e figure sono sufficienti? Che cosa succederà alla numerazione delle subfigure?

        Claudio, ti garantisco che avevo cercato nel manuale. Dubitavo fortemente che in un manuale così minuzioso mancasse (e infatti c’era). Purtroppo però, a causa del mio inglese accademico, non ero riuscito a trovare la spiegazione e capire come fare. Alcune cose sono riuscito a capirle, altre no. Chiedo scusa per casi come questo.

        Grazie mille ancora e ciao, 🙂
        Marco.

      • #66214
        Up
        0
        Down
        ::

        Marco87″ post=65274Ciao,

        ringrazio molto sia Enrico che Claudio. Il comando:
        `\counterwithin{subfigure}{section}`
        genera l’errore:

        ! Class memoir Error: subfigure is not a counter.

        Che cosa devo fare? I comandi per equation e figure sono sufficienti? Che cosa succederà alla numerazione delle subfigure?

        Claudio, ti garantisco che avevo cercato nel manuale. Dubitavo fortemente che in un manuale così minuzioso mancasse (e infatti c’era). Purtroppo però, a causa del mio inglese accademico, non ero riuscito a trovare la spiegazione e capire come fare. Alcune cose sono riuscito a capirle, altre no. Chiedo scusa per casi come questo.

        Grazie mille ancora e ciao, 🙂
        Marco.

        Con memoir mi pare che subfigure non sia definito in partenza. Controlla sul manuale.

        Ciao
        Enrico

      • #66215
        Up
        0
        Down
        ::


        Ciao Enrico,

        lo farò.

        Intanto grazie,
        Marco.

      • #66216
        OldClaudio
        Partecipante
          Up
          0
          Down
          ::


          La documentazione di memoir, secondo me, è esplicita, ma non poi tanto; nel senso che il pacchetto subfig o il pacchetto subfigure (obsoleto) sono gestibili da memoir con tutti i loro comandi interni e quant’altro; se apri il manuale di memoir con un lettore pdf che consenta la ricerca del testo, e imposti subfig come stringa da cercare, trovi una moltitudine di pagine dove si parla di queste cose, ma secondo me bisogna saper leggere fra le righe; non è cosi esplicito come sarebbe possibile essere.

          Tuttavia il contatore subfigure è definto dal pacchetto subfig, che va quindi caricato anche se si usa memoir, ma poi i contatori possono benissimo venire gestiri con i soliti comandi \conterwithin e \counterwithout.

          Dentro a memoir.cls non si usa quasi mai il nome esplicito del contatore, e per gli oggetti flottanti si usa il nome \@captype che di volta in volta, a seconda di quale float vecchio o nuovo si stia gestendo, coincide con il nome dell’ambiente (a parte l’eventuale asterisco); quindi per una figura \@captype vale “ffigure” per una tabella \@captype vale table, eccetera; si capisce che per un ambiente subfigure, \@captype vale subfigure; per gestirlo sia mempoir sia LaTeX in generale usa il nome il nome codificato dentro \@captype per generare il nome vero del contaotre e per generare il comando che scrive il contenuto del contatore; per esempio se \@captype contiene “subfigure”, il contatore \c@subfigure è ottenuto da \csname c@\@captype\endcsname , e il comando per scriverlo per scriverlo \thesubfigure è ottenuto da \csname the\@captype\endcsname.

          Ecco perché anche leggendo il file del codice della classe memoir si trova poco in merito a subfigure.

          Piccola nota di linguaggio TeX primitivo: \csname e \encsname sono i due delimitatori con i quali si crea un nome di macro formato dal contenuto (espanso) di quanto è racchiuso fra di loro e preceduto dal backslash.

        • #66217
          Up
          0
          Down
          ::


          Ciao Claudio,

          le tue spiegazioni sono sempre molto interessanti da leggere. Non posso dire di avere capito esattamente quello che hai scritto, ma posso dire che sicuramente ne so più di prima, e che capisco meglio come funzionano le cose. Ti ringrazio molto della spiegazione. 🙂

          Ciao,
          Marco.

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

      Go to top