diff --git a/scripts/update_localization.py b/scripts/update_localization.py index 6baa6d47e..61fb6c5b9 100644 --- a/scripts/update_localization.py +++ b/scripts/update_localization.py @@ -8,8 +8,8 @@ source_exts = [".c", ".cpp", ".h"] def parse_source(): stringtable = {} def process_line(line): - if 'Localize("' in line: - fields = line.split('Localize("', 1)[1].split('"', 1) + if b'Localize("' in line: + fields = line.split(b'Localize("', 1)[1].split(b'"', 1) stringtable[fields[0]] = "" process_line(fields[1]) @@ -23,21 +23,21 @@ def parse_source(): if filename[-2:] in source_exts or filename[-4:] in source_exts: for line in open(filename, "rb"): process_line(line) - + return stringtable def load_languagefile(filename): f = open(filename, "rb") lines = f.readlines() f.close() - + stringtable = {} for i in range(0, len(lines)-1): - l = lines[i].decode("utf-8").strip() - if len(l) and not l[0] == '=' and not l[0] == '#': - stringtable[l] = lines[i+1][3:].decode("utf-8").rstrip() - + l = lines[i].strip() + if len(l) and not l[0:1] == b"=" and not l[0:1] == b"#": + stringtable[l] = lines[i+1][3:].rstrip() + return stringtable def generate_languagefile(outputfilename, srctable, loctable): @@ -52,28 +52,27 @@ def generate_languagefile(outputfilename, srctable, loctable): srctable_keys.append(key) srctable_keys.sort() - content = "\n##### translated strings #####\n\n" + content = b"\n##### translated strings #####\n\n" for k in srctable_keys: if k in loctable and len(loctable[k]): - content += "%s\n== %s\n\n" % (k, loctable[k]) + content += k + b"\n== " + loctable[k] + b"\n\n" num_items += 1 - - content += "##### needs translation #####\n\n" + content += b"##### needs translation #####\n\n" for k in srctable_keys: if not k in loctable or len(loctable[k]) == 0: - content += "%s\n== \n\n" % (k) + content += k + b"\n== \n\n" num_items += 1 new_items += 1 - content += "##### old translations #####\n\n" + content += b"##### old translations #####\n\n" for k in loctable: if not k in srctable: - content += "%s\n== %s\n\n" % (k, loctable[k]) + content += k + b"\n== " + loctable[k] + b"\n\n" num_items += 1 old_items += 1 - - f.write(content.encode("utf-8")) + + f.write(content) f.close() print("%-40s %8d %8d %8d" % (outputfilename, num_items, new_items, old_items)) @@ -86,6 +85,6 @@ for filename in os.listdir("../data/languages"): continue if filename == "index.txt": continue - + filename = "../data/languages/" + filename generate_languagefile(filename, srctable, load_languagefile(filename))