当前位置: 首页 > news >正文

【Rust日报】farben: 用标记式语法设置终端色彩和样式

xuniq: 超快的行去重命令行工具

xuniq 是一个超快的针对行内容去重的工具,并且,和 uniq 相比,它不需要先排序,可以直接对未排序的内容去重。以下是性能对比测试结果:

Github: https://github.com/lalitshankarch/xuniq

farben: 用标记式语法设置终端色彩和样式

farben 是一个用 Rust 开发的、零依赖、高性能、安全的终端彩色 / 样式标记库,替代手写\x1b{insert\_element\_0\_}[31m这类转义码。

核心特性

  1. 类标记语法:易读、易写,使用时功能强大。

  2. 零运行时依赖:仅将 farben-core 作为路径依赖,Farben 不会引入复杂的依赖树。

  3. 可选编译时处理:通过compile特性标志,在编译期验证并处理标记语法,无任何运行时开销。

  4. 完整工具集:支持命名颜色、ANSI256 色、RGB 色、强调样式、样式链式调用,同时支持前景色与背景色设置。

  5. 即用型打印宏:cprint!cprintln!cprintb!cprintbln!的用法与print!println!完全一致,仅额外支持标记语法。对应的写入宏cwrite!cwriteln!cwriteb!cwritebln!可适配所有实现了Writetrait 的类型。

  6. 标准错误输出变体:所有打印宏均提供以e开头的变体(如ceprint!ceprintln!等),用于输出至标准错误流(stderr)。

  7. 样式延续变体:cprintb!cprintbln!colorb()colorb!()不会在末尾自动重置样式,可让样式效果在多次调用中持续生效。

  8. 用户自定义样式:通过style!()定义专属标签,可展开为任意支持标签的组合。

  9. 自定义样式文件:只需添加名称.frb.toml文件,在build.rs中写 1 行代码、在main.rs中写 2 行代码,即可加载该文件中的所有样式配置。

  10. 与 anstyle 兼容互通:借助标记语法的便捷写法,接入整个 anstyle 生态体系。

Github: https://github.com/razkar-studio/farben

--

From 日报小组 Yuan YQ

社区学习交流平台订阅:

  • Rustcc论坛: 支持rss

  • 微信公众号:Rust语言中文社区

http://www.jsqmd.com/news/648022/

相关文章:

  • 终极Windows安卓应用安装指南:如何快速批量安装APK文件
  • 动手学深度学习——使用注意力机制的 Seq2Seq 代码
  • 智慧树刷课插件终极指南:5分钟实现自动化学习,效率提升300%
  • AI Agent进化基础教程(非常详细):从聊天机器人到自主工作系统,看这一篇就够了!
  • Python的__enter__异常保证
  • 可编程直流电源选型指南:为什么IT8511A+成为电子测试实验室的标配设备?
  • 【GitHub项目推荐--InkOS:把 AI 写小说变成“全自动流水线”】
  • 手把手教你用kimera-semantics实现3D语义重建:从环境配置到Euroc数据集运行
  • MATLAB-simulink主动均衡电路模型 模糊控制 #汽车级锂电池 动力锂电池模组(16...
  • 3步快速实现知网文献批量下载:CNKI-download自动化工具完整指南
  • 2026年知名的标准化工地临边护栏/标准化工地装配式围挡本地公司推荐 - 行业平台推荐
  • ROSBoard实战:把你的机器人数据变成像Grafana一样的监控面板
  • 自动化测试:PO模式介绍及案例
  • Centos7系统中cmake3.25的高效编译与自动化部署指南
  • 从Gaussian Splatting到‘像素级’镜面:手把手拆解延迟着色如何让3DGS学会精准反射
  • Compose跨平台新版本来了!测试 API 全废弃,iOS 崩溃集中修复
  • 迈向下一代RAG,通义VimRAG用了这个方案
  • 2026年3月做得好的进口流量计企业推荐,进口流量计/进口涡轮流量计/进口蒸汽流量计,进口流量计源头厂家推荐 - 品牌推荐师
  • 基于Raspberry Pi和OpenCV的家庭智能监控系统
  • 从‘飞线’到‘倒装’:一文看懂WBCSP和FCCSP封装该怎么选(附内存与处理器封装实战解析)
  • 别只会复制代码了!手把手带你拆解51单片机点灯程序的硬件电路与寄存器操作
  • 横河 Yokogawa 便携式无纸记录仪 GP10/GP20系列
  • 彻底疯狂,Claude居然要你上传身份证!
  • 5分钟解锁微信网页版:wechat-need-web插件完全使用指南
  • 瑞芯微开发板避坑指南:yolov5s模型在RK3566上的帧率优化实战
  • PyCharm 2023.3.2专业版安装避坑指南:学生认证+Anaconda环境配置全流程
  • Agilent E5100A 高速网络分析仪
  • 763.划分字母区间
  • 江城智造,共赴盛会!AICA数智创新公开课·武汉专场圆满举办
  • HakcMyVM-Quick4