微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

提示工具包以 READLINE_LIKE 样式在一列中完成

如何解决提示工具包以 READLINE_LIKE 样式在一列中完成

如何在提示工具包中以READLINE_LIKE 样式完成一列中的自定义单词?我正在尝试添加 '\n' 以创建新行,但它会自动在下一行前添加制表符。

from prompt_toolkit.completion import Completer,Completion
from prompt_toolkit.shortcuts import CompleteStyle,prompt

    class MyCompleter(Completer):
        def get_completions(self,document,complete_event):
            word = document.get_word_before_cursor()
            c = [('one','description of One'),('two','description of Two'),('three','description of Three')]
            for complete in c:
                if complete[0].startswith(word):
                    display = complete[0] + '  ->  ' + complete[1] + '\n' 
                    yield Completion(
                        complete[0],start_position=-len(word),display=display,)                
    
    
    prompt(
        "> ",completer=MyCompleter(),complete_style=CompleteStyle.READLINE_LIKE
    )

以下代码显示如下完成:

> <Tab>
one  ->  description of One
     two  ->  description of Two
     three  ->  description of Three

但我希望它是这样的:

> <Tab>
one  ->  description of One
two  ->  description of Two
three  ->  description of Three

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。