diff options
Diffstat (limited to 'client/global.gd')
-rw-r--r-- | client/global.gd | 26 |
1 files changed, 22 insertions, 4 deletions
diff --git a/client/global.gd b/client/global.gd index ded7dbe1..9521eed7 100644 --- a/client/global.gd +++ b/client/global.gd @@ -2,6 +2,7 @@ # Copyright 2024 tpart # Copyright 2024 metamuffin # Copyright 2024 nokoe +# Copyright 2024 BigBrotherNii # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU Affero General Public License as published by @@ -377,15 +378,32 @@ const NATIVE_LANGUAGE_NAMES = { "tr": "Türkçe", "fi": "suomen", "ar": "العربية", - "zh_Hans": "中文 (Simplified)", # TODO in chinese - "zh_Hant": "中文 (Traditional)", + "zh_Hans": "中文 (简化字)", + "zh_Hant": "中文 (繁體字)", "pl": "Polski", "pt": "Português", } func language_display(l: String): return "%s (%s)" % [NATIVE_LANGUAGE_NAMES[l], l] func language_array() -> Array: - var lang: Array = [["system", tr("System default")], ["en", language_display("en")]] + var lang: Array = [["system", tr("System default")]] + var to_order : Array = [] for l in TranslationServer.get_loaded_locales(): - lang.append([l, language_display(l)]) + to_order.append([l, language_display(l)]) + to_order.append(["en", language_display("en")]) + to_order = sort_language_array(to_order) + for i in to_order: + lang.append(i) return lang + +func sort_language_array(lang : Array) -> Array: + var sorting_array : Array = [] + var sorted_lang : Array = [] + for i in lang.size(): + sorting_array.append(lang[i][0]) + sorting_array.sort() + for shorthand in sorting_array: + for arr in lang: + if arr[0] == shorthand: + sorted_lang.append(arr) + return sorted_lang |