diff --git a/Makefile b/Makefile index 755db2678c82577ccbf83e6c51cc6ff27ff46dd9..7d6905d30597aca91003919c8e8c44c7a2d4878e 100644 --- a/Makefile +++ b/Makefile @@ -1,5 +1,5 @@ EN_SOURCES = $(wildcard en/*.txt) -LANGUAGE_PO = $(wildcard po/*.po) +LANGUAGE_PO = $(wildcard po/documentation.*.po) ALL_LANGUAGES = $(subst po/documentation.,,$(subst .po,,$(LANGUAGE_PO))) L10N_BUILD_TARGETS = all man html install doc-l10n install-l10n install-txt diff --git a/po/pre-translate-dictionary.de.po b/po/pre-translate-dictionary.de.po new file mode 100644 index 0000000000000000000000000000000000000000..48ef554b0ea293c446a0c2320abe20474effd538 --- /dev/null +++ b/po/pre-translate-dictionary.de.po @@ -0,0 +1,25 @@ +# Recurring German translations for Regex Search & Replace in Git Man pages. +# Copyright (C) 2019 Free Software Foundation, Inc. +# This file is distributed under the same license as the Git package. +# Matthias A횩hauer <mha1993@live.de>, 2019 + +msgid "(--[a-zA-Z-]+\[?[=\s]<)path(>\]?)" +msgstr "\1Pfad\2" + +msgid "(-{1,2}[a-zA-Z-]+?[=\s]<)file(>)" +msgstr "\1Datei\2" + +msgid "(-{1,2}[a-zA-Z-]*?\[?[=\s]?<)num(>\]?)" +msgstr "\1Anz\2" + +msgid "(-{1,2}[a-zA-Z-]+?\[?[=\s]<)pattern(>\]?)" +msgstr "\1Muster\2" + +msgid "(--[a-zA-Z-]+?=<)glob-pattern(>)" +msgstr "\1Glob-Muster\2" + +#~ msgid "release notes for ((link:RelNotes/[0-9.]+.txt\[[0-9.]+\][.,]?\s*)+)." +#~ msgstr "Versionshinweise f체r \1." + +#~ msgid "(link:v[0-9.]+/git\.html\[)documentation for release ([0-9.]+\])" +#~ msgstr "\1Dokumentation f체r Version \2." diff --git a/scripts/pre-translate-po b/scripts/pre-translate-po index 533affdc292c3b8a15074afac84f75a9d49a9d91..dc5424cc8d10988d5a2a9060362de81a511102b0 100755 --- a/scripts/pre-translate-po +++ b/scripts/pre-translate-po @@ -4,9 +4,12 @@ import polib import re import sys -def main (f): +def main (f,d=None): po = polib.pofile(f, wrapwidth=0) + if not d is None: + pod=polib.pofile(d) + for entry in po: if (re.fullmatch(r'-[-a-z0-9[\]]+', entry.msgid)) \ or re.fullmatch(r'((linkgit:)?(git[-a-z0-9[\]]+|mail)(\[[157]\]|\([157]\))(,|;)?(\n| )?)+', entry.msgid) \ @@ -16,12 +19,23 @@ def main (f): entry.flags.append("ignore-same") flags = sorted(set(entry.flags)) entry.flags = list(flags) + remove_fuzzy(entry) + elif not d is None: + for entryd in pod: + if re.fullmatch(entryd.msgid, entry.msgid): + entry.msgstr = re.sub(entryd.msgid, entryd.msgstr, entry.msgid) + remove_fuzzy(entry) + + po.save(f) + +def remove_fuzzy (entry): if 'fuzzy' in entry.flags: entry.flags.remove('fuzzy') entry.previous_msgid = None - po.save(f) if __name__ == '__main__': - if len(sys.argv)>1: + if len(sys.argv)>2: + main(sys.argv[1], sys.argv[2]) + elif len(sys.argv)>1: main(sys.argv[1])