Passer bash en mode vi

Dans la catégorie on peut être admin sys mais quand même avoir bon goût, un petit article qui nous permet d'utiliser les bindings à la vi dans bash (en fait on peut passer tout ce qui utilise GNU Readline en mode vi…).

Si vous voulez commencer petit, vous pouvez d'abord ne passer que bash en mode vi, en ajoutant dans votre .bashrc

set -o vi

Et voilà, roulez jeunesse !

par défaut on se retrouve en mode insertion à chaque ligne, ce qui est plutôt agréable. La complétion peut se faire avec Ctrl+n et Ctrl+p

Un coup de Echap et nous voilà en mode commande avec la navigation classique :

  • w - mot suivant
  • b - mot précédent
  • ^ - aller au début de ligne
  • $ - aller en fin de ligne
  • k - remonter dans l'historique des commandes
  • j - descendre dans l'historique des commandes

On retrouve les commandes habituelles de suppression (d3w supprimer 3 mots, etc…)

On passe en mode insertion tout pareil:

  • i - mode insertion sous le curseur
  • a - mode insertion après le curseur
  • I - mode insertion en début de ligne
  • A - mode insertion en fin de ligne

Et ainsi de suite… Nice, isn't it?

Bien sûr si ça devient trop long et dur et/ou que vous voulez profiter de vim en entier, un classique coup de Ctrl-x Ctrl-e (en mode classique) ouvre la ligne de commande courante dans $EDITOR (donc vim, j'ose espérer).

Si ça vous plaît et que vous voulez ces bindings partout dès que GNU Readline est utilisé, il suffit à la place de la ligne dans .bashrc de mettre

set editing-mode vi

dans le fichier .inputrc.

sysadmin/tips/bash-vi.txt · Dernière modification: 2015/01/06 11:59 par james
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0