Language detection
- class oceanai.modules.core.language.Language(lang: str = 'ru')[source]
Bases:
objectClass for internationalization (I18N) and localization (L10N)
- Parameters:
lang (str) – Language
- __get_languages() List[str | None]
Get supported languages
Note
private method
- Returns:
List of supported languages
- Return type:
List[Optional[str]]
Example
True – 1 –
In [1]:1from oceanai.modules.core.language import Language 2 3language = Language(lang = 'en') 4language._Language__get_languages()
[1]:1['ru', 'en']
- __get_locales() Dict[str, MethodType]
Get language packs
Note
private method
- Returns:
Dictionary with language packs
- Return type:
Dict[str, MethodType]
Example
True – 1 –
In [1]:1from oceanai.modules.core.language import Language 2 3language = Language(lang = 'en') 4language._Language__get_locales()
[1]:1{ 2 'ru': <bound method GNUTranslations.gettext of <gettext.GNUTranslations object at 0x14680ce50>>, 3 'en': <bound method GNUTranslations.gettext of <gettext.GNUTranslations object at 0x1460ddbb0>> 4}
- __set_locale(lang: str = '') MethodType
Language setting
Note
private method
- Parameters:
lang (str) – Language
- Returns:
MethodType of translating strings into one of the supported languages if the method is launched via the constructor
- Return type:
MethodType
Examples
True – 1 –
In [1]:1from oceanai.modules.core.language import Language 2 3language = Language(lang = 'ru') 4print(language.lang_)
[1]:1ru
– 2 –
In [2]:1from oceanai.modules.core.language import Language 2 3language = Language(lang = 'ru') 4language._Language__set_locale('en') 5print(language.lang_)
[2]:1en
- lang: str = 'ru'
Language options available:
"ru"- Russian language (default)"en"- English language
Examples
True – 1 –
In [1]:1from oceanai.modules.core.language import Language 2 3language = Language() 4print(language.lang, language.lang_)
[1]:1ru ru
– 2 –
In [2]:1from oceanai.modules.core.language import Language 2 3language = Language(lang = 'ru') 4print(language.lang, language.lang_)
[2]:1ru ru
– 3 –
In [3]:1from oceanai.modules.core.language import Language 2 3language = Language(lang = 'en') 4print(language.lang, language.lang_)
[3]:1en en
Better not to do that – 1 –
In [4]:1from oceanai.modules.core.language import Language 2 3language = Language(lang = 'es') 4print(language.lang, language.lang_)
[4]:1es ru
– 2 –
In [5]:1from oceanai.modules.core.language import Language 2 3language = Language(lang = 1) 4print(language.lang, language.lang_)
[5]:11 ru
- Type:
str
- property lang_: str
Getting the current language
- Returns:
Language
- Return type:
str
Examples
True – 1 –
In [1]:1from oceanai.modules.core.language import Language 2 3language = Language() 4print(language.lang_)
[1]:1ru
– 2 –
In [2]:1from oceanai.modules.core.language import Language 2 3language = Language(lang = 'ru') 4print(language.lang_)
[2]:1ru
– 3 –
In [3]:1from oceanai.modules.core.language import Language 2 3language = Language(lang = 'en') 4print(language.lang_)
[3]:1en
Better not to do that – 1 –
In [4]:1from oceanai.modules.core.language import Language 2 3language = Language(lang = 'es') 4print(language.lang_)
[4]:1ru
– 2 –
In [5]:1from oceanai.modules.core.language import Language 2 3language = Language(lang = 1) 4print(language.lang_)
[5]:1ru
- property locales_: List[str]
Get supported languages
- Returns:
List of supported languages
- Return type:
List[str]
Example
True – 1 –
In [1]:1from oceanai.modules.core.language import Language 2 3language = Language(lang = 'en') 4print(language.locales_)
[1]:1['ru', 'en']
- property path_to_locales_: str
Get directory with language packs
- Returns:
Directory with language packs
- Return type:
str
Example
True – 1 –
In [1]:1from oceanai.modules.core.language import Language 2 3language = Language(lang = 'en') 4# Each user has their own path 5print(language.path_to_locales_)
[1]:1/Users/dl/GitHub/OCEANAI/oceanai/modules/locales