Răsfoiți Sursa

dev(util): fix untranslated_select script and make available

Script used to find select options that are not translated even though the
entity has a translation_key.

Was used once in the past, but new configs have been added, revealing issues
in the script. Also was not enabled in pyconfig

Mostly finds scenes, so scene should be filtered out to get useful possibilities
for improvement.

Issue #1708
Jason Rumney 1 zi în urmă
părinte
comite
d351e15053
2 a modificat fișierele cu 8 adăugiri și 1 ștergeri
  1. 1 0
      pyproject.toml
  2. 7 1
      util/untranslated_select.py

+ 1 - 0
pyproject.toml

@@ -22,6 +22,7 @@ all_matches = "util.config_match:main"
 match_against = "util.match_against:main"
 match_against = "util.match_against:main"
 translation_candidates = "util.translation_candidates:main"
 translation_candidates = "util.translation_candidates:main"
 untranslated_entities = "util.untranslated_entities:main"
 untranslated_entities = "util.untranslated_entities:main"
+untranslated_select = "util.untranslated_select:main"
 catalog = "util.catalog:main"
 catalog = "util.catalog:main"
 entities = "util.entities:main"
 entities = "util.entities:main"
 
 

+ 7 - 1
util/untranslated_select.py

@@ -27,10 +27,16 @@ def main() -> int:
                         f"{config}:{entity._config.__line__}: MISSING {entity.translation_key}"
                         f"{config}:{entity._config.__line__}: MISSING {entity.translation_key}"
                     )
                     )
                     continue
                     continue
+                if "state" not in translations:
+                    print(
+                        f"{config}:{entity._config.__line__}: MISSING state in {entity.translation_key}"
+                    )
+                    continue
                 for v in d.values(dev):
                 for v in d.values(dev):
                     if v not in translations["state"]:
                     if v not in translations["state"]:
+                        line = v.__line__ if v else d._config.__line__
                         print(
                         print(
-                            f"{config}:{v.__line__}: {v} missing from {entity.translation_key}"
+                            f"{config}:{line}: {v} missing from {entity.translation_key}"
                         )
                         )
     return 0
     return 0