Fish 中是否有类似于 Bash 的 CTRL+R 的“反向增量搜索”功能?

Fish 中是否有类似于 Bash 的 CTRL+R 的“反向增量搜索”功能?

我真的很感动的自动完成功能。但是 Bash 中有一个功能我在 Fish 中找不到。当您在 Bash 中按下Ctrl+R并开始输入术语时,系统会对您的搜索进行.bash_history反向顺序查找匹配项。

Fish 中有类似的功能吗?

答案1

我自己从来没用过,fish但粗略的谷歌搜索后我发现这一页其中指出

强大的历史机制

现代 shell 将以前的命令保存在命令历史记录中。您可以使用上下箭头查看较早的命令。Fish 通过集成历史搜索功能扩展了这一概念。要搜索历史记录,只需输入搜索字符串,然后按向上箭头。通过使用上下箭头,您可以搜索较旧和较新的匹配项。fish 历史记录会自动删除重复的匹配项,并突出显示匹配的子字符串。这些功能使搜索和重用以前的命令更快。

这就是你要找的东西吗?它看起来和 bash 的很相似。

答案2

fish 没有实现增量历史搜索,尽管它似乎时不时会出现。2.0 之前的文档有一个“缺少的功能和错误”部分1增量历史搜索在“可能的功能”列表中的位置相当靠后。fish-users 邮件列表包括这条信息来自 Axel Liljencratz,日期为 2006 年 8 月 21 日,他在信中表示增量搜索将是一个很好的功能。

如果您习惯使用 bash 风格的增量搜索,那么鱼类历史搜索确实需要一点时间来适应。您必须先键入搜索词,然后使用上下箭头上下移动匹配的条目。但我想您已经习惯了。

答案3

您可以使用 :https://github.com/junegunn/fzf

该库提供了强大的 fish shell搜索功能。

答案4

更好的 Ctrl+r 反向搜索自由落体fzf 鱼插件, 使用Triton 鱼包管理器,配置为使用銀色搜尋者

〜/.config/fish/config.fish:

triton jethrokuan/fzf
set -U FZF_COMPLETE 2
set -U FZF_FIND_FILE_COMMAND "ag -l --hidden --ignore .git"
set -U FZF_DEFAULT_OPTS "--height 40% --layout=reverse --border"

在 Mac OS 上,安装先决条件:

brew install the_silver_searcher
brew install fzf

相关内容