Skip to content

Commit

Permalink
fix error in macOS (#2671)
Browse files Browse the repository at this point in the history
kudos to Marcos Medrano who provide the code to make this fix 🎉

---------

Co-authored-by: rtobar <[email protected]>
  • Loading branch information
sofide and rtobar authored Oct 17, 2023
1 parent 981c7cd commit 43318e8
Showing 1 changed file with 43 additions and 24 deletions.
67 changes: 43 additions & 24 deletions scripts/check_spell.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,27 +9,46 @@

import pospell

# Read custom dictionaries
entries = set()
for filename in Path("dictionaries").glob("*.txt"):
with open(filename, "r") as f:
entries.update(
stripped_line
for stripped_line in (line.strip() for line in f.readlines())
if stripped_line
)

# Write merged dictionary file
output_filename = tempfile.mktemp(suffix="_merged_dict.txt")
with open(output_filename, "w") as f:
for e in entries:
f.write(e)
f.write("\n")

# Run pospell either against all files or the file given on the command line
po_files = sys.argv[1:]
if not po_files:
po_files = Path(".").glob("*/*.po")

errors = pospell.spell_check(po_files, personal_dict=output_filename, language="es_ES")
sys.exit(0 if errors == 0 else -1)

def check_spell(po_files=None):
"""
Check spell in the given list of po_files and log the spell errors details.
If no po_files are given, check spell in all files.
args:
po_files: list of po_files paths.
returns:
- int: spell errors count.
"""
# Read custom dictionaries
entries = set()
for filename in Path("dictionaries").glob("*.txt"):
with open(filename, "r") as f:
entries.update(
stripped_line
for stripped_line in (line.strip() for line in f.readlines())
if stripped_line
)

# Write merged dictionary file
output_filename = tempfile.mktemp(suffix="_merged_dict.txt")
with open(output_filename, "w") as f:
for e in entries:
f.write(e)
f.write("\n")

# Run pospell either against all files or the file given on the command line
if not po_files:
po_files = Path(".").glob("*/*.po")

detected_errors = pospell.spell_check(po_files, personal_dict=output_filename, language="es_ES")
return detected_errors


if __name__ == "__main__":
po_files = sys.argv[1:]
errors = check_spell(po_files)
sys.exit(0 if errors == 0 else -1)

0 comments on commit 43318e8

Please sign in to comment.