我喜欢使用vi样式的键绑定编辑和操作bash命令行,并使用以下设置:
set -o vi
但是,当我在命令行上启动R时,这些键绑定会消失。 我知道当你通过Conque Shell运行R时,Vim-R plugin允许Vim键绑定,但我对这种体验并不完全满意,而且,无论如何,有时我只想在标准命令行上运行R
答案 0 :(得分:13)
感谢Joshua Ulrich和progo的回答,这有助于我开始。
下面我记录我的经历:
我尝试了set keymap vi
和set editing-mode vi
。当我在我的Gnome终端中启动R时,一些快捷方式有效,而有些则没有。
特别是cc
和dd
(即删除行)根本不起作用,cw
和dw
执行了删除字词的操作,但没有更新显示直到我按下一个额外的键,这不是一个功能性的经验。
我在~/.inputrc
添加了以下内容,修复了上述明显的问题:
set completion-ignore-case on
set editing-mode vi
$if mode=vi
set keymap vi-insert
"\C-l": clear-screen
"\C-p": history-search-backward
"\C-n": history-search-forward
# alt dot cycles through last argument
"\e.":yank-last-arg
set keymap vi-command
"D":kill-line
"dw": kill-word
"dd": kill-whole-line
"db": backward-kill-word
"cc": "ddi"
"cw": "dwi"
"cb": "dbi"
"diw": "lbdw"
"yiw": "lbyw"
"ciw": "lbcw"
"diW": "lBdW"
"yiW": "lByW"
"ciW": "lBcW"
"gg": beginning-of-history
"G": end-of-history
$endif
答案 1 :(得分:11)
将此添加到您的.inputrc
:
set editing-mode vi
答案 2 :(得分:5)
R命令行似乎使用Readline。 Readline使用.inputrc
进行设置:
set keymap vi
到~/.inputrc
。