Sur ma ligne de commande sous Ubuntu Server 16.04.1, j'aimerais relier Ctrlup/down à la fonction de recherche incrémentielle de l'historique bash. J'ai trouvé des messages comment le faire. Ils concernent les fichiers ~/.bashrc
et ~/.inputrc
.
Des caractères étranges apparaissent lorsque j'utilise les touches Ctrl et les touches fléchées pour naviguer indique que cela fonctionne via le fichier .inputrc
situé dans le répertoire de base. Pourquoi ctrl + flèche gauche ne saute-t-il pas des mots? contient des commentaires sur le fait de ne pas utiliser .inputrc
, d'utiliser .zshrc
et d'utiliser .bashrc
. Je suis encore trop nouveau pour ne pas être confondu. Je n'avais pas de .inputrc
dans ma nouvelle installation de serveur.
Je ne comprends pas ces choses:
Je n'ai pas réussi à le faire fonctionner aussi. J'ai essayé à la fois de copier le fichier de etc
et de le renommer en .inputrc
ainsi que de créer un nouveau fichier dans ~/
avec:
touch .inputrc
nano .inputrc
Le contenu du fichier:
$include /etc/inputrc
Voici ce que j'ai mis dans les fichiers.
# mappings for Ctrl-left-arrow and Ctrl-right-arrow for Word moving
"\e[1;5C": forward-Word
"\e[1;5D": backward-Word
"\e[5C": forward-Word
"\e[5D": backward-Word
"\e\e[C": forward-Word
"\e\e[D": backward-Word
# ctrl up,down
"\e\e[A": history-search-backward
"\e\e[B": history-search-forward
Les deux ne fonctionnent pas, Ctrl la clé est ignorée. CTRLUp/down ne montre pas la recherche et CTRLleft/right ne sautez pas de mots. Je pense que cela correspond à la réponse du second post.
Quel pourrait être le problème?
J'utilise Ubuntu 16.04 LTS. Mettre les "mappages pour Ctrl-flèche gauche et Ctrl-flèche droite pour le déplacement de Word" dans mon ~/.inputrc
a fonctionné pour moi.
Cela ne fonctionne pas d'avoir ces paramètres dans le fichier /etc/inputrc
.
Mon fichier ~/.inputrc
ressemble à ceci:
# mappings for Ctrl-left-arrow and Ctrl-right-arrow for Word moving
"\e[1;5C": forward-Word
"\e[1;5D": backward-Word
"\e[5C": forward-Word
"\e[5D": backward-Word
"\e\e[C": forward-Word
"\e\e[D": backward-Word
J'ai supprimé ce qui précède du fichier /etc/inputrc
, qui (selon ma compréhension même) ne semble pas avoir été lu par Ubuntu 16.04.
Hy! Peut-être trop tard, mais je poste ceci pour la postérité ...
Oui, il est normal de ne pas avoir .inputrc
chez vous. Il suffit de le créer. Êtes-vous sûr d'avoir rechargé le fichier?
Déconnexion et reconnexion du terminal, ou utilisez simplement bind -f ~/.inputrc
Cela fera le travail ...