Bene Enrico, quasi perfetto. Per ragioni Artistiche, mi sono permesso di cambiare il nome del tuo comando in \grecosf. Per il resto il codice è identico.
`\documentclass{scrreprt}
\usepackage[writefile]{listings}
\usepackage{classicthesis-ldpkg}
\usepackage[beramono]{classicthesis}
\usepackage[polutonikogreek,italian]{babel}
\usepackage[italian]{arsclassica}\newcommand{\grecosf}[1]{%
\begin{otherlanguage*}{greek}%
\testfamily#1%
\end{otherlanguage*}}\newcommand{\greeksf}{\fontfamily{cmss}\selectfont}
\makeatletter
\edef\grs@sans{\sfdefault}
\edef\grs@tt{\ttdefault}
\def\testfamily{%
\ifx\f@family\grs@sans\greeksf\fi
\ifx\f@family\grs@tt\greeksf\fi}
\makeatother
\DeclareFontFamily{LGR}{\ttdefault}{}
\DeclareFontShape{LGR}{\ttdefault}{m}{n}{<->cmtt10}{}
\DeclareFontFamily{LGR}{\sfdefault}{}
\DeclareFontShape{LGR}{\sfdefault}{m}{n}{<->cmss10}{}\lstset{basicstyle=\normalfont\ttfamily,frame=lines}
\lstset{escapeinside={£*}{*£}}\lstnewenvironment{codice}%
{\setkeys{lst}{columns=fullflexible,keepspaces=true}%
\lstset{basicstyle=\small\ttfamily,escapeinside={£*}{*£}}%
}%
{}\begin{document}
\begin{codice}
\begin{otherlanguage}{greek}
£*\grecosf{Th| p'anta dido'ush| ka`i >apolambano'ush| f'useiid'hmwn l'egei; < ap'olabe, <`o j'eleic>>. L'egei d`e to~uto o>u}*£
£*\grecosf{katajrasun'omenos, >all`a peijarq~wn m'onon ka`i e>uno~wn a>uth|.}*£
\end{otherlanguage}
\end{codice}
\end{document}`
Come vedi, il testo greco presenta un piccolo rientro nel margine sinistro. È voluto? Non sarebbe possibile eliminarlo?Grazie mille Enrico: come faremmo senza di te? 😉
L.
Il problema è che manca un % nella definizione, l’ho messo in rosso nel codice riportato.
Perché rinominare il comando? ❓ Non capisco. Con la definizione che ti ho dato hai il comportamento che ritengo quello voluto: in ambiente “normale” \greco compone con i font greci “serif”; in ambiente “sans serif” o “dattilografico” \greco compone con i font greci “sans serif”.
Ciao
Enrico