这听起来很无知,但是:
我在python解释器(RHEL 5.3上的python 2.4)上工作了一下,突然发现自己处于"vi命令模式"的状态.也就是说,我可以使用典型的vi键绑定编辑以前的命令,左边用h,用x删除...
我喜欢它 - 唯一的是,我不知道我是如何到达这里的(也许是通过我导入的其中一个模块:pylab/matplotlib?).
任何人都可以解释如何在解释器中启用此模式?
这一切都取决于一些事情.
首先,python shell使用readline,因此,~/.inputrc
这里很重要.这与psql的PostgreSQL命令行解释器和mysql的MySQL shell是一样的.所有这些都可以配置为使用vi样式的命令绑定,历史记录等.
一旦你的编辑模式设置为vi,你将进入python shell的vi模式
您可能需要以下定义 ~/.inputrc
set editing-mode vi
OSX信息
OSX使用libedit,它使用〜/ .editrc.你可以通过manrc来获取更多信息.
例如,要模仿在历史记录中搜索的常用组合键,可以将以下内容添加到.editrc中
bind "^R" em-inc-search-prev
在readline程序中, Ctrl-Alt-J从Emacs模式切换到Vi模式.
或者在您的〜/ .inputrc中添加"set editing-mode vi"