我想创建一个进度条来指示批处理作业的状态Ruby
.
我已经阅读了一些关于使用(n)curses的教程/库,其中没有一个特别有助于解释如何在终端中创建"动画"进度条或使用curses .Ruby
我已经知道使用一个单独的线程来监视给定作业的进度,我只是不确定如何继续绘制进度条.
更新
ProgressBar课程非常直接,完美地解决了我的问题.
我正在攻读考试,我对Unix中的规范与非规范输入/输出的工作原理感到困惑(例如,curses).我知道有一个缓冲区,"行规则"应用于规范输入.这是否意味着缓冲区被旁路用于非规范输入,还是仅仅意味着没有应用线路规则?输入和输出操作的这个过程有何不同?
在我使用的curses程序中演示了规范输入,用户输入的输入是在键入一定数量的字符或经过一定时间后自动输入的.这些事情中的任何一个都被视为"线条学科"还是完全不同于其他事情?
我在Windows 7(x64)计算机上安装了Python 2.7/3.4.我想在Windows上测试curses.
Curses已安装但无法正常工作:
>>> import curses
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:\Tools\Python3.4.2\lib\curses\__init__.py", line 13, in <module>
from _curses import *
ImportError: No module named '_curses'
Run Code Online (Sandbox Code Playgroud)
该文件说:
因此,Python 3.4的Windows安装程序安装了具有未解析依赖项的curses.有人可以说这是一个错误......
好的,我调查了UniCurses.它是PDCurses的包装器:
UniCurses是Python 2.x/3.x的包装器,它在所有平台(MS Windows,Linux和Mac OS X)上提供统一的Curses功能集,其语法接近原始NCurses的语法.为了在Microsoft Windows系统上提供Curses功能,它包装了PDCurses.
通过pip3
导致错误安装UniCurses :
C:\Users\Paebbels>pip3 install UniCurses
Downloading/unpacking UniCurses
Could not find any downloads that satisfy the requirement UniCurses
Some externally hosted files were ignored (use …
Run Code Online (Sandbox Code Playgroud) 在Windows中使用python的curses模块有什么替代方法吗?我查看了python文档,但是它提到了它在unix中的使用.我对这些不是很熟悉,所以有没有办法在windows中使用curses模块或者是否有一些专门用于windows的类似模块?[我使用的是Python 3.3]
我试图让一个简单的curses脚本使用Python运行(使用PyCharm 2.0).
这是我的脚本:
import curses
stdscr = curses.initscr()
curses.noecho()
curses.cbreak()
stdscr.keypad(1)
while 1:
c = stdscr.getch()
if c == ord('p'): print("I pressed p")
elif c == ord('q'): break
curses.nocbreak(); stdscr.keypad(0); curses.echo()
curses.endwin()
Run Code Online (Sandbox Code Playgroud)
当我从我的IDE(PyCharm 2)运行它时,我收到以下错误:
_curses.error: setupterm: could not find terminal
Process finished with exit code 1
如果我从bash运行脚本,它将只是停留在while循环中,而不是按p或q作出反应.
任何帮助,将不胜感激.
这3个有什么区别?据我所知,它们都提供了对curses的绑定,这是基于终端文本的UI的C库.
我目前不知道3中的任何一个,我从未使用过诅咒.你会推荐哪一个?我听过多次ncurses,但只听过一次或两次CDK(通过研究),从未听说过urwid(我认为).
这真是两个问题:
是否有可能知道窗口何时改变了大小?
我真的找不到任何好的文档,甚至没有在http://docs.python.org/library/curses.html上找到
我无法让终端调色板与curses一起使用.
import curses
def main(stdscr):
curses.use_default_colors()
for i in range(0,7):
stdscr.addstr("Hello", curses.color_pair(i))
stdscr.getch()
curses.wrapper(main)
Run Code Online (Sandbox Code Playgroud)
这个python脚本产生以下屏幕:
但是,我的gnome-terminal调色板中有更多颜色.如何在curses中访问它们?
有没有人知道有关使用Curses学习Ruby的任何好教程?我似乎无法找到一个,而且文档很模糊.我之前从未使用过诅咒所以我真的不太了解它.
在我使用Curses的Python脚本中,我有一个subwin,其中分配了一些文本.由于文本长度可能比窗口大小长,因此文本应该是可滚动的.
似乎没有任何CSS-"溢出"类似于Curses窗口的属性.Python/Curses文档在这方面也相当神秘.
这里有人知道如何使用Python编写可滚动的Curses子窗口并实际滚动它吗?
\编辑:更准确的问题