reorganize things

This commit is contained in:
Fabio Montefuscolo 2025-04-03 00:08:23 +02:00
parent 003534efc9
commit bf30751bd2
Signed by: fabiomontefuscolo
GPG key ID: 7598676DAE19B4EF
3 changed files with 21 additions and 19 deletions

2
src/lib.rs Normal file
View file

@ -0,0 +1,2 @@
pub mod slugify;
pub use crate::slugify::slugify;

View file

@ -1,29 +1,11 @@
use clap::Parser;
use slugify::slugify;
#[derive(Parser)]
struct Cli {
strings: Vec<String>,
}
fn slugify(input: String) -> String {
let mut result = input.to_lowercase();
result = result.replace(' ', "-");
result = result
.chars()
.filter(|&c| c.is_alphanumeric() || c == '_' || c == '-')
.collect();
while result.contains("--") {
result = result.replace("--", "-");
}
result = result
.trim_matches(|c| c == ' ' || c == '-' || c == '_')
.to_string();
result
}
fn main() {
let args = Cli::parse();
let combined = args.strings.join(" ");

18
src/slugify.rs Normal file
View file

@ -0,0 +1,18 @@
pub fn slugify(input: String) -> String {
let mut result = input.to_lowercase();
result = result.replace(' ', "-");
result = result
.chars()
.filter(|&c| c.is_alphanumeric() || c == '_' || c == '-')
.collect();
while result.contains("--") {
result = result.replace("--", "-");
}
result = result
.trim_matches(|c| c == ' ' || c == '-' || c == '_')
.to_string();
result
}