web-dev-qa-db-fra.com

Faire en sorte que iTerm traduise 'méta-clé' de la même manière que dans d'autres systèmes d'exploitation

Dans bash Shell avec la liaison de clé emacs, vous pouvez utiliser une combinaison de touches telle que M-f, M-b pour déplacer un mot en avant ou en arrière sur l'invite du shell, respectivement. Habituellement, la clé méta est associée à la touche Alt sous Windows et Linux. Cependant, dans iTerm, je ne pouvais pas trouver un moyen de mapper cette clé méta à la touche Option ou Commande sur mon MacBook Pro.

Il semble que sous OS X, la clé méta est par défaut mappée sur la touche ESC. Vous pouvez donc utiliser ESC-f, ESC-b sur iTerm. Cependant, la touche ESC n'est apparemment pas pratique à utiliser. En outre, iTerm dispose d'une option vous permettant de modifier le mappage de la clé méta (Signets> Profils> Profils de clavier> Global> Option clé sous ...), ce paramètre ne semble pas fonctionner du tout.

Par conséquent, si quelqu'un sait quelle est la solution à ce problème, faites-le moi savoir.

J'ai mis à niveau vers la dernière version, 0.9.6.1012, et ce problème persiste.

Edit: Quelques éclaircissements à ma question. Le raccourci clavier dont je parle concerne bash Shell, pas dans emacs. Il se trouve que, par défaut, bash Shell utilise également la même liaison de clé que emacs.

169
ejel

Cmd+., Profiles, Keys et choisissez Left option Key acts as: +Esc.

Cela fonctionne pour moi dans emacs, bien que je ne sois pas sûr que cela aura d'autres effets indésirables.

192
Sam Keshavarzi

Allez à Signets> Gérer les profils. Ensuite, sélectionnez Profils de clavier> Global et choisissez La touche d’option en méta. Cela fonctionne pour moi dans la version 0.9.6.1201.

128
Dag Høidahl

Dans la barre de menus, Iterm2 => Préférences => Profils choisissez l’onglet touches et sélectionnez

touche d'option gauche agissant comme + Echap

enter image description here

a travaillé pour moi aussi bien dans irssi.

23
Hatem Nassrat

La touche Alt ne fonctionnait pas non plus, mais il existe une solution de contournement qui la rend au moins fonctionnelle pour la navigation dans Word via les touches de curseur:

Passer au mot suivant ou précédent dans iTerm en utilisant les touches Alt/Option + Flèches Gauche ou Droite

9
nyenyec

Aller toute résurrection zombie ici, mais pour des raisons de postérité -

This post l'a fait fonctionner comme vous le souhaitez pour moi, pour Mb et Mf, tout en conservant l'option 'Option Key as Meta' afin de ne pas sacrifier de modificateur (j'ai mappé vim en utilisant meta, personnellement) .

En résumé, dans votre profil de clavier global, ajoutez deux nouveaux mappages avec des paramètres:

  1. Clé en tant que code hexadécimal, valeur de 62 pour b, 66 pour f (man ascii)
  2. Modifier comme option
  3. Action en tant que séquence d'échappement d'envoi, valeur b ou f

La seule chose qui me manque encore de Terminal.app, c'est Opt-Backspace à supprimer par Word. Il existe d'autres solutions pour cela, mais j'essaie simplement de m'entraîner à utiliser Ctrl-w.

4
ches

C'est plus facile dans iTerm2. Allez dans Préférences-> Signet-> Clavier et sélectionnez Option Envoie + Échap. Dans iTerm2, vous pouvez configurer les touches d’option gauche et droite séparément. N'oubliez donc pas de changer les deux si vous le souhaitez. Lien vers iTerm2: http://sites.google.com/site/iterm2home/

4
George

J'ai trouvé une solution sur stackoverflow également, il suffit d'aller dans le profil du clavier et dans "Global", changez "Option" comme "+ ESC

cela fonctionne pour moi parfaitement =) d'ailleurs quelques correctifs iterm existent aussi regardez ici: http://www.emacswiki.org/emacs/EmacsForMacOS

2
holms

Allez dans Signets> Gérer les profils. Sélectionnez ensuite Profils de clavier> Global, puis choisissez Option Key + ESC.

Fonctionne dans iTerm Build 0.9.5.0611 et Build 0.9.6.20090415

2
mnb

Essayez "export LANG = C". Je ne suis pas un expert emacs, mais j’ai trouvé que cela permettait à emacs sous OS X de reconnaître la clé Option en tant que clé Meta dans iTerm,

0
fabian

Je ne sais pas pour iTerm, mais vous pouvez le faire dans Terminal. Les instructions peuvent être trouvées ici:

Emacs sur les raccourcis clavier Mac OS X Leopard

0
Kyle Cronin

Voici ce qui a fonctionné pour moi: Signets> Gérer les profils> Profils de clavier> Global/xterm> Option, touche + Echap. Avec cela, je peux utiliser Option + Entrée dans Midnight Commander et le nom du fichier/répertoire actuellement sélectionné apparaît dans la chaîne de commande, comme il se doit. Option Key comme Meta n'a pas fonctionné pour moi. Ma version de iTerm est de 0,10.

0
Mikhail at YugaByte