leetspeak

leetspeak crate leetspeak documentation build status minimum rustc 1.64.0

leetspeak is a english-to-leetspeak translation library with support for random, non-random, and custom leetspeak translation. Translations are based on wikipedia/leet#orthography. Using this library is as simple as:

```rust use leetspeak::Level;

let text = "sphinx of black quartz, judge my vow";

// Random leetspeak translation let random_translation = leetspeak::translate(text);

// Non-random leetspeak translation, levels 1-3 let nonrandomtranslation = leetspeak::translatewithlevel(text, &Level::One); asserteq!(nonrandom_translation, r#"5ph1nx 0f 814ck qu427z, jud93 my v0w"#);

//Custom leetspeak translation (case-insensitive). Characters not in the hashmap are not changed. let mapping = std::collections::HashMap::from([ ('a', String::from("4")), ('c', String::from("<")), ('e', String::from("€")), ('m', String::from(r#"/\/\"#)), ('p', String::from("|*")), ('s', String::from("ehs")), ('w', String::from("vv")), ('z', String::from("7_")), ]);

let customtranslation = leetspeak::translatecustom(text, mapping, &false); asserteq!(customtranslation, r#"ehs|*hinx of bl4

Contributing

This is an open-source project and contributors are welcome! The repository is at github.com: leetspeak and development plans/progress are documented at github.com: leetspeak/projects. If this library is missing a feature you would like, feel free to start a discussion or develop a feature and create a pull request.