From ac482b0a6ef8ddc40f06a25b68a4764f35920d0c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jean-No=C3=ABl=20Avila?= <jn.avila@free.fr>
Date: Sun, 6 Jan 2019 22:56:57 +0100
Subject: [PATCH] Add automatic unchanged strings translation script

The script looks for known safe non-translatable segments and
automatically converts them.
---
 scripts/pre-translate-po | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)
 create mode 100755 scripts/pre-translate-po

diff --git a/scripts/pre-translate-po b/scripts/pre-translate-po
new file mode 100755
index 0000000..35516e2
--- /dev/null
+++ b/scripts/pre-translate-po
@@ -0,0 +1,22 @@
+#!/usr/bin/python3
+
+import polib
+import re
+import sys
+
+def main (f):
+    po = polib.pofile(f)
+
+    for entry in po:
+        if (re.fullmatch(r'-[-a-z0-9[\]]+', entry.msgid)) \
+           or re.fullmatch(r'((linkgit:)?git-[-a-z0-9[\]]+(\[1\]|\(1\))(\n| )?)+', entry.msgid) \
+           or re.fullmatch(r'`[A-Z-_]+`|(core|branch|diff)\.[a-zA-Z]+', entry.msgid):
+            entry.msgstr = entry.msgid
+            if 'fuzzy' in entry.flags:
+                entry.flags.remove('fuzzy')
+                entry.previous_msgid = None
+    po.save(f)
+
+if __name__ == '__main__':
+    if len(sys.argv)>1:
+        main(sys.argv[1])
-- 
GitLab