diff --git a/aider/coders/base_coder.py b/aider/coders/base_coder.py index 4c7324ac7..c478db43b 100755 --- a/aider/coders/base_coder.py +++ b/aider/coders/base_coder.py @@ -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): """ diff --git a/tests/basic/test_coder.py b/tests/basic/test_coder.py index 2f250d858..bb93ad107 100644 --- a/tests/basic/test_coder.py +++ b/tests/basic/test_coder.py @@ -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"