aboutsummaryrefslogtreecommitdiffstats
path: root/src/args.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/args.rs')
-rw-r--r--src/args.rs26
1 files changed, 26 insertions, 0 deletions
diff --git a/src/args.rs b/src/args.rs
index 78f9ce3..dc160d0 100644
--- a/src/args.rs
+++ b/src/args.rs
@@ -5,6 +5,7 @@ use structopt::StructOpt;
use crate::auth;
use crate::errors::ContextualError;
+use crate::renderer;
/// Possible characters for random routes
const ROUTE_ALPHABET: [char; 16] = [
@@ -66,6 +67,26 @@ struct CLIArgs {
#[structopt(short = "P", long = "no-symlinks")]
no_symlinks: bool,
+ /// Default color scheme
+ #[structopt(
+ short = "c",
+ long = "color-scheme",
+ default_value = "squirrel",
+ possible_values = &renderer::THEME_SLUGS,
+ case_insensitive = true,
+ )]
+ color_scheme: String,
+
+ /// Default color scheme
+ #[structopt(
+ short = "d",
+ long = "color-scheme-dark",
+ default_value = "archlinux",
+ possible_values = &renderer::THEME_SLUGS,
+ case_insensitive = true,
+ )]
+ color_scheme_dark: String,
+
/// Enable QR code display
#[structopt(short = "q", long = "qrcode")]
qrcode: bool,
@@ -169,6 +190,9 @@ pub fn parse_args() -> crate::MiniserveConfig {
let favicon_route = nanoid::nanoid!(10, &ROUTE_ALPHABET);
let css_route = nanoid::nanoid!(10, &ROUTE_ALPHABET);
+ let default_color_scheme = args.color_scheme;
+ let default_color_scheme_dark = args.color_scheme_dark;
+
let path_explicitly_chosen = args.path.is_some();
let port = match args.port {
@@ -187,6 +211,8 @@ pub fn parse_args() -> crate::MiniserveConfig {
random_route,
favicon_route,
css_route,
+ default_color_scheme,
+ default_color_scheme_dark,
index: args.index,
overwrite_files: args.overwrite_files,
show_qrcode: args.qrcode,