python类bindtextdomain()的实例源码

__main__.py 文件源码 项目:SafeEyes 作者: slgobinath 项目源码 文件源码 阅读 28 收藏 0 点赞 0 评论 0
def main():
    """
    Start the Safe Eyes.
    """
    system_locale = gettext.translation('safeeyes', localedir=Utility.LOCALE_PATH, languages=[Utility.system_locale(), 'en_US'], fallback=True)
    system_locale.install()
    # locale.bindtextdomain is required for Glade files
    # gettext.bindtextdomain(gettext.textdomain(), Utility.LOCALE_PATH)
    locale.bindtextdomain('safeeyes', Utility.LOCALE_PATH)

    parser = argparse.ArgumentParser(prog='safeeyes', description=_('description'))
    group = parser.add_mutually_exclusive_group()
    group.add_argument('-a', '--about', help=_('show the about dialog'), action='store_true')
    group.add_argument('-d', '--disable', help=_('disable the currently running safeeyes instance'), action='store_true')
    group.add_argument('-e', '--enable', help=_('enable the currently running safeeyes instance'), action='store_true')
    group.add_argument('-q', '--quit', help=_('quit the running safeeyes instance and exit'), action='store_true')
    group.add_argument('-s', '--settings', help=_('show the settings dialog'), action='store_true')
    group.add_argument('-t', '--take-break', help=_('Take a break now').lower(), action='store_true')
    parser.add_argument('--debug', help=_('start safeeyes in debug mode'), action='store_true')
    parser.add_argument('--version', action='version', version='%(prog)s ' + SAFE_EYES_VERSION)
    args = parser.parse_args()

    # Initialize the logging
    Utility.intialize_logging(args.debug)
    config = Config()

    if __running():
        logging.info("Safe Eyes is already running")
        rpc_client = RPCClient(config.get('rpc_port'))
        if args.about:
            rpc_client.show_about()
        elif args.disable:
            rpc_client.disable_safeeyes()
        elif args.enable:
            rpc_client.enable_safeeyes()
        elif args.settings:
            rpc_client.show_settings()
        elif args.take_break:
            rpc_client.take_break()
        elif args.quit:
            rpc_client.quit()
        else:
            # Default behavior is opening settings
            rpc_client.show_settings()
        sys.exit(0)
    elif not args.quit:
        logging.info("Starting Safe Eyes")
        safeeyes = SafeEyes(system_locale, config)
        safeeyes.start()
        Timer(1.0, lambda: __evaluate_arguments(args, safeeyes)).start()
        Gtk.main()
elib_intl.py 文件源码 项目:chirp_fork 作者: mach327 项目源码 文件源码 阅读 19 收藏 0 点赞 0 评论 0
def _install(domain, localedir, asglobal=False):
    '''
    :param domain: translation domain
    :param localedir: locale directory
    :param asglobal: if True, installs the function _() in Python’s
            builtin namespace. Default is False

    Private function doing all the work for the :func:`elib.intl.install` and
    :func:`elib.intl.install_module` functions.
    '''
    # prep locale system
    if asglobal:
        locale.setlocale(locale.LC_ALL, '')

        # on windows systems, set the LANGUAGE environment variable
        if sys.platform == 'win32' or sys.platform == 'nt':
            _putenv('LANGUAGE', _getscreenlanguage())

    # The locale module on Max OS X lacks bindtextdomain so we specifically
    # test on linux2 here. See commit 4ae8b26fd569382ab66a9e844daa0e01de409ceb
    if sys.platform == 'linux2':
        locale.bindtextdomain(domain, localedir)
        locale.bind_textdomain_codeset(domain, 'UTF-8')
        locale.textdomain(domain)

    # initialize Python's gettext interface
    gettext.bindtextdomain(domain, localedir)
    gettext.bind_textdomain_codeset(domain, 'UTF-8')

    if asglobal:
        gettext.textdomain(domain)

    # on windows systems, initialize libintl
    if sys.platform == 'win32' or sys.platform == 'nt':
        from ctypes import cdll
        libintl = cdll.intl
        libintl.bindtextdomain(domain, localedir)
        libintl.bind_textdomain_codeset(domain, 'UTF-8')

        if asglobal:
            libintl.textdomain(domain)

        del libintl
Language.py 文件源码 项目:enigma2-openpli-fulan 作者: Taapat 项目源码 文件源码 阅读 30 收藏 0 点赞 0 评论 0
def __init__(self):
        gettext.install('enigma2', resolveFilename(SCOPE_LANGUAGE, ""), unicode=0, codeset="utf-8")
        gettext.bindtextdomain("enigma2", resolveFilename(SCOPE_LANGUAGE))
        gettext.textdomain("enigma2")
        self.activeLanguage = 0
        self.catalog = None
        self.lang = {}
        self.langlist = []
        # FIXME make list dynamically
        # name, iso-639 language, iso-3166 country. Please don't mix language&country!
        self.addLanguage("Arabic",  "ar", "AE", "ISO-8859-15")
        self.addLanguage("?????????",   "bg", "BG", "ISO-8859-15")
        self.addLanguage("Català",  "ca", "AD", "ISO-8859-15")
        self.addLanguage("?esky",   "cs", "CZ", "ISO-8859-15")
        self.addLanguage("Dansk",   "da", "DK", "ISO-8859-15")
        self.addLanguage("Deutsch", "de", "DE", "ISO-8859-15")
        self.addLanguage("????????",    "el", "GR", "ISO-8859-7")
        self.addLanguage("English", "en", "EN", "ISO-8859-15")
        self.addLanguage("Español", "es", "ES", "ISO-8859-15")
        self.addLanguage("Eesti",   "et", "EE", "ISO-8859-15")
        self.addLanguage("?????",   "fa", "IR", "UTF-8")
        self.addLanguage("Suomi",   "fi", "FI", "ISO-8859-15")
        self.addLanguage("Français",    "fr", "FR", "ISO-8859-15")
        self.addLanguage("Frysk",   "fy", "NL", "ISO-8859-15")
        self.addLanguage("Hebrew",  "he", "IL", "ISO-8859-15")
        self.addLanguage("TChinese",    "hk", "HK", "UTF-8")
        self.addLanguage("Hrvatski",    "hr", "HR", "ISO-8859-15")
        self.addLanguage("Magyar",  "hu", "HU", "ISO-8859-15")
        self.addLanguage("Indonesian",  "id", "ID", "ISO-8859-15")
        self.addLanguage("Íslenska",    "is", "IS", "ISO-8859-15")
        self.addLanguage("Italiano",    "it", "IT", "ISO-8859-15")
        self.addLanguage("Kurdish", "ku", "KU", "ISO-8859-15")
        self.addLanguage("Lietuvi?",    "lt", "LT", "ISO-8859-15")
        self.addLanguage("Latviešu",    "lv", "LV", "ISO-8859-15")
        self.addLanguage("Nederlands",  "nl", "NL", "ISO-8859-15")
        self.addLanguage("Norsk Bokmål","nb", "NO", "ISO-8859-15")
        self.addLanguage("Norsk Nynorsk", "nn", "NO", "ISO-8859-15")
        self.addLanguage("Polski",  "pl", "PL", "ISO-8859-15")
        self.addLanguage("Português",   "pt", "PT", "ISO-8859-15")
        self.addLanguage("Português do Brasil","pt", "BR", "ISO-8859-15")
        self.addLanguage("Romanian",    "ro", "RO", "ISO-8859-15")
        self.addLanguage("???????", "ru", "RU", "ISO-8859-15")
        self.addLanguage("Slovensky",   "sk", "SK", "ISO-8859-15")
        self.addLanguage("Slovenš?ina", "sl", "SI", "ISO-8859-15")
        self.addLanguage("Srpski",  "sr", "YU", "ISO-8859-15")
        self.addLanguage("Svenska", "sv", "SE", "ISO-8859-15")
        self.addLanguage("???????", "th", "TH", "ISO-8859-15")
        self.addLanguage("Türkçe",  "tr", "TR", "ISO-8859-15")
        self.addLanguage("Ukrainian",   "uk", "UA", "ISO-8859-15")
        self.addLanguage("SChinese",    "zh", "CN", "UTF-8")

        self.callbacks = []


问题


面经


文章

微信
公众号

扫码关注公众号