po: skip automated fuzzy translations when generating new po files
The fuzzy translations are always wrong, but meson's integration does not allow skipping them. Add a tiny wrapper for 'msgmerge' to workaround the issue and skip them when running ninja systemd-update-po
This commit is contained in:
committed by
Zbigniew Jędrzejewski-Szmek
parent
1f05824d09
commit
d3f38e09ac
@@ -3,6 +3,12 @@
|
||||
want_translations = get_option('translations')
|
||||
|
||||
if want_translations
|
||||
# The msgmerge invocation hidden behind i18n.gettext()'s update-po target inserts auto-guessed
|
||||
# "fuzzy" translations for new strings, which are almost always wrong, use a wrapper to skip it.
|
||||
meson.override_find_program(
|
||||
'msgmerge',
|
||||
find_program('../tools/msgmerge-no-fuzzy.py'))
|
||||
|
||||
i18n = import('i18n')
|
||||
i18n.gettext(meson.project_name(),
|
||||
preset : 'glib',
|
||||
|
||||
Executable
+16
@@ -0,0 +1,16 @@
|
||||
#!/usr/bin/env python3
|
||||
# SPDX-License-Identifier: LGPL-2.1-or-later
|
||||
"""
|
||||
Fuzzy translations are always bogus, but the meson integration doesn't allow overriding. With this wrapper
|
||||
we can skip them.
|
||||
"""
|
||||
|
||||
import os
|
||||
import shutil
|
||||
import sys
|
||||
|
||||
msgmerge = shutil.which('msgmerge')
|
||||
if msgmerge is None:
|
||||
sys.exit('msgmerge-no-fuzzy: msgmerge not found in PATH')
|
||||
|
||||
os.execv(msgmerge, [msgmerge, '--no-fuzzy-matching', *sys.argv[1:]])
|
||||
Reference in New Issue
Block a user