66 个版本 (重大更新)

新版本 0.97.1 2024年8月21日
0.96.1 2024年7月29日
0.91.0 2024年3月5日
0.88.1 2023年12月14日
0.34.0 2021年7月13日

值格式化 中排名 #65

Download history • Rust 包仓库 1276/week @ 2024-05-03 • Rust 包仓库 860/week @ 2024-05-10 • Rust 包仓库 978/week @ 2024-05-17 • Rust 包仓库 1535/week @ 2024-05-24 • Rust 包仓库 2257/week @ 2024-05-31 • Rust 包仓库 1182/week @ 2024-06-07 • Rust 包仓库 936/week @ 2024-06-14 • Rust 包仓库 1554/week @ 2024-06-21 • Rust 包仓库 1179/week @ 2024-06-28 • Rust 包仓库 1179/week @ 2024-07-05 • Rust 包仓库 880/week @ 2024-07-12 • Rust 包仓库 1428/week @ 2024-07-19 • Rust 包仓库 1740/week @ 2024-07-26 • Rust 包仓库 1057/week @ 2024-08-02 • Rust 包仓库 1044/week @ 2024-08-09 • Rust 包仓库 1338/week @ 2024-08-16 • Rust 包仓库

每月下载量 5,499
用于 17 个包(其中6个直接使用)

MIT 许可协议

16KB
259

nu-pretty-hex

prett-hex 的更新,使其更美观

crates.io docs.rs

一个提供美观十六进制转储的 Rust 库。

使用 simple_hex() 方法渲染单行十六进制转储,使用 pretty_hex() 方法渲染带有地址和ASCII表示的列式多行十六进制转储。使用 config_hex() 方法以指定格式渲染十六进制转储。

灵感来源

Hexed
Hexyl
Pretty-hex

simple_hex() 的示例

use pretty_hex::*;

let v = vec![222, 173, 190, 239, 202, 254, 32, 24];
assert_eq!(simple_hex(&v), format!("{}", v.hex_dump()));

println!("{}", v.hex_dump());

输出

de ad be ef  ca fe 20 18

pretty_hex() 的示例

use pretty_hex::*;

let v: &[u8] = &random::<[u8;30]>();
assert_eq!(pretty_hex(&v), format!("{:?}", v.hex_dump()));

println!("{:?}", v.hex_dump());

输出

Length: 30 (0x1e) bytes
0000:   6b 4e 1a c3  af 03 d2 1e  7e 73 ba c8  bd 84 0f 83   kN......~s......
0010:   89 d5 cf 90  23 67 4b 48  db b1 bc 35  bf ee         ....#gKH...5..

config_hex() 的示例

use pretty_hex::*;

let cfg = HexConfig {title: false, width: 8, group: 0, ..HexConfig::default() };

let v = &include_bytes!("data");
assert_eq!(config_hex(&v, cfg), format!("{:?}", v.hex_conf(cfg)));

println!("{:?}", v.hex_conf(cfg));

输出

0000:   6b 4e 1a c3 af 03 d2 1e   kN......
0008:   7e 73 ba c8 bd 84 0f 83   ~s......
0010:   89 d5 cf 90 23 67 4b 48   ....#gKH
0018:   db b1 bc 35 bf ee         ...5..

haskell's pretty-hex 的启发。

依赖项

~0.1–6.5MB
~34K SLoC