28 votes

Les raccourcis clavier Emacs dans zsh ne fonctionnent pas (Ctrl-A, Ctrl-E)

Mes raccourcis clavier Emacs dans zsh ne fonctionnent pas ( CtrlA , CtrlE ). J'utilise zsh sur OS X.

Ils peuvent être liés à autre chose. J'utilise actuellement oh-my-zsh .

Et mon .zshrc est terminée aquí .

enter image description here

0 votes

@rene Fait ! thx pour le conseil ! :D

0 votes

D'après la capture d'écran, je suppose que vous êtes sous Mac OS X ? J'ai le même problème dans le terminal. Ctrl+A/E/K sont déjà pris dans cet OS (pour être utilisés dans les champs de texte de l'interface graphique), ce qui pourrait expliquer cela.

0 votes

@Henno vraiment ? J'utilise zsh actuellement, et quand j'utilise bash, le ctrl+a(va au premier caractère de la ligne) et le ctrl+e(va à la fin de la ligne) fonctionnent bien. mais quand j'utilise zsh, ça se passe comme la capture d'écran. donc je pense que c'est un problème de zsh, pas de l'OS :(

38voto

Takehiro Adachi Points 721

J'ai résolu le problème. On dirait que oh-my-zsh a remplacé les raccourcis clavier par défaut.

Lorsque j'ai ajouté la ligne ci-dessous à la fin de mon fichier .zshrc , CtrlE y CtrlA travaillé :

bindkey -e

0 votes

Super, ça a marché pour moi aussi !

0 votes

A réglé mon problème aussi. FWIW, j'ai également trouvé le coupable dans mes ~/.zshrc : # Lines configured by zsh-newuser-install HISTFILE=~/.histfile HISTSIZE=1000 SAVEHIST=1000 bindkey -v Donc on dirait que c'est Apple qui est "serviable".

9voto

Gonzo Oin Points 111

En général, vous pouvez trouver le code d'une touche en tapant CtrlV et la clé. Vous pouvez ensuite utiliser cette clé avec bindkey pour le faire correspondre à un zsh la fonctionnalité du clavier (par exemple beginning-of-line ).

Dans votre cas spécifique, ce serait CtrlV CtrlA y CtrlV CtrlE .

Ensuite, vous pouvez mettre le code dans votre .inputrc le système /etc/inputrc ou votre .zshrc comme ça :

bindkey '^A' beginning-of-line
bindkey '^E' end-of-line

Cela fonctionne aussi pour d'autres clés. Par exemple, j'ai eu des problèmes avec Home y End .

Vous devriez pouvoir utiliser cette astuce dans n'importe quelle session de terminal : tty,

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X