diff --git a/Utils.ts b/Utils.ts index b55b4d775..6c3e862a9 100644 --- a/Utils.ts +++ b/Utils.ts @@ -919,12 +919,15 @@ In the case that MapComplete is pointed to the testing grounds, the edit will be public static MapToObj(d: Map, onValue: ((t: T, key: string) => any) = undefined): object { const o = {} - d.forEach((value, key) => { + const keys = Array.from(d.keys()) + keys.sort(); + for (const key of keys) { + let value = d.get(key) if (onValue !== undefined) { value = onValue(value, key) } o[key] = value; - }) + } return o } diff --git a/assets/language_translations.json b/assets/language_translations.json index 2582af26e..dd23cb53b 100644 --- a/assets/language_translations.json +++ b/assets/language_translations.json @@ -1,67 +1,19 @@ { - "de": { - "ca": "alemany", - "en": "German", - "fr": "allemand", - "hu": "német", - "id": "Jerman", - "it": "tedesco", - "pt_BR": "alemão", - "de": "Deutsch", - "nl": "Duits", - "es": "alemán", - "ja": "ドイツ語", - "eo": "germana lingvo", - "fi": "saksa", - "gl": "lingua alemá", - "nb_NO": "tysk", - "pl": "język niemiecki", - "pt": "alemão", - "ru": "немецкий язык", - "sl": "nemščina", - "sv": "tyska", - "zh_Hans": "德语", - "zh_Hant": "德語" - }, - "eo": { - "en": "Esperanto", - "eo": "Esperanto", - "nl": "Esperanto", - "de": "Esperanto", - "id": "Esperanto", - "zh_Hant": "世界語", - "ja": "エスペラント", - "fr": "espéranto", - "ca": "esperanto", - "es": "esperanto", - "fi": "esperanto", - "gl": "esperanto", - "hu": "eszperantó", - "it": "esperanto", - "nb_NO": "esperanto", - "pl": "esperanto", - "pt": "esperanto", - "pt_BR": "esperanto", - "ru": "эсперанто", - "sl": "esperanto", - "sv": "esperanto", - "zh_Hans": "世界语" - }, "ca": { - "en": "Catalan", - "de": "Katalanisch", - "nl": "Catalaans", "ca": "català", - "es": "catalán", - "fr": "catalan", + "de": "Katalanisch", + "en": "Catalan", "eo": "kataluna lingvo", + "es": "catalán", "fi": "katalaani", + "fr": "catalan", "gl": "lingua catalá", "hu": "katalán", "id": "Bahasa Katala", "it": "catalano", "ja": "カタルーニャ語", "nb_NO": "katalansk", + "nl": "Catalaans", "pl": "język kataloński", "pt": "língua catalã", "pt_BR": "língua catalã", @@ -71,38 +23,86 @@ "zh_Hans": "加泰罗尼亚语", "zh_Hant": "加泰隆尼亞語" }, - "fr": { - "zh_Hans": "法语", - "es": "francés", - "nl": "Frans", - "en": "French", - "fr": "français", - "it": "francese", - "pt": "francês", - "hu": "francia", - "ca": "francès", - "zh_Hant": "法語", - "de": "Französisch", - "id": "Prancis", - "eo": "franca lingvo", - "fi": "ranska", - "gl": "lingua francesa", - "ja": "フランス語", - "nb_NO": "fransk", - "pl": "język francuski", - "pt_BR": "francês", - "ru": "французский язык", - "sl": "francoščina", - "sv": "franska" + "de": { + "ca": "alemany", + "de": "Deutsch", + "en": "German", + "eo": "germana lingvo", + "es": "alemán", + "fi": "saksa", + "fr": "allemand", + "gl": "lingua alemá", + "hu": "német", + "id": "Jerman", + "it": "tedesco", + "ja": "ドイツ語", + "nb_NO": "tysk", + "nl": "Duits", + "pl": "język niemiecki", + "pt": "alemão", + "pt_BR": "alemão", + "ru": "немецкий язык", + "sl": "nemščina", + "sv": "tyska", + "zh_Hans": "德语", + "zh_Hant": "德語" + }, + "en": { + "ca": "anglès", + "de": "Englisch", + "en": "English", + "eo": "angla lingvo", + "es": "inglés", + "fi": "englanti", + "fr": "anglais", + "gl": "lingua inglesa", + "hu": "angol", + "id": "Inggris", + "it": "inglese", + "ja": "英語", + "nb_NO": "engelsk", + "nl": "Engels", + "pl": "język angielski", + "pt": "inglês", + "pt_BR": "inglês", + "ru": "английский язык", + "sl": "angleščina", + "sv": "engelska", + "zh_Hans": "英语", + "zh_Hant": "英語" + }, + "eo": { + "ca": "esperanto", + "de": "Esperanto", + "en": "Esperanto", + "eo": "Esperanto", + "es": "esperanto", + "fi": "esperanto", + "fr": "espéranto", + "gl": "esperanto", + "hu": "eszperantó", + "id": "Esperanto", + "it": "esperanto", + "ja": "エスペラント", + "nb_NO": "esperanto", + "nl": "Esperanto", + "pl": "esperanto", + "pt": "esperanto", + "pt_BR": "esperanto", + "ru": "эсперанто", + "sl": "esperanto", + "sv": "esperanto", + "zh_Hans": "世界语", + "zh_Hant": "世界語" }, "es": { - "en": "Spanish", - "es": "español", "ca": "castellà", - "fr": "espagnol", "de": "Spanisch", + "en": "Spanish", "eo": "hispana lingvo", + "es": "español", "fi": "espanja", + "fr": "espagnol", "gl": "lingua castelá", "hu": "spanyol", "id": "Spanyol", @@ -119,12 +119,80 @@ "zh_Hans": "西班牙语", "zh_Hant": "西班牙語" }, + "fi": { + "ca": "finès", + "de": "Finnisch", + "en": "Finnish", + "eo": "finna lingvo", + "es": "finés", + "fi": "suomi", + "fr": "finnois", + "gl": "finés", + "hu": "finn", + "id": "Finlandia", + "it": "finlandese", + "ja": "フィンランド語", + "nb_NO": "finsk", + "nl": "Fins", + "pl": "język fiński", + "pt": "finlandês", + "pt_BR": "língua finlandesa", + "ru": "финский язык", + "sl": "finščina", + "sv": "finska", + "zh_Hans": "芬兰语", + "zh_Hant": "芬蘭語" + }, + "fil": { + "ca": "filipí", + "de": "Filipino", + "en": "Filipino", + "eo": "filipina lingvo", + "es": "idioma filipino", + "fi": "filipino", + "fr": "Philippin", + "id": "Bahasa Filipino", + "it": "filippino", + "ja": "フィリピン語", + "nb_NO": "filippinsk", + "nl": "Filipijns", + "pl": "Język filipiński", + "pt": "Língua filipina", + "pt_BR": "Língua filipina", + "ru": "филиппинский язык", + "sv": "Filipino", + "zh_Hant": "菲律賓語" + }, + "fr": { + "ca": "francès", + "de": "Französisch", + "en": "French", + "eo": "franca lingvo", + "es": "francés", + "fi": "ranska", + "fr": "français", + "gl": "lingua francesa", + "hu": "francia", + "id": "Prancis", + "it": "francese", + "ja": "フランス語", + "nb_NO": "fransk", + "nl": "Frans", + "pl": "język francuski", + "pt": "francês", + "pt_BR": "francês", + "ru": "французский язык", + "sl": "francoščina", + "sv": "franska", + "zh_Hans": "法语", + "zh_Hant": "法語" + }, "gl": { - "en": "Galician", - "es": "gallego", "ca": "gallec", "de": "Galicisch", + "en": "Galician", "eo": "galega lingvo", + "es": "gallego", "fi": "galicia", "fr": "galicien", "gl": "lingua galega", @@ -142,258 +210,14 @@ "sv": "galiciska", "zh_Hant": "加利西亞語" }, - "fi": { - "nl": "Fins", - "de": "Finnisch", - "en": "Finnish", - "ja": "フィンランド語", - "fi": "suomi", - "es": "finés", - "ru": "финский язык", - "hu": "finn", - "id": "Finlandia", - "it": "finlandese", - "ca": "finès", - "eo": "finna lingvo", - "fr": "finnois", - "gl": "finés", - "nb_NO": "finsk", - "pl": "język fiński", - "pt": "finlandês", - "pt_BR": "língua finlandesa", - "sl": "finščina", - "sv": "finska", - "zh_Hans": "芬兰语", - "zh_Hant": "芬蘭語" - }, - "en": { - "id": "Inggris", - "it": "inglese", - "ja": "英語", - "nb_NO": "engelsk", - "nl": "Engels", - "ca": "anglès", - "de": "Englisch", - "en": "English", - "eo": "angla lingvo", - "es": "inglés", - "fi": "englanti", - "fr": "anglais", - "gl": "lingua inglesa", - "hu": "angol", - "pl": "język angielski", - "pt": "inglês", - "pt_BR": "inglês", - "ru": "английский язык", - "sl": "angleščina", - "sv": "engelska", - "zh_Hans": "英语", - "zh_Hant": "英語" - }, - "ru": { - "zh_Hans": "俄语", - "zh_Hant": "俄語", - "hu": "orosz", - "en": "Russian", - "ru": "русский язык", - "es": "ruso", - "fr": "russe", - "nl": "Russisch", - "ca": "rus", - "de": "Russisch", - "eo": "rusa lingvo", - "fi": "venäjä", - "gl": "lingua rusa", - "id": "Rusia", - "it": "russo", - "ja": "ロシア語", - "nb_NO": "russisk", - "pl": "język rosyjski", - "pt": "russo", - "pt_BR": "russo", - "sl": "ruščina", - "sv": "ryska" - }, - "sl": { - "en": "Slovene", - "ca": "eslovè", - "de": "Slowenisch", - "eo": "slovena lingvo", - "es": "esloveno", - "fi": "sloveeni", - "fr": "slovène", - "gl": "lingua eslovena", - "hu": "szlovén", - "id": "Bahasa Slovenia", - "it": "sloveno", - "ja": "スロベニア語", - "nb_NO": "slovensk", - "nl": "Sloveens", - "pl": "język słoweński", - "pt": "língua eslovena", - "pt_BR": "língua eslovena", - "ru": "словенский язык", - "sl": "slovenščina", - "sv": "slovenska", - "zh_Hant": "斯洛維尼亞語" - }, - "sv": { - "en": "Swedish", - "ca": "suec", - "es": "sueco", - "fr": "suédois", - "ja": "スウェーデン語", - "sv": "svenska", - "hu": "svéd", - "id": "Swedia", - "it": "svedese", - "de": "Schwedisch", - "eo": "sveda lingvo", - "fi": "ruotsi", - "gl": "lingua sueca", - "nb_NO": "svensk", - "nl": "Zweeds", - "pl": "język szwedzki", - "pt": "língua sueca", - "pt_BR": "língua sueca", - "ru": "шведский язык", - "sl": "švedščina", - "zh_Hant": "瑞典語" - }, - "it": { - "en": "Italian", - "ja": "イタリア語", - "es": "italiano", - "hu": "olasz", - "id": "Italia", - "it": "italiano", - "fr": "italien", - "de": "Italienisch", - "nl": "Italiaans", - "pt": "italiano", - "ca": "italià", - "eo": "itala lingvo", - "fi": "italia", - "gl": "lingua italiana", - "nb_NO": "italiensk", - "pl": "język włoski", - "pt_BR": "língua italiana", - "ru": "итальянский язык", - "sl": "italijanščina", - "sv": "italienska", - "zh_Hans": "意大利语", - "zh_Hant": "義大利語" - }, - "pt": { - "en": "Portuguese", - "hu": "portugál", - "id": "Portugis", - "it": "portoghese", - "nl": "Portugees", - "pt": "português", - "ca": "portuguès", - "de": "Portugiesisch", - "eo": "portugala lingvo", - "es": "portugués", - "fi": "portugali", - "fr": "portugais", - "gl": "lingua portuguesa", - "ja": "ポルトガル語", - "nb_NO": "portugisisk", - "pl": "język portugalski", - "pt_BR": "português", - "ru": "португальский язык", - "sl": "portugalščina", - "sv": "portugisiska", - "zh_Hans": "葡萄牙语", - "zh_Hant": "葡萄牙語" - }, - "pl": { - "de": "Polnisch", - "en": "Polish", - "pl": "język polski", - "es": "polaco", - "fr": "polonais", - "nb_NO": "polsk", - "nl": "Pools", - "pt": "polaco", - "pt_BR": "língua polonesa", - "ru": "польский язык", - "sl": "poljščina", - "sv": "polska", - "zh_Hans": "波兰语", - "zh_Hant": "波蘭語", - "ca": "polonès", - "eo": "pola lingvo", - "fi": "puola", - "gl": "lingua polaca", - "hu": "lengyel", - "id": "Polandia", - "it": "polacco", - "ja": "ポーランド語" - }, - "ja": { - "nb_NO": "japansk", - "nl": "Japans", - "pl": "język japoński", - "pt": "japonês", - "pt_BR": "língua japonesa", - "ru": "японский язык", - "sl": "Japonščina", - "sv": "japanska", - "zh_Hans": "日语", - "zh_Hant": "日語", - "id": "bahasa Jepang", - "en": "Japanese", - "ca": "japonès", - "de": "Japanisch", - "eo": "japana lingvo", - "es": "japonés", - "fi": "japani", - "fr": "japonais", - "gl": "lingua xaponesa", - "hu": "japán", - "it": "giapponese", - "ja": "日本語" - }, - "nl": { - "en": "Dutch", - "de": "Niederländisch", - "nl": "Nederlands", - "ca": "neerlandès", - "fr": "néerlandais", - "hu": "holland", - "id": "Belanda", - "it": "olandese", - "es": "Neerlandés", - "eo": "nederlanda lingvo", - "fi": "hollanti", - "gl": "lingua neerlandesa", - "ja": "オランダ語", - "nb_NO": "nederlandsk", - "pl": "język niderlandzki", - "pt": "neerlandês", - "pt_BR": "neerlandês", - "ru": "нидерландский язык", - "sl": "Nizozemščina", - "sv": "nederländska", - "zh_Hans": "荷兰语", - "zh_Hant": "荷蘭語" - }, "hu": { - "en": "Hungarian", - "fr": "hongrois", - "pt": "húngaro", - "pt_BR": "língua húngara", - "ru": "венгерский язык", - "sl": "madžarščina", - "sv": "ungerska", - "zh_Hant": "匈牙利語", "ca": "hongarès", "de": "Ungarisch", + "en": "Hungarian", "eo": "hungara lingvo", "es": "húngaro", "fi": "unkari", + "fr": "hongrois", "gl": "lingua húngara", "hu": "magyar", "id": "Hongaria", @@ -401,20 +225,26 @@ "ja": "ハンガリー語", "nb_NO": "ungarsk", "nl": "Hongaars", - "pl": "język węgierski" + "pl": "język węgierski", + "pt": "húngaro", + "pt_BR": "língua húngara", + "ru": "венгерский язык", + "sl": "madžarščina", + "sv": "ungerska", + "zh_Hant": "匈牙利語" }, "id": { + "ca": "indonesi", + "de": "Indonesisch", "en": "Indonesian", + "eo": "indonezia lingvo", "es": "indonesio", + "fi": "indonesia", "fr": "indonésien", + "gl": "lingua indonesia", "hu": "indonéz", "id": "Indonesia", "it": "indonesiano", - "ca": "indonesi", - "de": "Indonesisch", - "eo": "indonezia lingvo", - "fi": "indonesia", - "gl": "lingua indonesia", "ja": "インドネシア語", "nb_NO": "indonesisk", "nl": "Indonesisch", @@ -427,6 +257,54 @@ "zh_Hans": "印度尼西亚语", "zh_Hant": "印尼語" }, + "it": { + "ca": "italià", + "de": "Italienisch", + "en": "Italian", + "eo": "itala lingvo", + "es": "italiano", + "fi": "italia", + "fr": "italien", + "gl": "lingua italiana", + "hu": "olasz", + "id": "Italia", + "it": "italiano", + "ja": "イタリア語", + "nb_NO": "italiensk", + "nl": "Italiaans", + "pl": "język włoski", + "pt": "italiano", + "pt_BR": "língua italiana", + "ru": "итальянский язык", + "sl": "italijanščina", + "sv": "italienska", + "zh_Hans": "意大利语", + "zh_Hant": "義大利語" + }, + "ja": { + "ca": "japonès", + "de": "Japanisch", + "en": "Japanese", + "eo": "japana lingvo", + "es": "japonés", + "fi": "japani", + "fr": "japonais", + "gl": "lingua xaponesa", + "hu": "japán", + "id": "bahasa Jepang", + "it": "giapponese", + "ja": "日本語", + "nb_NO": "japansk", + "nl": "Japans", + "pl": "język japoński", + "pt": "japonês", + "pt_BR": "língua japonesa", + "ru": "японский язык", + "sl": "Japonščina", + "sv": "japanska", + "zh_Hans": "日语", + "zh_Hant": "日語" + }, "nb_NO": { "ca": "bokmål", "de": "Bokmål", @@ -449,24 +327,77 @@ "sl": "Bokmål", "sv": "bokmål" }, - "zh_Hant": { - "ca": "xinès simplificat", - "en": "Simplified Chinese", - "fr": "chinois simplifié", - "ru": "упрощённый китайский", - "sv": "förenklad kinesiska", - "de": "vereinfachtes Chinesisch", - "eo": "simpligita ĉina skribsistemo", - "es": "chino simplificado", - "it": "cinese semplificato", - "ja": "簡体字中国語", - "nb_NO": "tradisjonell kinesisk", - "pl": "język chiński uproszczony", - "pt": "chinês simplificado", - "zh_Hans": "简体中文", - "zh_Hant": "簡體中文", - "hu": "egyszerűsített kínai", - "id": "aksara Han sederhana" + "nl": { + "ca": "neerlandès", + "de": "Niederländisch", + "en": "Dutch", + "eo": "nederlanda lingvo", + "es": "Neerlandés", + "fi": "hollanti", + "fr": "néerlandais", + "gl": "lingua neerlandesa", + "hu": "holland", + "id": "Belanda", + "it": "olandese", + "ja": "オランダ語", + "nb_NO": "nederlandsk", + "nl": "Nederlands", + "pl": "język niderlandzki", + "pt": "neerlandês", + "pt_BR": "neerlandês", + "ru": "нидерландский язык", + "sl": "Nizozemščina", + "sv": "nederländska", + "zh_Hans": "荷兰语", + "zh_Hant": "荷蘭語" + }, + "pl": { + "ca": "polonès", + "de": "Polnisch", + "en": "Polish", + "eo": "pola lingvo", + "es": "polaco", + "fi": "puola", + "fr": "polonais", + "gl": "lingua polaca", + "hu": "lengyel", + "id": "Polandia", + "it": "polacco", + "ja": "ポーランド語", + "nb_NO": "polsk", + "nl": "Pools", + "pl": "język polski", + "pt": "polaco", + "pt_BR": "língua polonesa", + "ru": "польский язык", + "sl": "poljščina", + "sv": "polska", + "zh_Hans": "波兰语", + "zh_Hant": "波蘭語" + }, + "pt": { + "ca": "portuguès", + "de": "Portugiesisch", + "en": "Portuguese", + "eo": "portugala lingvo", + "es": "portugués", + "fi": "portugali", + "fr": "portugais", + "gl": "lingua portuguesa", + "hu": "portugál", + "id": "Portugis", + "it": "portoghese", + "ja": "ポルトガル語", + "nb_NO": "portugisisk", + "nl": "Portugees", + "pl": "język portugalski", + "pt": "português", + "pt_BR": "português", + "ru": "португальский язык", + "sl": "portugalščina", + "sv": "portugisiska", + "zh_Hans": "葡萄牙语", + "zh_Hant": "葡萄牙語" }, "pt_BR": { "ca": "portuguès brasiler", @@ -490,5 +421,94 @@ "sv": "brasiliansk portugisiska", "zh_Hans": "巴西葡萄牙语", "zh_Hant": "巴西葡萄牙語" + }, + "ru": { + "ca": "rus", + "de": "Russisch", + "en": "Russian", + "eo": "rusa lingvo", + "es": "ruso", + "fi": "venäjä", + "fr": "russe", + "gl": "lingua rusa", + "hu": "orosz", + "id": "Rusia", + "it": "russo", + "ja": "ロシア語", + "nb_NO": "russisk", + "nl": "Russisch", + "pl": "język rosyjski", + "pt": "russo", + "pt_BR": "russo", + "ru": "русский язык", + "sl": "ruščina", + "sv": "ryska", + "zh_Hans": "俄语", + "zh_Hant": "俄語" + }, + "sl": { + "ca": "eslovè", + "de": "Slowenisch", + "en": "Slovene", + "eo": "slovena lingvo", + "es": "esloveno", + "fi": "sloveeni", + "fr": "slovène", + "gl": "lingua eslovena", + "hu": "szlovén", + "id": "Bahasa Slovenia", + "it": "sloveno", + "ja": "スロベニア語", + "nb_NO": "slovensk", + "nl": "Sloveens", + "pl": "język słoweński", + "pt": "língua eslovena", + "pt_BR": "língua eslovena", + "ru": "словенский язык", + "sl": "slovenščina", + "sv": "slovenska", + "zh_Hant": "斯洛維尼亞語" + }, + "sv": { + "ca": "suec", + "de": "Schwedisch", + "en": "Swedish", + "eo": "sveda lingvo", + "es": "sueco", + "fi": "ruotsi", + "fr": "suédois", + "gl": "lingua sueca", + "hu": "svéd", + "id": "Swedia", + "it": "svedese", + "ja": "スウェーデン語", + "nb_NO": "svensk", + "nl": "Zweeds", + "pl": "język szwedzki", + "pt": "língua sueca", + "pt_BR": "língua sueca", + "ru": "шведский язык", + "sl": "švedščina", + "sv": "svenska", + "zh_Hant": "瑞典語" + }, + "zh_Hant": { + "ca": "xinès simplificat", + "de": "vereinfachtes Chinesisch", + "en": "Simplified Chinese", + "eo": "simpligita ĉina skribsistemo", + "es": "chino simplificado", + "fr": "chinois simplifié", + "hu": "egyszerűsített kínai", + "id": "aksara Han sederhana", + "it": "cinese semplificato", + "ja": "簡体字中国語", + "nb_NO": "forenklet kinesisk", + "pl": "język chiński uproszczony", + "pt": "chinês simplificado", + "ru": "упрощённый китайский", + "sv": "förenklad kinesiska", + "zh_Hans": "简体中文", + "zh_Hant": "簡體中文" } } \ No newline at end of file diff --git a/scripts/fetchLanguages.ts b/scripts/fetchLanguages.ts index 69aa952ea..33e24012c 100644 --- a/scripts/fetchLanguages.ts +++ b/scripts/fetchLanguages.ts @@ -44,10 +44,12 @@ async function fetchRegularLanguages() { const zh_hant = await fetchSpecial(18130932, "zh_Hant") const zh_hans = await fetchSpecial(13414913, "zh_Hant") const pt_br = await fetchSpecial( 750553, "pt_BR") - + const fil = await fetchSpecial( 33298, "fil") + bindings.push(...zh_hant) bindings.push(...zh_hans) bindings.push(...pt_br) + bindings.push(...fil) return result.results.bindings