问题标签 [prompt-toolkit]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 在 python prompt-toolkit-3.0.2 上添加键绑定会破坏建议和历史搜索
我正在尝试添加一种不同的方式来完成多行输入。应该很简单,但我得到了一个意想不到的结果:添加新绑定后,历史记录和建议功能停止工作。
我尝试使用 load_basic_bindings 但它没有帮助。
如果我对键绑定、建议和历史工作再次发表评论。
python - 使用 prompt_toolkit 对按键做出反应
我正在尝试使用prompt_toolkit
,这样我就可以从用户那里获得输入,而无需等待他们按 Enter。我设法创建事件并将它们与键相关联,但我无法弄清楚如何从事件中实际操作我的程序。
我希望这个程序:
Ctrl+T
按下时打印“hello world” 。Ctrl+X
按下时退出。- 按下
i
时的值加倍。d
它执行 1 和 2,但 3 给出Exception local variable 'i' referenced before assignment
. 但即使在 Python 文档中,我们也可以看到示例(https://docs.python.org/3/reference/executionmodel.html):
那么如何创建一个改变我的变量的键绑定呢?
python - 键入并选择条目时过滤列表
我尝试使用prompt_toolkit构建命令行/终端应用程序,它应该执行以下操作:
- 我有一个 (title, id) 对列表,它大到可以放在一个屏幕上,但小到可以放入内存。假设大约 1000 个条目。
- 为了选择一个项目,我开始打字。在输入时——例如“dog”——列表被过滤到只有那些条目,在标题中有“dog”。
- 如果列表足够小(但不是空的),我想使用箭头键选择一个条目。
- 我想让 id 与该标题相关联。
我对 prompt_toolkit 完全陌生,并从两端解决问题:
- 使用plain
prompt()
with autocompletion:我试图滥用自定义完成方法来过滤我的列表,但没有设法显示它。 - 我检查了小部件/全屏示例,但文档相当有限。例如,我发现
SearchToolbar
但无法真正弄清楚它是如何与其他小部件交互的。 - 我没有找到任何关于如何显示列表以选择元素的示例。还有更复杂的例子,所以我希望这是可能的,但是迷路了。
有人可以给我指出一个可以解决我的用例之类的问题的例子,或者给我一个总体上如何解决这个问题的起点吗?
python - Python prompt_toolkit:当用户按下回车键时选择最佳模糊匹配
我正在通过 CLI使用FuzzyCompleter
from for 。prompt_toolkit
我另外传递complete_while_typing=True
给prompt
函数。
如果我提供一个包含例如“Testing”的列表并且用户键入“tst”,它将显示为第一个建议。但是如果用户随后按下回车,prompt
函数的结果将是“tst”,而不是“Testing”。如果用户按 Tab 然后输入,它当然可以工作。
我希望该prompt
函数仅返回完成列表中的值,而不是用户键入以快速匹配的“tst”之类的无意义的字符串。输入前的制表符不应该是必需的。我怎样才能做到这一点?
python - prompt-toolkit 在空闲时终止程序
我正在尝试使用prompt-toolkit
. 它工作得很好,但是如果很长时间没有输入,我想退出程序。事实证明,这对我来说非常具有挑战性。
以下是 cli 应用程序应该如何工作的一些伪代码:
因此,如果用户在最后 60 秒内没有发出命令,程序应该终止。但是如果一个命令的执行时间超过 60 秒,它应该只在命令完成 60 秒后终止(并且没有发出新命令)。
我已经绊倒了第一点。我是否需要并行处理来检查s.prompt
运行时的时间?该命令还有一个prompt_async
版本。我玩过它,但没有任何成功......
python - Spyder 崩溃:ModuleNotFoundError:没有名为“prompt_toolkit.enums”的模块
我的 Spyder(4.0 版)崩溃了,spyder --reset
没有用。我试过conda update spyder
了,然后当我在 Anaconda Prompt 中打开 Spyder 时,它会显示这些:
但我不能conda install prompt_toolkit.enums
,因为它显示:
并且prompt_toolkit
已经被我重新安装了。但是还是没有什么用处。我只是添加conda list prompt_toolkit
如下的输出:
有谁能帮助我吗?请!!!我只是想正常使用Spyder!
python - 使用提示工具包全屏应用程序均匀间隔的列,无论内容宽度如何
使用prompt_toolkit,我想创建一个均匀分布的垂直布局,而不管每个窗口(全屏应用程序)中内容的宽度如何。不良行为 - 当更改一个 [或多个] 控件中的内容时,会重新计算布局以适应更宽或更窄的动态内容。
有没有办法让给定屏幕尺寸的布局静态化?即,仅在初始化或调整大小时渲染窗口,保持布局列均匀分布?
下面的示例代码(按下c
以在任一列上注入随机长度的内容,布局宽度发生变化)。即使添加用户消息也可能导致在足够窄的终端上初始化不均匀的宽度。