Ejemplo n.º 1
0
    def setUp(self):
        self.olddir = os.getcwd()
        self.datadir = os.path.join(os.path.dirname(__file__), "data")
        os.chdir(self.datadir)
        _global_log.threshold = 5  # shut up distutils logging

        self.dist = Distribution(dict(name="TestProject", version="0.1", packages=["project"]))
        self.cmd = frontend.init_catalog(self.dist)
        self.cmd.initialize_options()
Ejemplo n.º 2
0
def init():
    for locale in config.LANGUAGES.keys():
        cmd = babel.init_catalog(dist)
        cmd.input_file = messages_pot
        cmd.output_dir = 'translations'
        cmd.locale = locale

        cmd.finalize_options()
        cmd.run()
Ejemplo n.º 3
0
    def setUp(self):
        self.olddir = os.getcwd()
        os.chdir(data_dir)
        _global_log.threshold = 5  # shut up distutils logging

        self.dist = Distribution(
            dict(name='TestProject', version='0.1', packages=['project']))
        self.cmd = frontend.init_catalog(self.dist)
        self.cmd.initialize_options()
Ejemplo n.º 4
0
def init():
    for locale in config.LANGUAGES.keys():
        cmd = babel.init_catalog(dist)
        cmd.input_file = messages_pot
        cmd.output_dir = 'translations'
        cmd.locale = locale

        cmd.finalize_options()
        cmd.run()
Ejemplo n.º 5
0
    def setUp(self):
        self.olddir = os.getcwd()
        os.chdir(data_dir)
        _global_log.threshold = 5  # shut up distutils logging

        self.dist = Distribution(dict(
            name='TestProject',
            version='0.1',
            packages=['project']
        ))
        self.cmd = frontend.init_catalog(self.dist)
        self.cmd.initialize_options()
Ejemplo n.º 6
0
    def run(self):
        for catalog in catalogs:
            babel_ic = babel.init_catalog(self.distribution)
            babel_ic.initialize_options()

            babel_ic.locale = catalog
            babel_ic.input_file = "locale/rc_profit_calc.pot"
            babel_ic.output_dir = "locale"
            babel_ic.output_file = "locale/{}/LC_MESSAGES/rc_profit_calc.po".format(
                catalog)

            babel_ic.finalize_options()
            babel_ic.run()
Ejemplo n.º 7
0
def init(template_path, out_dir, locale, domain="messages"):
    from distutils.errors import DistutilsOptionError
    from babel.messages.frontend import init_catalog
    cmdinst = init_catalog()
    cmdinst.initialize_options()
    cmdinst.input_file = template_path
    cmdinst.output_dir = out_dir
    cmdinst.locale = locale
    cmdinst.domain = domain
    try:
        cmdinst.ensure_finalized()
        cmdinst.run()
    except DistutilsOptionError as err:
        raise err
Ejemplo n.º 8
0
    def run(símismo):
        # Antes de generar la distribución de código fuente, tenemos que actualizar las traducciones...

        # Primero, extraer los nuevos mensajes para traducir.
        símismo.run_command('extraer_mens')

        # Ahora, inicializar los nuevos idiomas.
        for i in idiomas_nuevos:
            inicializador = babel.init_catalog(dist=símismo.distribution)
            inicializador.locale = i
            inicializador.run()

        # Actualizar traducciones existentes.
        símismo.run_command('act_cat')

        # Compilar todo.
        símismo.run_command('compilar_cat')

        # lassi.gen_trads(__file__)  # para hacer: activar generación automática de traducciones de código con lassi

        # Seguimos con la generación de distribución fuente según el proceso habitual de Python.
        super().run()
Ejemplo n.º 9
0
def main():
    """
    Convert .pot files into .po files based on the configuration provided
    """
    if len(sys.argv) < 2:
        print("Invalid syntax")
        sys.exit(1)

    config = json.loads(sys.argv[1])
    if 'path' not in config or 'languages' not in config or 'filename' not in config:
        print("Invalid syntax")
        sys.exit()

    localization_path = config['path']
    filename = config['filename']
    languages = config['languages']

    use_file = os.path.join(localization_path, 'templates', filename)

    if not os.path.isfile(use_file):
      return "Error: file not found."

    for lang in languages:
      if os.path.isfile("%s/%s/LC_MESSAGES/%s.po" % (
              localization_path, lang, filename[:-4])):
          print("Updating catalog %s/%s.po." % (lang, filename[:-4]))
          method = update_catalog()
      else:
          print("Initializing catalog %s/%s.po." % (lang, filename[:-4]))
          method = init_catalog()

      method.initialize_options()
      method.input_file = use_file
      method.domain = filename[:-4]
      method.output_dir = localization_path
      method.locale = lang
      method.finalize_options()
      method.run()
Ejemplo n.º 10
0
 def __init__(self, dist, **kw):
     from babel.messages import frontend as babel
     self.babel_init_messages = babel.init_catalog(dist)
     Command.__init__(self, dist, **kw)
Ejemplo n.º 11
0
for locale in locales:
    if os.path.exists(
            os.path.join('.', locale_path, locale, 'LC_MESSAGES',
                         domain + '.po')):
        updater = update_catalog()
        updater.initialize_options()
        updater.domain = domain
        updater.input_file = pot_file
        updater.output_dir = locale_path
        updater.locale = locale
        updater.omit_header = True
        updater.finalize_options()
        updater.run()
        print('завершено обновление: ' + locale)
    else:
        initializer = init_catalog()
        initializer.initialize_options()
        initializer.domain = domain
        initializer.input_file = pot_file
        initializer.output_dir = locale_path
        initializer.locale = locale
        initializer.finalize_options()
        initializer.run()
        print('завершена инициализация: ' + locale)

# компилируем локали
for locale in locales:
    po_file_path = os.path.join('.', locale_path, locale, 'LC_MESSAGES',
                                domain + '.po')
    compiler = compile_catalog()
    compiler.initialize_options()
Ejemplo n.º 12
0
    def __init__(self, dist, **kw):
        from babel.messages import frontend as babel

        self.babel_init_messages = babel.init_catalog(dist)
        Command.__init__(self, dist, **kw)
Ejemplo n.º 13
0
 def _init_po_file(self, language, domain, pot_path):
     print('Creating po file for {language} in domain {domain}'.format(
         language=language, domain=domain))
     initializer = babel_frontend.init_catalog()
     _setup_babel_command(initializer, domain, language, pot_path)
     _run_babel_command(initializer)