Insérer des caractères spéciaux dans Emacs

3

J'utilise un clavier anglais et dois saisir des lettres allemandes de temps en temps. Alors j'ai défini

(global-set-key [?\C-\;] (make-sparse-keymap))
(global-set-key [?\C-\; ?A] [?\x08C4]) 
...

insérer "ä", etc. Cela fonctionnait pendant des années, mais cela ne fonctionne pas avec mon actuel GNU Emacs 23.1.1. Je me rends compte que l’utilisation de caractères codés en dur sous forme de nombres n’est pas une bonne idée, mais cela m’a aidé à résoudre les problèmes d’encodage (seule cette méthode fonctionnait parfaitement sous Sun, Linux et Windows, même avec des systèmes de fichiers partagés).

Quel est le meilleur moyen de définir des clés pour insérer des caractères spéciaux dans Emacs?

maaartinus
la source
Est-ce \x08C4juste une faute de frappe? C'est \x00E4pour ä... Votre code elisp fonctionne bien sur mon GNU Emacs 23.1.1
ordinateur
Non, c'est à coup sûr pas de faute de frappe, je l'ai copiée et maintenant vérifiée. Cela fonctionnait de cette façon ... maintenant, il insère U + 08c4 pendant que votre \ x00C4 fonctionne ... C'est logique, je sais, et je ne me souviens vraiment pas pourquoi j'ai utilisé \ 08C4; J'aurais peut-être écrit cela il y a 10 ans ou environ. Peut-être créer une réponse pour que je puisse l'accepter si rien de mieux ne vient.
Maaartinus
Juste une pensée. Je ne sais pas assez à ce sujet, mais comme vous l'avez défini il y a 10 ans, vous utilisiez peut-être Mulealors et non Unicodece qu'il semble utiliser maintenant ...
Peter.O.
Oui, je me souviens qu'il y avait quelque chose appelé Mule.
Maaartinus

Réponses:

2

EDIT: Ajout possible d'un moyen plus facile d'entrer vos caractères spéciaux.

Votre code elisp fonctionne bien sous GNU Emacs 23.1.1Linux (Ubuntu)

Les deux méthodes suivantes de configuration de la touche de raccourci fonctionnent (dans mon emacs), sans aucun besoin de cette première make-sparse-keymapligne.
   (global-set-key [?\C-\;] (make-sparse-keymap))

(global-set-key [?\C-\; ?A] [?\x00E4])
(define-key key-translation-map (kbd "C-; a") (kbd "ä"))

Un moyen plus facile de saisir vos caractères spéciaux pourrait être d’utiliser un input methodfichier contenant les caractères dont vous avez besoin. Dans le cas de "ä", latin-1-prefixconvient.

Sélectionnez une autre méthode de saisie soit par

  • C-x RET C-\
  • M-x set-input-method

Choisir latin-1-prefix

Pour entrer le caractère ä, basculez-y latin-1-prefixet tapez "a
Selon ce que vous tapez généralement. vous n'aurez peut-être pas besoin de basculer hors delatin-1-prefix

Pour basculer la méthode de saisie (activer ou désactiver).

  • C- \

Pour décrire la méthode de saisie actuelle, utilisez soit

  • C-h C-\
  • C-h I

Pour plus de détails, voir:

Vous trouverez également des informations générales sur la page Astuces Emacs et Unicode de Xah Lee .

Peter.O
la source