[1.7.x] Updated Django makemessages process
makemessages should now automatically distribute translatable strings in the proper locale files, for Django too (see50a8ab7cd1
). Backport of7999ed9b69
from master.
This commit is contained in:
parent
ed98757e4b
commit
db2aacff99
|
@ -257,8 +257,6 @@ class Command(NoArgsCommand):
|
|||
self.locale_paths = [os.path.abspath(os.path.join('conf', 'locale'))]
|
||||
self.default_locale_path = self.locale_paths[0]
|
||||
self.invoked_for_django = True
|
||||
# Ignoring all contrib apps
|
||||
self.ignore_patterns += ['contrib/*']
|
||||
else:
|
||||
self.locale_paths.extend(list(settings.LOCALE_PATHS))
|
||||
# Allow to run makemessages inside an app dir
|
||||
|
|
|
@ -84,21 +84,17 @@ def update_catalogs(resources=None, languages=None):
|
|||
Update the en/LC_MESSAGES/django.po (main and contrib) files with
|
||||
new/updated translatable strings.
|
||||
"""
|
||||
contrib_dirs = _get_locale_dirs(resources, include_core=False)
|
||||
if resources is not None:
|
||||
print("`update_catalogs` will always process all resources.")
|
||||
contrib_dirs = _get_locale_dirs(None, include_core=False)
|
||||
|
||||
os.chdir(os.path.join(os.getcwd(), 'django'))
|
||||
print("Updating main en catalog")
|
||||
print("Updating en catalogs for Django and contrib apps...")
|
||||
call_command('makemessages', locale=['en'])
|
||||
_check_diff('core', os.path.join(os.getcwd(), 'conf', 'locale'))
|
||||
|
||||
# Contrib catalogs
|
||||
# Stats for contrib catalogs
|
||||
for name, dir_ in contrib_dirs:
|
||||
os.chdir(os.path.join(dir_, '..'))
|
||||
print("Updating en catalog in %s" % dir_)
|
||||
if name.endswith('-js'):
|
||||
call_command('makemessages', locale=['en'], domain='djangojs')
|
||||
else:
|
||||
call_command('makemessages', locale=['en'])
|
||||
_check_diff(name, dir_)
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue