devtools/fix_po_encoding
changeset 11057 0b59724cb3f2
parent 11052 058bb3dc685f
child 11058 23eb30449fe5
--- a/devtools/fix_po_encoding	Mon Jan 04 18:40:30 2016 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,38 +0,0 @@
-#!/usr/bin/python
-
-"""usage: fix-po-encodings [filename...]
-change the encoding of the po files passed as arguments to utf-8
-"""
-import sys
-import re
-import codecs
-
-def change_encoding(filename, target='UTF-8'):
-    fdesc = open(filename)
-    data = fdesc.read()
-    fdesc.close()
-    encoding = find_encoding(data)
-    if encoding == target:
-        return
-    data = fix_encoding(data, target)
-    data = unicode(data, encoding)
-    fdesc = codecs.open(filename, 'wb', encoding=target)
-    fdesc.write(data)
-    fdesc.close()
-
-def find_encoding(data):
-    regexp = re.compile(r'"Content-Type:.* charset=([a-zA-Z0-9-]+)\\n"', re.M)
-    mo = regexp.search(data)
-    if mo is None:
-        raise ValueError('No encoding declaration')
-    return mo.group(1)
-
-def fix_encoding(data, target_encoding):
-    regexp = re.compile(r'("Content-Type:.* charset=)(.*)(\\n")', re.M)
-    return regexp.sub(r'\1%s\3' % target_encoding, data)
-    
-
-
-for filename in sys.argv[1:]:
-    print filename
-    change_encoding(filename)