ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

figures实战教程:10个技巧打造高颜值CLI界面——进度条、表格、提示符与日志符号

figures实战教程:10个技巧打造高颜值CLI界面——进度条、表格、提示符与日志符号 figures实战教程10个技巧打造高颜值CLI界面——进度条、表格、提示符与日志符号【免费下载链接】figuresUnicode symbols with fallbacks for older terminals项目地址: https://gitcode.com/gh_mirrors/fi/figuresfigures是一个专为 Node.js 命令行工具打造的 Unicode 符号库核心功能是为老旧终端提供符号回退fallback在支持 Unicode 的终端显示精致的✔在不支持的终端自动降级为√让你的 CLI 进度条、表格、提示符与日志符号在任何环境下都保持美观。本文用 10 个实用技巧带你快速上手。为什么需要 figuresWindows 控制终端CMD等旧终端只支持有限的字符集直接打印✔、╔═╗这类符号可能会出现乱码。figures 通过 is-unicode-supported 检测终端能力一次性解决跨平台显示问题——这也是它被众多知名 CLI 工具依赖的原因。快速安装一条命令搞定npm install figures需要 Node.js 18见 package.json。如果需要浏览源码可克隆仓库git clone https://gitcode.com/gh_mirrors/fi/figures技巧1用默认导出符号自动适配终端 最常用的方式——导入后直接取用figures 会根据终端能力自动选择主符号或回退符号核心逻辑见 index.jsimport figures from figures; console.log(${figures.tick} 构建成功); // Unicode 终端: ✔ 构建成功 // 老旧终端: √ 构建成功技巧2日志符号——4 个符号搞定日志等级日志是 CLI 的脸面。figures 内置了日志等级符号配合颜色库可快速做出log-symbols风格的效果符号名Unicode 终端回退符号figures.tick✔√figures.infoℹifigures.warning⚠‼figures.cross✘×console.log(${figures.warning} 磁盘空间不足);技巧3用方块渐变画进度条figures 提供 4 级灰度的方块符号是绘制进度条的绝佳原料定义见 index.jssquareDarkShade→▓squareMediumShade→▒squareLightShade→░square→█实心表示已完成部分拼接即可得到渐变进度条例如████▓▒░ 75%比纯数字更有质感。技巧4用制表线符号搭高颜值表格 figures 内置了 100 种制表线box-drawing符号粗细、虚实、双边框一应俱全。用双线 粗线组合可以做出精致表格╔══════════════════╗ ║ 部署任务状态 ║ ╚══════════════════╝ ├────────┬─────────┤ │ 环境 │ 状态 │ ├────────┼─────────┤ │ prod │ ✔ │ └────────┴─────────┘对应符号lineDownDoubleRightDouble╔、line─、lineVertical│、lineUpDownLeft├。完整符号对照表见 readme.md。技巧5提示符用 pointer告别生硬的命令行提示符是交互的第一步。figures 提供了更优雅的指针符号figures.pointer→❯老旧终端回退为完全兼容figures.pointerSmall→›process.stdout.write(${figures.pointer} 请输入指令); // ❯ 请输入指令技巧6单选与复选框——命令行表单利器做交互式命令行时figures自带整套表单控件符号无需自己拼字符控件选中未选中单选框radioOn◉radioOff◯复选框checkboxOn☒checkboxOff☐圆形复选checkboxCircleOnⓧcheckboxCircleOffⒾconsole.log(${figures.checkboxOn} 启用日志); console.log(${figures.checkboxOff} 自动部署);技巧7箭头与三角形——导航 UI 的点睛之笔交互式菜单、分页导航都离不开方向符号arrowUp/arrowDown/arrowLeft/arrowRight→↑ ↓ ← →triangleLeft◀与triangleRight▶表示上一页/下一页triangleUpSmall▴/triangleDownSmall▾表示下拉展开/收起配合技巧5的pointer就能画出一个高颜值的上下选择菜单。技巧8replaceSymbols() 一键批量替换字符串如果你写死了 Unicode 符号比如在常量模板里可以让replaceSymbols在老终端上自动降级实现见 index.jsimport {replaceSymbols} from figures; console.log(replaceSymbols(✔︎ check)); // Unicode 终端: ✔︎ check // 老旧终端: √ check它只会替换特殊符号普通字符原样保留测试用例见 test.js。技巧9强制指定符号集——mainSymbols 与 fallbackSymbols默认导出会智能选择但有时你需要绝对确定mainSymbols无论终端如何永远输出 Unicode 主符号如✔fallbackSymbols永远输出回退符号如√两者均带完整 TypeScript 类型见 index.d.ts适合用于生成截图、测试断言等需要确定输出的场景。技巧10注意终端兼容性清单大部分主流终端都完美支持但有三个终端未被官方支持xterm、Linux Terminal (kernel)、cmder——它们能显示大部分但无法显示全部符号详见 readme.md。面向用户发布前建议在 CI 里对目标终端跑一遍符号渲染测试。总结把 figures 放进你的 CLI 工具箱figures 用极小的体积核心代码仅一个 index.js换来了跨平台一致的视觉体验。记住这 10 个技巧的组合拳默认导出做日志技巧2、方块渐变做进度条技巧3、制表线做表格技巧4、pointer 做提示符技巧5你的命令行工具颜值立刻上一个台阶。【免费下载链接】figuresUnicode symbols with fallbacks for older terminals项目地址: https://gitcode.com/gh_mirrors/fi/figures创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表