#string #error #color-string #error-logging #printing #cli #libary

PrintLib

适用于Rust的终极打印库 #cli #string #color #term_color

11个稳定版本

1.5.2 2024年3月18日
1.5.1 2024年3月8日

#113 in 调试

Download history 35/week @ 2024-03-31 5/week @ 2024-04-07 9/week @ 2024-05-19 7/week @ 2024-05-26 7/week @ 2024-06-02 3/week @ 2024-06-09 1/week @ 2024-06-16

777 每月下载次数
用于 objgrep

MIT 许可证

32KB
705

PrintLib

PrintLib是一个Rust库,使打印变得简单。

本文件仅适用于最新版本的PrintLib

Github仓库

安装

要将PrintLib添加到您的项目中,请进入您的项目文件夹并执行

cargo add PrintLib

然后您可以像其他crate一样导入PrintLib

use PrintLib::*;

示例

示例链接: https://github.com/Toni-Graphics/PrintLib/tree/master/examples/

文档

这是PrintLib的官方文档。

错误

模块 PrintLib::error 是构建错误消息的模块。

ErrorFactory

函数名 参数 描述
new ecode: String, msg: String 这是类的初始化器。它使用错误码 ecode 和错误消息 msg 创建一个新的ErrorFactory。
add_code_line line: String, display_line_no: bool, line_no: usize, display_add: bool 此函数向错误消息添加新行。参数 line 是指定错误消息的代码行。 display_lin_no 表示是否显示行号(参数 line_no 是行号)。 display_add 表示是否需要显示+++(它适用于显示潜在修复)。
``add_where</code where_start: usize, where_length: usize, where_msg_b: bool, where_msg: String 此函数向错误信息中添加一个字符串,以显示错误发生的位置。 where_start 表示显示应该开始的位置(例如,where_start = 3 表示在第三个字符之后开始)。 where_length 表示显示的长度。 where_msg_b:当为 true 时,在显示的右侧显示字符串。当为 false 时,只显示显示的内容。 where_msg 是显示右侧的消息(如果 where_msg_b 为 true)
add_arrow 文件: String,行: usize,where_start: usize 添加一个格式为 -->{file}:{line}:{where_start} 的箭头到错误信息
add_arrow_w 文件: String,行: usize 添加一个格式为 -->{file}:{line} 的箭头到错误信息
print 打印错误信息

Logger

模块 PrintLib::logr 是可以用来使用日志记录器的模块。

Logger

函数名 参数 描述
new conf 是类的初始化器。参数 conf 是类的 LoggerConfig。返回一个新实例。
debug msg: String 以调试级别打印消息 msg
info msg: String 以信息级别打印消息 msg
warn msg: String 以警告级别打印消息 msg
error msg: String 以错误级别打印消息 msg

def 函数

返回具有默认配置的 Logger

LoggerConfig 结构体

Name 类型 描述
time bool 是否在日志记录器消息中显示时间
info_string String 表示消息为信息级别的字符串(正常:[INFO ])
debug_string String 表示消息为调试级别的字符串(正常:[DEBUG ])
warn_string String 表示消息为警告级别的字符串(正常:[WARN!] )
err_string String 表示消息为错误级别的字符串(正常:[[ERR!] ])
info_color LoggerColor 在信息级别中,级别指示符 ([xyz]) 的颜色
debug_color LoggerColor 在调试级别中,级别指示符 ([xyz]) 的颜色
warn_color LoggerColor 在警告级别中,级别指示符 ([xyz]) 的颜色
err_color LoggerColor 在错误级别中,级别指示符 ([xyz]) 的颜色

LoggerColor 结构体

Name 类型 描述
r u8 红色通道
g u8 绿色通道
b u8 蓝色通道

Color

模块 PrintLib::colorize 是可以用来着色你的 &str 的模块。

Colorize 特性

函数名 参数 返回类型 描述
color &self, r: i16, g: i16, b: 116 String 将字符串的颜色转换为指定的 rgb 值
black &self String 使字符串变黑
red &self String 将字符串设置为红色
绿色 &self String 将字符串设置为绿色
黄色 &self String 将字符串设置为黄色
蓝色 &self String 将字符串设置为蓝色
洋红色 &self String 将字符串设置为洋红色
青色 &self String 将字符串设置为青色
白色 &self String 将字符串设置为白色
灰色 &self String 将字符串设置为灰色
加粗 &self String 将字符串设置为加粗
斜体 &self String 将字符串设置为斜体
下划线 &self String 将字符串设置为下划线
删除线 &self String 将字符串设置为删除线
bg_black &self String 将字符串背景设置为黑色
bg_red &self String 将字符串背景设置为红色
bg_green &self String 将字符串背景设置为绿色
bg_yellow &self String 将字符串背景设置为黄色
bg_blue &self String 将字符串背景设置为蓝色
bg_magenta &self String 将字符串背景设置为洋红色
bg_cyan &self String 将字符串背景设置为青色
bg_white &self String 将字符串背景设置为白色
bg_gray &self String 将字符串背景设置为灰色
bg_bold &self String 将字符串背景设置为加粗

结构体 Style

Name 类型 描述
加粗 bool 字符串是否加粗
斜体 bool 字符串是否斜体
是否有下划线 bool 字符串是否有下划线
删除线 bool 是否有删除线

结构体 ColoredString

Name 类型 描述
r i16 红色通道
g i16 绿色通道
b i16 蓝色通道

备注:如果红色通道为-1,则没有颜色,而是应用样式(如加粗、斜体等)

函数名 参数 返回类型 描述
new r: i16, g: i16, b: i16, _attr: Style, _str: &str 彩色String 彩色字符串类的初始化器。
to_string String 将彩色字符串转换为普通字符串

颜色编码器

ColorEncoder::encode 是一个函数,可以将包含颜色名称的简单字符串转换为格式化的字符串。

参数: str: &strString

描述:格式化指定的字符串,使其具有字符串中指定的颜色

颜色

在字符串中的样子 实际颜色
<black> black
<red> red
<蓝色> 蓝色
<绿色> 绿色
<黄色> 黄色
<洋红色> 洋红色
<青色> 青色
<白色> 白色
<灰色> 灰色
<加粗> 加粗
<斜体> 斜体
<下划线> 下划线
<删除线> 删除线
<&十六进制> 十六进制颜色

表情符号

模块 PrintLib::emoji 是一个模块,可以简化表情符号的打印。

EmojiMaker

函数名 参数 返回类型 描述
new EmojiMaker 创建一个新的 EmojiMaker
add name: &str, emoji: &str 添加一个新的表情符号,名称为 name
get name: str String 从内部哈希映射中获取名称为 name 的表情符号

参数

模块 PrintLib::arg 是一个模块,简化了与参数相关的所有操作。

UsageFactory

函数名 参数 返回类型 描述
new name: &str, app_name: &str UsageFactory 创建一个新的UsageFactory。 name 是您的产品/应用的名称。 app_name 是您运行程序的方式(例如,对于Cargo,它将是 cargo)。
add_cmd &mut self,名称: &str,描述: &str 添加一个具有名称name和描述description的新命令
add_opt &mut self,名称: &str,描述: &str 添加一个具有名称name和描述description的新选项
print &mut self 打印用法

错误

已知

当bg改变时,颜色不正确

依赖

~1MB
~18K SLoC