[yabridgectl] Add an option to undo setting --path

This commit is contained in:
Robbert van der Helm
2021-01-02 14:09:59 +01:00
parent 3c99d43247
commit ef540f354c
3 changed files with 20 additions and 1 deletions
+5
View File
@@ -137,6 +137,7 @@ pub fn show_status(config: &Config) -> Result<()> {
pub struct SetOptions<'a> {
pub method: Option<&'a str>,
pub path: Option<PathBuf>,
pub path_auto: bool,
}
/// Change configuration settings. The actual options are defined in the clap [app](clap::App).
@@ -152,6 +153,10 @@ pub fn set_settings(config: &mut Config, options: &SetOptions) -> Result<()> {
config.yabridge_home = Some(path.clone());
}
if options.path_auto {
config.yabridge_home = None;
}
config.write()
}
+12 -1
View File
@@ -106,7 +106,17 @@ fn main() -> Result<()> {
'~/.local/share/yabridge' by default.",
)
.validator(validate_path)
.takes_value(true),
.takes_value(true).conflicts_with("path_auto"),
)
.arg(
Arg::with_name("path_auto")
.long("path-auto")
.about("Automatically locate yabridge's files")
.long_about(
"Automatically locate yabridge's files. This can be used after manually \
setting a path with the '--path' option to revert back to the default \
auto detection behaviour.",
)
),
)
.subcommand(
@@ -166,6 +176,7 @@ fn main() -> Result<()> {
.value_of_t::<PathBuf>("path")
.ok()
.and_then(|path| path.canonicalize().ok()),
path_auto: options.is_present("path_auto"),
},
),
("sync", Some(options)) => actions::do_sync(