Re: Stile philosophy-modern e numero della rivista

#44582
Up
0
Down
::

Ho provato il suggerimento di Ivan, e funziona:
`@article{cevolani:italiano,
author = {Cevolani, Gustavo},
title = {Norme tipografiche per l'italiano in \LaTeX},
journaltitle = {\Ars},
number = {\unskip\unskip\unpenalty\unskip~1},
year = {2006},
url = {http://www.guit.sssup.it/arstexnica/download_ars/arstexnica01.pdf}
}
`
Il risultato, così, è decisamente migliore.

Grazie mille a Ivan ed Enrico,
L.

Adesso potremmo provare ad automatizzare la faccenda:
`\newif\ifinserthardspace
\def\nobibbreak{\inserthardspacefalse\chasenodes\ifinserthardspace~\fi}
\def\chasenodes{%
\ifcase\lastnodetype
\or % 0: char node
\or % 1: hlist node
\or % 2: vlist node
\or % 3: rule node
\or % 4: ins node
\or % 5: mark node
\or % 6: adjust node
\or % 7: ligature node
\or % 8: disc node
\or % 9: whatsit node
\or % 10: math node
\expandafter\nobibunskip\or % 11: glue node
\expandafter\nobibunkern\or % 12: kern node
\expandafter\nobibunpenalty\or % 13: penalty node
\or % 14: unset node
% 15: math mode nodes
\fi
}
\def\nobibunskip{\unskip\inserthardspacetrue\chasenodes}
\def\nobibunkern{\unkern\inserthardspacetrue\chasenodes}
\def\nobibunpenalty{\unpenalty\chasenodes}`
Questo codice (che va nel preambolo del documento) definisce la macro \nobibbreak che va a caccia ricorsivamente dei nodi precedenti eliminando tutti quelli di tipo “glue”, “penalty” e “kern” e, se ne elimina uno, aggiunge uno spazio indivisibile (~). Quindi
`@article{cevolani:italiano,
author = {Cevolani, Gustavo},
title = {Norme tipografiche per l'italiano in \LaTeX},
journaltitle = {\Ars},
number = {\nobibbreak 1},
year = {2006},
url = {http://www.guit.sssup.it/arstexnica/download_ars/arstexnica01.pdf}
}`
dovrebbe funzionare. Hai voglia di provare?

Ciao
Enrico

Go to top