2024-10-14 10:49:16 +00:00
EXISTING_STRINGS = {
" kanken_online " ,
" options " ,
" log_in " ,
" register " ,
2024-10-14 11:02:11 +00:00
" log_out " ,
2024-10-14 11:46:16 +00:00
" kanji " ,
" forum " ,
2024-10-14 11:02:11 +00:00
" main_page " ,
" username " ,
2024-10-14 11:13:26 +00:00
" password " ,
" search " ,
2024-10-14 11:46:16 +00:00
" search_placeholder " ,
" include_kanji " ,
" include_kotoba "
2024-10-14 10:49:16 +00:00
}
ENGLISH = {
" kanken_online " : " KankenOnline " ,
" options " : " Options " ,
" log_in " : " Log in " ,
" register " : " Register " ,
" log_out " : " Log out " ,
2024-10-14 10:54:26 +00:00
" kanji " : " Kanji " ,
2024-10-14 11:02:11 +00:00
" forum " : " Forum " ,
" main_page " : " Main Page " ,
" username " : " Username " ,
2024-10-14 11:10:37 +00:00
" password " : " Password " ,
2024-10-14 11:13:26 +00:00
" search " : " Search " ,
2024-10-14 11:46:16 +00:00
" search_placeholder " : " Enter kanji or word " ,
" include_kanji " : " Include kanji " ,
" include_kotoba " : " Include kotoba "
2024-10-14 10:49:16 +00:00
}
JAPANESE = {
" kanken_online " : " 漢検オンライン " ,
" options " : " 設定 " ,
" log_in " : " ログイン " ,
" register " : " 登録 " ,
" log_out " : " ログアウト " ,
2024-10-14 10:54:26 +00:00
" kanji " : " 漢字 " ,
2024-10-14 11:02:11 +00:00
" forum " : " 掲示板 " ,
" main_page " : " ホームページ " ,
" username " : " ユーザー名 " ,
2024-10-14 11:13:26 +00:00
" password " : " パスワード " ,
" search " : " 検索 " ,
2024-10-14 11:46:16 +00:00
" search_placeholder " : " 漢字・言葉を入力 " ,
" include_kanji " : " 漢字を含む " ,
" include_kotoba " : " 言葉を含む " ,
2024-10-14 10:49:16 +00:00
}
LANGUAGES = [
ENGLISH ,
JAPANESE
]
assert all ( all ( key in lang for key in EXISTING_STRINGS ) for lang in LANGUAGES ) # Ensure all strings are mapped for all existing languages
2024-10-14 11:46:16 +00:00
assert not [ key for lang in LANGUAGES for key in lang if ( ( key in lang ) and ( key not in EXISTING_STRINGS ) ) ]
# assert not any((((key in lang) and (key not in EXISTING_STRINGS)) for key in lang) for lang in LANGUAGES) # Ensure no languages have strings not specified by the main index
2024-10-14 10:49:16 +00:00
def localize ( text_id : str , language : dict [ str , str ] ) - > str :
return language [ text_id ]