2012-08-06 57 views
2

如何在终端窗口模式下工作时,可以通过它操作每个单元坐标?我不知道这个模式如何命名,这就是为什么我不能谷歌它。另外,我知道this approach,但现在对于我如何使用低级别的工作感兴趣。python termios模式像'htop,atop'utulities

UPD: 好吧,我看了所有的termios手册页和其他一些文档,我现在可以说的唯一的事 - 我仍然不知道如何使在终端上,通过帧即某处旋转吧: - \ |/- :(

UPD2 哦,我突然发现它there

import sys 
import time 

f='-\\|/' 

for i in range(10): 
    sys.stdout.write("\r{0}".format(f[i%4])) 
    sys.stdout.flush() 
    time.sleep(0.5) 

因此,本主题中的最后一个问题 - 怎么样只能用termios的任何坐标

子问题[求助]:

当我用curses即第二个代码从this post列表 - 它使我的半透明终端窗口不透明,当top不这样做。如何保持透明?

解决方法:在def pbar(window):的第一个字符串中插入curses.use_default_colors()

+0

你可能想提到操作系统...因为它会根据你使用的操作系统而显着改变(没有可移植性......) – 2012-08-06 22:16:09

+0

@JoranBeasley当然是linux(Ubuntu 12.04),windows用户是否知道'终端'?:) – scythargon 2012-08-06 23:44:41

回答

0

叫它,您可以使用termios(虽然我会怀疑HTOP的UI主要是写与诅咒)

termios

Python文档页面是最小的模块非常简单,只是露出下面的UNIX'y的termios库,所以非的Python特异性文档是信息的主要来源,like this guide on termios,或the termios.h header(或在shell中运行man termios

过程中面临的挑战是翻译代码到Python的,但通常翻译是相当简单的(该函数调用通常非常相似,并且位混合/位掩码通常是相同的)

1

诅咒(http://docs.python.org/library/curses.html)或控制台(http://effbot.org/zone/console-handbook.htm)模块是你想

什么Console.py源可以在这里找到http://www.math.uiuc.edu/~gfrancis/illimath/windows/aszgard_mini/pylibs/readline/Console.py我敢肯定,你可以看看那个...虽然我敢肯定,它可能是一个很大的痛苦而这就是为什么人们总是用诅咒......

在Windows下你可能想浏览MSDN http://msdn.microsoft.com/en-us/library/system.console.aspx ,如果你想比0123更低的水平库使用ctypes.cdll.whatever

+0

不,伙计,你读过这个 - “我知道这种方法,但现在它对我如何使用低级别很有趣”?我问像termios.tcgetattr()这样的东西! – scythargon 2012-08-06 21:53:32

+0

我认为你将需要使用ctypes ...不确定...我认为它是一个很大的痛苦... Console.py的来源可以在这里http://www.math.uiuc.edu/~ gfrancis/illimath /窗/ aszgard_mini/pylibs/readline的/控制台。py我确定你可以看看... – 2012-08-06 22:01:51

+0

哇,它太hardcore :)))_still寻找简单example_ – scythargon 2012-08-06 22:08:16