我知道您可以在类Unix操作系统上以Vi模式使用Python shell。例如,我在~/.inputrc
:
set editing-mode vi
这让我可以在Python shell中使用Vi风格的编辑。
但是在Windows XP盒子上使用Python时可以使用吗?我正在使用直接从python.org下载的预构建的Python for Windows。
我猜测Windows版本不使用GNU Readline库,但我很高兴被证明是错误的。 :)
答案 0 :(得分:2)
根据PyReadline说明设置您的pyreadlineconfig.ini
和PYTHONSTARTUPFILE
文件。
然后将以下内容添加到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
来滚动上一个命令历史记录。