Re: Spaziatura verticale prima e dopo verse

#55296
Up
0
Down
::

Ancora non capisco. Mi dici che TeX non tiene conto di eventuali discendenti nell’ultima riga, ma mi consigli di aggiungerne a mano?
In realtà ho fatto alcune prove, e il risultato non dipendeva solo dai discendenti.
Poi non mi piace l’idea di dover modificare il testo per inserire caratteri fittizi per ottenere quel che voglio.
Mi son ricordato del pacchetto grid di Kaveh Bazargan che mi avevi suggerito tempo fa riguardo alla questione del rispetto dell’interlinea. Ho guardato come Kaveh ha ridefinito verse:
`\renewenvironment{verse}
{\let\\\@centercr
\list{}{\itemsep \z@
\itemindent -1.5em%
\listparindent\itemindent
\rightmargin \leftmargin
\advance\leftmargin 1.5em}%
\topsep\z@\partopsep\z@\parskip\z@%
\itemsep\z@\@outerparskip\z@\parsep\z@%
\@topsep\z@\@topsepadd\z@%
\item\relax}
{\endlist}`
Io l’ho modifica così:`\renewenvironment{verse}
{\let\\\@centercr
\list{}{\itemsep \z@
\itemindent -1.5em%
\listparindent\itemindent
\rightmargin \leftmargin
\advance\leftmargin 1.5em \addvspace{\baselineskip}}%
\topsep\z@\partopsep\z@\parskip \baselineskip%
\itemsep\z@\@outerparskip\z@\parsep\z@%
\@topsep\z@\@topsepadd\baselineskip%
\item\relax}
{\endlist}`
La prima modifica lascia una riga prima della poesia, la seconda gestisce lo spazio fra le stanze e l’ultima aggiunge una riga alla fine.
Così pare funzionare correttamente. Anche se non mi piace l’idea di aver introdotto così la spaziatura verticale.
Come mai la modifica di topsep non produce variazioni nell’output? Come mai definisce \topsep e @topsep? Molte domande, scusate.
L’ultima: sono accettabili le modifiche che ho fatto?

Grazie ancora della vostra disponibilità.

Francesco

Non vedo perché tutte queste complicazioni. 🙂 La tua modifica di \topsep non ha influenza perché è data fuori dall’argomento di \list, dove invece vanno tutti i parametri per comporre la lista. O, meglio, influenza solo la fine della lista, quando il parametro \topsep è usato di nuovo.
`\renewenvironment{verse}
{\let\\\@centercr
\list{}{\itemsep \z@
\itemindent -1.5em%
\listparindent\itemindent
\rightmargin \leftmargin
\advance\leftmargin 1.5em
\topsep\baselineskip
\partopsep\z@
% \@outerparskip\z@
\parsep\z@}
\parskip\baselineskip
\item\relax}
{\endlist}`
Qui metto fuori l’impostazione di \parskip, perché serve solo fra le strofe. Non credo che \@outerparskip serva.

Ciao
Enrico

Go to top