Torno sulla sillabazione con [tt]\emph[/tt] e sulla definizione del comando [tt]\hemph[/tt]:
ivan” post=66977[…]
In questo modo, però, bisogna usare un comando apposito all’occorrenza, quindi ho pensato di trovare una soluzione più generale.
Spulciando tra source2e.pdf sono arrivato a questo:
`\makeatletter
\DeclareRobustCommand\itshape
{\penalty10000\hskip0pt\not@math@alphabet\itshape
\mathit\fontshape\itdefault\selectfont}
\makeatother
`
[…]C’è qualcosa che non va in quello che ho detto? Si può fare meglio?
Ciao
Ivan
Qualcosa che non va c’è: 🙂
`\documentclass{suftesi}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{lipsum}
\makeatletter
% Queste due sono le definizioni in suftesi.cls. Togliendo il commento non compila:
\DeclareRobustCommand\itshape{%
\penalty\@M
% \hskip\z@skip
\not@math@alphabet\itshape\mathit
\fontshape\itdefault\selectfont}
\titleformat{\paragraph}[runin]
{\itshape}
{}
{}
{}
[.\hspace*{1em}]
\makeatother
\begin{document}
\paragraph{Dà errore}
\lipsum[1]
\end{document}`
Digitando `H’, titlesec spiega che il secondo argomento obbligatorio di [tt]\titleformat[/tt] non può contenere materiale orizzontale. Cioè non può esserci quel [tt]\hskip\z@skip[/tt].
Una soluzione sarebbe dare a [tt]\titleformat[/tt] la vecchia definizione di [tt]\itshape[/tt]:
`\titleformat{\paragraph}[runin]
% {\itshape}
{\not@math@alphabet\itshape\mathit
\fontshape\itdefault\selectfont}
{}
{}
{}
[.\hspace*{1em}]`
Ma probabilmente ne esistono di migliori. 🙂
Ciao
Antonio