summaryrefslogtreecommitdiff
path: root/doc/translations/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'doc/translations/Makefile')
-rw-r--r--doc/translations/Makefile21
1 files changed, 21 insertions, 0 deletions
diff --git a/doc/translations/Makefile b/doc/translations/Makefile
index ceee79ec95..ab08e107d0 100644
--- a/doc/translations/Makefile
+++ b/doc/translations/Makefile
@@ -21,3 +21,24 @@ merge:
check:
@for po in $(POFILES); do msgfmt -c $$po -o /dev/null; done
+
+# Generate completion ratio from statistics string such as:
+# 2775 translated messages, 272 fuzzy translations, 151 untranslated messages.
+# First number can be 0, second and third numbers are only present if non-zero.
+include-list:
+ @list=""; \
+ threshold=0.10; \
+ for po in $(POFILES); do \
+ res=`msgfmt --statistics $$po -o /dev/null 2>&1 | sed 's/[^0-9,]*//g'`; \
+ complete=`cut -d',' -f1 <<< $$res`; \
+ fuzzy_or_untranslated=`cut -d',' -f2 <<< $$res`; \
+ untranslated_maybe=`cut -d',' -f3 <<< $$res`; \
+ if [ -z "$$fuzzy_or_untranslated" ]; then fuzzy_or_untranslated=0; fi; \
+ if [ -z "$$untranslated_maybe" ]; then untranslated_maybe=0; fi; \
+ incomplete=`expr $$fuzzy_or_untranslated + $$untranslated_maybe`; \
+ if `awk "BEGIN {exit !($$complete / ($$complete + $$incomplete) > $$threshold)}"`; then \
+ lang=`basename $$po .po`; \
+ list+="$$lang,"; \
+ fi; \
+ done; \
+ echo $$list;