R命令行的Vi键绑定,如Bash一样

问题描述

| 语境 我喜欢使用具有以下设置的vi样式的键绑定来编辑和操作bash命令行:
set -o vi
但是,当我在命令行上启动R时,这些键绑定消失了。 我知道当您通过Conque Shell运行R时,Vim-R插件允许Vim绑定,但是我对这种体验并不完全满意,无论如何,有时我只想在标准命令行上运行R 。 题 是否可以通过命令行在R中获得Vi样式的键绑定?     

解决方法

        感谢Joshua Ulrich和progo的回答,这有助于我入门。 下面我记录我的经验: 初始设置 我尝试了
set keymap vi
set editing-mode vi
。当我在Gnome终端中启动R时,某些快捷方式有效,而其他快捷方式则无效。 特别是
cc
dd
(即删除行)根本不起作用,
cw
dw
执行删除单词的操作,但是直到我按下附加键后才更新显示,这不是功能上的经验。 替换缺少的功能 我发现这个inputrc文件给了我一些想法。 帮助页面自然很有帮助。 我在“ 7”中添加了以下内容,从而解决了上述明显的问题:
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
    ,        将此添加到您的
.inputrc
set editing-mode vi
    ,        R命令行似乎使用Readline。 Readline使用ѭ9进行设置:
set keymap vi
到你的
~/.inputrc
。