如何在Fish Shell中使用Vi模式?

110

我看到了fish shell的vi-mode实现,但我不知道如何使用它。是否有在线教程描述基本功能,例如如何切换模式?

2个回答

187

在 fish 2.3.0 及更高版本:

  • 运行 fish_vi_key_bindings 以启动vi模式
  • 运行 fish_default_key_bindings 回到默认模式

如果您想将其设置为默认,请将fish_vi_key_bindings 命令添加到 ~/.config/fish/config.fish 中。


1
请参考此问题以了解如何设置不同的vi esc键。 Fish 2.2.0之后的版本应该可以通过fish_user_key_bindings函数来实现,但在此期间,我在我的config.fish中使用了该问题第一篇帖子中显示的解决方案。 - Jay
1
为了去除令人烦恼的vi模式指示器(插入模式下的大写字母i),可以覆盖fish_mode_prompt函数。alias -s fish_mode_prompt 'echo' - Despertar

11
我正在使用 Fish 2.2.0 版本。以下方法对我有效:
编辑 `$HOME/.config/fish/functions/fish_user_key_bindings.fish` 文件。
function fish_user_key_bindings
  fish_vi_key_bindings
end

通过这里获取


@DrNeo 这与 fish shell 有什么关系? - Asherah
据我所知,“zsh-vi-mode”是为zsh-shell而不是fish-shell设计的,与此无关。 - Dr Neo

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接