Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 0dbc0ab

Browse files
committed
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
1 parent 5fbc589 commit 0dbc0ab

File tree

1 file changed

+8
-3
lines changed

1 file changed

+8
-3
lines changed

‎django/bin/make-messages.py‎

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -103,8 +103,8 @@ def make_messages():
103103
open(os.path.join(dirpath, '%s.py' % file), "wb").write(templatize(src))
104104
thefile = '%s.py' % file
105105
if verbose: sys.stdout.write('processing file %s in %s\n' % (file, dirpath))
106-
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"' % (
107-
os.path.exists(potfile) and'--omit-header'or'', domain, os.path.join(dirpath, thefile))
106+
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"' % (
107+
domain, os.path.join(dirpath, thefile))
108108
(stdin, stdout, stderr) = os.popen3(cmd, 'b')
109109
msgs = stdout.read()
110110
errors = stderr.read()
@@ -116,13 +116,18 @@ def make_messages():
116116
old = '#: '+os.path.join(dirpath, thefile)[2:]
117117
new = '#: '+os.path.join(dirpath, file)[2:]
118118
msgs = msgs.replace(old, new)
119+
if os.path.exists(potfile):
120+
# Strip the header
121+
msgs = '\n'.join(msgs.split('\n')[17:])
122+
else:
123+
msgs = msgs.replace('charset=CHARSET', 'charset=UTF-8')
119124
if msgs:
120125
open(potfile, 'ab').write(msgs)
121126
if thefile != file:
122127
os.unlink(os.path.join(dirpath, thefile))
123128

124129
if os.path.exists(potfile):
125-
(stdin, stdout, stderr) = os.popen3('msguniq "%s"' % potfile, 'b')
130+
(stdin, stdout, stderr) = os.popen3('msguniq --to-code=utf-8 "%s"' % potfile, 'b')
126131
msgs = stdout.read()
127132
errors = stderr.read()
128133
if errors:

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /