Browse Source

Added variants.

pull/322/head
Sebastian 7 years ago
parent
commit
f6bb68525e
  1. 6
      src/Squidex.Infrastructure/Language.cs
  2. 321
      src/Squidex.Infrastructure/Languages.cs
  3. 89
      tools/GenerateLanguages/Program.cs

6
src/Squidex.Infrastructure/Language.cs

@ -20,11 +20,7 @@ namespace Squidex.Infrastructure
private static Language AddLanguage(string iso2Code, string englishName)
{
var language = new Language(iso2Code, englishName);
AllLanguagesField[iso2Code] = language;
return language;
return AllLanguagesField.GetOrAdd(iso2Code, code => new Language(code, englishName));
}
public static Language GetLanguage(string iso2Code)

321
src/Squidex.Infrastructure/Languages.cs

@ -1,4 +1,5 @@
// ==========================================================================
// Languages.cs
// Squidex Headless CMS
// ==========================================================================
// Copyright (c) Squidex UG (haftungsbeschränkt)
@ -190,5 +191,325 @@ namespace Squidex.Infrastructure
public static readonly Language ZA = AddLanguage("za", "Zhuang");
public static readonly Language ZH = AddLanguage("zh", "Chinese");
public static readonly Language ZU = AddLanguage("zu", "Zulu");
public static readonly Language AfarDjibouti = AddLanguage("aa-DJ", "Afar (Djibouti)");
public static readonly Language AfarEritrea = AddLanguage("aa-ER", "Afar (Eritrea)");
public static readonly Language AfarEthiopia = AddLanguage("aa-ET", "Afar (Ethiopia)");
public static readonly Language AfrikaansNamibia = AddLanguage("af-NA", "Afrikaans (Namibia)");
public static readonly Language AfrikaansSouthAfrica = AddLanguage("af-ZA", "Afrikaans (South Africa)");
public static readonly Language ArabicUnitedArabEmirates = AddLanguage("ar-AE", "Arabic (United Arab Emirates)");
public static readonly Language ArabicBahrain = AddLanguage("ar-BH", "Arabic (Bahrain)");
public static readonly Language ArabicDjibouti = AddLanguage("ar-DJ", "Arabic (Djibouti)");
public static readonly Language ArabicAlgeria = AddLanguage("ar-DZ", "Arabic (Algeria)");
public static readonly Language ArabicEgypt = AddLanguage("ar-EG", "Arabic (Egypt)");
public static readonly Language ArabicEritrea = AddLanguage("ar-ER", "Arabic (Eritrea)");
public static readonly Language ArabicIsrael = AddLanguage("ar-IL", "Arabic (Israel)");
public static readonly Language ArabicIraq = AddLanguage("ar-IQ", "Arabic (Iraq)");
public static readonly Language ArabicJordan = AddLanguage("ar-JO", "Arabic (Jordan)");
public static readonly Language ArabicComoros = AddLanguage("ar-KM", "Arabic (Comoros)");
public static readonly Language ArabicKuwait = AddLanguage("ar-KW", "Arabic (Kuwait)");
public static readonly Language ArabicLebanon = AddLanguage("ar-LB", "Arabic (Lebanon)");
public static readonly Language ArabicLibya = AddLanguage("ar-LY", "Arabic (Libya)");
public static readonly Language ArabicMorocco = AddLanguage("ar-MA", "Arabic (Morocco)");
public static readonly Language ArabicMauritania = AddLanguage("ar-MR", "Arabic (Mauritania)");
public static readonly Language ArabicOman = AddLanguage("ar-OM", "Arabic (Oman)");
public static readonly Language ArabicPalestinianAuthority = AddLanguage("ar-PS", "Arabic (Palestinian Authority)");
public static readonly Language ArabicQatar = AddLanguage("ar-QA", "Arabic (Qatar)");
public static readonly Language ArabicSaudiArabia = AddLanguage("ar-SA", "Arabic (Saudi Arabia)");
public static readonly Language ArabicSudan = AddLanguage("ar-SD", "Arabic (Sudan)");
public static readonly Language ArabicSomalia = AddLanguage("ar-SO", "Arabic (Somalia)");
public static readonly Language ArabicSouthSudan = AddLanguage("ar-SS", "Arabic (South Sudan)");
public static readonly Language ArabicSyria = AddLanguage("ar-SY", "Arabic (Syria)");
public static readonly Language ArabicChad = AddLanguage("ar-TD", "Arabic (Chad)");
public static readonly Language ArabicTunisia = AddLanguage("ar-TN", "Arabic (Tunisia)");
public static readonly Language ArabicYemen = AddLanguage("ar-YE", "Arabic (Yemen)");
public static readonly Language BanglaBangladesh = AddLanguage("bn-BD", "Bangla (Bangladesh)");
public static readonly Language BanglaIndia = AddLanguage("bn-IN", "Bangla (India)");
public static readonly Language TibetanChina = AddLanguage("bo-CN", "Tibetan (China)");
public static readonly Language TibetanIndia = AddLanguage("bo-IN", "Tibetan (India)");
public static readonly Language CatalanAndorra = AddLanguage("ca-AD", "Catalan (Andorra)");
public static readonly Language CatalanCatalan = AddLanguage("ca-ES", "Catalan (Catalan)");
public static readonly Language CatalanFrance = AddLanguage("ca-FR", "Catalan (France)");
public static readonly Language CatalanItaly = AddLanguage("ca-IT", "Catalan (Italy)");
public static readonly Language DanishDenmark = AddLanguage("da-DK", "Danish (Denmark)");
public static readonly Language DanishGreenland = AddLanguage("da-GL", "Danish (Greenland)");
public static readonly Language GermanAustria = AddLanguage("de-AT", "German (Austria)");
public static readonly Language GermanBelgium = AddLanguage("de-BE", "German (Belgium)");
public static readonly Language GermanSwitzerland = AddLanguage("de-CH", "German (Switzerland)");
public static readonly Language GermanGermany = AddLanguage("de-DE", "German (Germany)");
public static readonly Language GermanItaly = AddLanguage("de-IT", "German (Italy)");
public static readonly Language GermanLiechtenstein = AddLanguage("de-LI", "German (Liechtenstein)");
public static readonly Language GermanLuxembourg = AddLanguage("de-LU", "German (Luxembourg)");
public static readonly Language EweGhana = AddLanguage("ee-GH", "Ewe (Ghana)");
public static readonly Language EweTogo = AddLanguage("ee-TG", "Ewe (Togo)");
public static readonly Language GreekCyprus = AddLanguage("el-CY", "Greek (Cyprus)");
public static readonly Language GreekGreece = AddLanguage("el-GR", "Greek (Greece)");
public static readonly Language EnglishAntiguaandBarbuda = AddLanguage("en-AG", "English (Antigua and Barbuda)");
public static readonly Language EnglishAnguilla = AddLanguage("en-AI", "English (Anguilla)");
public static readonly Language EnglishAmericanSamoa = AddLanguage("en-AS", "English (American Samoa)");
public static readonly Language EnglishAustria = AddLanguage("en-AT", "English (Austria)");
public static readonly Language EnglishAustralia = AddLanguage("en-AU", "English (Australia)");
public static readonly Language EnglishBarbados = AddLanguage("en-BB", "English (Barbados)");
public static readonly Language EnglishBelgium = AddLanguage("en-BE", "English (Belgium)");
public static readonly Language EnglishBurundi = AddLanguage("en-BI", "English (Burundi)");
public static readonly Language EnglishBermuda = AddLanguage("en-BM", "English (Bermuda)");
public static readonly Language EnglishBahamas = AddLanguage("en-BS", "English (Bahamas)");
public static readonly Language EnglishBotswana = AddLanguage("en-BW", "English (Botswana)");
public static readonly Language EnglishBelize = AddLanguage("en-BZ", "English (Belize)");
public static readonly Language EnglishCanada = AddLanguage("en-CA", "English (Canada)");
public static readonly Language EnglishCocosKeelingIslands = AddLanguage("en-CC", "English (Cocos (Keeling) Islands)");
public static readonly Language EnglishSwitzerland = AddLanguage("en-CH", "English (Switzerland)");
public static readonly Language EnglishCookIslands = AddLanguage("en-CK", "English (Cook Islands)");
public static readonly Language EnglishCameroon = AddLanguage("en-CM", "English (Cameroon)");
public static readonly Language EnglishChristmasIsland = AddLanguage("en-CX", "English (Christmas Island)");
public static readonly Language EnglishCyprus = AddLanguage("en-CY", "English (Cyprus)");
public static readonly Language EnglishGermany = AddLanguage("en-DE", "English (Germany)");
public static readonly Language EnglishDenmark = AddLanguage("en-DK", "English (Denmark)");
public static readonly Language EnglishDominica = AddLanguage("en-DM", "English (Dominica)");
public static readonly Language EnglishEritrea = AddLanguage("en-ER", "English (Eritrea)");
public static readonly Language EnglishFinland = AddLanguage("en-FI", "English (Finland)");
public static readonly Language EnglishFiji = AddLanguage("en-FJ", "English (Fiji)");
public static readonly Language EnglishFalklandIslands = AddLanguage("en-FK", "English (Falkland Islands)");
public static readonly Language EnglishMicronesia = AddLanguage("en-FM", "English (Micronesia)");
public static readonly Language EnglishUnitedKingdom = AddLanguage("en-GB", "English (United Kingdom)");
public static readonly Language EnglishGrenada = AddLanguage("en-GD", "English (Grenada)");
public static readonly Language EnglishGuernsey = AddLanguage("en-GG", "English (Guernsey)");
public static readonly Language EnglishGhana = AddLanguage("en-GH", "English (Ghana)");
public static readonly Language EnglishGibraltar = AddLanguage("en-GI", "English (Gibraltar)");
public static readonly Language EnglishGambia = AddLanguage("en-GM", "English (Gambia)");
public static readonly Language EnglishGuam = AddLanguage("en-GU", "English (Guam)");
public static readonly Language EnglishGuyana = AddLanguage("en-GY", "English (Guyana)");
public static readonly Language EnglishHongKongSAR = AddLanguage("en-HK", "English (Hong Kong SAR)");
public static readonly Language EnglishIndonesia = AddLanguage("en-ID", "English (Indonesia)");
public static readonly Language EnglishIreland = AddLanguage("en-IE", "English (Ireland)");
public static readonly Language EnglishIsrael = AddLanguage("en-IL", "English (Israel)");
public static readonly Language EnglishIsleofMan = AddLanguage("en-IM", "English (Isle of Man)");
public static readonly Language EnglishIndia = AddLanguage("en-IN", "English (India)");
public static readonly Language EnglishBritishIndianOceanTerritory = AddLanguage("en-IO", "English (British Indian Ocean Territory)");
public static readonly Language EnglishJersey = AddLanguage("en-JE", "English (Jersey)");
public static readonly Language EnglishJamaica = AddLanguage("en-JM", "English (Jamaica)");
public static readonly Language EnglishKenya = AddLanguage("en-KE", "English (Kenya)");
public static readonly Language EnglishKiribati = AddLanguage("en-KI", "English (Kiribati)");
public static readonly Language EnglishSaintKittsandNevis = AddLanguage("en-KN", "English (Saint Kitts and Nevis)");
public static readonly Language EnglishCaymanIslands = AddLanguage("en-KY", "English (Cayman Islands)");
public static readonly Language EnglishSaintLucia = AddLanguage("en-LC", "English (Saint Lucia)");
public static readonly Language EnglishLiberia = AddLanguage("en-LR", "English (Liberia)");
public static readonly Language EnglishLesotho = AddLanguage("en-LS", "English (Lesotho)");
public static readonly Language EnglishMadagascar = AddLanguage("en-MG", "English (Madagascar)");
public static readonly Language EnglishMarshallIslands = AddLanguage("en-MH", "English (Marshall Islands)");
public static readonly Language EnglishMacaoSAR = AddLanguage("en-MO", "English (Macao SAR)");
public static readonly Language EnglishNorthernMarianaIslands = AddLanguage("en-MP", "English (Northern Mariana Islands)");
public static readonly Language EnglishMontserrat = AddLanguage("en-MS", "English (Montserrat)");
public static readonly Language EnglishMalta = AddLanguage("en-MT", "English (Malta)");
public static readonly Language EnglishMauritius = AddLanguage("en-MU", "English (Mauritius)");
public static readonly Language EnglishMalawi = AddLanguage("en-MW", "English (Malawi)");
public static readonly Language EnglishMalaysia = AddLanguage("en-MY", "English (Malaysia)");
public static readonly Language EnglishNamibia = AddLanguage("en-NA", "English (Namibia)");
public static readonly Language EnglishNorfolkIsland = AddLanguage("en-NF", "English (Norfolk Island)");
public static readonly Language EnglishNigeria = AddLanguage("en-NG", "English (Nigeria)");
public static readonly Language EnglishNetherlands = AddLanguage("en-NL", "English (Netherlands)");
public static readonly Language EnglishNauru = AddLanguage("en-NR", "English (Nauru)");
public static readonly Language EnglishNiue = AddLanguage("en-NU", "English (Niue)");
public static readonly Language EnglishNewZealand = AddLanguage("en-NZ", "English (New Zealand)");
public static readonly Language EnglishPapuaNewGuinea = AddLanguage("en-PG", "English (Papua New Guinea)");
public static readonly Language EnglishPhilippines = AddLanguage("en-PH", "English (Philippines)");
public static readonly Language EnglishPakistan = AddLanguage("en-PK", "English (Pakistan)");
public static readonly Language EnglishPitcairnIslands = AddLanguage("en-PN", "English (Pitcairn Islands)");
public static readonly Language EnglishPuertoRico = AddLanguage("en-PR", "English (Puerto Rico)");
public static readonly Language EnglishPalau = AddLanguage("en-PW", "English (Palau)");
public static readonly Language EnglishRwanda = AddLanguage("en-RW", "English (Rwanda)");
public static readonly Language EnglishSolomonIslands = AddLanguage("en-SB", "English (Solomon Islands)");
public static readonly Language EnglishSeychelles = AddLanguage("en-SC", "English (Seychelles)");
public static readonly Language EnglishSudan = AddLanguage("en-SD", "English (Sudan)");
public static readonly Language EnglishSweden = AddLanguage("en-SE", "English (Sweden)");
public static readonly Language EnglishSingapore = AddLanguage("en-SG", "English (Singapore)");
public static readonly Language EnglishStHelenaAscensionTristandaCunha = AddLanguage("en-SH", "English (St Helena, Ascension, Tristan da Cunha)");
public static readonly Language EnglishSlovenia = AddLanguage("en-SI", "English (Slovenia)");
public static readonly Language EnglishSierraLeone = AddLanguage("en-SL", "English (Sierra Leone)");
public static readonly Language EnglishSouthSudan = AddLanguage("en-SS", "English (South Sudan)");
public static readonly Language EnglishSintMaarten = AddLanguage("en-SX", "English (Sint Maarten)");
public static readonly Language EnglishSwaziland = AddLanguage("en-SZ", "English (Swaziland)");
public static readonly Language EnglishTurksandCaicosIslands = AddLanguage("en-TC", "English (Turks and Caicos Islands)");
public static readonly Language EnglishTokelau = AddLanguage("en-TK", "English (Tokelau)");
public static readonly Language EnglishTonga = AddLanguage("en-TO", "English (Tonga)");
public static readonly Language EnglishTrinidadandTobago = AddLanguage("en-TT", "English (Trinidad and Tobago)");
public static readonly Language EnglishTuvalu = AddLanguage("en-TV", "English (Tuvalu)");
public static readonly Language EnglishTanzania = AddLanguage("en-TZ", "English (Tanzania)");
public static readonly Language EnglishUganda = AddLanguage("en-UG", "English (Uganda)");
public static readonly Language EnglishUSOutlyingIslands = AddLanguage("en-UM", "English (U.S. Outlying Islands)");
public static readonly Language EnglishUnitedStates = AddLanguage("en-US", "English (United States)");
public static readonly Language EnglishSaintVincentandtheGrenadines = AddLanguage("en-VC", "English (Saint Vincent and the Grenadines)");
public static readonly Language EnglishBritishVirginIslands = AddLanguage("en-VG", "English (British Virgin Islands)");
public static readonly Language EnglishUSVirginIslands = AddLanguage("en-VI", "English (U.S. Virgin Islands)");
public static readonly Language EnglishVanuatu = AddLanguage("en-VU", "English (Vanuatu)");
public static readonly Language EnglishSamoa = AddLanguage("en-WS", "English (Samoa)");
public static readonly Language EnglishSouthAfrica = AddLanguage("en-ZA", "English (South Africa)");
public static readonly Language EnglishZambia = AddLanguage("en-ZM", "English (Zambia)");
public static readonly Language EnglishZimbabwe = AddLanguage("en-ZW", "English (Zimbabwe)");
public static readonly Language SpanishArgentina = AddLanguage("es-AR", "Spanish (Argentina)");
public static readonly Language SpanishBolivia = AddLanguage("es-BO", "Spanish (Bolivia)");
public static readonly Language SpanishBrazil = AddLanguage("es-BR", "Spanish (Brazil)");
public static readonly Language SpanishBelize = AddLanguage("es-BZ", "Spanish (Belize)");
public static readonly Language SpanishChile = AddLanguage("es-CL", "Spanish (Chile)");
public static readonly Language SpanishColombia = AddLanguage("es-CO", "Spanish (Colombia)");
public static readonly Language SpanishCostaRica = AddLanguage("es-CR", "Spanish (Costa Rica)");
public static readonly Language SpanishCuba = AddLanguage("es-CU", "Spanish (Cuba)");
public static readonly Language SpanishDominicanRepublic = AddLanguage("es-DO", "Spanish (Dominican Republic)");
public static readonly Language SpanishEcuador = AddLanguage("es-EC", "Spanish (Ecuador)");
public static readonly Language SpanishSpainInternationalSort = AddLanguage("es-ES", "Spanish (Spain, International Sort)");
public static readonly Language SpanishEquatorialGuinea = AddLanguage("es-GQ", "Spanish (Equatorial Guinea)");
public static readonly Language SpanishGuatemala = AddLanguage("es-GT", "Spanish (Guatemala)");
public static readonly Language SpanishHonduras = AddLanguage("es-HN", "Spanish (Honduras)");
public static readonly Language SpanishMexico = AddLanguage("es-MX", "Spanish (Mexico)");
public static readonly Language SpanishNicaragua = AddLanguage("es-NI", "Spanish (Nicaragua)");
public static readonly Language SpanishPanama = AddLanguage("es-PA", "Spanish (Panama)");
public static readonly Language SpanishPeru = AddLanguage("es-PE", "Spanish (Peru)");
public static readonly Language SpanishPhilippines = AddLanguage("es-PH", "Spanish (Philippines)");
public static readonly Language SpanishPuertoRico = AddLanguage("es-PR", "Spanish (Puerto Rico)");
public static readonly Language SpanishParaguay = AddLanguage("es-PY", "Spanish (Paraguay)");
public static readonly Language SpanishElSalvador = AddLanguage("es-SV", "Spanish (El Salvador)");
public static readonly Language SpanishUnitedStates = AddLanguage("es-US", "Spanish (United States)");
public static readonly Language SpanishUruguay = AddLanguage("es-UY", "Spanish (Uruguay)");
public static readonly Language SpanishVenezuela = AddLanguage("es-VE", "Spanish (Venezuela)");
public static readonly Language FulahCameroon = AddLanguage("ff-CM", "Fulah (Cameroon)");
public static readonly Language FulahGuinea = AddLanguage("ff-GN", "Fulah (Guinea)");
public static readonly Language FulahMauritania = AddLanguage("ff-MR", "Fulah (Mauritania)");
public static readonly Language FulahNigeria = AddLanguage("ff-NG", "Fulah (Nigeria)");
public static readonly Language FaroeseDenmark = AddLanguage("fo-DK", "Faroese (Denmark)");
public static readonly Language FaroeseFaroeIslands = AddLanguage("fo-FO", "Faroese (Faroe Islands)");
public static readonly Language FrenchBelgium = AddLanguage("fr-BE", "French (Belgium)");
public static readonly Language FrenchBurkinaFaso = AddLanguage("fr-BF", "French (Burkina Faso)");
public static readonly Language FrenchBurundi = AddLanguage("fr-BI", "French (Burundi)");
public static readonly Language FrenchBenin = AddLanguage("fr-BJ", "French (Benin)");
public static readonly Language FrenchSaintBarthélemy = AddLanguage("fr-BL", "French (Saint Barthélemy)");
public static readonly Language FrenchCanada = AddLanguage("fr-CA", "French (Canada)");
public static readonly Language FrenchCongoDRC = AddLanguage("fr-CD", "French Congo (DRC)");
public static readonly Language FrenchCentralAfricanRepublic = AddLanguage("fr-CF", "French (Central African Republic)");
public static readonly Language FrenchCongo = AddLanguage("fr-CG", "French (Congo)");
public static readonly Language FrenchSwitzerland = AddLanguage("fr-CH", "French (Switzerland)");
public static readonly Language FrenchCôtedIvoire = AddLanguage("fr-CI", "French (Côte d’Ivoire)");
public static readonly Language FrenchCameroon = AddLanguage("fr-CM", "French (Cameroon)");
public static readonly Language FrenchDjibouti = AddLanguage("fr-DJ", "French (Djibouti)");
public static readonly Language FrenchAlgeria = AddLanguage("fr-DZ", "French (Algeria)");
public static readonly Language FrenchFrance = AddLanguage("fr-FR", "French (France)");
public static readonly Language FrenchGabon = AddLanguage("fr-GA", "French (Gabon)");
public static readonly Language FrenchFrenchGuiana = AddLanguage("fr-GF", "French (French Guiana)");
public static readonly Language FrenchGuinea = AddLanguage("fr-GN", "French (Guinea)");
public static readonly Language FrenchGuadeloupe = AddLanguage("fr-GP", "French (Guadeloupe)");
public static readonly Language FrenchEquatorialGuinea = AddLanguage("fr-GQ", "French (Equatorial Guinea)");
public static readonly Language FrenchHaiti = AddLanguage("fr-HT", "French (Haiti)");
public static readonly Language FrenchComoros = AddLanguage("fr-KM", "French (Comoros)");
public static readonly Language FrenchLuxembourg = AddLanguage("fr-LU", "French (Luxembourg)");
public static readonly Language FrenchMorocco = AddLanguage("fr-MA", "French (Morocco)");
public static readonly Language FrenchMonaco = AddLanguage("fr-MC", "French (Monaco)");
public static readonly Language FrenchSaintMartin = AddLanguage("fr-MF", "French (Saint Martin)");
public static readonly Language FrenchMadagascar = AddLanguage("fr-MG", "French (Madagascar)");
public static readonly Language FrenchMali = AddLanguage("fr-ML", "French (Mali)");
public static readonly Language FrenchMartinique = AddLanguage("fr-MQ", "French (Martinique)");
public static readonly Language FrenchMauritania = AddLanguage("fr-MR", "French (Mauritania)");
public static readonly Language FrenchMauritius = AddLanguage("fr-MU", "French (Mauritius)");
public static readonly Language FrenchNewCaledonia = AddLanguage("fr-NC", "French (New Caledonia)");
public static readonly Language FrenchNiger = AddLanguage("fr-NE", "French (Niger)");
public static readonly Language FrenchFrenchPolynesia = AddLanguage("fr-PF", "French (French Polynesia)");
public static readonly Language FrenchSaintPierreandMiquelon = AddLanguage("fr-PM", "French (Saint Pierre and Miquelon)");
public static readonly Language FrenchRéunion = AddLanguage("fr-RE", "French (Réunion)");
public static readonly Language FrenchRwanda = AddLanguage("fr-RW", "French (Rwanda)");
public static readonly Language FrenchSeychelles = AddLanguage("fr-SC", "French (Seychelles)");
public static readonly Language FrenchSenegal = AddLanguage("fr-SN", "French (Senegal)");
public static readonly Language FrenchSyria = AddLanguage("fr-SY", "French (Syria)");
public static readonly Language FrenchChad = AddLanguage("fr-TD", "French (Chad)");
public static readonly Language FrenchTogo = AddLanguage("fr-TG", "French (Togo)");
public static readonly Language FrenchTunisia = AddLanguage("fr-TN", "French (Tunisia)");
public static readonly Language FrenchVanuatu = AddLanguage("fr-VU", "French (Vanuatu)");
public static readonly Language FrenchWallisandFutuna = AddLanguage("fr-WF", "French (Wallis and Futuna)");
public static readonly Language FrenchMayotte = AddLanguage("fr-YT", "French (Mayotte)");
public static readonly Language CroatianBosniaandHerzegovina = AddLanguage("hr-BA", "Croatian (Bosnia and Herzegovina)");
public static readonly Language CroatianCroatia = AddLanguage("hr-HR", "Croatian (Croatia)");
public static readonly Language ItalianSwitzerland = AddLanguage("it-CH", "Italian (Switzerland)");
public static readonly Language ItalianItaly = AddLanguage("it-IT", "Italian (Italy)");
public static readonly Language ItalianSanMarino = AddLanguage("it-SM", "Italian (San Marino)");
public static readonly Language ItalianVaticanCity = AddLanguage("it-VA", "Italian (Vatican City)");
public static readonly Language KoreanNorthKorea = AddLanguage("ko-KP", "Korean (North Korea)");
public static readonly Language KoreanKorea = AddLanguage("ko-KR", "Korean (Korea)");
public static readonly Language LingalaAngola = AddLanguage("ln-AO", "Lingala (Angola)");
public static readonly Language LingalaCongoDRC = AddLanguage("ln-CD", "Lingala (Congo DRC)");
public static readonly Language LingalaCentralAfricanRepublic = AddLanguage("ln-CF", "Lingala (Central African Republic)");
public static readonly Language LingalaCongo = AddLanguage("ln-CG", "Lingala (Congo)");
public static readonly Language MalayBrunei = AddLanguage("ms-BN", "Malay (Brunei)");
public static readonly Language MalayMalaysia = AddLanguage("ms-MY", "Malay (Malaysia)");
public static readonly Language MalaySingapore = AddLanguage("ms-SG", "Malay (Singapore)");
public static readonly Language NorwegianBokmålNorway = AddLanguage("nb-NO", "Norwegian Bokmål (Norway)");
public static readonly Language NorwegianBokmålSvalbardandJanMayen = AddLanguage("nb-SJ", "Norwegian Bokmål (Svalbard and Jan Mayen)");
public static readonly Language NepaliIndia = AddLanguage("ne-IN", "Nepali (India)");
public static readonly Language NepaliNepal = AddLanguage("ne-NP", "Nepali (Nepal)");
public static readonly Language DutchAruba = AddLanguage("nl-AW", "Dutch (Aruba)");
public static readonly Language DutchBelgium = AddLanguage("nl-BE", "Dutch (Belgium)");
public static readonly Language DutchBonaireSintEustatiusandSaba = AddLanguage("nl-BQ", "Dutch (Bonaire, Sint Eustatius and Saba)");
public static readonly Language DutchCuraçao = AddLanguage("nl-CW", "Dutch (Curaçao)");
public static readonly Language DutchNetherlands = AddLanguage("nl-NL", "Dutch (Netherlands)");
public static readonly Language DutchSuriname = AddLanguage("nl-SR", "Dutch (Suriname)");
public static readonly Language DutchSintMaarten = AddLanguage("nl-SX", "Dutch (Sint Maarten)");
public static readonly Language OromoEthiopia = AddLanguage("om-ET", "Oromo (Ethiopia)");
public static readonly Language OromoKenya = AddLanguage("om-KE", "Oromo (Kenya)");
public static readonly Language PortugueseAngola = AddLanguage("pt-AO", "Portuguese (Angola)");
public static readonly Language PortugueseBrazil = AddLanguage("pt-BR", "Portuguese (Brazil)");
public static readonly Language PortugueseSwitzerland = AddLanguage("pt-CH", "Portuguese (Switzerland)");
public static readonly Language PortugueseCaboVerde = AddLanguage("pt-CV", "Portuguese (Cabo Verde)");
public static readonly Language PortugueseEquatorialGuinea = AddLanguage("pt-GQ", "Portuguese (Equatorial Guinea)");
public static readonly Language PortugueseGuineaBissau = AddLanguage("pt-GW", "Portuguese (Guinea-Bissau)");
public static readonly Language PortugueseLuxembourg = AddLanguage("pt-LU", "Portuguese (Luxembourg)");
public static readonly Language PortugueseMacaoSAR = AddLanguage("pt-MO", "Portuguese (Macao SAR)");
public static readonly Language PortugueseMozambique = AddLanguage("pt-MZ", "Portuguese (Mozambique)");
public static readonly Language PortuguesePortugal = AddLanguage("pt-PT", "Portuguese (Portugal)");
public static readonly Language PortugueseSãoToméandPríncipe = AddLanguage("pt-ST", "Portuguese (São Tomé and Príncipe)");
public static readonly Language PortugueseTimorLeste = AddLanguage("pt-TL", "Portuguese (Timor-Leste)");
public static readonly Language RomanianMoldova = AddLanguage("ro-MD", "Romanian (Moldova)");
public static readonly Language RomanianRomania = AddLanguage("ro-RO", "Romanian (Romania)");
public static readonly Language RussianBelarus = AddLanguage("ru-BY", "Russian (Belarus)");
public static readonly Language RussianKyrgyzstan = AddLanguage("ru-KG", "Russian (Kyrgyzstan)");
public static readonly Language RussianKazakhstan = AddLanguage("ru-KZ", "Russian (Kazakhstan)");
public static readonly Language RussianMoldova = AddLanguage("ru-MD", "Russian (Moldova)");
public static readonly Language RussianRussia = AddLanguage("ru-RU", "Russian (Russia)");
public static readonly Language RussianUkraine = AddLanguage("ru-UA", "Russian (Ukraine)");
public static readonly Language SamiNorthernFinland = AddLanguage("se-FI", "Sami, Northern (Finland)");
public static readonly Language SamiNorthernNorway = AddLanguage("se-NO", "Sami, Northern (Norway)");
public static readonly Language SamiNorthernSweden = AddLanguage("se-SE", "Sami, Northern (Sweden)");
public static readonly Language SomaliDjibouti = AddLanguage("so-DJ", "Somali (Djibouti)");
public static readonly Language SomaliEthiopia = AddLanguage("so-ET", "Somali (Ethiopia)");
public static readonly Language SomaliKenya = AddLanguage("so-KE", "Somali (Kenya)");
public static readonly Language SomaliSomalia = AddLanguage("so-SO", "Somali (Somalia)");
public static readonly Language AlbanianAlbania = AddLanguage("sq-AL", "Albanian (Albania)");
public static readonly Language AlbanianMacedoniaFYRO = AddLanguage("sq-MK", "Albanian (Macedonia, FYRO)");
public static readonly Language AlbanianKosovo = AddLanguage("sq-XK", "Albanian (Kosovo)");
public static readonly Language siSwatiSwaziland = AddLanguage("ss-SZ", "siSwati (Swaziland)");
public static readonly Language siSwatiSouthAfrica = AddLanguage("ss-ZA", "siSwati (South Africa)");
public static readonly Language SesothoLesotho = AddLanguage("st-LS", "Sesotho (Lesotho)");
public static readonly Language SesothoSouthAfrica = AddLanguage("st-ZA", "Sesotho (South Africa)");
public static readonly Language SwedishÅlandIslands = AddLanguage("sv-AX", "Swedish (Åland Islands)");
public static readonly Language SwedishFinland = AddLanguage("sv-FI", "Swedish (Finland)");
public static readonly Language SwedishSweden = AddLanguage("sv-SE", "Swedish (Sweden)");
public static readonly Language KiswahiliCongoDRC = AddLanguage("sw-CD", "Kiswahili (Congo DRC)");
public static readonly Language KiswahiliKenya = AddLanguage("sw-KE", "Kiswahili (Kenya)");
public static readonly Language KiswahiliTanzania = AddLanguage("sw-TZ", "Kiswahili (Tanzania)");
public static readonly Language KiswahiliUganda = AddLanguage("sw-UG", "Kiswahili (Uganda)");
public static readonly Language TamilIndia = AddLanguage("ta-IN", "Tamil (India)");
public static readonly Language TamilSriLanka = AddLanguage("ta-LK", "Tamil (Sri Lanka)");
public static readonly Language TamilMalaysia = AddLanguage("ta-MY", "Tamil (Malaysia)");
public static readonly Language TamilSingapore = AddLanguage("ta-SG", "Tamil (Singapore)");
public static readonly Language TigrinyaEritrea = AddLanguage("ti-ER", "Tigrinya (Eritrea)");
public static readonly Language TigrinyaEthiopia = AddLanguage("ti-ET", "Tigrinya (Ethiopia)");
public static readonly Language SetswanaBotswana = AddLanguage("tn-BW", "Setswana (Botswana)");
public static readonly Language SetswanaSouthAfrica = AddLanguage("tn-ZA", "Setswana (South Africa)");
public static readonly Language TurkishCyprus = AddLanguage("tr-CY", "Turkish (Cyprus)");
public static readonly Language TurkishTurkey = AddLanguage("tr-TR", "Turkish (Turkey)");
public static readonly Language UrduIndia = AddLanguage("ur-IN", "Urdu (India)");
public static readonly Language UrduPakistan = AddLanguage("ur-PK", "Urdu (Pakistan)");
public static readonly Language YorubaBenin = AddLanguage("yo-BJ", "Yoruba (Benin)");
public static readonly Language YorubaNigeria = AddLanguage("yo-NG", "Yoruba (Nigeria)");
public static readonly Language ChineseSimplifiedChina = AddLanguage("zh-CN", "Chinese (Simplified, China)");
public static readonly Language ChineseTraditionalHongKongSAR = AddLanguage("zh-HK", "Chinese (Traditional, Hong Kong SAR)");
public static readonly Language ChineseTraditionalMacaoSAR = AddLanguage("zh-MO", "Chinese (Traditional, Macao SAR)");
public static readonly Language ChineseSimplifiedSingapore = AddLanguage("zh-SG", "Chinese (Simplified, Singapore)");
public static readonly Language ChineseTraditionalTaiwan = AddLanguage("zh-TW", "Chinese (Traditional, Taiwan)");
}
}

89
tools/GenerateLanguages/Program.cs

@ -7,20 +7,20 @@
using System;
using System.Collections.Generic;
using System.Globalization;
using System.IO;
using System.Linq;
using System.Text;
namespace GenerateLanguages
{
public class Program
public static class Program
{
public static void Main()
{
var languageCodesFile = new FileInfo("../../src/Squidex.Infrastructure/language-codes.csv");
var languageCodesFile = new FileInfo("../../../../../src/Squidex.Infrastructure/language-codes.csv");
var languageFile = Path.Combine(languageCodesFile.DirectoryName, "Languages.cs");
var resourceStream = new FileStream(languageCodesFile.FullName, FileMode.Open);
var writer = new StringWriter();
writer.WriteLine("// ==========================================================================");
writer.WriteLine("// Languages.cs");
@ -39,25 +39,22 @@ namespace GenerateLanguages
writer.WriteLine(" partial class Language");
writer.WriteLine(" {");
var uniqueCodes = new HashSet<string>(new [] { "iv" });
using (var reader = new StreamReader(resourceStream, Encoding.UTF8))
var languages = GetLanguages(languageCodesFile).ToList();
foreach (var language in languages)
{
reader.ReadLine();
var fieldName = language.Iso2Code.ToUpperInvariant();
while (!reader.EndOfStream)
{
var languageLine = reader.ReadLine();
var languageIso2Code = languageLine.Substring(1, 2);
var languageEnglishName = languageLine.Substring(6, languageLine.Length - 7);
writer.WriteLine($" public static readonly Language {fieldName} = AddLanguage(\"{language.Iso2Code}\", \"{language.EnglishName}\");");
}
if (!uniqueCodes.Add(languageIso2Code))
{
Console.WriteLine("Languages contains duplicate {0}", languageIso2Code);
}
writer.WriteLine();
writer.WriteLine(" public static readonly Language {0} = AddLanguage(\"{1}\", \"{2}\");", languageIso2Code.ToUpperInvariant(), languageIso2Code, languageEnglishName);
}
foreach (var culture in GetCultures(languages))
{
var fieldName = culture.EnglishName.ToFieldName();
writer.WriteLine($" public static readonly Language {fieldName} = AddLanguage(\"{culture.Code}\", \"{culture.EnglishName}\");");
}
writer.WriteLine(" }");
@ -65,5 +62,59 @@ namespace GenerateLanguages
File.WriteAllText(languageFile, writer.ToString());
}
private static string ToFieldName(this string name)
{
var sb = new StringBuilder();
foreach (var c in name)
{
if (char.IsLetterOrDigit(c))
{
sb.Append(c);
}
}
return sb.ToString();
}
private static IEnumerable<(string Code, string EnglishName)> GetCultures(List<(string Iso2Code, string EnglishName)> languages)
{
return CultureInfo.GetCultures(CultureTypes.SpecificCultures)
.Where(x => x.ToString().Length == 5)
.Where(x => languages.Any(l => l.Iso2Code.Equals(x.TwoLetterISOLanguageName, StringComparison.OrdinalIgnoreCase)))
.GroupBy(x => x.TwoLetterISOLanguageName)
.Where(x => x.Count() > 1)
.SelectMany(x => x)
.Select(x => (x.ToString(), x.EnglishName));
}
private static IEnumerable<(string Iso2Code, string EnglishName)> GetLanguages(FileInfo file)
{
var uniqueCodes = new HashSet<string>(new[] { "iv" });
var resourceStream = file.OpenRead();
using (var reader = new StreamReader(resourceStream, Encoding.UTF8))
{
reader.ReadLine();
while (!reader.EndOfStream)
{
var line = reader.ReadLine();
var iso2Code = line.Substring(1, 2);
if (uniqueCodes.Add(iso2Code))
{
yield return (iso2Code, line.Substring(6, line.Length - 7));
}
else
{
Console.WriteLine("Languages contains duplicate {0}", iso2Code);
}
}
}
}
}
}

Loading…
Cancel
Save