• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Python i18n.find_catalog_source_files函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Python中sphinx.util.i18n.find_catalog_source_files函数的典型用法代码示例。如果您正苦于以下问题:Python find_catalog_source_files函数的具体用法?Python find_catalog_source_files怎么用?Python find_catalog_source_files使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。



在下文中一共展示了find_catalog_source_files函数的17个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。

示例1: test_get_catalogs_for_xx_without_outdated

def test_get_catalogs_for_xx_without_outdated(dir):
    (dir / 'loc1' / 'xx' / 'LC_MESSAGES').makedirs()
    (dir / 'loc1' / 'xx' / 'LC_MESSAGES' / 'test1.po').write_text('#')
    (dir / 'loc1' / 'xx' / 'LC_MESSAGES' / 'test1.mo').write_text('#')
    (dir / 'loc1' / 'xx' / 'LC_MESSAGES' / 'test2.po').write_text('#')
    (dir / 'loc1' / 'xx' / 'LC_MESSAGES' / 'test2.mo').write_text('#')
    (dir / 'loc1' / 'xx' / 'LC_MESSAGES' / 'test3.pot').write_text('#')
    (dir / 'loc1' / 'xx' / 'LC_MESSAGES' / 'test3.mo').write_text('#')
    (dir / 'loc1' / 'xx' / 'LC_MESSAGES' / 'sub').makedirs()
    (dir / 'loc1' / 'xx' / 'LC_MESSAGES' / 'sub' / 'test4.po').write_text('#')
    (dir / 'loc1' / 'xx' / 'LC_MESSAGES' / 'sub' / 'test4.mo').write_text('#')
    (dir / 'loc1' / 'xx' / 'LC_MESSAGES' / 'sub' / 'test5.po').write_text('#')
    (dir / 'loc1' / 'xx' / 'LC_MESSAGES' / 'sub' / 'test5.mo').write_text('#')

    catalogs = i18n.find_catalog_source_files([dir / 'loc1'], 'xx', force_all=False)
    assert not catalogs

    catalogs = i18n.find_catalog_source_files([dir / 'loc1'], 'xx', force_all=True)
    domains = set(c.domain for c in catalogs)
    assert domains == set([
        'test1',
        'test2',
        'sub/test4',
        'sub/test5',
    ])
开发者ID:QuLogic,项目名称:sphinx,代码行数:25,代码来源:test_util_i18n.py


示例2: _init_i18n

 def _init_i18n(self):
     # type: () -> None
     """Load translated strings from the configured localedirs if enabled in
     the configuration.
     """
     if self.config.language is not None:
         logger.info(bold('loading translations [%s]... ' % self.config.language),
                     nonl=True)
         user_locale_dirs = [
             path.join(self.srcdir, x) for x in self.config.locale_dirs]
         # compile mo files if sphinx.po file in user locale directories are updated
         for catinfo in find_catalog_source_files(
                 user_locale_dirs, self.config.language, domains=['sphinx'],
                 charset=self.config.source_encoding):
             catinfo.write_mo(self.config.language)
         locale_dirs = [None, path.join(package_dir, 'locale')] + user_locale_dirs
     else:
         locale_dirs = []
     self.translator, has_translation = locale.init(locale_dirs, self.config.language)
     if self.config.language is not None:
         if has_translation or self.config.language == 'en':
             # "en" never needs to be translated
             logger.info(__('done'))
         else:
             logger.info('not available for built-in messages')
开发者ID:marcosptf,项目名称:fedora,代码行数:25,代码来源:application.py


示例3: compile_update_catalogs

 def compile_update_catalogs(self):
     catalogs = i18n.find_catalog_source_files(
         [path.join(self.srcdir, x) for x in self.config.locale_dirs],
         self.config.language,
         gettext_compact=self.config.gettext_compact)
     message = 'targets for %d po files that are out of date' % len(catalogs)
     self.compile_catalogs(catalogs, message)
开发者ID:dvdotsenko,项目名称:sphinx,代码行数:7,代码来源:__init__.py


示例4: compile_all_catalogs

 def compile_all_catalogs(self):
     catalogs = i18n.find_catalog_source_files(
         [path.join(self.srcdir, x) for x in self.config.locale_dirs],
         self.config.language,
         gettext_compact=self.config.gettext_compact,
         force_all=True)
     message = 'all of %d po files' % len(catalogs)
     self.compile_catalogs(catalogs, message)
开发者ID:dvdotsenko,项目名称:sphinx,代码行数:8,代码来源:__init__.py


示例5: compile_update_catalogs

 def compile_update_catalogs(self):
     # type: () -> None
     catalogs = i18n.find_catalog_source_files(
         [path.join(self.srcdir, x) for x in self.config.locale_dirs],
         self.config.language,
         charset=self.config.source_encoding,
         excluded=Matcher(['**/.?**']))
     message = __('targets for %d po files that are out of date') % len(catalogs)
     self.compile_catalogs(catalogs, message)
开发者ID:willingc,项目名称:sphinx,代码行数:9,代码来源:__init__.py


示例6: test_get_catalogs_for_en

def test_get_catalogs_for_en(dir):
    (dir / 'loc1' / 'xx' / 'LC_MESSAGES').makedirs()
    (dir / 'loc1' / 'xx' / 'LC_MESSAGES' / 'xx_dom.po').write_text('#')
    (dir / 'loc1' / 'en' / 'LC_MESSAGES').makedirs()
    (dir / 'loc1' / 'en' / 'LC_MESSAGES' / 'en_dom.po').write_text('#')

    catalogs = i18n.find_catalog_source_files([dir / 'loc1'], 'en', force_all=False)
    domains = set(c.domain for c in catalogs)
    assert domains == set(['en_dom'])
开发者ID:QuLogic,项目名称:sphinx,代码行数:9,代码来源:test_util_i18n.py


示例7: test_get_catalogs_excluded

def test_get_catalogs_excluded(tempdir):
    (tempdir / 'loc1' / 'en' / 'LC_MESSAGES' / '.git').makedirs()
    (tempdir / 'loc1' / 'en' / 'LC_MESSAGES' / 'en_dom.po').write_text('#')
    (tempdir / 'loc1' / 'en' / 'LC_MESSAGES' / '.git' / 'no_no.po').write_text('#')

    catalogs = i18n.find_catalog_source_files(
        [tempdir / 'loc1'], 'en', force_all=False, excluded=lambda path: '.git' in path)
    domains = set(c.domain for c in catalogs)
    assert domains == set(['en_dom'])
开发者ID:sam-m888,项目名称:sphinx,代码行数:9,代码来源:test_util_i18n.py


示例8: compile_all_catalogs

 def compile_all_catalogs(self):
     # type: () -> None
     catalogs = i18n.find_catalog_source_files(
         [path.join(self.srcdir, x) for x in self.config.locale_dirs],
         self.config.language,
         charset=self.config.source_encoding,
         force_all=True,
         excluded=Matcher(['**/.?**']))
     message = __('all of %d po files') % len(catalogs)
     self.compile_catalogs(catalogs, message)
开发者ID:willingc,项目名称:sphinx,代码行数:10,代码来源:__init__.py


示例9: test_get_catalogs_from_multiple_locale_dirs

def test_get_catalogs_from_multiple_locale_dirs(dir):
    (dir / 'loc1' / 'xx' / 'LC_MESSAGES').makedirs()
    (dir / 'loc1' / 'xx' / 'LC_MESSAGES' / 'test1.po').write_text('#')
    (dir / 'loc2' / 'xx' / 'LC_MESSAGES').makedirs()
    (dir / 'loc2' / 'xx' / 'LC_MESSAGES' / 'test1.po').write_text('#')
    (dir / 'loc2' / 'xx' / 'LC_MESSAGES' / 'test2.po').write_text('#')

    catalogs = i18n.find_catalog_source_files([dir / 'loc1', dir / 'loc2'], 'xx')
    domains = sorted(c.domain for c in catalogs)
    assert domains == ['test1', 'test1', 'test2']
开发者ID:QuLogic,项目名称:sphinx,代码行数:10,代码来源:test_util_i18n.py


示例10: compile_all_catalogs

 def compile_all_catalogs(self):
     # type: () -> None
     catalogs = i18n.find_catalog_source_files(
         [path.join(self.srcdir, x) for x in self.config.locale_dirs],
         self.config.language,
         charset=self.config.source_encoding,
         gettext_compact=self.config.gettext_compact,
         force_all=True)
     message = __('all of %d po files') % len(catalogs)
     self.compile_catalogs(catalogs, message)
开发者ID:papadeltasierra,项目名称:sphinx,代码行数:10,代码来源:__init__.py


示例11: test_get_catalogs_with_compact

def test_get_catalogs_with_compact(dir):
    (dir / 'loc1' / 'xx' / 'LC_MESSAGES').makedirs()
    (dir / 'loc1' / 'xx' / 'LC_MESSAGES' / 'test1.po').write_text('#')
    (dir / 'loc1' / 'xx' / 'LC_MESSAGES' / 'test2.po').write_text('#')
    (dir / 'loc1' / 'xx' / 'LC_MESSAGES' / 'sub').makedirs()
    (dir / 'loc1' / 'xx' / 'LC_MESSAGES' / 'sub' / 'test3.po').write_text('#')
    (dir / 'loc1' / 'xx' / 'LC_MESSAGES' / 'sub' / 'test4.po').write_text('#')

    catalogs = i18n.find_catalog_source_files([dir / 'loc1'], 'xx', gettext_compact=True)
    domains = set(c.domain for c in catalogs)
    assert domains == set(['test1', 'test2', 'sub'])
开发者ID:QuLogic,项目名称:sphinx,代码行数:11,代码来源:test_util_i18n.py


示例12: compile_specific_catalogs

    def compile_specific_catalogs(self, specified_files):
        def to_domain(fpath):
            docname, _ = path.splitext(path_stabilize(fpath))
            dom = find_catalog(docname, self.config.gettext_compact)
            return dom

        specified_domains = set(map(to_domain, specified_files))
        catalogs = i18n.find_catalog_source_files(
            [path.join(self.srcdir, x) for x in self.config.locale_dirs],
            self.config.language,
            domains=list(specified_domains),
            gettext_compact=self.config.gettext_compact)
        message = 'targets for %d po files that are specified' % len(catalogs)
        self.compile_catalogs(catalogs, message)
开发者ID:dvdotsenko,项目名称:sphinx,代码行数:14,代码来源:__init__.py


示例13: compile_specific_catalogs

    def compile_specific_catalogs(self, specified_files):
        # type: (List[unicode]) -> None
        def to_domain(fpath):
            # type: (unicode) -> unicode
            docname = self.env.path2doc(path.abspath(fpath))
            if docname:
                return find_catalog(docname, self.config.gettext_compact)
            else:
                return None

        specified_domains = set(map(to_domain, specified_files))
        specified_domains.discard(None)
        catalogs = i18n.find_catalog_source_files(
            [path.join(self.srcdir, x) for x in self.config.locale_dirs],
            self.config.language,
            domains=list(specified_domains),
            charset=self.config.source_encoding,
            excluded=Matcher(['**/.?**']))
        message = __('targets for %d po files that are specified') % len(catalogs)
        self.compile_catalogs(catalogs, message)
开发者ID:willingc,项目名称:sphinx,代码行数:20,代码来源:__init__.py


示例14: init

def init(locale_dirs, language, catalog='sphinx', charset='utf-8'):
    """Look for message catalogs in `locale_dirs` and *ensure* that there is at
    least a NullTranslations catalog set in `translators`.  If called multiple
    times or if several ``.mo`` files are found, their contents are merged
    together (thus making ``init`` reentrable).
    """
    global translators
    translator = translators.get(catalog)
    # ignore previously failed attempts to find message catalogs
    if isinstance(translator, gettext.NullTranslations):
        translator = None
    # the None entry is the system's default locale path
    has_translation = True

    # compile mo files if po file is updated
    # TODO: remove circular importing
    from sphinx.util.i18n import find_catalog_source_files
    for catinfo in find_catalog_source_files(locale_dirs, language, domains=[catalog],
                                             charset=charset):
        catinfo.write_mo(language)

    # loading
    for dir_ in locale_dirs:
        try:
            trans = gettext.translation(catalog, localedir=dir_,
                                        languages=[language])
            if translator is None:
                translator = trans
            else:
                translator._catalog.update(trans._catalog)
        except Exception:
            # Language couldn't be found in the specified path
            pass
    # guarantee translators[catalog] exists
    if translator is None:
        translator = gettext.NullTranslations()
        has_translation = False
    translators[catalog] = translator
    if hasattr(translator, 'ugettext'):
        translator.gettext = translator.ugettext
    return translator, has_translation
开发者ID:Basis,项目名称:sphinx,代码行数:41,代码来源:__init__.py


示例15: test_get_catalogs_for_xx

def test_get_catalogs_for_xx(dir):
    (dir / 'loc1' / 'xx' / 'LC_MESSAGES').makedirs()
    (dir / 'loc1' / 'xx' / 'LC_MESSAGES' / 'test1.po').write_text('#')
    (dir / 'loc1' / 'xx' / 'LC_MESSAGES' / 'test2.po').write_text('#')
    (dir / 'loc1' / 'xx' / 'LC_MESSAGES' / 'test3.pot').write_text('#')
    (dir / 'loc1' / 'xx' / 'LC_MESSAGES' / 'sub').makedirs()
    (dir / 'loc1' / 'xx' / 'LC_MESSAGES' / 'sub' / 'test4.po').write_text('#')
    (dir / 'loc1' / 'xx' / 'LC_MESSAGES' / 'sub' / 'test5.po').write_text('#')
    (dir / 'loc1' / 'en' / 'LC_MESSAGES').makedirs()
    (dir / 'loc1' / 'en' / 'LC_MESSAGES' / 'test6.po').write_text('#')
    (dir / 'loc1' / 'xx' / 'LC_ALL').makedirs()
    (dir / 'loc1' / 'xx' / 'LC_ALL' / 'test7.po').write_text('#')

    catalogs = i18n.find_catalog_source_files([dir / 'loc1'], 'xx', force_all=False)
    domains = set(c.domain for c in catalogs)
    assert domains == set([
        'test1',
        'test2',
        'sub/test4',
        'sub/test5',
    ])
开发者ID:QuLogic,项目名称:sphinx,代码行数:21,代码来源:test_util_i18n.py


示例16: test_get_catalogs_with_non_existent_locale

def test_get_catalogs_with_non_existent_locale(dir):
    catalogs = i18n.find_catalog_source_files([dir / 'loc1'], 'xx')
    assert not catalogs

    catalogs = i18n.find_catalog_source_files([dir / 'loc1'], None)
    assert not catalogs
开发者ID:QuLogic,项目名称:sphinx,代码行数:6,代码来源:test_util_i18n.py


示例17: test_get_catalogs_with_non_existent_locale_dirs

def test_get_catalogs_with_non_existent_locale_dirs():
    catalogs = i18n.find_catalog_source_files(['dummy'], 'xx')
    assert not catalogs
开发者ID:QuLogic,项目名称:sphinx,代码行数:3,代码来源:test_util_i18n.py



注:本文中的sphinx.util.i18n.find_catalog_source_files函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Python i18n.format_date函数代码示例发布时间:2022-05-27
下一篇:
Python fileutil.copy_asset_file函数代码示例发布时间:2022-05-27
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap