annotate artifacts/contrib/find-obsolete-i18n-strings.py @ 9763:ce7c67445cbb 3.2.x

No more hacks for getting description in case of official lines In case the name contained one and only one number, that number had been returned as description because in that case, the name matched WQ.NUMBERS_PATTERN.
author Tom Gottfried <tom@intevation.de>
date Fri, 11 Nov 2022 18:12:26 +0100
parents 26971f97105f
children
rev   line source
7957
26971f97105f Added script to find unused i18n in *.java and *.xml files.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
1 #!/usr/bin/env python
26971f97105f Added script to find unused i18n in *.java and *.xml files.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
2
26971f97105f Added script to find unused i18n in *.java and *.xml files.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
3 import os
26971f97105f Added script to find unused i18n in *.java and *.xml files.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
4 import re
26971f97105f Added script to find unused i18n in *.java and *.xml files.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
5 import sys
26971f97105f Added script to find unused i18n in *.java and *.xml files.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
6
26971f97105f Added script to find unused i18n in *.java and *.xml files.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
7 KEY_RE = re.compile(r"^\s*([^\s=]+)\s*=.*$")
26971f97105f Added script to find unused i18n in *.java and *.xml files.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
8
26971f97105f Added script to find unused i18n in *.java and *.xml files.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
9 def main():
26971f97105f Added script to find unused i18n in *.java and *.xml files.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
10 content = []
26971f97105f Added script to find unused i18n in *.java and *.xml files.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
11 for root, dirs, files in os.walk('.'):
26971f97105f Added script to find unused i18n in *.java and *.xml files.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
12 for f in files:
26971f97105f Added script to find unused i18n in *.java and *.xml files.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
13 if not (f.endswith(".java") or f.endswith(".xml")):
26971f97105f Added script to find unused i18n in *.java and *.xml files.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
14 continue
26971f97105f Added script to find unused i18n in *.java and *.xml files.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
15 p = os.path.join(root, f)
26971f97105f Added script to find unused i18n in *.java and *.xml files.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
16 with open(p, "rb") as jf:
26971f97105f Added script to find unused i18n in *.java and *.xml files.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
17 content.append(jf.read())
26971f97105f Added script to find unused i18n in *.java and *.xml files.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
18
26971f97105f Added script to find unused i18n in *.java and *.xml files.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
19 content = ''.join(content)
26971f97105f Added script to find unused i18n in *.java and *.xml files.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
20
26971f97105f Added script to find unused i18n in *.java and *.xml files.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
21 for arg in sys.argv[1:]:
26971f97105f Added script to find unused i18n in *.java and *.xml files.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
22 with open(arg, "rb") as prop:
26971f97105f Added script to find unused i18n in *.java and *.xml files.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
23 for line in prop:
26971f97105f Added script to find unused i18n in *.java and *.xml files.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
24 m = KEY_RE.match(line)
26971f97105f Added script to find unused i18n in *.java and *.xml files.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
25 if not m:
26971f97105f Added script to find unused i18n in *.java and *.xml files.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
26 continue
26971f97105f Added script to find unused i18n in *.java and *.xml files.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
27 key = m.group(1)
26971f97105f Added script to find unused i18n in *.java and *.xml files.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
28 if content.find(key) == -1:
26971f97105f Added script to find unused i18n in *.java and *.xml files.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
29 print key
26971f97105f Added script to find unused i18n in *.java and *.xml files.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
30
26971f97105f Added script to find unused i18n in *.java and *.xml files.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
31 if __name__ == "__main__":
26971f97105f Added script to find unused i18n in *.java and *.xml files.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
32 main()

http://dive4elements.wald.intevation.org