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 | 
