Browse Source

Updated Django makemessages process

makemessages should now automatically distribute translatable
strings in the proper locale files, for Django too
(see 50a8ab7cd1e6).
Claude Paroz 11 years ago
parent
commit
7999ed9b69
2 changed files with 5 additions and 11 deletions
  1. 0 2
      django/core/management/commands/makemessages.py
  2. 5 9
      scripts/manage_translations.py

+ 0 - 2
django/core/management/commands/makemessages.py

@@ -260,8 +260,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

+ 5 - 9
scripts/manage_translations.py

@@ -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_)