如何强制 Python Click 在写入管道时发出颜色?

问题描述 投票:0回答:1

click.secho("helo", fg="yellow")
写入管道时,默认情况下颜色会被去除。即使
stdout
是管道,是否有办法强制单击发出颜色代码?

动机:我们有一个 Python 程序,它会调度 scons 脚本,读取其

stdout
管道并将其写入终端。我们希望在终端上看到 scons 脚本中
click.secho(...)
语句的颜色信息。如果需要,我们可以在 scons 脚本的开头添加对
click
的调用以强制保留颜色。

python python-click
1个回答
0
投票

click.echo
如果输出看起来不像终端,则专门删除颜色和样式代码,并且
click.secho
只是
click.echo
click.style
的包装。

您可以通过

color=True
无条件保留颜色/样式代码:

click.secho("helo", fg="yellow", color=True)
© www.soinside.com 2019 - 2024. All rights reserved.