From 6bb24216f026e7f86d4016f36b15e5bcb7d0a442 Mon Sep 17 00:00:00 2001 From: norly Date: Fri, 3 Jul 2020 00:59:13 +0200 Subject: [PATCH] HACK: If guessing English input, try Romaji input as well --- jmdict.cpp | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/jmdict.cpp b/jmdict.cpp index efbb705..a85686f 100644 --- a/jmdict.cpp +++ b/jmdict.cpp @@ -115,7 +115,7 @@ int showEntry(void*, int, char** value, char**) { } cout << endl; - + string sense; db->exec( sql::query("SELECT sense, gloss FROM gloss WHERE lang=%Q AND entry=%s " @@ -161,7 +161,8 @@ void guessLanguage(const std::string& subject) { if (options::source == options::JAPANESE && !isUTF8) options::source = options::JAPANESE_ROMAJI; else if (options::source == options::UNKNOWN) - options::source = isUTF8 ? options::JAPANESE : options::NOT_JAPANESE; + // options::source = isUTF8 ? options::JAPANESE : options::NOT_JAPANESE; + options::source = isUTF8 ? options::JAPANESE : options::UNKNOWN; } int main(int argc, char** argv) @@ -174,14 +175,18 @@ try { } string subject = argv[optind]; db.reset(new sql::db(DICTIONARY_PATH)); - + guessLanguage(subject); if (options::source == options::JAPANESE) fromJapanese(subject); else if (options::source == options::JAPANESE_ROMAJI) fromRomaji(subject); - else + else if (options::source == options::NOT_JAPANESE) toJapanese(subject); + else { + fromRomaji(subject); + toJapanese(subject); + } cout << entries << " match(es) found." << endl; return EXIT_SUCCESS; -- 2.30.2