aboutsummaryrefslogtreecommitdiffstats
path: root/tools/translated_converter.py
diff options
context:
space:
mode:
Diffstat (limited to 'tools/translated_converter.py')
-rw-r--r--tools/translated_converter.py107
1 files changed, 0 insertions, 107 deletions
diff --git a/tools/translated_converter.py b/tools/translated_converter.py
deleted file mode 100644
index 568e3fb43..000000000
--- a/tools/translated_converter.py
+++ /dev/null
@@ -1,107 +0,0 @@
-#!/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
-# adaptation by filip
-
-import errno, glob, polib, re, os, getopt, sys
-from time import strftime
-
-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 ' -f filename, --filename filename : target filename'
- sys.exit(2)
-try:
- opts, args = getopt.getopt(sys.argv[1:], "hf:", ["help", "filename="])
-except getopt.GetoptError:
- usage() # print help information and exit
-
-filename=''
-for o,a in opts:
- if o in ("-h", "--help"):
- usage()
- if o in ("-f", "--filename"):
- filename=a
-
-if filename == '':
- sys.exit('No filename given')
-
-def po_append(message_id, message_str, langfile):
- # Strip ';' from msgid
- message_id = message_id.lstrip(';')
- if message_str == message_id:
- message_str=''
- message_str = message_str.replace('{ok}', '').rstrip()
- potentry = polib.POEntry(
- msgid = message_id.decode('utf-8'),
- msgstr = message_str.decode('utf-8'),
- occurrences=[(langfile,'')]
- )
- po.append(potentry)
-
-file_mask = filename + '.*.lang'
-if filename == './_nav/langs/':
- file_mask = './_nav/langs/*.lang'
-for langfile in glob.glob(file_mask):
-# print langfile # useful for debuging
- nofilename = langfile.replace(filename + '.','')
- language = nofilename.replace('.lang','')
- language = language.replace('./_nav/langs/','')
- #open lang file
- text = open(langfile,"r").read()+"\n"
- #Remove trailing spaces from lines
- spaces=' {1,}\n'
- spattern=re.compile(spaces,re.DOTALL)
- for emptyline in spattern.findall(text):
- text = text.replace(emptyline,'\n')
- text = text.replace('\n\n','\n\n\n\n')+'\n'
-
- # Write PO file
- po = polib.POFile(wrapwidth=999) # increase default wrap limit
- pocreationtime = strftime('%Y-%m-%d %H:%M%z')
- po.metadata = {
- 'Project-Id-Version': langfile,
- 'Report-Msgid-Bugs-To': 'mageia-i18n@mageia.org',
- 'POT-Creation-Date': pocreationtime,
- 'PO-Revision-Date': pocreationtime,
- 'Last-Translator': 'Duffy Duck <d_duck@nowhere.net>',
- 'Language-Team': 'LANGUAGE <LL@li.org>',
- 'Language': language,
- 'MIME-Version': '1.0',
- 'Content-Type': 'text/plain; charset=UTF-8',
- 'Content-Transfer-Encoding': '8bit',
- }
-
- # Parse contents and add them to PO
- messagetemplate='\n\n#\ .*?\n\n'
- mpattern=re.compile(messagetemplate,re.DOTALL)
- for mblock in mpattern.findall(text):
- message_comment, message_text = mblock.strip('\n').split('\n;',1)
- # Strip '# ' from comments
- message_comment = message_comment.lstrip('# ')
- message_id, message_str = message_text.split('\n',1)
-# print message_id # useful for debuging
- po_append(message_id, message_str, langfile)
- 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)
-# print message_id # useful for debuging
- po_append(message_id, message_str, langfile)
- if text[0] == ';':
- message_id, message_str = text.partition('\n\n')[0].strip('\n').split('\n',1)
-# print message_id # useful for debuging
- po_append(message_id, message_str, langfile)
- if filename == './_nav/langs/':
- file_name = filename + language
- else:
- file_name = filename
- po.save(file_name + '.po')