mirror of https://github.com/sgoudham/uwuifyy.git
Bettew ewwow handwing OwO *UwU*
parent
7e4690629e
commit
746da9bedd
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,38 @@
|
|||||||
|
#![feature(prelude_import)]
|
||||||
|
#[prelude_import]
|
||||||
|
use std::prelude::rust_2021::*;
|
||||||
|
#[macro_use]
|
||||||
|
extern crate std;
|
||||||
|
use clap::{Arg, ArgGroup, ErrorKind};
|
||||||
|
use uwuifyy::UwUify;
|
||||||
|
fn main() {
|
||||||
|
std::panic::set_hook(Box::new(|info| {
|
||||||
|
clap :: App :: new ("uwuifyy") . author ("Goudham <sgoudham@gmail.com>") . version ("0.1.1") . about ("A robust, customizable, efficient and easy-to-use command line application to uwu\'ify your text!") . long_about (None) . group (ArgGroup :: new ("uwu") . required (true) . args (& ["text" , "infile"])) . arg (Arg :: new ("text") . help ("Text to uwu'ify") . short ('t') . long ("text") . value_name ("TEXT") . required_unless_present_all (["infile" , "outfile"]) . display_order (1)) . arg (Arg :: new ("infile") . help ("The file to uwu'ify") . short ('i') . long ("infile") . conflicts_with ("text") . requires ("outfile") . value_name ("FILE") . value_hint (clap :: ValueHint :: FilePath) . display_order (2)) . arg (Arg :: new ("outfile") . help ("The file to output uwu'ified text") . short ('o') . long ("outfile") . value_name ("FILE") . value_hint (clap :: ValueHint :: FilePath) . display_order (3)) . arg (Arg :: new ("words") . help ("The modifier to determine how many words to be uwu'ified") . short ('w') . long ("words") . value_name ("VALUE") . default_value ("1") . validator (is_between_zero_and_one) . display_order (4)) . arg (Arg :: new ("faces") . help ("The modifier for uwu faces e.g hello -> hewwo") . short ('f') . long ("faces") . value_name ("VALUE") . default_value ("0.05") . validator (is_between_zero_and_one) . display_order (5)) . arg (Arg :: new ("actions") . help ("The modifier for actions e.g *shuffles over*") . short ('a') . long ("actions") . value_name ("VALUE") . default_value ("0.125") . validator (is_between_zero_and_one) . display_order (6)) . arg (Arg :: new ("stutters") . help ("The modifier for stutters e.g b-baka!") . short ('s') . long ("stutters") . value_name ("VALUE") . default_value ("0.225") . validator (is_between_zero_and_one) . display_order (7)) . arg (Arg :: new ("random") . help ("Flag to enable/disable random uwu'ifying") . short ('r') . long ("random") . display_order (8)) . error (ErrorKind :: DisplayHelp , info) . exit () ;
|
||||||
|
}));
|
||||||
|
let matches = clap :: App :: new ("uwuifyy") . author ("Goudham <sgoudham@gmail.com>") . version ("0.1.1") . about ("A robust, customizable, efficient and easy-to-use command line application to uwu\'ify your text!") . long_about (None) . group (ArgGroup :: new ("uwu") . required (true) . args (& ["text" , "infile"])) . arg (Arg :: new ("text") . help ("Text to uwu'ify") . short ('t') . long ("text") . value_name ("TEXT") . required_unless_present_all (["infile" , "outfile"]) . display_order (1)) . arg (Arg :: new ("infile") . help ("The file to uwu'ify") . short ('i') . long ("infile") . conflicts_with ("text") . requires ("outfile") . value_name ("FILE") . value_hint (clap :: ValueHint :: FilePath) . display_order (2)) . arg (Arg :: new ("outfile") . help ("The file to output uwu'ified text") . short ('o') . long ("outfile") . value_name ("FILE") . value_hint (clap :: ValueHint :: FilePath) . display_order (3)) . arg (Arg :: new ("words") . help ("The modifier to determine how many words to be uwu'ified") . short ('w') . long ("words") . value_name ("VALUE") . default_value ("1") . validator (is_between_zero_and_one) . display_order (4)) . arg (Arg :: new ("faces") . help ("The modifier for uwu faces e.g hello -> hewwo") . short ('f') . long ("faces") . value_name ("VALUE") . default_value ("0.05") . validator (is_between_zero_and_one) . display_order (5)) . arg (Arg :: new ("actions") . help ("The modifier for actions e.g *shuffles over*") . short ('a') . long ("actions") . value_name ("VALUE") . default_value ("0.125") . validator (is_between_zero_and_one) . display_order (6)) . arg (Arg :: new ("stutters") . help ("The modifier for stutters e.g b-baka!") . short ('s') . long ("stutters") . value_name ("VALUE") . default_value ("0.225") . validator (is_between_zero_and_one) . display_order (7)) . arg (Arg :: new ("random") . help ("Flag to enable/disable random uwu'ifying") . short ('r') . long ("random") . display_order (8)) . get_matches () ;
|
||||||
|
match UwUify::new(
|
||||||
|
matches.value_of("text"),
|
||||||
|
matches.value_of("infile"),
|
||||||
|
matches.value_of("outfile"),
|
||||||
|
matches.value_of("words"),
|
||||||
|
matches.value_of("faces"),
|
||||||
|
matches.value_of("actions"),
|
||||||
|
matches.value_of("stutters"),
|
||||||
|
matches.is_present("random"),
|
||||||
|
)
|
||||||
|
.uwuify()
|
||||||
|
{
|
||||||
|
Err(e) => ::core::panicking::panic_display(&e),
|
||||||
|
_ => {}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
fn is_between_zero_and_one(input: &str) -> Result<(), &'static str> {
|
||||||
|
let value = match input.parse::<f32>() {
|
||||||
|
Ok(value) => value,
|
||||||
|
Err(_) => return Err("The value must be a decimal number"),
|
||||||
|
};
|
||||||
|
if (0.0..=1.0).contains(&value) {
|
||||||
|
return Ok(());
|
||||||
|
}
|
||||||
|
Err("The value must be between 0.0 and 1.0")
|
||||||
|
}
|
Loading…
Reference in New Issue