Virgolette su mac (sia TeXmakerX sia TeXShop)

  • Creatore
    Topic
  • #56096
    Up
    0
    Down
    ::


    sto scrivendo con LaTeX un file che contiene parti di programmazione (inserite con listings).
    Siccome il linguaggio è C#, che riconosce le stringhe come sequenze di caratteri racchiusi tra virgolette (mentre caratteri tra singoli apici sono del tipo “char”) ho inserito, nelle definizioni del linguaggio (copiate in parte da internet)
    `
    morestring=[\color{red}]”
    `
    Purtroppo però gli editor su mac espandono il carattere ” (shift+2, tastiera italiana) come doppio apice, ossia ”, che non viene poi riconosciuto, al momento della compilazione, come delimitatore della stringa.
    Sapete se c’è qualcosa di fattibile?
    Grazie, saluti

Visualizzazione 7 filoni di risposte
  • Autore
    Risposte
    • #56097
      Up
      0
      Down
      ::


      Ciao ragazzo,
      ho lo stesso tuo problema. Scrivo musica con LilyPond, e quel tipo di carattere mi serve in numerose occasioni:

      `\header {
      dedication = \markup { \italic “A Valery Polekh” }
      title = \markup { \normal-text “Concerto” }
      composer = \markup \center-column { \small “Reinhold M. Glier” \small “(1875-1956)” }
      instrument = \markup { \normal-text { “Corno principale in Fa” } }
      copyright = \markup { \teeny { \char ##x00A9 Copyright 1958 by International Music Company, New York City, U.S.A. } }
      %subtitle = “per corno e orchestra”
      % subsubtitle = “in si bemolle maggiore”
      %opus = \markup { \small “Op. 91” }
      }`

      Ogni volta debbo andare a scovarlo nel visorino dei caratteri, ma di sicuro questa non è la strada giusta. Se tu, invece, scrivi

      `\”`

      sempre con Maiusc + 2, il carattere viene corretto. Ma non credo che ogni volta si debba cancellare la bassa rovescia, no?

      Prevengo la risposta di tutti quelli che hanno la tastiera US extended: «basta premere Shift + ‘ e ottieni “» (notate che ho scritto la frase tra virgolette con la tastiera US extended! 8) )

      Dunque, mi unisco alla tua richiesta e attendo lumi.

      Ciao
      Tommaso

    • #56098
      Up
      0
      Down
      ::

      sto scrivendo con LaTeX un file che contiene parti di programmazione (inserite con listings).
      Siccome il linguaggio è C#, che riconosce le stringhe come sequenze di caratteri racchiusi tra virgolette (mentre caratteri tra singoli apici sono del tipo “char”) ho inserito, nelle definizioni del linguaggio (copiate in parte da internet)
      `
      morestring=[\color{red}]”
      `
      Purtroppo però gli editor su mac espandono il carattere ” (shift+2, tastiera italiana) come doppio apice, ossia ”, che non viene poi riconosciuto, al momento della compilazione, come delimitatore della stringa.
      Sapete se c’è qualcosa di fattibile?
      Grazie, saluti

      Non so di texmaker(x). TeXShop ha un apposito menù “Smart Quotes” dove la sostituzione automatica può essere abilitata o disabilitata. Suppongo che si possa anche attivare un’abbreviazione da tastiera per attivare e disattivare le “Smart Quotes”.

      Con Emacs-AUCTeX la scorciatoia è molto più semplice: si batte due volte il tasto del doppio apice. 🙂

      In ogni caso, ricordati di caricare fontenc con l’opzione T1, se vuoi che il doppio apice compaia correttamente.

      Ciao
      Enrico

    • #56099
      Up
      0
      Down
      ::



      @Enrico
      :

      Mi dispiace, ma seguendo il tuo suggerimento non ottengo nulla di buono: la combinazione Maiusc + ” mi restituisce sempre:

      “`''`

      in una volta sola.

      Ciao
      Tommaso

    • #56100
      OldClaudio
      Partecipante
        Up
        0
        Down
        ::


        Vi ricordate inoltre che se componente in italiano il segno ” è un carattere attivo che va disabilitato con
        `
        \shorthandoff{“}
        `
        e poi magari riattivato con \shorthandon{“}?

      • #56101
        Up
        0
        Down
        ::


        Grazie a tutti, ma ancora non riesco a produrre quel carattere. 🙄

        Ciao
        Tommaso

      • #56102
        OldClaudio
        Partecipante
          Up
          0
          Down
          ::


          Be’, i doppi apici, secondo la Character Palette, hanno codice ASCII 22 e codice UNICODE 0022 e codice UTF-8 0022.

          Forse con al tastiera italiana vien inserito il carattere UNICODE FF02 e UTF-8 EF BC 82

          Onestamente non saprei come fare d’altro sul mac se non fare come stai facendo, anche se è una via tortuosa; poi una cosa è far stampare un doppio apice nel testo normale, un’altra è farlo stampare dentro listings; perché in modo testuale non verbatim restando dentro al sistema TeX forse, e ribadisco, forse si può scrivere \char`\” oppure \symbol{22}
          ma dentro a listings credo che queste stringhe rimangano tali e quali.

          usando l’encoding utf8, forse potresti usare anche uno di quei comandi di cui Enrico è maestro, che definisce il carattere UNICODE FF02 come il UNICODE 0022, ma non ne sono affatto sicuro. Se fosse possibile anche con una tastiera italiana 😉 riusciresti a scrivere un codice leggibile, ma che poi viene reso in modo giusto anche dentro a listing, puché in italiano si sia disattivato il carattere attivo 0022.

        • #56103
          Up
          0
          Down
          ::

          @Enrico:

          Mi dispiace, ma seguendo il tuo suggerimento non ottengo nulla di buono: la combinazione Maiusc + ” mi restituisce sempre:

          “`''`

          in una volta sola.

          Cerchiamo di capirci: qui non si tratta di ASCII, Unicode o roba del genere. Hai semplicemente attivato qualche “completamento automatico” di TeXShop. Trova qual è e avrai scoperto l’inghippo.

          Ciao
          Enrico

        • #56104
          Up
          0
          Down
          ::


          Grazie, ma proprio non riesco 😀

          Ma non è nemmeno un problema.

          Ciao
          Tommaso

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

      Go to top