summaryrefslogtreecommitdiff
path: root/src/vtcol.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/vtcol.rs')
-rw-r--r--src/vtcol.rs14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/vtcol.rs b/src/vtcol.rs
index 0a198e6..8161241 100644
--- a/src/vtcol.rs
+++ b/src/vtcol.rs
@@ -76,6 +76,15 @@ impl<'a> Job
.value_name("PATH")
.help("apply scheme from file")
.takes_value(true),
+ )
+ .arg(
+ Arg::with_name("base64")
+ .short("b")
+ .long("base64")
+ .help("base64 encoded binary input")
+ .value_name("DATA")
+ .required(false)
+ .takes_value(true),
),
)
.subcommand(
@@ -174,6 +183,11 @@ impl<'a> Job
},
("list", _) => Ok(Self::List),
("set", Some(subm)) => {
+ if let Some(b64) = subm.value_of("base64") {
+ let scheme =
+ Palette::from_base64(&b64).map(Scheme::from)?;
+ return Ok(Self::Set(scheme));
+ }
let scheme = match subm.value_of("scheme") {
Some("-") => Self::read_scheme_from_stdin(),
Some(name) => {