Empty jisho command now starts interactive mode.

This commit is contained in:
Hiers 2023-12-17 21:02:26 +00:00
parent 86fed8b3d6
commit 75bdf17905

View file

@ -12,7 +12,6 @@ use word_search::word_search;
use kanji_search::search_by_radical; use kanji_search::search_by_radical;
use sentence_search::sentence_search; use sentence_search::sentence_search;
use argparse::{ArgumentParser, List, Print, Store, StoreTrue}; use argparse::{ArgumentParser, List, Print, Store, StoreTrue};
use serde_json::Value; use serde_json::Value;
use atty::Stream; use atty::Stream;
@ -45,7 +44,7 @@ fn main() -> Result<(), ureq::Error> {
loop { loop {
query.clear(); query.clear();
if options.interactive { if options.interactive || query.trim().is_empty() {
while query.trim().is_empty() || query.trim() == ":" || query.trim() == "" { while query.trim().is_empty() || query.trim() == ":" || query.trim() == "" {
query.clear(); query.clear();
print!("=> "); print!("=> ");
@ -57,7 +56,7 @@ fn main() -> Result<(), ureq::Error> {
} }
} else { } else {
query = options.query.clone(); query = options.query.clone();
if query.trim().is_empty() || query.trim() == ":" || query.trim() == "" || query.trim() == "_" || query.trim() == "_" { if query.trim() == ":" || query.trim() == "" || query.trim() == "_" || query.trim() == "_" {
return Ok(()); return Ok(());
} }
} }
@ -67,7 +66,7 @@ fn main() -> Result<(), ureq::Error> {
let mut output = String::with_capacity(51200); /* Give output 50KiB of buffer; Should be enough to avoid reallocs*/ let mut output = String::with_capacity(51200); /* Give output 50KiB of buffer; Should be enough to avoid reallocs*/
if query.starts_with(':') || query.starts_with('') { /* Kanji search */ if query.starts_with(':') || query.starts_with('') { /* Kanji search */
/* if search_by_radical failed then something is very wrong */ /* if search_by_radical failed, then something is very wrong */
if search_by_radical(&mut query).is_none() { if search_by_radical(&mut query).is_none() {
eprintln!("Couldn't parse input"); eprintln!("Couldn't parse input");
} }