GNU Readline est une bibliothèque peu connue de l'utilisateur lambda, mais à laquelle il est utile de s'intéresser. En effet, c'est grâce à elle que de nombreux outils de type « ligne de commande » dialoguent avec l'utilisateur. Readline permet à l'utilisateur de taper des lignes de texte, de les modifier, et de naviguer dans un historique. Par exemple, c'est Readline qui gère l'édition de la ligne de commande sous GNU Bash, et gère son historique.

Principales combinaisons de touches

Il existe de très nombreuses commandes sous Readline, mais les quelques-unes présentées ci-dessous sont d'usage courant : il est vraiment utile de les connaître. Pour les autres, on peut se référer au manuel utilisateur.

CombinaisonAction
←, →Déplace le curseur dans la ligne
C-a, C-eSaute en début ou fin de ligne
C-l (« L »)Efface l'écran
C-wEfface le mot précédent ou en cours (vers la gauche)
ESC-dEfface le mot suivant ou en cours (vers la droite)
C-kEfface la fin de la ligne
C-_Annule la dernière modification
↑, ↓Navigue dans l'historique : plus ancien, plus récent
C-r (C-s, C-g)Recherche un texte dans une commande précédente, puis encore C-r passe à l'occurrence précédente, C-s à l'occurrence suivante. C-g annule la recherche
C-vInsère le caractère qui suit, sans l'interpréter. C'est très utile pour taper tels quels des caractères de contrôle. Par exemple, pour insérer ^A il faut taper C-v, C-a

Personnalisation

Les combinaisons ci-dessus constituent les choix par défaut. En réalité, tout est personnalisable via le fichier ~/.inputrc. Sous Bash, on obtient la liste des bindings en cours avec la commande bind -p.