import polib
import pathlib
def check(file):
pofile = polib.pofile(file)
for entry in pofile:
if not entry.msgstr:
continue
if entry.msgid.endswith(" ::"):
entry.msgstr = entry.msgstr.rstrip(": \u202f\u00A0") + " ::"
if entry.msgid.endswith("::") and not entry.msgid.endswith(" ::"):
entry.msgstr = entry.msgstr.rstrip(": ,. \u202f\u00A0") + "\u00A0::"
pofile.save()
for file in pathlib.Path(".").glob("*.po"):
check(file)
for file in pathlib.Path(".").glob("*/*.po"):
check(file)
* Disambiguate option/paramètre to avoid using flags in french.
* pospell on a few directories.
* FIX differences between my Hunspell version and travis one.
* Nice try.
* Hunspell 1.3.2, please.
* FIX feedback from Christophe.
* De mieux en mieux.
Checked using and some manual proofreading:
def check_entry(po_file, entry):
if entry.msgid.endswith(' ::'):
return
if entry.msgid.endswith('::'):
if entry.msgstr.endswith(': ::'):
return
entry.msgstr = entry.msgstr.rstrip(' :. ') + ' ::'