试图加强我的常规python控制台,我想添加vi风格的编辑。
第一件事:如果我理解的话,python
不会阅读~/.inputrc
。
然后,我尝试(通过~/.pythonrc.py
):
import readline
readline.parse_and_bind('set editing-mode vi')
什么都没发生。我错过了什么?或者我的终端有问题吗?
我在OS X上使用Terminal.app
(试过rlwrap但没有成功)
答案 0 :(得分:3)
Apple提供的系统中的readline
模块OS X中的Pythons不与GNU readline
库链接,因为Apple不向OS X发送GNU readline
(可能是因为许可证问题)。它们与BSD editline
库libedit
链接,后者读取~/.editrc
并支持一组不同的编辑命令。有关详细信息,请参阅man 5 editrc
。记录here后,您可以检查libedit
中的文字readline.__doc__
,以确定是否正在使用GNU readline
或BSD editline
。如果你真的需要GNU readline
,你可以安装readline
package from PyPI,它具有与GNU readline
链接的Python readline
模块的预编译版本。