Remapper les clés bash vi?

11

J'utilise Dvorak et vi, donc quand j'ai découvert le mode vi dans Bash, j'étais très excité. Cependant, ce serait encore mieux si je pouvais remapper les touches de mouvement pour qu'elles soient celles que j'utilise dans vi (j'échange les clés jusqu'à ce que les touches de mouvement soient de retour sur la ligne d'accueil dans Dvorak).

Comment puis-je faire ceci?

Sydius
la source
3
Jetez un œil à la bindcommande intégrée dans bash, ou si vous souhaitez que les modifications soient uniformes dans toutes les readlineapplications, modifiez ~/.inputrc.
jw013

Réponses:

14

Vous pouvez créer un fichier nommé «.inputrc» dans votre répertoire personnel.

# want vi to be the default editor for readline                      
set editing-mode vi                                            

# vi settings                                         
$if mode=vi                
    # normal mode                           
    set keymap vi-command                                 
    "j": beginning-of-history
    "l": backward-char
    "h": forward-char         
    "G": end-of-history
    # insert mode             
    set keymap vi-insert                          
    "jj": vi-movement-mode # remap escape   
$endif 

Ce sont mes mappages, à l'exception de let h. J'ai changé ceux-ci ici, pour vous montrer comment vous pouvez changer de clé. Je ne connais pas les clés Dvorak que vous voulez, modifiez simplement toutes ces clés comme vous le souhaitez.

man bash décrit toutes les possibilités.

David Halter
la source