fix: Correctly normalize hyphenated language codes

This commit is contained in:
Paul Gauthier (aider) 2025-05-10 11:53:00 -07:00
parent 7875de078a
commit ddc8621d6e
2 changed files with 3 additions and 1 deletions

View file

@ -1082,7 +1082,8 @@ class Coder:
"ko": "Korean",
"ru": "Russian",
}
return fallback.get(lang_code.split("_")[0].lower(), lang_code)
primary_lang_code = lang_code.replace("-", "_").split("_")[0].lower()
return fallback.get(primary_lang_code, lang_code)
def get_user_language(self):
"""

View file

@ -1202,6 +1202,7 @@ This command will print 'Hello, World!' to the console."""
self.assertEqual(coder.normalize_language("fr_FR"), "French")
self.assertEqual(coder.normalize_language("es"), "Spanish")
self.assertEqual(coder.normalize_language("de_DE.UTF-8"), "German")
self.assertEqual(coder.normalize_language("zh-CN"), "Chinese") # Test hyphen in fallback
self.assertEqual(coder.normalize_language("ja"), "Japanese")
self.assertEqual(
coder.normalize_language("unknown_code"), "unknown_code"