Quindi il problema è il solito, i margini di classicthesis.
No, non credo che il problema sia quello. Il codice (anche questo secondo che mi hai inviato) produce un box “esterno” che sborda, anche con un testo di prova minuscolo. Poi c’è un altro box che circonda il codice, che si sovrappone (sgradevolmente) all’altro. Se il codice è appena un po’ lungo, poi, i due ambienti non vengono neppure messi uno di fianco all’altro, ma uno sotto l’altro. Le impostazioni di listings che ClassicThesis usa di default continuano a non essere rispettate…
In pratica, purtroppo il codice è inutilizzabile. 😥
Grazie comunque,
L.P.S. Che il problema non possa stare nei margini si capisce anche da altre cose. Innanzitutto i margini di ClassicThesis sono sì piuttosto stretti, ma non esageratamente. E poi credo che sia l’ambiente “di esempio” che debba adattarsi ai margini che ci sono (soddividendo lo spazio a disposizione, eventualmente andando più volte a capo), e non il contrario!
No, l’ambiente fa questo:
Se il codice supera 0.5\linewidth, mette uno sull’altro altrimenti uno fianco l’altro.
Infatti c’è una condizione
`
\ifdim \wd\z@>.5\linewidth
….`
Prova in questo modo, di più non posso fare:
`
\documentclass[12pt]{article}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\usepackage[writefile]{listings}
\usepackage[italian]{babel}
\usepackage{xcolor,fancybox}
\lstset{extendedchars}
\makeatletter
\lstnewenvironment{sidebyside}{%
\global\let\lst@intname\@empty
\setbox\z@=\hbox\bgroup
\setkeys{lst}{language={},style={},basewidth=0.51em,breaklines=true,%
linewidth=0.45\linewidth, frame=single, breakindent=0pt,%
basicstyle=\small\ttfamily
} %
\lst@BeginAlsoWriteFile{\jobname.tmp}%
}{%
\lst@EndWriteFile\egroup
\begin{center}%
\begin{minipage}{0.45\linewidth}%
\hbox to\linewidth{\box\z@\hss}
\end{minipage}%
\qquad
\begin{minipage}{0.45\linewidth}%
\leavevmode \catcode`\^^M=10\relax
\small\input{\jobname.tmp}%
\end{minipage}%
\end{center}%
}
\makeatother %al posto di \small prova \scriptsize
\begin{document}
Testo Testo Testo Testo Testo Testo Testo Testo Testo Testo Testo
Testo Testo Testo Testo Testo Testo Testo Testo Testo Testo Testo
\begin{sidebyside}
\LaTeX è il nostro programma preferito. Esempio con il pacchetto listings.
\LaTeX è il nostro programma preferito. Esempio con il pacchetto listings.
\LaTeX è il nostro programma preferito. Esempio con il pacchetto listings.
\begin{itemize}
\item 23
\item 12
\end{itemize}
\begin{equation}
1+2=9-6=3
\end{equation}
\end{sidebyside}
Testo Testo Testo Testo Testo Testo Testo Testo Testo Testo Testo
Testo Testo Testo Testo Testo Testo Testo Testo Testo Testo Testo
\end{document}
`
Ciao
Andrea