diff options
author | Filip Komar <filip@mageia.org> | 2014-03-05 20:14:12 +0000 |
---|---|---|
committer | Filip Komar <filip@mageia.org> | 2014-03-05 20:14:12 +0000 |
commit | 140f314e64631208f259f889b60789c07b99bef7 (patch) | |
tree | 6fe9c33ddf16d8d41b1555ed1e958e35747ca792 /tools/translated_converter.py | |
parent | ea3fd5fed461738c9f5d3eda76622ee936a4f280 (diff) | |
download | www-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.py | 43 |
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') |