URI: 
       ti18n.py - electrum - Electrum Bitcoin wallet
  HTML git clone https://git.parazyd.org/electrum
   DIR Log
   DIR Files
   DIR Refs
   DIR Submodules
       ---
       ti18n.py (2754B)
       ---
            1 #!/usr/bin/env python
            2 #
            3 # Electrum - lightweight Bitcoin client
            4 # Copyright (C) 2012 thomasv@gitorious
            5 #
            6 # Permission is hereby granted, free of charge, to any person
            7 # obtaining a copy of this software and associated documentation files
            8 # (the "Software"), to deal in the Software without restriction,
            9 # including without limitation the rights to use, copy, modify, merge,
           10 # publish, distribute, sublicense, and/or sell copies of the Software,
           11 # and to permit persons to whom the Software is furnished to do so,
           12 # subject to the following conditions:
           13 #
           14 # The above copyright notice and this permission notice shall be
           15 # included in all copies or substantial portions of the Software.
           16 #
           17 # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
           18 # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
           19 # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
           20 # NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
           21 # BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
           22 # ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
           23 # CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
           24 # SOFTWARE.
           25 import os
           26 
           27 import gettext
           28 
           29 LOCALE_DIR = os.path.join(os.path.dirname(__file__), 'locale')
           30 language = gettext.translation('electrum', LOCALE_DIR, fallback=True)
           31 
           32 
           33 # note: f-strings cannot be translated! see https://stackoverflow.com/q/49797658
           34 #       So this does not work:   _(f"My name: {name}")
           35 #       instead use .format:     _("My name: {}").format(name)
           36 def _(x):
           37     global language
           38     return language.gettext(x)
           39 
           40 
           41 def set_language(x):
           42     global language
           43     if x:
           44         language = gettext.translation('electrum', LOCALE_DIR, fallback=True, languages=[x])
           45 
           46 
           47 languages = {
           48     '': _('Default'),
           49     'ar_SA': _('Arabic'),
           50     'bg_BG': _('Bulgarian'),
           51     'cs_CZ': _('Czech'),
           52     'da_DK': _('Danish'),
           53     'de_DE': _('German'),
           54     'el_GR': _('Greek'),
           55     'eo_UY': _('Esperanto'),
           56     'en_UK': _('English'),
           57     'es_ES': _('Spanish'),
           58     'fa_IR': _('Persian'),
           59     'fr_FR': _('French'),
           60     'hu_HU': _('Hungarian'),
           61     'hy_AM': _('Armenian'),
           62     'id_ID': _('Indonesian'),
           63     'it_IT': _('Italian'),
           64     'ja_JP': _('Japanese'),
           65     'ky_KG': _('Kyrgyz'),
           66     'lv_LV': _('Latvian'),
           67     'nb_NO': _('Norwegian Bokmal'),
           68     'nl_NL': _('Dutch'),
           69     'pl_PL': _('Polish'),
           70     'pt_BR': _('Brasilian'),
           71     'pt_PT': _('Portuguese'),
           72     'ro_RO': _('Romanian'),
           73     'ru_RU': _('Russian'),
           74     'sk_SK': _('Slovak'),
           75     'sl_SI': _('Slovenian'),
           76     'sv_SE': _('Swedish'),
           77     'ta_IN': _('Tamil'),
           78     'th_TH': _('Thai'),
           79     'tr_TR': _('Turkish'),
           80     'uk_UA': _('Ukrainian'),
           81     'vi_VN': _('Vietnamese'),
           82     'zh_CN': _('Chinese Simplified'),
           83     'zh_TW': _('Chinese Traditional')
           84 }