Node.js 之 cli-color

来自 https://www.npmjs.com/package/cli-color

简介

Colors, formatting and other tools for the console

改变控制台输出文本的颜色、文本格式化。

cli-color

安装

如果安装速度慢可以使用npm淘宝镜像。

$ npm install cli-color

使用

var clc = require('cli-color');

// 输出红色文本
console.log(clc.red('Text in red'));

// 白色背景的红色文字,并且带有下划线
console.log(clc.red.bgWhite.underline('Underlined red text on white background.'));

// 混合使用带样式的文本和普通文本
console.log(clc.red('red') + ' plain ' + clc.blue('blue'));

// 可以嵌套
console.log(clc.red('red ' + clc.blue('blue') + ' red'));

一种优雅的使用方法

var error = clc.red.bold;
var warn = clc.yellow;
var notice = clc.blue;

console.log(error('Error!'));
console.log(warn('Warning'));
console.log(notice('Notice'));

样式

  • bold
  • italic
  • underline
  • blink
  • inverse
  • strike

颜色

参考 https://www.npmjs.com/package/cli-color

重置

当前应用的所有控制台显示被清空。

process.stdout.write(clc.reset);

清除

process.stdout.write(clc.erase.screen);
process.stdout.write(clc.erase.screenLeft);
process.stdout.write(clc.erase.screenRight);
process.stdout.write(clc.erase.line);
process.stdout.write(clc.erase.lineRight);
process.stdout.write(clc.erase.lineLeft);

移动插入符位置

// Move cursors two columns and two rows back
process.stdout.write(clc.move(-2, -2));

// Move cursor to first row and first column in terminal window
process.stdout.write(clc.move.to(0, 0));

// 向上移动两行
process.stdout.write(clc.move.up(2));

// 向下移动两行
process.stdout.write(clc.move.down(2));

// 向右移动两列
process.stdout.write(clc.move.right(2));

// 向左移动两列
process.stdout.write(clc.move.left(2));

// 向下移动两行,如果为负值则向上移动
process.stdout.write(clc.move.lines(2));

获得控制台窗口宽度高度(字符数)

clc.widnowSize.width
clc.windowSize.height

其他功能

clc.slice

var clc = require('cli-color')

var str = clc.bold('foo') + 'bar' + clc.red('elo');
var sliced = clc.slice(str, 1, 7); // Same as: clc.bold('oo') + 'bar' + clc.red('e')

clc.strip

var ansiStrip = require('cli-color/strip');

var plain = ansiStrip(formatted);

clc.getStrippedLength

var clc = require('cli-color');

var str = clc.bold('foo') + 'bar' + clc.red('elo');
clc.getStrippedLength(str); // 9 

clc.art

var text = '.........\n' +
    '. Hello .\n' +
    '.........\n';
var style = { ".": clc.yellowBright("X") };

process.stdout.write(clc.art(text, style));

clc.art

throbber 动态风火轮

类似npm安装某个包时的动态图示。

var setupThrobber = require('cli-color/throbber');

var throbber = setupThrobber(function (str) {
  process.stdout.write(str);
}, 200);

throbber.start();

// at any time you can stop/start throbber 
throbber.stop();
0:12:54.816 Module build failed (from ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/sass-loader/dist/cjs.js): 10:12:54.821 SassError: Undefined variable: "$u-type-primary". 10:12:54.821 on line 206 of D:\ideaWorkSpace\ehl-wx\node_modules\uview-ui\components\u-badge\u-badge.vue 10:12:54.826 >> background-color: $u-type-primary; 10:12:54.833 --------------------^ 10:12:54.839 Module build failed (from ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/sass-loader/dist/cjs.js): 10:12:54.844 SassError: Undefined variable: "$u-type-primary". 10:12:54.849 on line 309 of D:\ideaWorkSpace\ehl-wx\node_modules\uview-ui\components\u-checkbox\u-checkbox.vue 10:12:54.856 >> background-color: $u-type-primary; 10:12:54.860 ---------------------^ 10:12:54.865 Module build failed (from ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/sass-loader/dist/cjs.js): 10:12:54.871 SassError: Undefined variable: "$u-type-primary". 10:12:54.876 on line 350 of D:\ideaWorkSpace\ehl-wx\node_modules\uview-ui\components\u-icon\u-icon.vue 10:12:54.880 >> color: $u-type-primary; 10:12:54.885 ----------^ 10:12:54.889 Module build failed (from ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/sass-loader/dist/cjs.js): 10:12:54.894 SassError: Undefined variable: "$u-type-primary". 10:12:54.894 on line 432 of D:\ideaWorkSpace\ehl-wx\node_modules\uview-ui\components\u-button\u-button.vue 10:12:54.900 >> border-color: $u-type-primary; 10:12:54.905 ----------------^ 10:12:54.909 Module build failed (from ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/sass-loader/dist/cjs.js): 10:12:54.914 SassError: Undefined variable: "$u-type-primary". 10:12:54.919 on line 721 of D:\ideaWorkSpace\ehl-wx\node_modules\uview-ui\components\u-picker\u-picker.vue 10:12:54.925 >> color: $u-type-primary;解决
07-14
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值