4 个版本 (2 个破坏性版本)
0.3.1 | 2024年3月21日 |
---|---|
0.3.0 | 2024年3月20日 |
0.2.0 | 2024年3月20日 |
0.1.0 | 2024年3月19日 |
#346 in 命令行界面
134 每月下载量
15KB
245 行代码
sty 🌈
💡
Code | Backgroud | Bright | Bright background | |
---|---|---|---|---|
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \ | Code |
Backgroud |
||
Bright | Bright background |
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \ |
||
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \ | $\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \ |
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \ |
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \ |
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \ |
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \ | $\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \ |
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \ |
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \ |
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \ |
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \ | $\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \ |
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \ |
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \ |
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \ |
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \ | $\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \ |
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \ |
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \ |
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \ |
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \ | $\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \ |
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \ |
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \ |
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \ |
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \ | $\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \ |
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \ |
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \ |
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \ |
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \ | $\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \ |
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \ |
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \ |
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \ |
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \
- $\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \
- $\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \
- $\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \
- $\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \
- $\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \
- 支持
tty
检测:当 tty 不支持颜色时避免样式,使用set_color_enabled
进行手动启用控制。
文档
安装
该软件包与 Cargo 兼容。将以下内容添加到您的 Cargo.toml 依赖项部分
[dependencies]
sty = "0.3"
基本用法
use sty::{
sty,
style::{red, underline},
};
// or
// use sty::{ sty, red, underline };
println!("{}", sty!("Hello world!", [red]));
// Use `sty!` macro for combination of multiple styles
println!("{}", sty!("Hello world!", [red, underline]));
// Use `sty!` macro for multiple input types
println!("{}", sty!(123, [red, underline]));
// Use style function is simple for `&str` input
println!("{}", red("Hello world!"));
println!("{}", underline(&red("Hello world!")));
[!TIP] 在样式组合中,后面指定的样式具有优先级,例如
use sty::{ sty, style::* };
sty!("str", [red, green, blue]); // blue
sty!("str", [red, underline, reset]); // reset
[!TIP] 如果
tty
环境不支持颜色,默认输出将打印不带任何样式,使用set_color_enabled
进行手动启用控制,例如
use sty::{ set_color_enabled, is_color_enabled, sty, style::* };
let enabled = is_color_enabled();
set_color_enabled(false);
sty!("123", [red]); // no color
set_color_enabled(true);
sty!("123", [red]); // red
set_color_enabled(enabled);
sty!
宏
sty!
宏是一个强大的实用工具,可以方便地应用于输入的样式集合。此宏允许您使用直观的语法无缝地结合文本属性。
use sty::{ sty, style::{red, underline} };
println!("{}", sty!("Hello world!", [red, underline]));
在此示例中,red
和 underline
都是样式转换,sty! 宏返回一个新样式文本实例,应用了所有这些样式元素。可以同时应用多个样式,输出将是所有样式的组合。
支持的输入类型
对于实现了 std::fmt::Display
特性的任何类型,例如
&str
String
numbers
(usize
,i8
,i16
,i32
,i64
,i128
,u8
,u16
,u32
,u64
,u128
,f32
,f64
)bool
- ...
样式函数
每个样式函数都可以与 sty!
宏结合使用或单独使用,例如
use sty::{
sty,
style::{red, underline},
};
// or
// use sty::{ sty, red, underline };
sty!("Hello world!", [red, underline]);
// or
red("Hello world!");
[!TIP] 独立的样式函数仅支持
&str
输入类型。
所有样式函数如下
-
修饰符
reset
bold
dim
italic
underline
overline
inverse
hidden
strikethrough
-
前景颜色
Code
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \
Bright background
-
背景颜色
Backgroud
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \
-
亮前景颜色
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \
yellow_bright
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \
-
亮背景颜色
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \
$\mathbb{\color{black}{\color{red}{\color{red}{\color{black}{\color{red}{Style \ } \ } \ } \ } \ } \ } \
贡献
依赖
~53KB