charasay ๐ฎ
๐ The future of cowsay ๐ฎ! Colorful characters saying something ๐จ๏ธ.
Re-engineered cowsay in rust ๐ฆ. Display colorful ANSI arts saying something in your terminal ๐ป.
I use terminal emulator almost every day. I stare at it so much. I need some
entertainment in terminal, so I found ponysay
which is beautiful
and giving my terminal some colors. But ponysay
kind of bloated for me since
I don't display all those ponies.
So, I want to make my own minimal tool to make my terminal so colorful and
display the character that I like. This chance is a great time to learn rust
.
This project is mainly for me to learn rust and hopefully I get some feedback
while this make us all happy ๐.
For Arch Linux, package available via AUR. Example install this with AUR helper:
yay -S charasay
or
yay -S charasay-bin
If you have rustup
or cargo
, this tool available on crates.io. Install this with:
cargo install charasay
Just donwload from the release page
for your compatible Operating System, then extract the zip archive, give permission
to execute on extracted file, then place it on your PATH
.
Alternatively, clone this repository, then build this with cargo build --release
.
To display characters, your terminal needs to support true color (24-bit color). Unicode fonts are needed to render the border of speech bubble.
Run chara say something that motivating.
It would display colorful cow saying
something that motivating.
.
If message is empty, it would accept from standard input, piping would works:
fortune | chara say
.
Run chara say -f ferris "Hello rustaceans!"
.
It could display external .chara
files: chara say -f ~/path/test.chara "Nice"
.
Note:
.chara
files could be generated from PNG file.I want to implement this builtin in this tool. For now, you could generate
.cow
file with Cowsay file converter then rename.cow
into.chara
.
Shell completions also available with chara completions
which would print out
completions script to standard output. Please consult to your shell documentation
on how to add completions.
For updated usage please consult to help command.
$ chara --help
The future of cowsay ๐ฎ! Colorful characters saying something ๐จ๏ธ.
Usage: chara <COMMAND>
Commands:
say Make the character say something
completions Generate completions for shell. Default to current shell
convert TODO: Convert pixel-arts PNG to chara files
help Print this message or the help of the given subcommand(s)
Options:
-h, --help Print help
-V, --version Print version
$ chara help say
Make the character say something
Usage: chara say [OPTIONS] [MESSAGE]...
Arguments:
[MESSAGE]... Messages that chara want to say/think. If empty, read from STDIN
Options:
-r, --random Choose random chara
-a, --all Print all available chara
-t, --think Make chara only thinking about it, not saying it
-w, --width <WIDTH> Max width of speech bubble. Default to terminal width
-f, --file <CHARA> Which chara should say/think
-h, --help Print help
MIT License ยฉ Latif Sulistyo