Xelatex e listings

  • Creatore
    Topic
  • #85293
    samiel
    Partecipante
      Up
      0
      Down
      ::


      Non ho fatto ancora alcuna prova, ma ho diversi documenti che usano listings
      Leggo che ci sono difficoltà nel suo uso con Xelatex, e ho trovato in rete alcue discussioni:
      http://tex.stackexchange.com/questions/25391/the-listings-package-and-utf-8
      http://bakerjd99.wordpress.com/2011/08/15/typesetting-utf8-apl-code-with-the-latex-lstlisting-package/
      Dal momento tuttavia che questi post sono piuttosto vecchi, volevo chiedere se attualmente
      la situazione si è evoluta. Se invece è necessario intervenire “manualmente”, domando come si arriva
      a un codice per me incomprensibile come il seguente per usare i caratteri oltre 256:
      `\makeatletter
      \lst@InputCatcodes
      \def\lst@DefEC{%
      \lst@CCECUse \lst@ProcessLetter
      ^^80^^81^^82^^83^^84^^85^^86^^87^^88^^89^^8a^^8b^^8c^^8d^^8e^^8f%
      ^^90^^91^^92^^93^^94^^95^^96^^97^^98^^99^^9a^^9b^^9c^^9d^^9e^^9f%
      ^^a0^^a1^^a2^^a3^^a4^^a5^^a6^^a7^^a8^^a9^^aa^^ab^^ac^^ad^^ae^^af%
      ^^b0^^b1^^b2^^b3^^b4^^b5^^b6^^b7^^b8^^b9^^ba^^bb^^bc^^bd^^be^^bf%
      ^^c0^^c1^^c2^^c3^^c4^^c5^^c6^^c7^^c8^^c9^^ca^^cb^^cc^^cd^^ce^^cf%
      ^^d0^^d1^^d2^^d3^^d4^^d5^^d6^^d7^^d8^^d9^^da^^db^^dc^^dd^^de^^df%
      ^^e0^^e1^^e2^^e3^^e4^^e5^^e6^^e7^^e8^^e9^^ea^^eb^^ec^^ed^^ee^^ef%
      ^^f0^^f1^^f2^^f3^^f4^^f5^^f6^^f7^^f8^^f9^^fa^^fb^^fc^^fd^^fe^^ff%
      ^^^^20ac^^^^0153^^^^0152%%
      ^^00}
      \lst@RestoreCatcodes
      \makeatother`

      grazie
      m

    Visualizzazione 25 filoni di risposte
    • Autore
      Risposte
      • #85294
        OldClaudio
        Partecipante
          Up
          0
          Down
          ::


          Il codice sembra incomprensibile perché vi sono elencati gli indirizzi esadecimali dei vari segni che comapiono nella tabella dei caratteri dall’indirizzo 128 all’indirizzo 255. ma non so se risolva il problema, nel senso che con XeLaTeX e la sua codifica “obbligatoria” UTF8, quella serie di indirizzi non dovrebbe venire usata mai, Tuttavia se leggi lla documentazione di listings, trovi ad un certo punto come dire al pacchetto che un certo segno deve venire riprodotto in modo letterale; il tutto è descritto nel §5.4. In sostanza si tratta di dire che cosa si deve rappresentare con comandi TeX di basso livello. per esempio:`
          literate={à}{\`a}1 {è}{\`e}1
          `eccetera.
          Enrico in diversi post ha fatto anche esempi più estesi.

        • #85295
          Up
          0
          Down
          ::

          OldClaudio” post=84724Il codice sembra incomprensibile perché vi sono elencati gli indirizzi esadecimali dei vari segni che comapiono nella tabella dei caratteri dall’indirizzo 128 all’indirizzo 255. ma non so se risolva il problema, nel senso che con XeLaTeX e la sua codifica “obbligatoria” UTF8, quella serie di indirizzi non dovrebbe venire usata mai, Tuttavia se leggi lla documentazione di listings, trovi ad un certo punto come dire al pacchetto che un certo segno deve venire riprodotto in modo letterale; il tutto è descritto nel §5.4. In sostanza si tratta di dire che cosa si deve rappresentare con comandi TeX di basso livello. per esempio:`
          literate={à}{\`a}1 {è}{\`e}1
          `eccetera.
          Enrico in diversi post ha fatto anche esempi più estesi.

          Bastava guardare la sezione 9.1 dell’Arte, dove si spiega la sintassi di [tt]literate[/tt]. Ma ultimamente le guide non vengono troppo consultate.

          Ciao
          Tommaso

        • #85296
          samiel
          Partecipante
            Up
            0
            Down
            ::


            Ah, non ricordavo quel paragrafo dell’Arte, ma culpa.
            Tuttavia continua a non capire una cosa: se esiste la soluzione
            di definire un certo segno mediante \literate,
            l’altra soluzione, ovvero l’inserimento del codice che ho riportato,
            è equivalente? Pià economica? Più farraginasa?
            O ha un’altra funzione?

            m

          • #85297
            OldClaudio
            Partecipante
              Up
              0
              Down
              ::

              samiel” post=84753
              Tuttavia continua a non capire una cosa: se esiste la soluzione
              di definire un certo segno mediante \literate,
              l’altra soluzione, ovvero l’inserimento del codice che ho riportato,
              è equivalente? Pià economica? Più farraginasa?
              O ha un’altra funzione?

              Ha un’altra funzione; serve per rendere usabili i caratteri non-ASCII delle codifiche a 8 bit, latin1, ansinew, applemac, latin9, eccetera. Ma questi caratteri non-ASCII sono codificati con 8 bit di cui il primo vale 1; il codice utf8 usa i caratteri strettamente ASCI (a 7 bit, cioè identificati dal un byte di 8 bit in cui il primo vale 0) e posi dagli altri caratteri codificati con due o più byte.
              Quella tabella del codice che hai allegato al primo messaggio, contiene solo i 128 caratteri codificati con 8 bit dei quali il primo vale 1, quindi niente UNICODE e niente UTF-8 (utf8).
              La soluzione con literate non è male perché le lettere non ascii che si scrivono abitualmente (in italiano) sono una dozzina circa; se vuoi davvero mettere in un listato listings anche, supponiamo, del greco sarebbe davvero complicato, ammesso che sia possibile.

              Ci sarebbe una soluzione, forse; quella di usare il pacchetto tcolorbox (leggere la documentazione) perché consente di mettere di tutto dentro alcuni tipi di scatole, interagendo anche con listings e assicurando la compatibilità con utf8; questo pacchetto generalmente mette dei bordi colorati e degli sfondi colorati a queste scatole, ma si può sempre scegliere il colore bianco se non si vogliono questi bordi e questi sfondi.

              Fai attenzione che la versione di tcolorbox che fa queste cose è stata caricata su CTAN dopo il congelamento di TeX Live, quindi non la puoi installare con il soliti metodi; non so che cosa succeda con MiKTeX, che di solito è in ritardo rispetto a TeX Live, ma può darsi che Christian Schenk scarichi direttamente da CTAN i pacchetti da re-impacchettare per distribuirli con MiKTeX.

              In ogni caso, io l’ho scaricato da CTAN, e l’ho semplicemente “dezippato” in una cartella che ho creato nel mio albero personale (non quello locale, ma quello personale (Mac): ~/Library/texmf/tex/latex/tcolorbox/) e il tutto funziona alla perfezione; quando a luglio caricherà MecTeX 2013, toglierò questa intera cartella dal mio albero personale. Certo non è una installazione “canonica”, perché nella mia attuale artella oltre ai file .sty e i file associati, ci sono anche quelli di documentazione, i sorgenti, eccetera, ma temporaneamente va bene.

            • #85298
              Up
              0
              Down
              ::

              OldClaudio” post=84754

              Tuttavia continua a non capire una cosa: se esiste la soluzione
              di definire un certo segno mediante \literate,
              l’altra soluzione, ovvero l’inserimento del codice che ho riportato,
              è equivalente? Pià economica? Più farraginasa?
              O ha un’altra funzione?

              Ha un’altra funzione; serve per rendere usabili i caratteri non-ASCII delle codifiche a 8 bit, latin1, ansinew, applemac, latin9, eccetera. Ma questi caratteri non-ASCII sono codificati con 8 bit di cui il primo vale 1; il codice utf8 usa i caratteri strettamente ASCI (a 7 bit, cioè identificati dal un byte di 8 bit in cui il primo vale 0) e posi dagli altri caratteri codificati con due o più byte.
              Quella tabella del codice che hai allegato al primo messaggio, contiene solo i 128 caratteri codificati con 8 bit dei quali il primo vale 1, quindi niente UNICODE e niente UTF-8 (utf8).
              La soluzione con literate non è male perché le lettere non ascii che si scrivono abitualmente (in italiano) sono una dozzina circa; se vuoi davvero mettere in un listato listings anche, supponiamo, del greco sarebbe davvero complicato, ammesso che sia possibile.

              Ci sarebbe una soluzione, forse; quella di usare il pacchetto tcolorbox (leggere la documentazione) perché consente di mettere di tutto dentro alcuni tipi di scatole, interagendo anche con listings e assicurando la compatibilità con utf8; questo pacchetto generalmente mette dei bordi colorati e degli sfondi colorati a queste scatole, ma si può sempre scegliere il colore bianco se non si vogliono questi bordi e questi sfondi.

              Fai attenzione che la versione di tcolorbox che fa queste cose è stata caricata su CTAN dopo il congelamento di TeX Live, quindi non la puoi installare con il soliti metodi; non so che cosa succeda con MiKTeX, che di solito è in ritardo rispetto a TeX Live, ma può darsi che Christian Schenk scarichi direttamente da CTAN i pacchetti da re-impacchettare per distribuirli con MiKTeX.

              In ogni caso, io l’ho scaricato da CTAN, e l’ho semplicemente “dezippato” in una cartella che ho creato nel mio albero personale (non quello locale, ma quello personale (Mac): ~/Library/texmf/tex/latex/tcolorbox/) e il tutto funziona alla perfezione; quando a luglio caricherà MecTeX 2013, toglierò questa intera cartella dal mio albero personale. Certo non è una installazione “canonica”, perché nella mia attuale artella oltre ai file .sty e i file associati, ci sono anche quelli di documentazione, i sorgenti, eccetera, ma temporaneamente va bene.

              Magari fosse possibile per il greco. Ci ho provato in mille modi. Mi sembra che literate non traduca nemmeno caratteri come ß.

              Ciao
              Tommaso

            • #85299
              samiel
              Partecipante
                Up
                0
                Down
                ::


                Per inserire le lettere greche in modalità matematica:
                `\documentclass[a4paper]{article}
                \usepackage{fontspec}
                \usepackage{polyglossia}
                \setmainlanguage{italian}
                \usepackage{listings}
                \lstset{mathescape=true}

                \begin{document}
                \begin{lstlisting}
                $\epsilon$

                $\beta$
                \end{lstlisting}
                \end{document}`
                Per scrivere davvero in greco… tutto da vedere!

                m

              • #85300
                OldClaudio
                Partecipante
                  Up
                  0
                  Down
                  ::


                  Non ci ho provato, ma se aggiungi [tt]{ß}{\ss}1[/tt] alla lista dei segni da mettere con comandi TeX che cosa succede?

                • #85301
                  samiel
                  Partecipante
                    Up
                    0
                    Down
                    ::


                    Con questo codice:
                    `\documentclass[a4paper]{article}
                    \usepackage{fontspec}
                    \usepackage{polyglossia}
                    \setmainlanguage{italian}
                    \usepackage{listings}
                    \lstset{mathescape=true}
                    \lstset{literate=%
                    {Ö}{{\”O}}1
                    {Ä}{{\”A}}1
                    {Ü}{{\”U}}1
                    {ß}{{\ss}}2
                    {ü}{{\”u}}1
                    {ä}{{\”a}}1
                    {ë}{{\”e}}1
                    {ö}{{\”o}}1
                    {ć}{{\'c}}1
                    {č}{{\v{c}}}1
                    {đ}{{\dj{}}}1
                    {š}{{\v{s}}}1
                    {ž}{{\v{z}}}1
                    {Ć}{{\'C}}1
                    {Č}{{\v{C}}}1
                    {Đ}{{\DJ{}}}1
                    {Š}{{\v{S}}}1
                    {Ž}{{\v{Z}}}1
                    }

                    \begin{document}

                    \begin{lstlisting}

                    $\epsilon$

                    $\beta$

                    Schloß

                    Kruščëv

                    \end{lstlisting}

                    \end{document}`
                    il risultato è un po’ strano

                    [attachment=687]listings.png[/attachment]

                    Attachments:
                    You must be logged in to view attached files.
                  • #85302
                    OldClaudio
                    Partecipante
                      Up
                      0
                      Down
                      ::


                      Già, non funziona nulla. Con XeLaTeX tutte quelle lettere sono in realtà formate da due byte; ma a quel punto le informazioni della documentazione di listings lasciano per la strada.

                      Prova con tcolorbox.

                    • #85303
                      samiel
                      Partecipante
                        Up
                        0
                        Down
                        ::

                        Bastava guardare la sezione 9.1 dell’Arte, dove si spiega la sintassi di literate.

                        Come vedi, il risultato non è come ci si aspetta…

                        Prova con tcolorbox

                        Quanto prima!

                        m

                      • #85304
                        OldClaudio
                        Partecipante
                          Up
                          0
                          Down
                          ::


                          Lo so che listings non è compatibile con UNICODE, ma in un lavoro che ho fatto con altri interlocutori del forum ho specificato:`
                          \lstset{%
                          literate={à}{\`a}1 {è}{\`e}1 {é}{\'e}1 {ì}{\`i}1 {ò}{\`o}1 {ù}{\`u}1 %
                          {È}{\`E}1 {«}{{<<}}1 {»}{{>>}}1 {ā}{\=a}1 {ă}{{\u{a}}}1
                          }`e ho compilato con XeLaTeX, e il tutto è riuscito bene. Quindi mi domando che cosa ci sia che non vada in quello che hai scritto tu e in quello che ho elaborato io sul tuo modello.

                          Comunque vale la pena di provare tcolorbox, anche perché permette di eseguire dei listati molto “migliori” di quelli che si possono ottenenre con listings.

                        • #85305
                          Up
                          0
                          Down
                          ::

                          samiel” post=84769Come vedi, il risultato non è come ci si aspetta…

                          Mica ho detto che funziona 🙂 Ho solo detto che avevamo spiegato la sintassi di [tt]literate[/tt]. Sembra che literate funzioni con i caratteri particolari costruiti, per esempio \ss -> ß, ma non funzioni con caratteri Unicode non latini.

                          Il pacchetto tcolorbox è arrivato alla versione 2.21, se non sbaglio. Va molto bene, ma si appoggia pesantemente a listings.

                          Ciao
                          Tommaso

                        • #85306
                          samiel
                          Partecipante
                            Up
                            0
                            Down
                            ::


                            Ho scaricato e installato l’ultima versione come cinsigliato da Old Claudoi.
                            Si tratta appunto dellla 2.21 datata 23 aprile – fresca di stampa! 🙂
                            Un primo semplice esperimento
                            `\documentclass[a4paper]{article}
                            \usepackage{fontspec}
                            \usepackage{polyglossia}
                            \setmainlanguage{italian}
                            \setotherlanguage[variant=polytonic]{greek}
                            \newfontfamily\greekfont[Scale=MatchLowercase]{GFS Didot}
                            \usepackage[listings,theorems,skins,breakable]{tcolorbox}

                            \begin{document}

                            \begin{tcolorbox}[colback=red!5!white,colframe=red!75!black]
                            My box.
                            \end{tcolorbox}

                            \begin{tcolorbox}[colback=yellow!5!white,colframe=yellow!75!black,title=My title]
                            I can do this also with a title.
                            \tcblower
                            Lower part of my box. Schloß Woitiła Søren Böse
                            \end{tcolorbox}

                            \begin{tcolorbox}[colback=yellow!10!white,colframe=red!75!black,title=Here I am]
                            \begin{greek}
                            Κώνωψ πρὸς λέοντα ἐλθὼν εἶπεν· οὔτε φοβοῦμαί σε
                            οὔτε δυνατώτερός μου εἶ· εἰ δὲ μή, τίς σοί ἐστιν ἡ δύναμις; ὅτι ξύεις τοῖς
                            ὄνυξι καὶ δάκνεις τοῖς ὀδοῦσι; τοῦτο καὶ γυνὴ τῷ ἀνδρὶ μαχομένη ποιεῖ. ἐγὼ δὲ
                            λίαν ὑπάρχω σου ἰσχυρότερος. εἰ δὲ θέλεις, ἔλθωμεν καὶ εἰς πόλεμον. καὶ
                            σαλπίσας ὁ κώνωψ ἐνεπήγετο δάκνων τὰ περὶ τὰς ῥῖνας αὐτοῦ ἄτριχα πρόσωπα. ὁ δὲ
                            λέων τοῖς ἰδίοις ὄνυξι κατέλυεν ἑαυτὸν, ἕως οὗ ἠγανάκτησεν. ὁ δὲ κώνωψ νικήσας
                            τὸν λέοντα καὶ σαλπίσας καὶ ἐπινίκιον ᾄσας ἔπτατο. ἀράχνης δὲ δεσμῷ ἐμπλακείς,
                            ἐσθιόμενος ἀπωδύρετο, ὅτι μεγίστοις πολεμῶν ὑπ' εὐτελοῦς ζῴου, τῆς ἀράχνης,
                            ἀπώλετο.
                            \end{greek}
                            \end{tcolorbox}

                            \tcbset{colback=red!5!white,colframe=red!75!black}
                            \begin{tcolorbox}[arc=0mm]
                            Città benché caffè più però
                            \end{tcolorbox}

                            \end{document}`

                          • #85307
                            Up
                            0
                            Down
                            ::

                            samiel” post=84773Ho scaricato e installato l’ultima versione come cinsigliato da Old Claudoi.
                            Si tratta appunto dellla 2.21 datata 23 aprile – fresca di stampa! 🙂
                            Un primo semplice esperimento
                            `\documentclass[a4paper]{article}
                            \usepackage{fontspec}
                            \usepackage{polyglossia}
                            \setmainlanguage{italian}
                            \setotherlanguage[variant=polytonic]{greek}
                            \newfontfamily\greekfont[Scale=MatchLowercase]{GFS Didot}
                            \usepackage[listings,theorems,skins,breakable]{tcolorbox}

                            \begin{document}

                            \begin{tcolorbox}[colback=red!5!white,colframe=red!75!black]
                            My box.
                            \end{tcolorbox}

                            \begin{tcolorbox}[colback=yellow!5!white,colframe=yellow!75!black,title=My title]
                            I can do this also with a title.
                            \tcblower
                            Lower part of my box. Schloß Woitiła Søren Böse
                            \end{tcolorbox}

                            \begin{tcolorbox}[colback=yellow!10!white,colframe=red!75!black,title=Here I am]
                            \begin{greek}
                            Κώνωψ πρὸς λέοντα ἐλθὼν εἶπεν· οὔτε φοβοῦμαί σε
                            οὔτε δυνατώτερός μου εἶ· εἰ δὲ μή, τίς σοί ἐστιν ἡ δύναμις; ὅτι ξύεις τοῖς
                            ὄνυξι καὶ δάκνεις τοῖς ὀδοῦσι; τοῦτο καὶ γυνὴ τῷ ἀνδρὶ μαχομένη ποιεῖ. ἐγὼ δὲ
                            λίαν ὑπάρχω σου ἰσχυρότερος. εἰ δὲ θέλεις, ἔλθωμεν καὶ εἰς πόλεμον. καὶ
                            σαλπίσας ὁ κώνωψ ἐνεπήγετο δάκνων τὰ περὶ τὰς ῥῖνας αὐτοῦ ἄτριχα πρόσωπα. ὁ δὲ
                            λέων τοῖς ἰδίοις ὄνυξι κατέλυεν ἑαυτὸν, ἕως οὗ ἠγανάκτησεν. ὁ δὲ κώνωψ νικήσας
                            τὸν λέοντα καὶ σαλπίσας καὶ ἐπινίκιον ᾄσας ἔπτατο. ἀράχνης δὲ δεσμῷ ἐμπλακείς,
                            ἐσθιόμενος ἀπωδύρετο, ὅτι μεγίστοις πολεμῶν ὑπ' εὐτελοῦς ζῴου, τῆς ἀράχνης,
                            ἀπώλετο.
                            \end{greek}
                            \end{tcolorbox}

                            \tcbset{colback=red!5!white,colframe=red!75!black}
                            \begin{tcolorbox}[arc=0mm]
                            Città benché caffè più però
                            \end{tcolorbox}

                            \end{document}`

                            Bisogna far comparire il greco in teletype.

                            Ciao
                            Tommaso

                          • #85308
                            samiel
                            Partecipante
                              Up
                              0
                              Down
                              ::


                              `Bisogna far comparire il greco in teletype.`
                              Il testo è redatto in DejaVu Sans. Non ho capito bene però cosa intendi…

                              m

                            • #85309
                              OldClaudio
                              Partecipante
                                Up
                                0
                                Down
                                ::


                                Non direi che tu stia usando il font DejaVu, nel per il testo in lettere latine nè per quello in lettere greche: il fonto usato per le lettere latine è il Latin Modern OpenType, che è il font di default, e tu non hai impostato nessun \setmainfont per scegliere un main font differente.
                                Per il testo greco hai impostato il GFS Didot, non il DejaVu di nessun genere.

                                Il teletype è quello che con pdflatex si seleziona con \ttfamily o con \texttt{…}; è il font per macchine da scrivere, con grazie e monospaziato.

                                IlLinguista72 probabilmente vuol dire che se devi mostrare del testo in evidenza in una scatola, ben composto e giustificato, quello che hai ottenuto va bene, ma se vuoi esporre un listato di codice sorgente in un qualunque linguaggio,, non devi comporlo con un font da testo giustificato, ma con un font monospaziato; di font monospaziati che contengano anche il greco classico/politonico non ce ne sono molti; Tra quelli distribuiti con il sistema TeX c’è UM Typewriter, per esempio. Ce ne sono anche altri, ma per sapre se contengono anche la pagina del greco avanzato (in sostanza il greco politonico) bisogna saper interpretare quello che dice otfinfo oppure bisogna aprire il font con il programma FontForge e andare a vedere che cosa contiene effettivamente dalle parti degli indirizzi esadecimali U+1F00 fino a U+1FFC; questa è la cosa più sicura da fare.

                              • #85310
                                samiel
                                Partecipante
                                  Up
                                  0
                                  Down
                                  ::


                                  Ah, che stupido, io parlave dell’editor…

                                  Giusto, il codice va in tt.
                                  Poi c’à la questione dell’evidenziazione della sintassi,
                                  una delle specialità di listings. Adesso vedo anche
                                  che “combinazioni” si possono fare inserendo listati
                                  di codice con listings nelle “scatole” di tcolorbox

                                  m

                                • #85311
                                  samiel
                                  Partecipante
                                    Up
                                    0
                                    Down
                                    ::


                                    Conquesto codice
                                    `\documentclass[a4paper]{article}
                                    \usepackage{fontspec}
                                    \usepackage{polyglossia}
                                    \setmainlanguage{italian}
                                    \setotherlanguage[variant=polytonic]{greek}
                                    \setmainfont{UMTypewriter-Regular.otf}
                                    %\setmainfont{DejaVu Sans Mono}
                                    %\newfontfamily\greekfont[Scale=MatchLowercase]{UMTypewriter-Regular.otf}
                                    \usepackage[listings,theorems,skins,breakable]{tcolorbox}

                                    \begin{document}

                                    \begin{tcolorbox}[colback=red!5!white,colframe=red!75!black]
                                    My box.
                                    \end{tcolorbox}

                                    \begin{tcolorbox}[colback=yellow!5!white,colframe=yellow!75!black,title=My title]
                                    I can do this also with a title.
                                    \tcblower
                                    Lower part of my box. Schloß Woitiła Søren Böse
                                    \end{tcolorbox}

                                    \begin{tcolorbox}[colback=yellow!10!white,colframe=red!75!black,title=Here I am]
                                    \begin{greek}
                                    Κώνωψ πρὸς λέοντα ἐλθὼν εἶπεν· οὔτε φοβοῦμαί σε
                                    οὔτε δυνατώτερός μου εἶ· εἰ δὲ μή, τίς σοί ἐστιν ἡ δύναμις; ὅτι ξύεις τοῖς
                                    ὄνυξι καὶ δάκνεις τοῖς ὀδοῦσι; τοῦτο καὶ γυνὴ τῷ ἀνδρὶ μαχομένη ποιεῖ. ἐγὼ δὲ
                                    λίαν ὑπάρχω σου ἰσχυρότερος. εἰ δὲ θέλεις, ἔλθωμεν καὶ εἰς πόλεμον. καὶ
                                    σαλπίσας ὁ κώνωψ ἐνεπήγετο δάκνων τὰ περὶ τὰς ῥῖνας αὐτοῦ ἄτριχα πρόσωπα. ὁ δὲ
                                    λέων τοῖς ἰδίοις ὄνυξι κατέλυεν ἑαυτὸν, ἕως οὗ ἠγανάκτησεν. ὁ δὲ κώνωψ νικήσας
                                    τὸν λέοντα καὶ σαλπίσας καὶ ἐπινίκιον ᾄσας ἔπτατο. ἀράχνης δὲ δεσμῷ ἐμπλακείς,
                                    ἐσθιόμενος ἀπωδύρετο, ὅτι μεγίστοις πολεμῶν ὑπ' εὐτελοῦς ζῴου, τῆς ἀράχνης,
                                    ἀπώλετο.
                                    \end{greek}
                                    \end{tcolorbox}

                                    \tcbset{colback=red!5!white,colframe=red!75!black}
                                    \begin{tcolorbox}[arc=0mm]
                                    Città benché caffè più però
                                    \end{tcolorbox}

                                    \end{document}`
                                    tutto risulta in monospaziato. Se invece metto
                                    `%\setmainfont{UMTypewriter-Regular.otf}
                                    \setmainfont{DejaVu Sans Mono}
                                    \newfontfamily\greekfont[Scale=MatchLowercase]{UMTypewriter-Regular.otf}`
                                    ottengo errore:
                                    `ABD: EveryShipout initializing macros [1] (./tcolorbox.aux)
                                    ** WARNING ** Obsolete four arguments of “endchar” will be used for Type 1 “seac” operator.
                                    ** ERROR ** This font using the “seac” command for accented characters…

                                    Output file removed.
                                    )
                                    Error 256 (driver return code) generating output;
                                    file tcolorbox.pdf may not be valid.
                                    Transcript written on tcolorbox.log.`
                                    Risolto questo, poi prova a differenziare solo i listati
                                    mettendoli in monospaziato con un testo normale in un font proporzionale.
                                    Ultimo passaggio: la combinazione con listings
                                    per avere l’evidenziazione della sintatti. Procedo per trials and errors 🙂

                                    m

                                  • #85312
                                    Up
                                    0
                                    Down
                                    ::

                                    samiel” post=84778Conquesto codice
                                    `\documentclass[a4paper]{article}
                                    \usepackage{fontspec}
                                    \usepackage{polyglossia}
                                    \setmainlanguage{italian}
                                    \setotherlanguage[variant=polytonic]{greek}
                                    \setmainfont{UMTypewriter-Regular.otf}
                                    %\setmainfont{DejaVu Sans Mono}
                                    %\newfontfamily\greekfont[Scale=MatchLowercase]{UMTypewriter-Regular.otf}
                                    \usepackage[listings,theorems,skins,breakable]{tcolorbox}

                                    \begin{document}

                                    \begin{tcolorbox}[colback=red!5!white,colframe=red!75!black]
                                    My box.
                                    \end{tcolorbox}

                                    \begin{tcolorbox}[colback=yellow!5!white,colframe=yellow!75!black,title=My title]
                                    I can do this also with a title.
                                    \tcblower
                                    Lower part of my box. Schloß Woitiła Søren Böse
                                    \end{tcolorbox}

                                    \begin{tcolorbox}[colback=yellow!10!white,colframe=red!75!black,title=Here I am]
                                    \begin{greek}
                                    Κώνωψ πρὸς λέοντα ἐλθὼν εἶπεν· οὔτε φοβοῦμαί σε
                                    οὔτε δυνατώτερός μου εἶ· εἰ δὲ μή, τίς σοί ἐστιν ἡ δύναμις; ὅτι ξύεις τοῖς
                                    ὄνυξι καὶ δάκνεις τοῖς ὀδοῦσι; τοῦτο καὶ γυνὴ τῷ ἀνδρὶ μαχομένη ποιεῖ. ἐγὼ δὲ
                                    λίαν ὑπάρχω σου ἰσχυρότερος. εἰ δὲ θέλεις, ἔλθωμεν καὶ εἰς πόλεμον. καὶ
                                    σαλπίσας ὁ κώνωψ ἐνεπήγετο δάκνων τὰ περὶ τὰς ῥῖνας αὐτοῦ ἄτριχα πρόσωπα. ὁ δὲ
                                    λέων τοῖς ἰδίοις ὄνυξι κατέλυεν ἑαυτὸν, ἕως οὗ ἠγανάκτησεν. ὁ δὲ κώνωψ νικήσας
                                    τὸν λέοντα καὶ σαλπίσας καὶ ἐπινίκιον ᾄσας ἔπτατο. ἀράχνης δὲ δεσμῷ ἐμπλακείς,
                                    ἐσθιόμενος ἀπωδύρετο, ὅτι μεγίστοις πολεμῶν ὑπ' εὐτελοῦς ζῴου, τῆς ἀράχνης,
                                    ἀπώλετο.
                                    \end{greek}
                                    \end{tcolorbox}

                                    \tcbset{colback=red!5!white,colframe=red!75!black}
                                    \begin{tcolorbox}[arc=0mm]
                                    Città benché caffè più però
                                    \end{tcolorbox}

                                    \end{document}`
                                    tutto risulta in monospaziato. Se invece metto
                                    `%\setmainfont{UMTypewriter-Regular.otf}
                                    \setmainfont{DejaVu Sans Mono}
                                    \newfontfamily\greekfont[Scale=MatchLowercase]{UMTypewriter-Regular.otf}`
                                    ottengo errore:
                                    `ABD: EveryShipout initializing macros [1] (./tcolorbox.aux)
                                    ** WARNING ** Obsolete four arguments of “endchar” will be used for Type 1 “seac” operator.
                                    ** ERROR ** This font using the “seac” command for accented characters…

                                    Output file removed.
                                    )
                                    Error 256 (driver return code) generating output;
                                    file tcolorbox.pdf may not be valid.
                                    Transcript written on tcolorbox.log.`
                                    Risolto questo, poi prova a differenziare solo i listati
                                    mettendoli in monospaziato con un testo normale in un font proporzionale.
                                    Ultimo passaggio: la combinazione con listings
                                    per avere l’evidenziazione della sintatti. Procedo per trials and errors 🙂

                                    m

                                    È naturale che tu ottenga il greco teletype: hai impostato come principale un font monospaziato. Inoltre, quello che mostri non è un codice, ma una scatola normale di tcolorbox. Nei tuoi esempi manca sempre l’opzione [tt]listing only[/tt].

                                    Ciao
                                    Tommaso

                                  • #85313
                                    samiel
                                    Partecipante
                                      Up
                                      0
                                      Down
                                      ::


                                      Ma infatti in questa prova intendevo semplicemente rendere
                                      l’interno della box in monospaziato. Nel frattempo sto sperimentando codici listings.
                                      Qui il problema è: perché impostando tutto in UMTypewriterla compilazioen va a buon fine,
                                      mentre specificando un font diverso per il testo “normale” e per il greco
                                      ottengo quell’errore?

                                      m

                                    • #85314
                                      samiel
                                      Partecipante
                                        Up
                                        0
                                        Down
                                        ::


                                        Vedi adesso:
                                        `\documentclass[a4paper]{article}
                                        \usepackage{fontspec}
                                        \usepackage{polyglossia}
                                        \setmainlanguage{italian}
                                        \setotherlanguage[variant=polytonic]{greek}
                                        %\setmainfont{UMTypewriter-Regular.otf}
                                        %\setmainfont{DejaVu Sans Mono}
                                        \newfontfamily\greekfont[Scale=MatchLowercase]{UMTypewriter-Regular.otf}
                                        \usepackage[listings,theorems,skins,breakable]{tcolorbox}
                                        \tcbuselibrary{listingsutf8}
                                        \tcbset{listing utf8=latin1}% optional; ’latin1’ is the default.

                                        \begin{document}

                                        \begin{tcblisting}{colback=yellow!5,colframe=yellow!50!black,listing only,
                                        title=This is source code in another language (XML), fonttitle=\bfseries,
                                        listing options={language=XML,columns=fullflexible,basicstyle=\ttfamily\,keywordstyle=\color{red}}}

                                        Apache Ant build file (http://ant.apache.org/)
                                        \end{tcblisting}

                                        \begin{tcolorbox}[colback=red!5!white,colframe=red!75!black]
                                        My box.
                                        \end{tcolorbox}

                                        \begin{tcolorbox}[colback=yellow!5!white,colframe=yellow!75!black,title=My title]
                                        I can do this also with a title.
                                        \tcblower
                                        Lower part of my box. Schloß Woitiła Søren Böse
                                        \end{tcolorbox}

                                        \begin{tcolorbox}[colback=yellow!10!white,colframe=red!75!black,title=Here I am]
                                        \begin{greek}
                                        Κώνωψ πρὸς λέοντα ἐλθὼν εἶπεν· οὔτε φοβοῦμαί σε
                                        οὔτε δυνατώτερός μου εἶ· εἰ δὲ μή, τίς σοί ἐστιν ἡ δύναμις; ὅτι ξύεις τοῖς
                                        ὄνυξι καὶ δάκνεις τοῖς ὀδοῦσι; τοῦτο καὶ γυνὴ τῷ ἀνδρὶ μαχομένη ποιεῖ. ἐγὼ δὲ
                                        λίαν ὑπάρχω σου ἰσχυρότερος. εἰ δὲ θέλεις, ἔλθωμεν καὶ εἰς πόλεμον. καὶ
                                        σαλπίσας ὁ κώνωψ ἐνεπήγετο δάκνων τὰ περὶ τὰς ῥῖνας αὐτοῦ ἄτριχα πρόσωπα. ὁ δὲ
                                        λέων τοῖς ἰδίοις ὄνυξι κατέλυεν ἑαυτὸν, ἕως οὗ ἠγανάκτησεν. ὁ δὲ κώνωψ νικήσας
                                        τὸν λέοντα καὶ σαλπίσας καὶ ἐπινίκιον ᾄσας ἔπτατο. ἀράχνης δὲ δεσμῷ ἐμπλακείς,
                                        ἐσθιόμενος ἀπωδύρετο, ὅτι μεγίστοις πολεμῶν ὑπ' εὐτελοῦς ζῴου, τῆς ἀράχνης,
                                        ἀπώλετο.
                                        \end{greek}
                                        \end{tcolorbox}

                                        \tcbset{colback=red!5!white,colframe=red!75!black}
                                        \begin{tcolorbox}[arc=0mm]
                                        Città benché caffè più però
                                        \end{tcolorbox}

                                        \end{document}`

                                        m

                                      • #85315
                                        Up
                                        0
                                        Down
                                        ::


                                        Perché solo con listing only il codice nella scatola viene filtrato da listings. Altrimenti tcolorbox USA il font monospaziato che hai impostato.

                                        Ciao
                                        Tommaso

                                      • #85316
                                        samiel
                                        Partecipante
                                          Up
                                          0
                                          Down
                                          ::


                                          Tralascia per un momento listings. Nel codice sopra che non funzionava
                                          c’erano solo le “scatole” di tcolorbox. Ora, considera uno scenario del tutto analogo:
                                          `\documentclass[a4paper]{article}
                                          \usepackage{fontspec}
                                          \usepackage{polyglossia}
                                          \setmainlanguage{italian}
                                          \setotherlanguage[variant=polytonic]{greek}
                                          %\setmainfont{UMTypewriter-Regular.otf}
                                          \setmainfont{DejaVu Serif}
                                          \newfontfamily\greekfont[Scale=MatchLowercase]{UMTypewriter-Regular.otf}
                                          \usepackage[skins,breakable]{tcolorbox}

                                          \begin{document}

                                          Testo in carattere normale (nella fattispecie, DejaVu)

                                          Ora testo greco:

                                          \begin{tcolorbox}[colback=yellow!10!white,colframe=red!75!black,title=Testo greco]
                                          \begin{greek}
                                          Κώνωψ πρὸς λέοντα ἐλθὼν εἶπεν· οὔτε φοβοῦμαί σε οὔτε δυνατώτερός μου εἶ· εἰ δὲ
                                          μή, τίς σοί ἐστιν ἡ δύναμις; ὅτι ξύεις τοῖς ὄνυξι καὶ δάκνεις τοῖς ὀδοῦσι;
                                          τοῦτο καὶ γυνὴ τῷ ἀνδρὶ μαχομένη ποιεῖ. ἐγὼ δὲ λίαν ὑπάρχω σου ἰσχυρότερος. εἰ
                                          δὲ θέλεις, ἔλθωμεν καὶ εἰς πόλεμον. καὶ σαλπίσας ὁ κώνωψ ἐνεπήγετο δάκνων τὰ
                                          περὶ τὰς ῥῖνας αὐτοῦ ἄτριχα πρόσωπα. ὁ δὲ λέων τοῖς ἰδίοις ὄνυξι κατέλυεν
                                          ἑαυτὸν, ἕως οὗ ἠγανάκτησεν. ὁ δὲ κώνωψ νικήσας τὸν λέοντα καὶ σαλπίσας καὶ
                                          ἐπινίκιον ᾄσας ἔπτατο. ἀράχνης δὲ δεσμῷ ἐμπλακείς, ἐσθιόμενος ἀπωδύρετο, ὅτι
                                          μεγίστοις πολεμῶν ὑπ' εὐτελοῦς ζῴου, τῆς ἀράχνης, ἀπώλετο.
                                          \end{greek}
                                          \end{tcolorbox}

                                          \end{document}`
                                          Avevo indicato male i font. Qui infatti ho il testo normale in DejaVu Serif
                                          e il greco monospaziato. La soluzione funziona e infatti prodice il risultato desiderato.

                                          Per quanto sia del tutto improbabile avere un codice tutto in greco,
                                          una soluzione di questo tipo, evidentemente errata, produce un risultato singolere:
                                          `\documentclass[a4paper]{article}
                                          \usepackage{fontspec}
                                          \usepackage{polyglossia}
                                          \setmainlanguage{italian}
                                          \setotherlanguage[variant=polytonic]{greek}
                                          \setmainfont{DejaVu Serif}
                                          \newfontfamily\greekfont[Scale=MatchLowercase]{UMTypewriter-Regular.otf}
                                          \usepackage[listings,theorems,skins,breakable]{tcolorbox}
                                          \tcbuselibrary{listingsutf8}
                                          \tcbset{listing utf8=latin1}

                                          \begin{document}

                                          Testo in carattere normale (nella fattispecie, DejaVu)

                                          Ora testo greco:

                                          \begin{tcolorbox}[colback=yellow!10!white,colframe=red!75!black,title=Testo greco]
                                          \begin{greek}
                                          Κώνωψ πρὸς λέοντα ἐλθὼν εἶπεν· οὔτε φοβοῦμαί σε οὔτε δυνατώτερός μου εἶ· εἰ δὲ
                                          μή, τίς σοί ἐστιν ἡ δύναμις; ὅτι ξύεις τοῖς ὄνυξι καὶ δάκνεις τοῖς ὀδοῦσι;
                                          τοῦτο καὶ γυνὴ τῷ ἀνδρὶ μαχομένη ποιεῖ. ἐγὼ δὲ λίαν ὑπάρχω σου ἰσχυρότερος. εἰ
                                          δὲ θέλεις, ἔλθωμεν καὶ εἰς πόλεμον. καὶ σαλπίσας ὁ κώνωψ ἐνεπήγετο δάκνων τὰ
                                          περὶ τὰς ῥῖνας αὐτοῦ ἄτριχα πρόσωπα. ὁ δὲ λέων τοῖς ἰδίοις ὄνυξι κατέλυεν
                                          ἑαυτὸν, ἕως οὗ ἠγανάκτησεν. ὁ δὲ κώνωψ νικήσας τὸν λέοντα καὶ σαλπίσας καὶ
                                          ἐπινίκιον ᾄσας ἔπτατο. ἀράχνης δὲ δεσμῷ ἐμπλακείς, ἐσθιόμενος ἀπωδύρετο, ὅτι
                                          μεγίστοις πολεμῶν ὑπ' εὐτελοῦς ζῴου, τῆς ἀράχνης, ἀπώλετο.
                                          \end{greek}
                                          \end{tcolorbox}

                                          \begin{tcblisting}{colback=yellow!5,colframe=yellow!50!black,listing only,
                                          title=This is source code in another language (XML), fonttitle=\bfseries,
                                          listing options={language=XML,columns=fullflexible,basicstyle=\ttfamily\,keywordstyle=\color{red}}}

                                          Apache Ant build file (http://ant.apache.org/)
                                          \end{tcblisting}

                                          \begin{tcblisting}{colback=yellow!5,colframe=yellow!50!black,listing only,
                                          title=This is source code in another language (GREEK ??), fonttitle=\bfseries,
                                          listing options={columns=fullflexible,keywordstyle=\color{red}}}
                                          Κώνωψ πρὸς λέοντα ἐλθὼν εἶπεν· οὔτε φοβοῦμαί σε οὔτε δυνατώτερός μου εἶ· εἰ δὲ
                                          μή, τίς σοί ἐστιν ἡ δύναμις; ὅτι ξύεις τοῖς ὄνυξι καὶ δάκνεις τοῖς ὀδοῦσι;
                                          τοῦτο καὶ γυνὴ τῷ ἀνδρὶ μαχομένη ποιεῖ.
                                          \end{tcblisting}

                                          \end{document}`
                                          Sistemato anche questo, vorre capire come integrare le colorbox con l’evidenziazione
                                          della sintassi di listings

                                          m

                                        • #85317
                                          samiel
                                          Partecipante
                                            Up
                                            0
                                            Down
                                            ::


                                            Nuovo esperimento
                                            `\documentclass[a4paper]{article}
                                            \usepackage{fontspec}
                                            \usepackage{polyglossia}
                                            \setmainlanguage{italian}
                                            \setotherlanguage[variant=polytonic]{greek}
                                            %\setmainfont{UMTypewriter-Regular.otf}
                                            \setmainfont[Ligatures=TeX]{DejaVu Serif}
                                            \newfontfamily\greekfont[Scale=MatchLowercase]{UMTypewriter-Regular.otf}
                                            \usepackage[listings,theorems,skins,breakable]{tcolorbox}
                                            \tcbuselibrary{listingsutf8}
                                            \tcbset{listing utf8=latin1}

                                            \begin{document}

                                            Testo in carattere normale (nella fattispecie, DejaVu Serif)
                                            \medskip

                                            Ora testo greco in una box (no listings):

                                            \begin{tcolorbox}[colback=yellow!10!white,colframe=red!75!black,title=Testo greco]
                                            \begin{greek}
                                            Κώνωψ πρὸς λέοντα ἐλθὼν εἶπεν· οὔτε φοβοῦμαί σε οὔτε δυνατώτερός μου εἶ· εἰ δὲ
                                            μή, τίς σοί ἐστιν ἡ δύναμις; ὅτι ξύεις τοῖς ὄνυξι καὶ δάκνεις τοῖς ὀδοῦσι;
                                            τοῦτο καὶ γυνὴ τῷ ἀνδρὶ μαχομένη ποιεῖ. ἐγὼ δὲ λίαν ὑπάρχω σου ἰσχυρότερος. εἰ
                                            δὲ θέλεις, ἔλθωμεν καὶ εἰς πόλεμον. καὶ σαλπίσας ὁ κώνωψ ἐνεπήγετο δάκνων τὰ
                                            περὶ τὰς ῥῖνας αὐτοῦ ἄτριχα πρόσωπα. ὁ δὲ λέων τοῖς ἰδίοις ὄνυξι κατέλυεν
                                            ἑαυτὸν, ἕως οὗ ἠγανάκτησεν. ὁ δὲ κώνωψ νικήσας τὸν λέοντα καὶ σαλπίσας καὶ
                                            ἐπινίκιον ᾄσας ἔπτατο. ἀράχνης δὲ δεσμῷ ἐμπλακείς, ἐσθιόμενος ἀπωδύρετο, ὅτι
                                            μεγίστοις πολεμῶν ὑπ' εὐτελοῦς ζῴου, τῆς ἀράχνης, ἀπώλετο.
                                            \end{greek}
                                            \end{tcolorbox}
                                            \medskip

                                            \begin{tcolorbox}[colback=yellow!10!white,colframe=red!75!black,title=Accenti eccetera]
                                            testo normale in minuscolo. Quel ramo del lago di Como

                                            Ora testo in una box (no listings):
                                            \medskip

                                            VIRGOLETTE E TRATTINI

                                            `apotropi', “apotropi'' trattino medio: — trattino lungo: —
                                            \medskip

                                            ACCENTI

                                            à è é ì ò ù À È É Ì Ò Ù
                                            \medskip

                                            LETTERE SPECIALI

                                            ni{\~n}o, façon, bénédiction, Sch\”{o}nbrunn,
                                            Stra{\ss}e, Kru{\v s}{\v c}ëv,
                                            Woiti{\l}a

                                            façon Schönbrunn Galiläa Straße Kruščëv

                                            \end{tcolorbox}
                                            \medskip

                                            Ora un frammento di codice XML:

                                            \begin{tcblisting}{colback=yellow!5,colframe=yellow!50!black,listing only,
                                            title=This is source code in another language (XML), fonttitle=\bfseries,
                                            listing options={language=XML,columns=fullflexible,basicstyle=\ttfamily\,keywordstyle=\color{red}}}

                                            Apache Ant build file (http://ant.apache.org/)

                                            testo normale in lettere minuscole — OPPURE MAIUSCOLE

                                            VIRGOLETTE E TRATTINI

                                            `apotropi', “apotropi'' trattino medio: — trattino lungo: —

                                            ACCENTI

                                            à è é ì ò ù À È É Ì Ò Ù

                                            LETTERE SPECIALI

                                            ni{\~n}o, façon, bénédiction, Sch\”{o}nbrunn,
                                            Stra{\ss}e, Kru{\v s}{\v c}ëv,
                                            Woiti{\l}a

                                            façon Schönbrunn Galiläa Straße Kruščëv
                                            \end{tcblisting}
                                            \medskip

                                            E ora in teoria un frammento di codice in greco (sì listings):

                                            \begin{tcblisting}{colback=yellow!5,colframe=yellow!50!black,listing only,
                                            title=This is source code in another language (GREEK ??), fonttitle=\bfseries,
                                            listing options={columns=flexible,keepspaces,keywordstyle=\color{red}}}
                                            Κώνωψ πρὸς λέοντα ἐλθὼν εἶπεν·
                                            οὔτε φοβοῦμαί σε οὔτε δυνατώτερός μου εἶ·
                                            εἰ δὲ μή, τίς σοί ἐστιν ἡ δύναμις;
                                            ὅτι ξύεις τοῖς ὄνυξι καὶ δάκνεις τοῖς ὀδοῦσι;
                                            τοῦτο καὶ γυνὴ τῷ ἀνδρὶ μαχομένη ποιεῖ.
                                            \end{tcblisting}

                                            \end{document}`
                                            Cose che non funzionano:
                                            – le lettere šč appaiono del tutto fuori posto
                                            – a volte appare il carattere per evidenziare lo spazio (␣), altre volte no, non capisco perché
                                            – il greco in listing è rovinoso…

                                            m

                                          • #85318
                                            Up
                                            0
                                            Down
                                            ::

                                            samiel” post=84814Nuovo esperimento
                                            `\documentclass[a4paper]{article}
                                            \usepackage{fontspec}
                                            \usepackage{polyglossia}
                                            \setmainlanguage{italian}
                                            \setotherlanguage[variant=polytonic]{greek}
                                            %\setmainfont{UMTypewriter-Regular.otf}
                                            \setmainfont[Ligatures=TeX]{DejaVu Serif}
                                            \newfontfamily\greekfont[Scale=MatchLowercase]{UMTypewriter-Regular.otf}
                                            \usepackage[listings,theorems,skins,breakable]{tcolorbox}
                                            \tcbuselibrary{listingsutf8}
                                            \tcbset{listing utf8=latin1}

                                            \begin{document}

                                            Testo in carattere normale (nella fattispecie, DejaVu Serif)
                                            \medskip

                                            Ora testo greco in una box (no listings):

                                            \begin{tcolorbox}[colback=yellow!10!white,colframe=red!75!black,title=Testo greco]
                                            \begin{greek}
                                            Κώνωψ πρὸς λέοντα ἐλθὼν εἶπεν· οὔτε φοβοῦμαί σε οὔτε δυνατώτερός μου εἶ· εἰ δὲ
                                            μή, τίς σοί ἐστιν ἡ δύναμις; ὅτι ξύεις τοῖς ὄνυξι καὶ δάκνεις τοῖς ὀδοῦσι;
                                            τοῦτο καὶ γυνὴ τῷ ἀνδρὶ μαχομένη ποιεῖ. ἐγὼ δὲ λίαν ὑπάρχω σου ἰσχυρότερος. εἰ
                                            δὲ θέλεις, ἔλθωμεν καὶ εἰς πόλεμον. καὶ σαλπίσας ὁ κώνωψ ἐνεπήγετο δάκνων τὰ
                                            περὶ τὰς ῥῖνας αὐτοῦ ἄτριχα πρόσωπα. ὁ δὲ λέων τοῖς ἰδίοις ὄνυξι κατέλυεν
                                            ἑαυτὸν, ἕως οὗ ἠγανάκτησεν. ὁ δὲ κώνωψ νικήσας τὸν λέοντα καὶ σαλπίσας καὶ
                                            ἐπινίκιον ᾄσας ἔπτατο. ἀράχνης δὲ δεσμῷ ἐμπλακείς, ἐσθιόμενος ἀπωδύρετο, ὅτι
                                            μεγίστοις πολεμῶν ὑπ' εὐτελοῦς ζῴου, τῆς ἀράχνης, ἀπώλετο.
                                            \end{greek}
                                            \end{tcolorbox}
                                            \medskip

                                            \begin{tcolorbox}[colback=yellow!10!white,colframe=red!75!black,title=Accenti eccetera]
                                            testo normale in minuscolo. Quel ramo del lago di Como

                                            Ora testo in una box (no listings):
                                            \medskip

                                            VIRGOLETTE E TRATTINI

                                            `apotropi', “apotropi'' trattino medio: — trattino lungo: —
                                            \medskip

                                            ACCENTI

                                            à è é ì ò ù À È É Ì Ò Ù
                                            \medskip

                                            LETTERE SPECIALI

                                            ni{\~n}o, façon, bénédiction, Sch\”{o}nbrunn,
                                            Stra{\ss}e, Kru{\v s}{\v c}ëv,
                                            Woiti{\l}a

                                            façon Schönbrunn Galiläa Straße Kruščëv

                                            \end{tcolorbox}
                                            \medskip

                                            Ora un frammento di codice XML:

                                            \begin{tcblisting}{colback=yellow!5,colframe=yellow!50!black,listing only,
                                            title=This is source code in another language (XML), fonttitle=\bfseries,
                                            listing options={language=XML,columns=fullflexible,basicstyle=\ttfamily\,keywordstyle=\color{red}}}

                                            Apache Ant build file (http://ant.apache.org/)

                                            testo normale in lettere minuscole — OPPURE MAIUSCOLE

                                            VIRGOLETTE E TRATTINI

                                            `apotropi', “apotropi'' trattino medio: — trattino lungo: —

                                            ACCENTI

                                            à è é ì ò ù À È É Ì Ò Ù

                                            LETTERE SPECIALI

                                            ni{\~n}o, façon, bénédiction, Sch\”{o}nbrunn,
                                            Stra{\ss}e, Kru{\v s}{\v c}ëv,
                                            Woiti{\l}a

                                            façon Schönbrunn Galiläa Straße Kruščëv
                                            \end{tcblisting}
                                            \medskip

                                            E ora in teoria un frammento di codice in greco (sì listings):

                                            \begin{tcblisting}{colback=yellow!5,colframe=yellow!50!black,listing only,
                                            title=This is source code in another language (GREEK ??), fonttitle=\bfseries,
                                            listing options={columns=flexible,keepspaces,keywordstyle=\color{red}}}
                                            Κώνωψ πρὸς λέοντα ἐλθὼν εἶπεν·
                                            οὔτε φοβοῦμαί σε οὔτε δυνατώτερός μου εἶ·
                                            εἰ δὲ μή, τίς σοί ἐστιν ἡ δύναμις;
                                            ὅτι ξύεις τοῖς ὄνυξι καὶ δάκνεις τοῖς ὀδοῦσι;
                                            τοῦτο καὶ γυνὴ τῷ ἀνδρὶ μαχομένη ποιεῖ.
                                            \end{tcblisting}

                                            \end{document}`
                                            Cose che non funzionano:
                                            – le lettere šč appaiono del tutto fuori posto
                                            – a volte appare il carattere per evidenziare lo spazio (␣), altre volte no, non capisco perché
                                            – il greco in listing è rovinoso…

                                            m

                                            Forse non ti è ancora chiaro che con listings non c’è modo di ottenere un codice in un alfabeto non latino 🙂 È un problema che deve risolvere l’autore di listings, che sembra sordo alle richieste. Non spetta certo a noi farlo. 😉

                                            Ciao
                                            Tommaso

                                          • #85319
                                            samiel
                                            Partecipante
                                              Up
                                              0
                                              Down
                                              ::


                                              Sì, ma in rete ci sono appunto tentativi di “mettere delle pezze”…
                                              Che non funzionano poi tanto bene.
                                              In una pagina che ho trovato c’è una serie di tentativi
                                              di rendere possibil i segni per lingue varie:
                                              http://stackoverflow.com/questions/1116266/listings-in-latex-with-utf-8-or-at-least-german-umlauts

                                              m

                                          Visualizzazione 25 filoni di risposte
                                          • Devi essere connesso per rispondere a questo topic.

                                          Go to top