objectif
Remplacer la recherche incrémentale basique par une recherche fuzzy puissante.
code minimal
# assurez-vous que fzf est installé
command -v fzf >/dev/null || echo "installez fzf d'abord"
# widget Bash: Ctrl+R ouvre fzf sur l'historique
__fzf_history__() {
local selected
selected=$(HISTTIMEFORMAT= history | sed 's/^ *[0-9]\+ *//' | fzf --tac --no-sort --query "$READLINE_LINE")
if [[ -n "$selected" ]]; then
READLINE_LINE="$selected"
READLINE_POINT=${#READLINE_LINE}
fi
}
bind -x '"\C-r": __fzf_history__'
utilisation
# tapez Ctrl+R et cherchez n'importe quel fragment de commande
variante(s) utile(s)
# key-bindings fournis par le paquet fzf (si disponible)
# source /usr/share/doc/fzf/examples/key-bindings.bash 2>/dev/null || # source /usr/share/fzf/key-bindings.bash 2>/dev/null || true
notes
bind -xnécessite Bash; pour zsh, utilisez le widget dédié fzf.--tacmontre les plus récentes en haut; ajustez selon préférence.