如何在bash / zsh中的第一次击键时运行一个函数?

时间:2015-06-05 12:21:22

标签: bash zsh

我想在开始输入终端时运行一个功能。

具体来说,我想运行fzf功能,我目前需要按ctrl-r来触发它。我希望any keystroke to trigger it这样,当我输入时,历史总会出现。

Only the first keystroke应该运行该函数,因为多次运行它会在路径和文件名选择之间切换。

1 个答案:

答案 0 :(得分:1)

我已将UpDown箭头键分别绑定到history-search-backwardhistory-search-forward。因此,当我输入内容然后按UpDown时,它会以键入的字母开头进行历史记录搜索。这对我有用,因为我不想对输入的每个命令进行历史搜索。

我知道这不是你想要的,但它很接近。

# Bind up and down arrows to do backward and forward history search
if [[ $- == *i* ]]
then
    bind '"\e[A": history-search-backward'
    bind '"\e[B": history-search-forward'
fi