2010-06-27 6 views
9

Je viens de découvrir la magie de l'utilisation du style vi dans bash. Immédiatement, j'essaie d'utiliser C-c pour échapper au mode insertion (dans ce qu'on appelle le mode mouvement) car je suis habitué à C-c pour échapper au mode commande dans vim.Bash vi mode - lier "C-c" pour sortir du mode insertion

J'ai cherché et trouvé la commande à rebind clé dans bash:

"bind -m vi-insert C-c:vi-movement-mode" 

Puis, j'ai utilisé "-P bind" pour vérifier l'état de liaison et il a montré:

"..." 
"vi-movement-mode can be found on "\C-c", "\e"." 

Cependant , quand j'ai essayé d'échapper du mode insertion, il a effacé la ligne entière à la place (le comportement par défaut), au lieu d'échapper au mode mouvement ... Toute pensée comment puis-je utiliser Cc pour échapper du mode insertion?

Merci d'avance.

+0

+1 pour m'indiquer que le mode bash vi existe –

Répondre

2

Vous pouvez associer la touche d'interruption:

stty intr ^X 

maintenant interrompre quelque chose qui vous exécution devrez appuyer sur Ctrl - x. Je ne sais pas si cela pourrait avoir d'autres effets secondaires.

La raison pour laquelle vim peut le faire est qu'il piège l'interruption Ctrl-c.

2

Vous pouvez également utiliser le vieux truc pour cartographier les Caps Lock ESC:

xmodmap -e 'clear Lock' 
xmodmap -e 'keycode 0x42 = Escape' 

qui ressemble fondamentalement la façon dont les claviers utilisés pour travailler une fois.

+0

Oui, mais cela ne semble fonctionner que dans Xwindow, oui? – Patrick

+0

Je parie que vous avez raison. – crenate