commit be7df4a13c1646e0ac20087e783a6a61be5e91ed
Author: Georg Baum <[email protected]>
Date: Thu Dec 3 20:56:51 2015 +0100
Handle escaped characters correctly
Some characters (like ") are escaped in .po files. These are handled
correctly
by polib, but the self written parser did not yet take them into account.
diff --git a/development/tools/mergepo.py b/development/tools/mergepo.py
index c5e1f16..fa48e87 100644
--- a/development/tools/mergepo.py
+++ b/development/tools/mergepo.py
@@ -56,7 +56,7 @@ def parse_msg(lines):
if j < 0:
return ''
msg = msg + lines[i][j:].strip('"')
- return msg
+ return polib.unescape(msg)
def translate(msgid, msgstr_lines, po2):
@@ -72,7 +72,7 @@ def translate(msgid, msgstr_lines, po2):
obsolete = (msgstr_lines[0].find('#~') == 0)
j = msgstr_lines[0].find('"')
# must not assign to msgstr_lines, because that would not be seen by our
caller
- new_lines = polib.wrap(msgstr_lines[0][0:j+1] + msgstr, 76,
drop_whitespace = False)
+ new_lines = polib.wrap(msgstr_lines[0][0:j+1] + polib.escape(msgstr), 76,
drop_whitespace = False)
del msgstr_lines[:]
for i in range(0, len(new_lines)):
if i == 0: