是否可以向Python解释器添加任意键绑定?

时间:2012-07-27 01:38:06

标签: keyboard-shortcuts interpreter key-bindings python

在python解释器中我们可以使用

readline.parse_and_bind('tab: complete')

启用标签页

是否可以将任意键绑定到我们自己的函数?
我想分别将CTRL + E和CTRL + SHIFT + E绑定到edit_history()和edit_history(True),其中edit_history()是我自己在.pythonrc中定义的函数

def edit_history(fork=False):
    import readline
    timeStamp = time.strftime("%Y%m%d-%H%M%S")
    tmpFile = '/tmp/pyHistory.%s' % timeStamp
    readline.write_history_file(tmpFile)
    if not fork:
        os.system('gvim -f %s' % tmpFile)
        readline.clear_history()
        readline.read_history_file(tmpFile)
        os.unlink(tmpFile)
    else:
        os.system('gvim %s' % tmpFile)

任何指针都会非常感激

谢谢,
墙裙

1 个答案:

答案 0 :(得分:0)

是的......有点儿。定义edit_history函数后,可以将键映射到序列“edit_history()\ n”。按下该键将模拟键入“edit_history”,然后按Enter键。