跳转到主要内容

类似于Curses的终端包装器,带有彩色字符串!

项目描述

Documentation Status Curtsies Logo

Curtsies是一个Python 3.6+兼容的库,用于与终端交互。使用curtsies(几乎所有功能)看起来是这样的

import random
import sys

from curtsies import FullscreenWindow, Input, FSArray
from curtsies.fmtfuncs import red, bold, green, on_blue, yellow

print(yellow('this prints normally, not to the alternate screen'))

with FullscreenWindow() as window:
    a = FSArray(window.height, window.width)
    msg = red(on_blue(bold('Press escape to exit, space to clear.')))
    a[0:1, 0:msg.width] = [msg]
    window.render_to_terminal(a)
    with Input() as input_generator:
        for c in input_generator:
            if c == '<ESC>':
                break
            elif c == '<SPACE>':
                a = FSArray(window.height, window.width)
            else:
                s = repr(c)
                row = random.choice(range(window.height))
                column = random.choice(range(window.width-len(s)))
                color = random.choice([red, green, on_blue, yellow])
                a[row, column:column+len(s)] = [color(s)]
            window.render_to_terminal(a)

将其粘贴到something.py文件中并尝试使用它!

安装: pip install curtsies

文档

入门指南

FmtStr对象是使用颜色和样式格式化的字符串,这些颜色和样式可以在带有ANSI转义序列的终端中显示。

FSArray对象包含多个此类字符串,每个格式化字符串占一行,并且可以通过组合将FSArray对象叠加在一起,以构建由彩色和样式字符组成的复杂网格。

(下面的导入语句已过时)

此类字符网格可以在全屏模式下(无历史记录,如 Vimtop 等)通过 FullscreenWindow 对象渲染到终端,或者通过正常保留历史记录的屏幕通过 CursorAwareWindow 对象。用户键盘输入事件(如按上箭头键)通过 Input 对象检测。

示例

关于

  • Curtsies 文档
  • Curtsies 是为 bpython-curtsies 编写的
  • #bpython 在 irc 是讨论 Curtsies 的好地方,但如果您遇到问题,请随时提交一个问题!
  • 感谢众多贡献者!
  • 如果您只需要彩色字符串,请考虑以下这些 其他库

项目详情


发布历史 发布通知 | RSS 源

下载文件

下载适合您平台的文件。如果您不确定选择哪一个,请了解更多关于 安装包 的信息。

源代码分发

curtsies-0.4.2.tar.gz (53.6 kB 查看散列值)

上传时间

构建分发

curtsies-0.4.2-py3-none-any.whl (35.4 kB 查看散列值)

上传时间 Python 3

支持