> 终端字符串的正确样式
[](https://coveralls.io/github/chalk/chalk?branch=main)
[](https://www.npmjs.com/package/chalk?activeTab=dependents) [](https://www.npmjs.com/package/chalk)
[](https://repl.it/github/chalk/chalk)
[](https://stakes.social/0x44d871aebF0126Bf646753E2C976Aa7e68A66c15)
---
[English](./readme.md) | [中文文档](./readme_zh.md)
---
---
## 重点介绍
- 富有表现力的 API
- 高性能
- 能够嵌套样式
- [支持 256/Truecolor 颜色](#256-and-truecolor-color-support)
- 自动检测颜色支持
- 不扩展`String.prototype`
- 干净而专注
- 积极维护
- 截至 2020 年 1 月 1 日,[约有 50,000 个软件包使用](https://www.npmjs.com/browse/depended/chalk)
## 安装
```console
$ npm install chalk
```
## 使用方法
```js
import chalk from "chalk";
console.log(chalk.blue("Hello world!"));
```
Chalk 有一个易于使用的可组合的 API,你只需将你想要的样式连锁和嵌套。
```js
import chalk from "chalk";
const log = console.log;
// 组合风格化字符串和普通字符串
log(chalk.blue("Hello") + " World" + chalk.red("!"));
// 使用可连锁的API构成多种样式
log(chalk.blue.bgRed.bold("Hello world!"));
// 传入多个参数
log(chalk.blue("Hello", "World!", "Foo", "bar", "biz", "baz"));
// 嵌套样式
log(chalk.red("Hello", chalk.underline.bgBlue("world") + "!"));
// 同一类型的嵌套样式,甚至(颜色、下划线、背景)。
log(
chalk.green(
"I am a green line " +
chalk.blue.underline.bold("with a blue substring") +
" that becomes green again!"
)
);
// ES2015 字符串模板
log(`
CPU: ${chalk.red("90%")}
RAM: ${chalk.green("40%")}
DISK: ${chalk.yellow("70%")}
`);
// ES2015 标签化字符串模板
log(chalk`
CPU: {red ${cpu.totalPercent}%}
RAM: {green ${(ram.used / ram.total) * 100}%}
DISK: {rgb(255,131,0) ${(disk.used / disk.total) * 100}%}
`);
// 在支持RGB颜色的终端中使用RGB颜色
log(chalk.rgb(123, 45, 67).underline("Underlined reddish color"));
log(chalk.hex("#DEADED").bold("Bold gray!"));
```
轻松地定义你自己的主题:
```js
import chalk from "chalk";
const error = chalk.bold.red;
const warning = chalk.hex("#FFA500"); // Orange color
console.log(error("Error!"));
console.log(warning("Warning!"));
```
利用 console.log[字符串替换](https://nodejs.org/docs/latest/api/console.html#console_console_log_data_args)的优势:
```js
import chalk from "chalk";
const name = "Sindre";
console.log(chalk.green("Hello %s"), name);
//=> 'Hello Sindre'
```
## API
### chalk.`