在Windows上以Vi模式使用Python shell

时间:2009-12-03 04:45:21

标签: python windows vi readline

我知道您可以在类Unix操作系统上以Vi模式使用Python shell。例如,我在~/.inputrc

中有这一行
set editing-mode vi

这让我可以在Python shell中使用Vi风格的编辑。

但是在Windows XP盒子上使用Python时可以使用吗?我正在使用直接从python.org下载的预构建的Python for Windows。

我猜测Windows版本不使用GNU Readline库,但我很高兴被证明是错误的。 :)

3 个答案:

答案 0 :(得分:2)

安装PyReadline

根据PyReadline说明设置您的pyreadlineconfig.iniPYTHONSTARTUPFILE文件。

然后将以下内容添加到pyreadlineconfig.ini文件中:

set_mode("vi")
history_filename("~/.pythonhistory")
history_length(200)

历史记录设置必须在模式设置之后。

ESC K等命令可以跳转到上一个命令。

答案 1 :(得分:1)

cygwin可以在您的“Windows XP盒子”上为您提供许多Unix-y优势(使用自己的Python构建,除其他外 - 避免“标准Windows构建”的某些Windows限制) - 尝试一下!

答案 2 :(得分:0)

回答我自己的问题,看起来您可以将PyReadline库与IPython结合使用,以获得我在Linux上遗漏的大部分Vi功能。我仍然没有想出如何点击ESC然后k来滚动上一个命令历史记录。