Risolto con:
`\newcommand{\articolo}[1][]{%
\par\vspace*{2ex}
{\centering \sffamily ART. \Roman{articolo}#1%
\nobreak\par\vspace*{2ex}}
\refstepcounter{articolo}}`Il segreto sta in \vspace*. Con \vspace non funziona.
Ma che ci sta a fare \nobreak prima di \par?
🙄 Evidentemente non serve…I dubbi si moltiplicano. A cosa serve realmente \nobreak? È equivalente a \penalty10000, giusto? Lo stesso problema delle righe isolate l’avevo incontrato anche per lo stile philosophy-modern. Anche in quel caso, con \vspace* funzionava e con \vskip no, anche con \null davanti. Perché? \null\vskip non dovrebbe essere equivalente a \vspace*?
Sarà meglio anche spostare prima il \refstepcounter, che dici?
`\newcommand{\articolo}[1][]{%
\par\vspace{2ex}
{\centering \sffamily ART. \refstepcounter{articolo}\Roman{articolo}#1\par
\vspace*{2ex}}}`
Così non devi dire \setcounter{articolo}{1} all’inizio, ma non è tanto qui il punto, quanto che concettualmente il registro va modificato prima di essere usato.Ciao
Enrico
Grazie anche per questo 🙂
Ciao
Ivan