@@ -0,0 +1,1031 @@
+import re%0Aimport json%0Aimport glob%0A%0Alocale_folder = %22../locales/%22%0Alocale_files = glob.glob(locale_folder + %22*.json%22)%0Alocale_files = %5Bfilename.split(%22/%22)%5B-1%5D for filename in locale_files%5D%0Alocale_files.remove(%22en.json%22)%0A%0Areference = json.loads(open(locale_folder + %22en.json%22).read())%0A%0Afor locale_file in locale_files:%0A%0A    this_locale = json.loads(open(locale_folder + locale_file).read())%0A%0A    for key, string in reference.items():%0A        if key in this_locale:%0A%0A            subkeys_in_ref = set(k%5B0%5D for k in re.findall(r%22%7B(%5Cw+)(:%5Cw)?%7D%22, string))%0A            subkeys_in_this_locale = set(k%5B0%5D for k in re.findall(r%22%7B(%5Cw+)(:%5Cw)?%7D%22, this_locale%5Bkey%5D))%0A%0A            if any(key not in subkeys_in_ref for key in subkeys_in_this_locale):%0A                print(%22%5Cn%22)%0A                print(%22==========================%22)%0A                print(%22Format inconsistency for string %25s in %25s:%22 %25 (key, locale_file))%0A                print(%22%25s   -%3E %25s %22 %25 (%22en.json%22, string))%0A                print(%22%25s   -%3E %25s %22 %25 (locale_file, this_locale%5Bkey%5D))%0A%0A

Add draft of linter script to check locale format consistency