R
richiemccoll
从 Chalk 迁移到 Node.js util styleText
chalk-to-util-styletext
此 codemod 旨在通过将 chalk 方法调用转换为使用原生 Node.js 样式功能,帮助你减少外部依赖。它还会自动处理从 package.json 中移除 chalk 包。
兼容功能:
- 基本颜色(红色、绿色、蓝色、黄色等)
- 亮色(redBright、greenBright 等)
- 背景色(bgRed、bgGreen 等)
- 文本修饰符(bold、dim、italic、underline、strikethrough 等)
- 通过数组语法进行样式链式调用
- 环境变量支持(NO_COLOR、NODE_DISABLE_COLORS、FORCE_COLOR)
不兼容特性:
- 自定义 RGB 颜色(chalk.rgb()、chalk.hex())
- 256色调色板(chalk.ansi256())
- 模板字面量语法(chalk...``)
- 有限终端支持的高级修饰符(上划线、闪烁等)
前提条件:
Node.js版本要求
- Node.js v20.12.0 或更高版本(用于 util.styleText)
util.styleText在 Node.js v22.13.0(以及 v23.5.0)中变得稳定
如果你的包当前支持早于v20.12.0的Node.js版本,则无法迁移到util.styleText而不放弃对这些版本的支持。这需要提升包的主版本号,并更新package.json中的engines字段,要求Node.js>= v20.12.0.
用法:
这个 codemod 的源代码可以在chalk-to-util-styletext 目录请识别以下文本的语言,并将其翻译成 简体中文:
你可以找到这个代码修改器(codemod)在这个Codemod注册表(Codemod Registry)。
npx codemod @nodejs/chalk-to-util-styletext示例:
import from 'chalk';
.(.red('Error message'));
.(.red.bold('Important error'));
const = .red;
.(('Error'));
const = .blue.bold;
.(('Info'));识别
我们想感谢维护者们chalk感谢他们长期以来对该软件包的支持以及对其生态系统的贡献。






















