我正在尝试为将在终端中运行的某些数据库条目编写控制台应用程序。在考虑了几个 CLI 库之后,我选择了最接近我需要的 prompt-toolkit(cli 框架过于集中于命令行工具)。Prompt-toolkit 文档规模适中,但在许多情况下无法记录简单的用例并快速跳转到高级主题。
考虑以下代码:
from prompt_toolkit import prompt, PromptSession, print_formatted_text, HTML
pts = PromptSession()
result = pts.prompt(HTML('<b>Enter some data > </b>'))
运行时显示:
输入一些数据 >用户类型在此处输入
您可能会注意到提示是“粗体”的(几乎没有记录使用 HTML 进行着色提示,但我认为它可以正常工作)。我没有弄清楚的是用户输入部分的着色 - 换句话说,我想以某种简单的方式(某种颜色或效果使用户输入突出)为“用户类型输入”着色,而不使用一些词法分析器方法(已广泛记录)因为我输入的不是某种代码,而是一些简单的数据。
提到可以为此使用 style= 参数,但是当我尝试输入“格式字符串”时出现错误(代码如下所示):
result = pts.prompt(HTML('<b>Enter some data > </b>'), style="fg:ansiyellow bg:black bold underline")
根据https://python-prompt-toolkit.readthedocs.io/en/stable/pages/advanced_topics/styling.html#styling这应该是可接受的输入样式(据我所知)。
任何提示在哪里看?