Lobsters | 原文链接 | 2026-09-05 收录

管道输出也要有颜色:FORCE_COLOR 命令行强制上色的统一标准

来源: force-color.org — 2026-08-05

概述

一个 2023 年提出的非正式标准 FORCE_COLOR 的官方站点。许多命令行程序支持 NO_COLOR 环境变量来关闭颜色,但当用户想「强制开启」时(尤其管道、less/grep/tee、非交互 CI 环境会自动关掉颜色),各程序的做法五花八门,很多根本不提供此选项。标准给出的约定很简单:输出彩色文本的命令行软件应检查 FORCE_COLOR 环境变量,只要该变量存在且非空(不论取值),就强制启用 ANSI 颜色。文中给出示例实现与 FAQ,并维护一张已支持 FORCE_COLOR 的着色库清单(chalk、supports-color、colorette、ansis 等),号召软件作者在支持 NO_COLOR 的同时补上 FORCE_COLOR。

核心要点

金句

When this variable is present and not an empty string (regardless of its value), it should force the addition of ANSI color.(只要该变量存在且非空——无论取值是什么——都应强制添加 ANSI 颜色。)
返回 Lobsters 首页