web-dev-qa-db-fra.com

Comment faire xterm pour envoyer la touche Alt à emacs en tant que Meta?

Je vois que cette question a été posée multipletimes . Les solutions données ici ne semblent pas s'appliquer à ma configuration. Voici mon histoire:

J'utilise Ubuntu 12.0.04 LTS, avec xmonad (pas sur gnome), et utilise xterm pour mon travail. Je préférerais utiliser xterm plutôt qu’un terminal différent ou une fenêtre propre à emacs. En utilisant emacs -nw, je vois que Alt n’est pas reconnu. J'ai vérifié en utilisant xev qu'Alt était bien généré. De plus, si j'utilise rxvt, je vois que Alt est reconnu par emacs -nw. J'utilise le mode maléfique (en tant qu'utilisateur de vim de longue date, et un newbee d'emacs), et je préférerais vraiment ne pas avoir le rebond de ma touche d'échappement sous la forme alt (qui était la solution donnée dans un autre thread). Que devrais-je faire? (Si cela peut aider, Alt-x sur la fenêtre xterm sans exécuter emacs génère "ø" ou si je lance emacs -nw -Q).

9
rahul

Comme indiqué dans le Arch Wiki , vous devez faire en sorte que Xterm envoie la clé échappée correcte au programme:

Si vous utilisez le Alt pour les raccourcis clavier, vous en aurez besoin dans votre fichier de ressources:

XTerm*metaSendsEscape: true

Alors, fais juste:

echo 'XTerm*metaSendsEscape: true' >> ~/.Xresources

Et redémarrez votre session Xterm.

11
Braiam

Il existe une alternative intéressante à la gestion de vos fichiers .Xdefaults/.Xresources en fournissant directement la chaîne de ressources sous la forme de l’option xterm de la ligne de commande:

xterm -xrm 'xterm*VT100.metaSendsEscape: true'

Ceci est pratique, par exemple, si vous avez un alias personnalisé pour x-terminal-emulator de toute façon.

1
vog

Si la mise à jour de ~/.Xresources ne fonctionne pas pour vous, suivez les instructions de la documentation et mettez-la à jour dans ~/.Xdefaults

http://frequal.com/linux/XTermMetaSendsEscape.html

1
Adam