在 bash 上以正常模式启动

在 bash 上以正常模式启动

我很高兴发现我可以在 bash shell 中使用 vi 键绑定(bash vi 模式)。然而,我现在有点沮丧,因为 shell 总是默认为插入模式而不是正常模式。我总是不得不退出它。有没有办法让它以正常模式启动?

谢谢你!

答案1

将以下行放入~/.inputrc

set editing-mode vi
set keymap vi-insert
"\C-m": "\C-j\e"
set keymap vi-command
"\C-m": "\C-j\e"

或者用bind~/.bashrc

set -o vi
bind -m vi-insert '"\C-m": "\C-j\e"'
bind -m vi-command '"\C-m": "\C-j\e"'

现在,您会自动发出问题accept-line,然后vi-movement-mode 输入Ctrl+MEnter。仅键入Ctrl+ 。Jaccept-line

我承认他们有一些缺陷:

  • 您一开始就处于插入模式
  • 当您从终端粘贴多个命令行时,您会遇到麻烦

相关内容