aboutsummaryrefslogtreecommitdiffstats
path: root/tools/translated_converter.py
diff options
context:
space:
mode:
authorFilip Komar <filip@mageia.org>2014-03-05 20:14:12 +0000
committerFilip Komar <filip@mageia.org>2014-03-05 20:14:12 +0000
commit140f314e64631208f259f889b60789c07b99bef7 (patch)
tree6fe9c33ddf16d8d41b1555ed1e958e35747ca792 /tools/translated_converter.py
parentea3fd5fed461738c9f5d3eda76622ee936a4f280 (diff)
downloadwww-140f314e64631208f259f889b60789c07b99bef7.tar
www-140f314e64631208f259f889b60789c07b99bef7.tar.gz
www-140f314e64631208f259f889b60789c07b99bef7.tar.bz2
www-140f314e64631208f259f889b60789c07b99bef7.tar.xz
www-140f314e64631208f259f889b60789c07b99bef7.zip
script translated_converter.py adjusted for the need + some error managament improvemnts + bug fixes
Diffstat (limited to 'tools/translated_converter.py')
-rw-r--r--tools/translated_converter.py43
1 files changed, 22 insertions, 21 deletions
diff --git a/tools/translated_converter.py b/tools/translated_converter.py
index 219781636..2bdf61ceb 100644
--- a/tools/translated_converter.py
+++ b/tools/translated_converter.py
@@ -1,6 +1,15 @@
#!/usr/bin/env python
# -*- coding: utf-8 -*-
+# This file is free software. It come without any warranty, to the extent
+# permitted by applicable law. You can redistribute it and/or modify them under
+# the terms of the Do What The Fuck You Want To Public License, Version 2, as
+# published by Sam Hocevar. See http://sam.zoy.org/wtfpl/COPYING for more details.
+
+# author yurchor
+# http://gitweb.mageia.org/software/i18n/tools/tree/websites
+# small adaptation by filip
+
import errno, glob, polib, re, os, getopt, sys
from time import strftime
@@ -8,34 +17,27 @@ def usage():
print '\nUsage: python %s [OPTION]' %os.path.basename(sys.argv[0])
print ' generates po file for existing lang translations'
print 'Options: -h, --help : usage'
- print ' -l lang_code, --language lang_code : code of the translation language'
+ print ' -f filename, --filename filename : target filename'
sys.exit(2)
try:
- opts, args = getopt.getopt(sys.argv[1:], "hl:", ["help", "language="])
+ opts, args = getopt.getopt(sys.argv[1:], "hf:", ["help", "filename="])
except getopt.GetoptError:
usage() # print help information and exit
-language=''
+filename=''
for o,a in opts:
if o in ("-h", "--help"):
usage()
- if o in ("-l", "--language"):
- lang_code=a
+ if o in ("-f", "--filename"):
+ filename=a
-if lang_code == '':
- sys.exit('Empty language code')
+if filename == '':
+ sys.exit('No filename given')
-file_extension = '.' + lang_code + '.lang'
-file_mask = '*' + file_extension
+file_mask = filename + '.*.lang'
for langfile in glob.glob(file_mask):
- langfilename = langfile.replace(file_extension, '')
- # Create localization directories if needed
- podir = langfilename + '/po'
- try:
- os.makedirs(podir)
- except OSError, e:
- if e.errno != errno.EEXIST:
- raise
+ nofilename = langfile.replace(filename + '.','')
+ language = nofilename.replace('.lang','')
#open lang file
text = open(langfile,"r").read()
#Remove trailing spaces from lines
@@ -54,7 +56,8 @@ for langfile in glob.glob(file_mask):
'POT-Creation-Date': pocreationtime,
'PO-Revision-Date': pocreationtime,
'Last-Translator': 'Duffy Duck <d_duck@nowhere.net>',
- 'Language-Team': lang_code + ' <mageia-' + lang_code + '@mageia.org>',
+ 'Language-Team': 'LANGUAGE <LL@li.org>',
+ 'Language': language,
'MIME-Version': '1.0',
'Content-Type': 'text/plain; charset=UTF-8',
'Content-Transfer-Encoding': '8bit',
@@ -64,7 +67,6 @@ for langfile in glob.glob(file_mask):
messagetemplate='\n\n#\ .*?\n\n'
mpattern=re.compile(messagetemplate,re.DOTALL)
for mblock in mpattern.findall(text):
- mblock_stripped = mblock.strip('\n')
message_comment, message_text = mblock.strip('\n').split('\n;',1)
# Strip '# ' from comments
message_comment = message_comment.lstrip('# ')
@@ -100,5 +102,4 @@ for langfile in glob.glob(file_mask):
occurrences=[(langfile,'')]
)
po.append(potentry)
- pofilename = langfilename + '/po/' + lang_code + '.po'
- po.save(pofilename)
+ po.save(filename + '.po')