f8d0601c5b06735c053ea6fa18562e26facb2bf0
[dcpomatic.git] / hacks / i18nup
1 #!/bin/bash
2 changes=`git status -s | grep "^ M"`
3 check=`echo "$changes" | grep -v /po/`
4 if [ "$check" != "" ]; then
5   echo "Non i18n updates would be committed"
6   exit 1
7 fi
8
9 if [[ `echo $changes | grep de_DE` != "" ]]; then
10   language="de_DE"
11   translator="Carsten Kurz"
12 elif [[ `echo $changes | grep nl_NL` != "" ]]; then
13   language="nl_NL"
14   translator="Rob van Nieuwkerk"
15 elif [[ `echo $changes | grep es_ES` != "" ]]; then
16   language="es_ES"
17   translator="Manuel AC"
18 elif [[ `echo $changes | grep sv_SE` != "" ]]; then
19   language="sv_SE"
20   translator="Adam Klotblixt"
21 elif [[ `echo $changes | grep fr_FR` != "" ]]; then
22   language="fr_FR"
23   translator="Thierry Journet"
24 elif [[ `echo $changes | grep ru_RU` != "" ]]; then
25   language="ru_RU"
26   translator="Igor Voytovich"
27 elif [[ `echo $changes | grep uk_UA` != "" ]]; then
28   language="uk_UA"
29   translator="Igor Voytovich"
30 elif [[ `echo $changes | grep cs_CZ` != "" ]]; then
31   language="cs_CZ"
32   translator="Tomáš Begeni"
33 else
34   echo "Unknown language"
35   exit 1
36 fi
37
38 date=`date +%Y-%m-%d`
39
40 tag="$date  Carl Hetherington  <cth@carlh.net>"
41 msg="Updated $language translation from $translator."
42
43 echo "$tag" > /tmp/$$.changelog
44 echo "" >> /tmp/$$.changelog
45 echo -e "\t* $msg" >> /tmp/$$.changelog
46 echo "" >> /tmp/$$.changelog
47
48 if [[ `head -n 1 ChangeLog` == "$tag" ]]; then
49     echo "Trimming!"
50     tail -n +3 ChangeLog > /tmp/$$.trimmed
51     mv /tmp/$$.trimmed ChangeLog
52 fi
53
54 cat /tmp/$$.changelog | cat - ChangeLog > /tmp/$$.joined
55 rm /tmp/$$.changelog
56 mv /tmp/$$.joined ChangeLog
57
58 git diff
59
60 echo "OK?"
61 read yes
62 if [ "$yes" == "y" ]; then
63     git commit -a -m "$msg"
64 fi