__fzfcmd() { [ ${FZF_TMUX:-1} -eq 1 ] && echo "fzf-tmux -d${FZF_TMUX_HEIGHT:-40%}" || echo "fzf" } local selected restore_no_bang_hist if selected=$(fc -l 1 | $(__fzfcmd) +s --tac +m -n2..,.. --tiebreak=index --toggle-sort=ctrl-r -q "$LBUFFER"); then num=$(echo "$selected" | head -n1 | awk '{print $1}' | sed 's/[^0-9]//g') if [ -n "$num" ]; then LBUFFER=!$num if setopt | grep nobanghist > /dev/null; then restore_no_bang_hist=1 unsetopt no_bang_hist fi zle expand-history [ -n "$restore_no_bang_hist" ] && setopt no_bang_hist fi fi zle redisplay