aboutsummaryrefslogtreecommitdiffstats
path: root/websites
diff options
context:
space:
mode:
authorYuri Chornoivan <yurchor@mageia.org>2012-09-10 05:18:57 +0000
committerYuri Chornoivan <yurchor@mageia.org>2012-09-10 05:18:57 +0000
commit411e16cf9f310844036c729dd4f08f6c79c8929a (patch)
tree0747f3d720c60861a45ee4754c6372075eabc765 /websites
parente47d828404b901010e5646eaa1d70f9a12676073 (diff)
downloadtools-411e16cf9f310844036c729dd4f08f6c79c8929a.tar
tools-411e16cf9f310844036c729dd4f08f6c79c8929a.tar.gz
tools-411e16cf9f310844036c729dd4f08f6c79c8929a.tar.bz2
tools-411e16cf9f310844036c729dd4f08f6c79c8929a.tar.xz
tools-411e16cf9f310844036c729dd4f08f6c79c8929a.zip
Fix the script to enable parsing of custom .lang's
Diffstat (limited to 'websites')
-rw-r--r--websites/translated_converter.py26
1 files changed, 24 insertions, 2 deletions
diff --git a/websites/translated_converter.py b/websites/translated_converter.py
index 14c17f32..b75b77dc 100644
--- a/websites/translated_converter.py
+++ b/websites/translated_converter.py
@@ -48,14 +48,14 @@ for langfile in glob.glob(file_mask):
'Report-Msgid-Bugs-To': 'mageia-i18n@mageia.org',
'POT-Creation-Date': pocreationtime,
'PO-Revision-Date': pocreationtime,
- 'Last-Translator': 'Duffy Duck <d_duck@nowher.net>',
+ 'Last-Translator': 'Duffy Duck <d_duck@nowhere.net>',
'Language-Team': lang_code + ' <mageia-' + lang_code + '@mageia.org>',
'MIME-Version': '1.0',
'Content-Type': 'text/plain; charset=UTF-8',
'Content-Transfer-Encoding': '8bit',
}
- # Parse contents and add them to POT
+ # Parse contents and add them to PO
messagetemplate='\n\n#\ .*?\n\n'
mpattern=re.compile(messagetemplate,re.DOTALL)
for mblock in mpattern.findall(text):
@@ -73,5 +73,27 @@ for langfile in glob.glob(file_mask):
occurrences=[(langfile,'')]
)
po.append(potentry)
+ messagetemplate='\n\n;.*?\n\n'
+ mpattern=re.compile(messagetemplate,re.DOTALL)
+ for mblock in mpattern.findall(text):
+ message_id, message_str = mblock.strip('\n').split('\n',1)
+ # Strip ';' from msgid
+ message_id = message_id.lstrip(';')
+ potentry = polib.POEntry(
+ msgid = message_id.decode('utf-8'),
+ msgstr = message_str.decode('utf-8'),
+ occurrences=[(langfile,'')]
+ )
+ po.append(potentry)
+ if text[0] == ';':
+ message_id, message_str = text.partition('\n\n')[0].strip('\n').split('\n',1)
+ # Strip ';' from msgid
+ message_id = message_id.lstrip(';')
+ potentry = polib.POEntry(
+ msgid = message_id.decode('utf-8'),
+ msgstr = message_str.decode('utf-8'),
+ occurrences=[(langfile,'')]
+ )
+ po.append(potentry)
pofilename = langfilename + '/po/' + lang_code + '.po'
po.save(pofilename)