[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[trucs&astuces] affichage du mode vi du bash (readline inputrc)



  J'ai récemment découvert que GNU-readline -- le bidule pour la saisie
et l'édition des lignes de commandes du bash -- permet d'afficher le
mode (emacs / vi-insertion / vi-normal) en cours, à gauche de l'invite
de commande.

  Pour ce faire, il faut ajouter, dans « ~/.inputrc » :
set show-mode-in-prompt on

  Pour ceux qui utilisent le mode par défaut « emacs », c'est de la
pollution, mais pour les autres, c'est une indication fort utile qui
n'est (malheureusement) pas activée par le préalable :
set editing-mode vi

  En outre, il est possible de changer les chaînes affichées par défaut
« (ins) / (cmd) » avec les variables « vi-cmd-mode-string » et
« vi-ins-mode-string ». Exemple (toujours dans « ~/.inputrc ») :
set vi-ins-mode-string "_"
set vi-cmd-mode-string "☰"

… selon votre fantaisie.

  Petit bonus pour ceux qui préfèrent utiliser la séquence « jk » (ou
autre), au lieu de ESCAPE, pour revenir en mode normal :
$if mode=vi
  set keymap vi-command
  "i": vi-insertion-mode

  set keymap vi-insert
  "jk": vi-movement-mode
$endif

  Puisse ce message, au hasard des fils qui pleuvent, améliorer
l'expérience de quelque vi-basheux -- que l'absence d'assuétude pour
la lecture des docs¹ consignerait à l'impéritie.

¹ https://manpages.debian.org/stretch/readline-common/readline.3readline.en.html

-- 
 ___________________
| $ post_tenebras ↲ | waouh!
| GNU        \ /    |    \
|          -- * --  |     o
| $ who ↲    / \    |_-- ~_|
| Alexandre Hoïde   |  _/| |
 -------------------


Reply to: