summaryrefslogtreecommitdiff
path: root/django/bin
diff options
context:
space:
mode:
authorMalcolm Tredinnick <malcolm.tredinnick@gmail.com>2007-07-15 10:10:44 +0000
committerMalcolm Tredinnick <malcolm.tredinnick@gmail.com>2007-07-15 10:10:44 +0000
commit0dbc0ab338e10f1aa594eb962fb30e2047559536 (patch)
tree47aab54ab783db28bd01732b3d067583955aa88e /django/bin
parent5fbc5890149167d0e3bc925f6c33126bab3fc69b (diff)
Fixed #4734 -- Changed message extraction to permit non-ACSII msgid strings.
Thanks, krzysiek.pawlik@silvermedia.pl. This is slightly backwards-incompatible for translators: PO files are now assumed to be in UTF-8 encoding. git-svn-id: http://code.djangoproject.com/svn/django/trunk@5708 bcc190cf-cafb-0310-a4f2-bffc1f526a37
Diffstat (limited to 'django/bin')
-rwxr-xr-xdjango/bin/make-messages.py11
1 files changed, 8 insertions, 3 deletions
diff --git a/django/bin/make-messages.py b/django/bin/make-messages.py
index 3e5acb70cb..acea73c039 100755
--- a/django/bin/make-messages.py
+++ b/django/bin/make-messages.py
@@ -103,8 +103,8 @@ def make_messages():
open(os.path.join(dirpath, '%s.py' % file), "wb").write(templatize(src))
thefile = '%s.py' % file
if verbose: sys.stdout.write('processing file %s in %s\n' % (file, dirpath))
- cmd = 'xgettext %s -d %s -L Python --keyword=gettext_noop --keyword=gettext_lazy --keyword=ngettext_lazy:1,2 --keyword=ugettext_noop --keyword=ugettext_lazy --keyword=ungettext_lazy:1,2 --from-code UTF-8 -o - "%s"' % (
- os.path.exists(potfile) and '--omit-header' or '', domain, os.path.join(dirpath, thefile))
+ cmd = 'xgettext -d %s -L Python --keyword=gettext_noop --keyword=gettext_lazy --keyword=ngettext_lazy:1,2 --keyword=ugettext_noop --keyword=ugettext_lazy --keyword=ungettext_lazy:1,2 --from-code UTF-8 -o - "%s"' % (
+ domain, os.path.join(dirpath, thefile))
(stdin, stdout, stderr) = os.popen3(cmd, 'b')
msgs = stdout.read()
errors = stderr.read()
@@ -116,13 +116,18 @@ def make_messages():
old = '#: '+os.path.join(dirpath, thefile)[2:]
new = '#: '+os.path.join(dirpath, file)[2:]
msgs = msgs.replace(old, new)
+ if os.path.exists(potfile):
+ # Strip the header
+ msgs = '\n'.join(msgs.split('\n')[17:])
+ else:
+ msgs = msgs.replace('charset=CHARSET', 'charset=UTF-8')
if msgs:
open(potfile, 'ab').write(msgs)
if thefile != file:
os.unlink(os.path.join(dirpath, thefile))
if os.path.exists(potfile):
- (stdin, stdout, stderr) = os.popen3('msguniq "%s"' % potfile, 'b')
+ (stdin, stdout, stderr) = os.popen3('msguniq --to-code=utf-8 "%s"' % potfile, 'b')
msgs = stdout.read()
errors = stderr.read()
if errors: