gpt4 book ai didi

perl - Perl 中的彩色终端输出

转载 作者:行者123 更新时间:2023-12-02 09:09:34 24 4
gpt4 key购买 nike

当终端支持颜色时,我想以彩色方式将一些输出打印到终端,否则以普通方式打印。另外,当程序不交互式运行时,我不希望有颜色,例如当通过管道输入 grep 时。

在 Perl 中执行此操作的最佳方法是什么?我希望有一些类似这样的 API:

printColorMaybe( RED, "Hi", PLAIN, " mom!\n" );

当不合适时,实现将忽略颜色代码。

最佳答案

Term::ANSIColor产生彩色输出。

-t STDOUT测试终端是否打开标准输出。

$ENV{ANSI_COLORS_DISABLED}动态禁用 Term::ANSIColor

use Term::ANSIColor;
$ENV{ANSI_COLORS_DISABLED}++ unless -t STDOUT;
print colored("Hi","red")," mom!\n";

关于perl - Perl 中的彩色终端输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54117553/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com