mirror of
https://github.com/RGBCube/dix
synced 2025-07-28 12:17:45 +00:00
switch to yansi
This commit is contained in:
parent
470405b189
commit
65a8d85114
3 changed files with 20 additions and 28 deletions
17
Cargo.lock
generated
17
Cargo.lock
generated
|
@ -107,15 +107,6 @@ version = "1.0.3"
|
|||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "5b63caa9aa9397e2d9480a9b13673856c78d8ac123288526c37d7839f2a86990"
|
||||
|
||||
[[package]]
|
||||
name = "colored"
|
||||
version = "3.0.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "fde0e0ec90c9dfb3b4b1a0891a7dcd0e2bffde2f7efed5fe7c9bb00e5bfb915e"
|
||||
dependencies = [
|
||||
"windows-sys",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "heck"
|
||||
version = "0.5.0"
|
||||
|
@ -139,8 +130,8 @@ name = "nnpdt"
|
|||
version = "0.1.0"
|
||||
dependencies = [
|
||||
"clap",
|
||||
"colored",
|
||||
"regex",
|
||||
"yansi",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
|
@ -297,3 +288,9 @@ name = "windows_x86_64_msvc"
|
|||
version = "0.52.6"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec"
|
||||
|
||||
[[package]]
|
||||
name = "yansi"
|
||||
version = "1.0.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "cfe53a6657fd280eaa890a3bc59152892ffa3e30101319d168b781ed6529b049"
|
||||
|
|
|
@ -5,5 +5,5 @@ edition = "2024"
|
|||
|
||||
[dependencies]
|
||||
clap = { version = "4.5.37", features = ["derive"] }
|
||||
colored = "3.0.0"
|
||||
regex = "1.11.1"
|
||||
yansi = "1.0.1"
|
||||
|
|
29
src/main.rs
29
src/main.rs
|
@ -1,5 +1,4 @@
|
|||
use clap::Parser;
|
||||
use colored::Colorize;
|
||||
use core::str;
|
||||
use regex::Regex;
|
||||
use std::{
|
||||
|
@ -8,6 +7,7 @@ use std::{
|
|||
string::{String, ToString},
|
||||
thread,
|
||||
};
|
||||
use yansi::Paint;
|
||||
|
||||
#[derive(Parser, Debug)]
|
||||
#[command(name = "Nix not Python diff tool")]
|
||||
|
@ -82,8 +82,8 @@ fn main() {
|
|||
let removed: HashSet<&str> = &pre_keys - &post_keys;
|
||||
|
||||
println!("Difference between the two generations:");
|
||||
|
||||
println!();
|
||||
|
||||
print_added(&added, &post);
|
||||
print_removed(&removed, &pre);
|
||||
println!();
|
||||
|
@ -185,13 +185,13 @@ fn print_added(set: &HashSet<&str>, post: &HashMap<&str, HashSet<&str>>) {
|
|||
for p in set {
|
||||
let posts = post.get(p);
|
||||
if let Some(ver) = posts {
|
||||
let version_str = ver.iter().copied().collect::<Vec<_>>().join(" ").cyan();
|
||||
let version_str = ver.iter().copied().collect::<Vec<_>>().join(" ");
|
||||
println!(
|
||||
"{} {} {} {}",
|
||||
"[A:]".green().bold(),
|
||||
p,
|
||||
"@".yellow().bold(),
|
||||
version_str
|
||||
version_str.blue().blink()
|
||||
);
|
||||
}
|
||||
}
|
||||
|
@ -201,13 +201,13 @@ fn print_removed(set: &HashSet<&str>, pre: &HashMap<&str, HashSet<&str>>) {
|
|||
for p in set {
|
||||
let pre = pre.get(p);
|
||||
if let Some(ver) = pre {
|
||||
let version_str = ver.iter().copied().collect::<Vec<_>>().join(" ").cyan();
|
||||
let version_str = ver.iter().copied().collect::<Vec<_>>().join(" ");
|
||||
println!(
|
||||
"{} {} {} {}",
|
||||
"[R:]".red().bold(),
|
||||
p,
|
||||
"@".yellow(),
|
||||
version_str
|
||||
version_str.blue().blink()
|
||||
);
|
||||
}
|
||||
}
|
||||
|
@ -226,23 +226,18 @@ fn print_changes(
|
|||
// can not fail since maybe_changed is the union of the keys of pre and post
|
||||
let ver_pre = pre.get(*p).unwrap();
|
||||
let ver_post = post.get(*p).unwrap();
|
||||
let version_str_pre = ver_pre.iter().copied().collect::<Vec<_>>().join(" ").cyan();
|
||||
let version_str_post = ver_post
|
||||
.iter()
|
||||
.copied()
|
||||
.collect::<Vec<_>>()
|
||||
.join(" ")
|
||||
.cyan();
|
||||
let version_str_pre = ver_pre.iter().copied().collect::<Vec<_>>().join(" ");
|
||||
let version_str_post = ver_post.iter().copied().collect::<Vec<_>>().join(", ");
|
||||
|
||||
if ver_pre != ver_post {
|
||||
println!(
|
||||
"{} {} {} {} {} {}",
|
||||
"[C:]".purple().bold(),
|
||||
"[C:]".bold().bright_yellow(),
|
||||
p,
|
||||
"@".yellow(),
|
||||
version_str_pre.yellow(),
|
||||
"~>".purple(),
|
||||
version_str_post.cyan()
|
||||
version_str_pre.magenta(),
|
||||
"~>".magenta(),
|
||||
version_str_post.blue().blink()
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue