问题标签 [python-blessings]

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.

0 投票
2 回答
1174 浏览

python - Clear 和 exit_fullscreen 似乎不起作用

我已经开始玩弄祝福了——到目前为止,我非常喜欢它,因为它确实让事情变得更容易了。但是我试图清除屏幕但没有成功......enter_fullscreen似乎可以工作,因为这会“清除”它 - 但exit_fullscreen不会让我回到原来的视图。

这工作除了清楚,exit_fullscreen似乎。没有错误消息或任何东西,它似乎没有做任何事情。

有谁知道它是如何工作的?

编辑:都不是

也不

似乎工作...

编辑2:

我几乎可以做到这一点,结果与上面相同。它进行着色和放置,但不进行清除或其他任何操作。

0 投票
1 回答
451 浏览

python - 祝福:如何在退出时将光标移动到屏幕底部?

我正在尝试 Python 脚本的一些光标图形输出,为我的应用程序提供一个不错的进度条。

在显示输出之前,我使用以下内容确保我的屏幕是空白的。

但是当我的 Python 脚本完成时,我的 shell 提示符会在屏幕顶部输出,覆盖进度条的一部分。

当 Python 脚本退出时,如何将光标移动到图形输出下方?在退出脚本之前我已经尝试过了:

但这似乎被忽略了。我的 shell 在屏幕顶部开始输出。

我不想进入全屏模式,我想在脚本完成后将进度条的最终输出留在屏幕上。

我的环境是:

  • xterm-256 模式下的 OS X 10.10 终端。
  • Python 2.7.10
  • 祝福1.6
0 投票
1 回答
765 浏览

python-3.x - 从标准输入和其他来源异步写入控制台

我尝试为命令行编写某种渲染器,该渲染器应该能够使用 and 从另一个数据源打印数据,stdin这是 python-blessings 的改进版本。asyncioblessed

这是我到目前为止所拥有的:

出于学习和测试的目的,只有一个'ping'每秒发送一次的转储 ping 和另一个例程,该例程应该获取关键输入并将它们发送到我的渲染器。

但是 ping 仅在使用此代码的命令行中出现一次,并且 input_reader 可以按预期工作。当我用pong类似的东西替换 input_reader 时,ping一切都很好。

这是键入“pong”时的样子,尽管如果写“pong”需要十秒钟:

0 投票
0 回答
111 浏览

multithreading - 使用'enlighten'状态栏停止删除到偏移量的终端输出

我将“启发”状态栏用于多线程解决方案。我的问题是,在打印线到达终端偏移后,它们就消失了,再也看不到了。我不想要它。可以在“enlighten”中关闭这种“clean-offsett”行为吗?

您可以在下面看到代码的一个小示例,您可以在其中看到这种行为。如果有人可以帮助我,那就太好了=))))

晴天

0 投票
1 回答
224 浏览

python - 为什么我的python祝福打印语句不在同一个位置打印?

我正在使用祝福(或祝福)来尝试在 for 循环中的同一位置打印。但是,我发现这仅在我在终端底部上方打印 3 时才有效,但如果我在底部上方打印 1 或两行,它会为每次迭代打印一个新行...

对于 y=term.height-3:

此代码打印:

它对每次迭代都这样做。

但是,如果我将打印位置更改为

with term.location(y=term.height-1):

它这样做

等等等等..这是为什么?

0 投票
0 回答
44 浏览

python - 在屏幕底部保持提示,同时避免覆盖它

我正在尝试在 python 中创建一个类似 spigot 的界面。到目前为止,这是我想出的:

该视频说明了这种方法的问题 终端

当文本到达屏幕底部时,如何将提示保持在屏幕底部而不被覆盖?我希望它像普通控制台输出一样向上滚动,而不是覆盖其他数据

0 投票
1 回答
22 浏览

python - 使用 python/ipython REPL 时在角落打印信息 - 并在线程运行时退出它

我正在使用我编写的 python 库与自定义 USB 设备进行交互。库需要发送和接收数据。我还需要交互调用方法。目前我使用两个shell,一个只接收,另一个只发送。后者在 (i)python REPL 中。它可以工作,但很笨拙,所以我想将这两个东西合并到一个 shell 中,这样可以在一个上下文中从双方访问数据结构。这很好用。问题出在 UI 中。

实际上,接收部分需要异步打印一些信息。所以我写了如下内容:

那是我__init__.py的模块文件。它有点工作,但它有两个问题:

  • 当线程正在运行时,您既不能使用 CTRL-D 也不能退出 REPL sys.exit()(这就是我在TOTAL=5上面使用的原因,因此如果您尝试此代码,您的生活会更轻松)。这是一个问题,因为我的实际线程需要是一个无限循环。我想一种解决方案可能是通过自定义调用退出,这将导致无限循环中断,但有什么更好的吗?

  • 光标未正确返回到其先前位置

    • 如果我删除end=""带有注释的行中的# just return the cursor,它有点工作,但显然在光标所在的位置打印一个不需要的换行符(除了添加不需要的之外,这会使我们可能在那里发生的其他输入和/或输出混乱新队)
    • 如果我离开end=""它不会返回光标,即使我添加了一些要打印的东西,例如print(".", end="")- 点.打印在正确的位置,但闪烁的光标和输入打印在顶部

我知道这是两个不相关的问题,我本可以提出两个单独的问题,但我需要两个问题的答案,否则这是一个有争议的问题。或者,我对其他解决方案持开放态度。我想到了一个单独的 GTK 窗口,这可能会起作用,但它是一个低于标准的解决方案,因为我真的希望它仅在 CLI 中工作(以使其在 ssh-without-X-tunneling 设置中成为可能)。