我想在xonsh shell中显示一个选择菜单,只要按下某个组合键,然后使用用户从菜单中的选择运行一个函数。你知道吗
我已经做到了这一点:
from prompt_toolkit.keys import Keys
from prompt_toolkit.completion import WordCompleter
@events.on_ptk_create
def outout_keybindings(prompter, history, completer, bindings, **kw):
handler = bindings.add
@handler('escape', 'u') # actually alt+u
def browse_links_handler(event):
compl = WordCompleter(['selection1','selection2', 'selection3', 'selection4'])
usr_sel = prompter.prompt('Enter your selection (TAB-complete): ', completer=compl)
my_process_selection(usr_sel)
例如,这可以在~/.xonshrc
中进行。你知道吗
问题是,我的代码会导致异常,但在其他方面几乎可以正常工作,因为提示会显示,xonsh似乎知道选择,但不显示菜单,并弹出错误消息:
我对显示选择菜单和让用户选择选项的其他解决方案很满意,只要它是纯python并且不需要鼠标交互。你知道吗
在常规的prompt toolkit应用程序中,这将实现我想要的功能:¹
https://python-prompt-toolkit.readthedocs.io/en/master/pages/asking_for_input.html#autocompletion
¹∗除了“完成”菜单应立即显示,而不是在用户键入第一个字母后显示。_你知道吗
目前没有回答
相关问题 更多 >
编程相关推荐