Files
2020-11-30 06:00:02 -03:00

60 lines
1.6 KiB
Python

import os
from os import listdir
from os import path
import re
import sys
path_list = os.path.dirname(os.path.dirname(os.path.realpath(__file__)))
file_folder = os.path.join(path_list, "localisation")
if not "git-days-of-europe" in path_list:
print("Please run the Script in git-days-of-europe\\useful_python_programs")
sys.exit()
print(file_folder)
file_list = listdir(file_folder)
file_list.sort(key=lambda f: os.stat(file_folder+"\\"+f).st_size, reverse=True)
def fix_duplicates (loc_file):
lines_to_write = []
duplicates = 0
print (loc_file)
with open(f"{file_folder}/{loc_file}", "r", encoding="utf8") as inp:
line_list = inp.readlines()
for line in line_list:
total_line_list.append(line)
find_loc = line.find(":")
loc = line[:find_loc]
loc = re.sub ("^\s*", "", loc)
loc = re.sub ("\s*$", "", loc)
if not (loc == "" or "#" in loc or "l_english" in loc):
loc_list.append(loc)
if loc_list.count(loc) > 1 and not (loc == "" or "#" in loc or "l_english" in loc):
duplicates += 1
if total_line_list.count(line) > 1:
print(f"\tDUPLICATE STRING {loc}")
else:
lines_to_write.append(f"#{line[:-1]} #duplicate loc key\n")
print(f"\tDUPLICATE LOC KEY {loc}")
else:
lines_to_write.append(line)
if duplicates != 0:
print(f"WRITING TO FILE {loc_file}")
with open(f"{file_folder}/{loc_file}", "w", encoding="utf8") as out:
for line in lines_to_write:
out.write(line)
total_line_list = []
duplicate_list = []
loc_list = []
for file in file_list:
if "TNO_" in file:
fix_duplicates(file)
for file in file_list:
if not "TNO_" in file:
fix_duplicates(file)