Crates.io | marquee |
lib.rs | marquee |
version | 1.1.2 |
source | src |
created_at | 2023-03-07 01:40:17.659963 |
updated_at | 2023-03-28 03:02:39.814663 |
description | Convert stdin into a "marquee" style output |
homepage | |
repository | https://github.com/funnyboy-roks/marquee |
max_upload_size | |
id | 803159 |
size | 3,110,654 |
marquee
is a CLI tool that will convert each line of input into a
"marquee" style output (see below for example). Marquee is designed for
usage in user-facing output, though it is also possible to have it
create a list of marquee output, using marquee -ld0
.
Install using Cargo:
cargo install marquee
echo "Hello World" | marquee
See marquee --help
for advanced usage.
--json
If specifying the --json
flag, the json values are as follows:
{
"content": "required string", // The content of the string that will be rotating
"prefix": "optional string", // The prefix before the string
"suffix": "optional string", // The suffix after the string
"rotate": "optional boolean" // If the string should rotate (default: true)
}
Note: If specifying both --prefix
and prefix
in the JSON or
--suffix
and suffix
in the JSON, then the output will take the form
of {global_prefix}{prefix}{content}{suffix}{global_suffix}
Some of the todo items that I have in mind (feel free to create issues for more or PRs to implement these)
--json
arg, but give a useful
message, similar to how exa
does with their --git
arg.unwrap
/expect
to properly handle errorsspeed: u64
- The speed at which the message should rotateparts: &[String]
- Parts that should rotate separately, this
would require quite a large rewrite to be done well, I thinkmarquee -ld0
that works on each line of input.
marquee -ld0
, but it's not too
elegant it doesn't work for multiple lines.MarqueeIter::new(line: String)
that will be an Iterator<Item = String>
where .next()
calculates
the next string. This would be infinite if --no-loop
is not set.