Browse Source

Fixes some inconsistent ISO-639 language codes

And also adds tmz (Central Atlas Tamazight) as a language

(cherry picked from commit 476df5e198b42d7bc708cca569ec9e958d5ef791)
andybarcia 4 years ago
parent
commit
82b31fe8e7
1 changed files with 16 additions and 3 deletions
  1. 16 3
      core/translation.cpp

+ 16 - 3
core/translation.cpp

@@ -34,13 +34,14 @@
 #include "core/os/os.h"
 #include "core/os/os.h"
 #include "core/project_settings.h"
 #include "core/project_settings.h"
 
 
-// ISO 639-1 language codes, with the addition of glibc locales with their
-// regional identifiers. This list must match the language names (in English)
-// of locale_names.
+// ISO 639-1 language codes (and a couple of three-letter ISO 639-2 codes),
+// with the addition of glibc locales with their regional identifiers.
+// This list must match the language names (in English) of locale_names.
 //
 //
 // References:
 // References:
 // - https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes
 // - https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes
 // - https://lh.2xlibre.net/locales/
 // - https://lh.2xlibre.net/locales/
+// - https://iso639-3.sil.org/
 
 
 static const char *locale_list[] = {
 static const char *locale_list[] = {
 	"aa", //  Afar
 	"aa", //  Afar
@@ -95,6 +96,7 @@ static const char *locale_list[] = {
 	"bo", //  Tibetan
 	"bo", //  Tibetan
 	"bo_CN", //  Tibetan (China)
 	"bo_CN", //  Tibetan (China)
 	"bo_IN", //  Tibetan (India)
 	"bo_IN", //  Tibetan (India)
+	"br", //  Breton
 	"br_FR", //  Breton (France)
 	"br_FR", //  Breton (France)
 	"brx_IN", //  Bodo (India)
 	"brx_IN", //  Bodo (India)
 	"bs_BA", //  Bosnian (Bosnia and Herzegovina)
 	"bs_BA", //  Bosnian (Bosnia and Herzegovina)
@@ -196,6 +198,7 @@ static const char *locale_list[] = {
 	"gd_GB", //  Scottish Gaelic (United Kingdom)
 	"gd_GB", //  Scottish Gaelic (United Kingdom)
 	"gez_ER", //  Geez (Eritrea)
 	"gez_ER", //  Geez (Eritrea)
 	"gez_ET", //  Geez (Ethiopia)
 	"gez_ET", //  Geez (Ethiopia)
+	"gl", //  Galician
 	"gl_ES", //  Galician (Spain)
 	"gl_ES", //  Galician (Spain)
 	"gu_IN", //  Gujarati (India)
 	"gu_IN", //  Gujarati (India)
 	"gv_GB", //  Manx (United Kingdom)
 	"gv_GB", //  Manx (United Kingdom)
@@ -268,6 +271,7 @@ static const char *locale_list[] = {
 	"ml_IN", //  Malayalam (India)
 	"ml_IN", //  Malayalam (India)
 	"mni_IN", //  Manipuri (India)
 	"mni_IN", //  Manipuri (India)
 	"mn_MN", //  Mongolian (Mongolia)
 	"mn_MN", //  Mongolian (Mongolia)
+	"mr", //  Marathi
 	"mr_IN", //  Marathi (India)
 	"mr_IN", //  Marathi (India)
 	"ms", //  Malay
 	"ms", //  Malay
 	"ms_MY", //  Malay (Malaysia)
 	"ms_MY", //  Malay (Malaysia)
@@ -297,6 +301,7 @@ static const char *locale_list[] = {
 	"om", //  Oromo
 	"om", //  Oromo
 	"om_ET", //  Oromo (Ethiopia)
 	"om_ET", //  Oromo (Ethiopia)
 	"om_KE", //  Oromo (Kenya)
 	"om_KE", //  Oromo (Kenya)
+	"or", //  Oriya
 	"or_IN", //  Oriya (India)
 	"or_IN", //  Oriya (India)
 	"os_RU", //  Ossetian (Russia)
 	"os_RU", //  Ossetian (Russia)
 	"pa_IN", //  Panjabi (India)
 	"pa_IN", //  Panjabi (India)
@@ -381,6 +386,8 @@ static const char *locale_list[] = {
 	"tr_TR", //  Turkish (Turkey)
 	"tr_TR", //  Turkish (Turkey)
 	"ts_ZA", //  Tsonga (South Africa)
 	"ts_ZA", //  Tsonga (South Africa)
 	"tt_RU", //  Tatar (Russia)
 	"tt_RU", //  Tatar (Russia)
+	"tzm", // Central Atlas Tamazight
+	"tzm_MA", // Central Atlas Tamazight (Marrocos)
 	"ug_CN", //  Uighur (China)
 	"ug_CN", //  Uighur (China)
 	"uk", //  Ukrainian
 	"uk", //  Ukrainian
 	"uk_UA", //  Ukrainian (Ukraine)
 	"uk_UA", //  Ukrainian (Ukraine)
@@ -463,6 +470,7 @@ static const char *locale_names[] = {
 	"Tibetan",
 	"Tibetan",
 	"Tibetan (China)",
 	"Tibetan (China)",
 	"Tibetan (India)",
 	"Tibetan (India)",
+	"Breton",
 	"Breton (France)",
 	"Breton (France)",
 	"Bodo (India)",
 	"Bodo (India)",
 	"Bosnian (Bosnia and Herzegovina)",
 	"Bosnian (Bosnia and Herzegovina)",
@@ -564,6 +572,7 @@ static const char *locale_names[] = {
 	"Scottish Gaelic (United Kingdom)",
 	"Scottish Gaelic (United Kingdom)",
 	"Geez (Eritrea)",
 	"Geez (Eritrea)",
 	"Geez (Ethiopia)",
 	"Geez (Ethiopia)",
+	"Galician",
 	"Galician (Spain)",
 	"Galician (Spain)",
 	"Gujarati (India)",
 	"Gujarati (India)",
 	"Manx (United Kingdom)",
 	"Manx (United Kingdom)",
@@ -636,6 +645,7 @@ static const char *locale_names[] = {
 	"Malayalam (India)",
 	"Malayalam (India)",
 	"Manipuri (India)",
 	"Manipuri (India)",
 	"Mongolian (Mongolia)",
 	"Mongolian (Mongolia)",
+	"Marathi",
 	"Marathi (India)",
 	"Marathi (India)",
 	"Malay",
 	"Malay",
 	"Malay (Malaysia)",
 	"Malay (Malaysia)",
@@ -665,6 +675,7 @@ static const char *locale_names[] = {
 	"Oromo",
 	"Oromo",
 	"Oromo (Ethiopia)",
 	"Oromo (Ethiopia)",
 	"Oromo (Kenya)",
 	"Oromo (Kenya)",
+	"Oriya",
 	"Oriya (India)",
 	"Oriya (India)",
 	"Ossetian (Russia)",
 	"Ossetian (Russia)",
 	"Panjabi (India)",
 	"Panjabi (India)",
@@ -749,6 +760,8 @@ static const char *locale_names[] = {
 	"Turkish (Turkey)",
 	"Turkish (Turkey)",
 	"Tsonga (South Africa)",
 	"Tsonga (South Africa)",
 	"Tatar (Russia)",
 	"Tatar (Russia)",
+	"Central Atlas Tamazight",
+	"Central Atlas Tamazight (Marrocos)",
 	"Uighur (China)",
 	"Uighur (China)",
 	"Ukrainian",
 	"Ukrainian",
 	"Ukrainian (Ukraine)",
 	"Ukrainian (Ukraine)",