跳转到主要内容

增强

项目描述

增强

增强扩展了 rich 库的功能,增加了一些未被rich本身接受的更改。

支持重定向的控制台

我们的Console类为rich.Console添加了一个额外的选项,以便使用FileProxy重定向sys.stdoutsys.stderr流。

from enrich.console import Console
import sys

console = Console(
    redirect=True,  # <-- not supported by rich.cosole.Console
    record=True)
sys.write("foo")

# this assert would have passed without redirect=True
assert console.export_text() == "foo"

支持隐式软换行的控制台

如果您想要生成流畅的终端输出,其中客户端终端决定文本换行位置而不是应用程序,现在您可以通过Console构造函数设置软换行偏好。

from enrich.console import Console
import sys

console = Console(soft_wrap=True)
console.print(...)  # no longer need to pass soft_wrap to each print

Console.print也可以处理ANSI转义序列

扩展丰富的控制台,以检测原始文本是否已有ANSI转义符,并在处理之前对其进行解码。这解决了打印包含ANSI转义符的从其他进程捕获的输出的情况。 上游-404

软换行日志器

丰富的日志器假设您始终有一个固定宽度的控制台,并且它会根据它来换行日志输出。我们的替代日志器恰恰相反:它忽略当前控制台的列,并使用启用软换行的控制台打印输出。

结果是可以显示在任何终端或网页上的日志行,因为它们将允许客户端决定何时进行换行。

import logging
from enrich.logging import RichHandler

FORMAT = "%(message)s"
logging.basicConfig(
    level="NOTSET", format=FORMAT, datefmt="[%X]", handlers=[RichHandler()]
)

log = logging.getLogger("rich")
log.info("Text that we do not want pre-wrapped by logger: %s", 100 * "x")

项目详情


下载文件

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

源分发

enrich-1.2.7.tar.gz (16.9 kB 查看哈希值)

上传时间

构建分发

enrich-1.2.7-py3-none-any.whl (8.7 kB 查看哈希值)

上传时间 Python 3

由以下组织支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面