diff --git a/packages/backend-rs/src/misc/translate.rs b/packages/backend-rs/src/misc/translate.rs index 6f72f43d1b..7e9d5a005f 100644 --- a/packages/backend-rs/src/misc/translate.rs +++ b/packages/backend-rs/src/misc/translate.rs @@ -168,6 +168,13 @@ mod deepl_translate { source_lang: source_lang .map(|s| s.to_owned()) .or(result.detected_source_language) + .and_then(|lang| { + if lang.is_ascii() { + Some(lang.to_ascii_lowercase()) + } else { + None + } + }) .unwrap_or_else(|| "unknown".to_owned()), text: result.text, }; @@ -250,7 +257,15 @@ mod libre_translate { Ok(super::Translation { source_lang: source_lang .map(|s| s.to_owned()) - .unwrap_or(result.detected_language.language), + .or(Some(result.detected_language.language)) + .and_then(|lang| { + if lang.is_ascii() { + Some(lang.to_ascii_lowercase()) + } else { + None + } + }) + .unwrap_or_else(|| "unknown".to_owned()), text: result.translated_text, }) }