[risolto]emacs non riconosce il tasto ‘accento grave’, …?

  • Creatore
    Topic
  • #103695
    Up
    0
    Down
    ::


    Salve a tutti,

    Dopo vari tentativi ho finalmente installato e configurato una versione funzionante di emacs e AUCTeX su Windows 7 a 32 bit, con TexLive 2015. L’editor funziona bene eccetto il fatto che quando premo il tasto che contiene tilde (~) e l’accento grave (`), questo non viene riconosciuto da emacs.

    Premetto che uso la tastiera Colemak anziché la più comune Qwerty. L’ho installata prendendo lo zip file dal Colemak Forum, da un post intitolato «DreymaR’s Big Bag of Keyboard Tricks (Linux/XKB files included)!», sotto la sezione [5.1] DOWNLOAD AND INSTALL. In questo layout di tastiera il tasto che corrisponde a tilde e accento grave è quello a sinistra del tasto ‘1’, in alto a sinistra, proprio sotto ad ‘Esc’. Per la tastiera Qwerty sarebbe il tasto sbarra verticale e sbarra sinistra (backslash).

    Quando premo quel tasto in emacs il cursore smette di lampeggiare per pochi istanti e poi stampa a video una serie di ‘f’ o ‘r’ o qualunque altro tasto io prema in seguito. Con C-h c ho scoperto che emacs vede quell’unico tasto come M-6 M-9.
    Per ora, grazie ad un vecchio post su questo forum, ho trovato una via alternativa per tilde assegnandola al tasto F2` (global-set-key [f2] “~”)`
    Come posso risolvere per l’accento grave? Mi sarebbe molto utile per correggere gli errori di LaTeX visto che occorre premere C-` . È anche utile per la sotto-modalità ‘math-mode’ in AUCTeX che permette di velocizzare l’inserimento delle lettere greche (per esempio \alpha = `a).

    Non conosco elisp quindi il mio file di inizializzazione emacs (“.emacs”) è un’accozzaglia di vari pezzi rubbacchiati in giro per Internet a persone molto più esperte di me nell’uso di emacs. Queste sono le righe che riguardano tilde e un tasto alternativo per inserire le lettere greche:
    `
    (global-set-key [f2] “~”)
    (setq LaTeX-math-abbrev-prefix “|”)
    `

    Non c’è un modo per assegnare accento grave (`) a Shift-F2 o qualcosa del genere? Potreste suggerirmi le righe di codice? Io non ci so fare con elisp.

Visualizzazione 8 filoni di risposte
  • Autore
    Risposte
    • #103696
      Up
      0
      Down
      ::


      La cosa più ovvia che mi verrebbe da provare è rimappare [tt]M-6 M-9[/tt] alla tilde:
      `(define-key key-translation-map (kbd “M-6 M-9”) (kbd “~”))`
      però non sono sicuro che funzioni perché non posso provare (sicuramente in generale il rimappaggio funziona, non posso provare nel caso specifico). Nel caso in cui dovesse funzionare, puoi fare la stessa cosa con l’accento.

      Un’altra cosa che puoi provare è rimappare separatamente [tt]M-6[/tt] e [tt]M-9[/tt], in modo che il primo non faccia nulla e il secondo inserisca la tilde:
      `(define-key key-translation-map (kbd “M-6”) “”)
      (define-key key-translation-map (kbd “M-9”) (kbd “~”))`
      Questa soluzione è più probabile che funzioni. Di nuovo, dovrai fare qualcosa di analogo per l’accento.

      Altrimenti, per inserire l’accento grave con [tt]S-f2[/tt], che è [tt]Shift-F2[/tt] nel linguaggio di Emacs, usa
      `(global-set-key (kbd ““) “`”)`
      questo dovrebbe funzionare senza problemi.

      Curiosità: è tuo questo post http://emacs.stackexchange.com/q/16749/620 ?

    • #103697
      Up
      0
      Down
      ::


      Grazie dei suggerimenti, Elrond! Ho cambiato il mio file .emacs aggiungendo queste righe:
      `
      ;;; a key for tilde symbol
      (global-set-key [f2] “~”)
      ;;; a key for backtick symbol
      (define-key key-translation-map (kbd “M-6”) “”)
      (define-key key-translation-map (kbd “M-9”) (kbd “`”))
      `

      In pratica ho separato i due simboli e li ho messi su due tasti diversi: la tilde sta ancora su ‘F2’, l’accento grave sta accanto al tasto ‘1’, sotto ad ‘Esc’. Le altre due alternative (assegnare accento-grave a Shift-F2 e rimappare “M-6 M-9”) non hanno dato i risultati sperati. Se volessi assegnare la tilde allo stesso tasto dell’accento grave (cioè al tasto sotto ad Esc) ma in combinaz con Shift, che dovrei scrivere? Ho provato a scrivere questo:

      `
      (define-key key-translation-map (kbd “S-M-6”) “”)
      (define-key key-translation-map (kbd “S-M-9”) (kbd “~”))
      `

      Ovviamente non ha dato il risultato voluto cioè tilde. Nel buffer di emacs Shift-` viene letto come M-1 M-2 M-6-.
      PS. Piccola correzione: per correggere gli errori in emacs-AUCTeX occorre premere C-c ` e non C-` come scritto nell’OP.
      PSS.

      Elrondè tuo questo post emacs.stackexchange.com/q/16749/620 ?

      Si, è da un mese che provo a sistemare questi 2 simboli.

    • #103698
      Up
      0
      Down
      ::


      Un attimo, sono un po’ confuso: cosa restituiscono, rispettivamente
      `C-h c ~
      C-h c “
      Avevo capito che [tt]C-h c ~[/tt] restituisse [tt]M-6 M-9[/tt].

      Nota a margine: se usi AUCTeX 11.88, per vedere l’elenco degli errori c’è [tt]TeX-error-overview[/tt], che puoi aprire anche dal menu [tt]Command > Error overview[/tt] (ed eventualmente collegare a una scorciatoia), che è moooolto più comodo di andare avanti con [tt]C-c `[/tt].

    • #103699
      Up
      0
      Down
      ::

      Elrond” post=103744Un attimo, sono un po’ confuso […]
      Avevo capito che [tt]C-h c ~[/tt] restituisse [tt]M-6 M-9[/tt].

      Dunque, come spiegato nella sezione 10.1 del manuale [ link ], in emacs [tt]C-h c key [/tt] permette di scoprire quale comando è associato a quel particolare tasto.
      Nel mio caso specifico “key” sarebbe il tasto accanto ad ‘1’ e sotto ad ‘Esc’. È un unico tasto che di solito, fuori da emacs, permette di stampare a video il carattere accento grave (`) e se premuto insieme a Shift da’ il carattere tilde (~). Purtroppo in emacs qualcosa è andato storto, perciò quando lo premo, invece di riconoscerlo come accento grave (e tilde se viene premuto con Shift), emacs pensa che sia [tt]M-6 M-9[/tt], perché questo è quello che appare nel Buffer di emacs, quello in basso a destra. Quindi per dare dei comandi da tastiera, io non riesco a usare né tilde né accento grave con quel tasto lì. Dopo aver spulciato questo forum ho assegnato tilde al tasto F2 ma l’accento grave non sapevo come renderlo. Poi tu mi hai consigliato di azzerare il tasto e rimapparlo. In questo momento ho tilde sul tasto F2 e accento grave (che mi è più urgente) sul tasto problematico, quello accanto ad ‘1’. Per ora posso gestirmeli così, almeno fino al prossimo conflitto di tasti. Che dici?

    • #103700
      Up
      0
      Down
      ::

      Latex_newbie” post=103772Poi tu mi hai consigliato di azzerare il tasto e rimapparlo. In questo momento ho tilde sul tasto F2 e accento grave (che mi è più urgente) sul tasto problematico, quello accanto ad ‘1’. Per ora posso gestirmeli così, almeno fino al prossimo conflitto di tasti. Che dici?

      Dico che la situazione ancora non mi è chiara 🙂

      Allora, ricapitoliamo: sulla tastiera Colemak alla sinistra dell’1 c’è un tasto che di base dovrebbe inserire l’accento grave e se premuto con shift la tilde. Fin qua è corretto?

      Poi, il tuo problema è che Emacs non riconosce correttamente nessuno di questi due tasti. Corretto?

      Ora, io per aiutarti in Emacs ho bisogno di sapere esattamente come Emacs legge questi due tasti, entrambi. Mi sembra di capire che
      `C-h c “
      ti risponda [tt]M-6 M-9[/tt], corretto? E il la rimappatura che ti ho suggerito sopra ti permette di inserire l’accento grave in maniera naturale, corretto?

      Ora però non mi è ancora chiaro come Emacs legga quella che dovrebbe essere la tilde. Cosa ti restituisce
      `C-h c ~`
      ? Forse qualcosa del tipo [tt]M-S-6 M-S-9[/tt]? Se mi dici come Emacs legge la tilde forse riusciamo anche a farti usare il tasto giusto senza dover ricorrere a F2

    • #103701
      Up
      0
      Down
      ::

      Elrond[…] la rimappatura che ti ho suggerito sopra ti permette di inserire l’accento grave in maniera naturale, corretto?
      Ora però non mi è ancora chiaro come Emacs legga quella che dovrebbe essere la tilde. Cosa ti restituisce [tt]C-h c ~[/tt]?

      Tutto corretto per quanto riguarda accento grave. Per la tilde, avendo queste righe nel mio file .emacs:
      `
      ;;; a key for tilde symbol
      (global-set-key [f2] “~”)
      ;;; a key for backtick symbol
      (define-key key-translation-map (kbd “M-6”) “”)
      (define-key key-translation-map (kbd “M-9”) (kbd “`”))
      `

      do’ il comando [tt]C-h c ~ [/tt] nel buffer scratch ed emacs mi risponde [tt]M-2-[/tt]

    • #103702
      Up
      0
      Down
      ::

      Latex_newbie” post=103796do’ il comando [tt]C-h c ~ [/tt] nel buffer scratch ed emacs mi risponde [tt]M-2-[/tt]

      Bene, quindi se metti nel tuo file di inizializzazione
      `(define-key key-translation-map (kbd “M-2”) (kbd “~”))`
      il tasto tilde funziona come aspettato?

    • #103703
      Up
      0
      Down
      ::

      Elrondse metti nel tuo file di inizializzazione
      `(define-key key-translation-map (kbd “M-2”) (kbd “~”))`
      il tasto tilde funziona come aspettato?

      Sissignore! Grazie per la pazienza, Elrond.
      Adesso ho veramente ‘risolto’ il problema.

    • #103704
      Up
      0
      Down
      ::


      Bene, grazie per la conferma! Ho risposto anche su emacs.stackexchange visto che c’era ancora la domanda aperta 😉

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

Go to top