Ciao a tutti!
Marco Daniel, uno degli autori di mdframed, ha risolto il bug che avevo segnalato nel primo post.
Questo il codice (le parti commentate servono solo per testarlo):
`
\documentclass[style=italic3,11pt]{suftesi}
\makeatletter
\def\patteernstring{style=italic3}
%\let\@classoptionslistorig\XKV@classoptionslist
\let\@classoptionslisttemp\@empty
\@for\tempsearch:=\XKV@classoptionslist\do{%
\ifx\tempsearch\@empty\else
\@expandtwoargs\in@{,\tempsearch,}{,\patteernstring,}%
\ifin@\wlog{***remove option style***} \else
\wlog{***add option \tempsearch***}
\edef\@classoptionslisttemp{\@classoptionslisttemp,\tempsearch}
\fi
\fi}%
\let\XKV@classoptionslist\@classoptionslisttemp
%\edef\printorig{\@classoptionslistorig}
%\edef\printmodified{\@classoptionslist}
\makeatother
\usepackage{mdframed}
\begin{document}
\chapter{Titolo}
\begin{mdframed}
ciao
\end{mdframed}
%\printorig
%\printmodified
\end{document}
`
In pratica è sufficiente aggiungere, all’interno della rispettiva definizione nel file di classe, la stringa
`
\def\patteernstring{style=*}
`
sostituendo a * il valore dell’opzione. Poi si deve aggiunge anche il resto del codice e il gioco è fatto.
Qualcuno mi sa spiegare in dettaglio il codice qui sopra?
Una parte è documentato in source2e. Forse qualcosa si può eliminare?
Ciao
Ivan