#!/bin/sh set -euf TX_PROJECT="p11-kit" TX_HOST="https://www.transifex.com" TX_RESOURCE="$TX_PROJECT.master" fail() { echo "tx-update: $@" >&2 exit 2 } tx_langs() ( cd .tx/$TX_RESOURCE ls | sed 's/_translation//' ) lingua_langs() { cat po/LINGUAS | while read lang extra; do case $lang in \ \#*) ;; en) ;; *) echo -n "$lang " esac done } if [ ! -d po ]; then fail "run this script in the top level project directory" fi if [ ! -d .tx ]; then tx init --host=$TX_HOST tx set --source -r $TX_RESOURCE -l en po/$TX_PROJECT.pot fi # Push source to server tx push -s # Pull from the server tx pull -a pull_again="no" # Update LINGUAS for lang in $(tx_langs); do if ! grep -qw $lang po/LINGUAS; then echo $lang >> po/LINGUAS pull_again="yes" fi done # Setup associations for lang in $(lingua_langs); do tx set -r $TX_RESOURCE -l $lang po/$lang.po pull_again="yes" done # Pull and get all translations if [ "$pull_again" = "yes" ]; then tx pull fi