从python readline打开外部编辑器?

时间:2014-10-29 14:47:36

标签: python bash vi readline

我有一个python命令行应用程序,它使用readline模块便于编辑用户输入。我的raw_input()包装器是

import readline
def rlinput(prompt, prefill=''):
    """
    Get user input with readline editing support.
    """
    readline.set_startup_hook(lambda: readline.insert_text(prefill))
    try:
        return raw_input(prompt)
    finally:
        readline.set_startup_hook()

我在OS X下运行并且有一个包含

的.inputrc
set editing-mode vi

我的环境

EDITOR=/usr/local/bin/mvim -f
VISUAL=/usr/local/bin/mvim -f

是否有可能让python readline模块兑现' v'在命令模式下打开mvim用于我需要编辑器的全部功能来进行冗长输入的情况吗?

这适用于bash但不适用于我的python程序。否则,bash和python中的编辑是相同的。

FWIW, ipython 中的%edit magic也会打开mvim,所以看起来没有明显的shell配置问题。

我已经查看了readline模块的文档但我没有看到任何明确处理启用外部编辑器的内容。

0 个答案:

没有答案