From 2b2116fb95daa7bfa941ebd46c3a7c9b110c5288 Mon Sep 17 00:00:00 2001 From: Matthias Beyer Date: Wed, 21 Sep 2016 17:07:23 +0200 Subject: [PATCH 1/2] View in stdout if not specified otherwise --- imag-view/src/main.rs | 42 +++++++++++++++++++++--------------------- 1 file changed, 21 insertions(+), 21 deletions(-) diff --git a/imag-view/src/main.rs b/imag-view/src/main.rs index ae9d5d29..76a6474b 100644 --- a/imag-view/src/main.rs +++ b/imag-view/src/main.rs @@ -48,14 +48,6 @@ fn main() { let view_header = rt.cli().is_present("view-header"); let view_content = rt.cli().is_present("view-content"); - let scmd = match rt.cli().subcommand_matches("view-in") { - None => { - debug!("No commandline call"); - exit(1); // we can afford not-executing destructors here - } - Some(s) => s, - }; - let entry = match rt.store().get(PathBuf::from(entry_id)) { Ok(Some(fle)) => fle, Ok(None) => { @@ -68,19 +60,27 @@ fn main() { }; let res = { - if scmd.is_present("view-in-stdout") { - } else if scmd.is_present("view-in-ui") { - warn!("Viewing in UI is currently not supported, switch to stdout"); - } else if scmd.is_present("view-in-browser") { - warn!("Viewing in browser is currently not supported, switch to stdout"); - } else if scmd.is_present("view-in-texteditor") { - if let Err(e) = Editor::new(&rt, &entry).show() { - error!("Cannot view in editor: {}", e); - trace_error_exit(&e, 1); - } - } else if scmd.is_present("view-in-custom") { - warn!("Viewing in custom is currently not supported, switch to stdout"); - } + match rt.cli().subcommand_matches("view-in") { + None => { + debug!("No commandline call"); + debug!("Assuming to view in cli (stdout)"); + }, + Some(s) => { + if s.is_present("view-in-stdout") { + } else if s.is_present("view-in-ui") { + warn!("Viewing in UI is currently not supported, switch to stdout"); + } else if s.is_present("view-in-browser") { + warn!("Viewing in browser is currently not supported, switch to stdout"); + } else if s.is_present("view-in-texteditor") { + if let Err(e) = Editor::new(&rt, &entry).show() { + error!("Cannot view in editor: {}", e); + trace_error_exit(&e, 1); + } + } else if s.is_present("view-in-custom") { + warn!("Viewing in custom is currently not supported, switch to stdout"); + } + }, + }; StdoutViewer::new(view_header, view_content).view_entry(&entry) }; From 352bccde51b20f6d77de4a68b9ae3fffd3e8a1b7 Mon Sep 17 00:00:00 2001 From: Matthias Beyer Date: Wed, 21 Sep 2016 17:19:37 +0200 Subject: [PATCH 2/2] Respecify view-in-editor argument As we use the `--editor` flag in the Runtime, we should not override it here. By passing `--editor foo` one can override the editor application-wide, the argument is now `--in-editor` therefor. --- imag-view/src/ui.rs | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/imag-view/src/ui.rs b/imag-view/src/ui.rs index b1081e86..d498d795 100644 --- a/imag-view/src/ui.rs +++ b/imag-view/src/ui.rs @@ -50,12 +50,11 @@ pub fn build_ui<'a>(app: App<'a, 'a>) -> App<'a, 'a> { .value_name("BROWSER")) .arg(Arg::with_name("view-in-texteditor") - .long("editor") + .long("in-editor") .short("e") - .takes_value(true) // optional, which editor + .takes_value(false) .required(false) - .help("View content in $EDITOR") - .value_name("EDITOR")) + .help("View content in $EDITOR (can be passed via --editor)")) .arg(Arg::with_name("view-in-custom") .long("custom")