【发布时间】:2013-09-20 00:51:49
【问题描述】:
如何在 Rails 控制台中进行 VI 样式导航?
在我的 .bash_profile 中,我使用 set -o vi,然后在我的终端中,我享受 vi 风格的导航。
我可以dd 删除一行,cmd+$ 跳转到行尾,等等。
我想在 Rails 控制台中得到同样的东西?
【问题讨论】:
标签: ruby-on-rails vi irb rails-console .bash-profile
如何在 Rails 控制台中进行 VI 样式导航?
在我的 .bash_profile 中,我使用 set -o vi,然后在我的终端中,我享受 vi 风格的导航。
我可以dd 删除一行,cmd+$ 跳转到行尾,等等。
我想在 Rails 控制台中得到同样的东西?
【问题讨论】:
标签: ruby-on-rails vi irb rails-console .bash-profile
您需要将编辑模式设置为 vi。 最简单的方法是在您的主文件夹中创建文件 .inputrc 并添加模式:
$ echo "set editing-mode vi" >> ~/.inputrc
瞧!
【讨论】:
ESC b b b b 那样做,这应该让我回溯 4 个字。现在我必须做ESC b ESC b ESC b ESC b。这也是你的经历还是我的设置有问题?
虽然使用 inputrc 不起作用,但我遇到了同样的问题。它不起作用的原因是因为我使用 zsh 作为我的 shell。 Zsh 不使用 inputrc 来设置输入模式。因此,如果您想在 rails 控制台中使用 vi 编辑模式并且您使用 zsh 作为您的 shell,请执行以下操作:
将以下内容添加到您的 ~/.zshrc
bindkey -v
参考资料:
【讨论】:
只是想指出有一种宝石叫做 rb-readline
这个 gem 破坏了控制台在 vi 模式下工作的能力
(我的项目已经捆绑了它,因为这个 gem 曾经是 byebug 工作所必需的)
【讨论】: