aboutsummaryrefslogtreecommitdiff
path: root/scripts/sync-translations.sh
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/sync-translations.sh')
-rwxr-xr-xscripts/sync-translations.sh11
1 files changed, 9 insertions, 2 deletions
diff --git a/scripts/sync-translations.sh b/scripts/sync-translations.sh
index 67d3609..149c7ff 100755
--- a/scripts/sync-translations.sh
+++ b/scripts/sync-translations.sh
@@ -16,12 +16,19 @@ for f in $(find . -type f -name '*.md' | grep -v '^./vendor' | grep -v '^./_site
fi
done
-for f in $(find . -type f -name '*.md' | grep -v '^./vendor/' | grep -v '^./_site/' | grep -v './drafts/' | grep -v './templates/'); do
+for f in $(find _tils -type f -name '*.md' | grep -v '^./vendor/' | grep -v '^./_site/' | grep -v './drafts/' | grep -v './templates/'); do
l="$(grep '^lang: ..$' "$f" | awk '{print $2}')"
if [[ "$l" != 'en' ]]; then
ref="$(grep '^ref: ' "$f" | awk '{print $2}')"
# shellcheck disable=2046
FROM=$(find $(find . -name '*.md' -exec grep -l "^ref: $ref$" {} \;) -exec grep -l '^lang: en$' {} \;)
- echo po2md "$FROM" --pofiles "locale/$l/LC_MESSAGES/$ref.po" --quiet --save "$f"
+ po2md "$FROM" --pofiles "locale/$l/LC_MESSAGES/$ref.po" --quiet --save "$f"
fi
done
+
+if [[ "${1:-}" = '--check' ]]; then
+ git diff --quiet || {
+ echo 'Translations are not in sync.'
+ exit 1
+ }
+fi