lovesay

Crates.iolovesay
lib.rslovesay
version
sourcesrc
created_at2023-06-10 22:14:48.750557+00
updated_at2025-02-21 23:43:42.271697+00
descriptionlovesay but rusty
homepagehttps://github.com/dotzenith/lovesay.rs
repositoryhttps://github.com/dotzenith/lovesay.rs
max_upload_size
id887098
Cargo.toml error:TOML parse error at line 17, column 1 | 17 | autolib = false | ^^^^^^^ unknown field `autolib`, expected one of `name`, `version`, `edition`, `authors`, `description`, `readme`, `license`, `repository`, `homepage`, `documentation`, `build`, `resolver`, `links`, `default-run`, `default_dash_run`, `rust-version`, `rust_dash_version`, `rust_version`, `license-file`, `license_dash_file`, `license_file`, `licenseFile`, `license_capital_file`, `forced-target`, `forced_dash_target`, `autobins`, `autotests`, `autoexamples`, `autobenches`, `publish`, `metadata`, `keywords`, `categories`, `exclude`, `include`
size0
zenith (dotzenith)

documentation

README

━━━━━━ ❖ ━━━━━━



❖ Information

lovesay.rs is a port of lovesay in rust. It is a simple rust program that displays a quote from a loved one based on the day of the month or a quote passed in through the cli arguments.

lovesay output in different colorschemes

❖ Requirements

Note: These requirements only apply if using you're using lovesay to print a different quote for each day of the month.

  • A quotes file stored in ~/.config/lovesay/
  • Each quote must be on a new line, see the example quotes file in .example/quotes
  • (optional) A partner to write you 31 lines full of love, one for each day of the month

❖ Installation

Shell

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/dotzenith/lovesay.rs/releases/latest/download/lovesay-installer.sh | sh

Brew

brew install dotzenith/tap/lovesay

Powershell

powershell -ExecutionPolicy ByPass -c "irm https://github.com/dotzenith/lovesay.rs/releases/latest/download/lovesay-installer.ps1 | iex"

Cargo

cargo install lovesay

Binaries

Pre-Compiled binaries for linux, mac, and windows are available in Releases

Source

  • First, install rust
git clone https://github.com/dotzenith/lovesay.rs.git
cd lovesay.rs
cargo build --release
./target/release/lovesay

❖ Usage

lovesay can be used in a similar fashion to cowsay

lovesay Hello World

if there's a quotes file in ~/.config/lovesay/, lovesay can be used without any arguments

lovesay

if you'd like to use a quotes stored somewhere other than the path above, the LOVESAY_PATH env variable can be used as such

export LOVESAY_PATH="~/path/to/file"

Colorschemes

lovesay uses your terminal's colorscheme by default, but other colorschemes can be set using an env variable

export LOVESAY_COLORSCHEME=nord # uses catppuccin mocha by default if this is left blank or malformed

The available colorschemes are as follows:

  • catppuccin latte
  • catppuccin frappe
  • catppuccin macchiato
  • catppuccin mocha
  • dracula
  • nord
  • gruvbox dark
  • gruvbox light
  • onedark
  • tokyonight
  • ayu
  • palenight
  • gogh
  • biscuit dark
  • biscuit light

lovesay also supports two other environment variables

export LOVESAY_NO_NERD=1        # Set if your terminal does not use a nerd font (can be set to anything, lovesay just checks for existence)

export LOVESAY_MAX_WIDTH=80     # Override the width lovesay will use to wrap a quote

lovesay has support for pipes as well

lovesay | lolcat                    # pipe output to lolcat

echo something | lovesay            # take input from another command

echo something | lovesay | lolcat   # combine the two

❖ About lovesay

While this rust port has grown up to be the main version, the reasoning for the original is below:

I wrote lovesay because I got tired of seeing neofetch or pfetch every time I opened my terminal. I wanted something more personal.

Seeing words full of love from my partner is a lot better than any other command I could possibly run. It makes my terminal feel cozy, welcoming, and as is the case with most things my partner touches, it makes my terminal feel like home.

I hope that someone else finds a use for this little script as well. Love is a wonderful thing, and we could all use a little bit more of it in our lives (especially arch linux users)


❖ What's New?

1.0.2 - Update Rust edition


Commit count: 43

cargo fmt