diff options
Diffstat (limited to 'devtools')
-rwxr-xr-x | devtools/compile_translations.sh | 46 | ||||
-rwxr-xr-x | devtools/update_extlib.sh (renamed from devtools/move_translations_for_pootle.sh) | 33 | ||||
-rwxr-xr-x | devtools/update_translations.sh (renamed from devtools/update_translations_pootle.sh) | 19 | ||||
-rwxr-xr-x | devtools/update_translations_transifex.sh | 73 |
4 files changed, 68 insertions, 103 deletions
diff --git a/devtools/compile_translations.sh b/devtools/compile_translations.sh new file mode 100755 index 00000000..fa84e9a7 --- /dev/null +++ b/devtools/compile_translations.sh @@ -0,0 +1,46 @@ +#!/bin/bash + +# GNU MediaGoblin -- federated, autonomous media hosting +# Copyright (C) 2015 GNU MediaGoblin contributors. See AUTHORS. +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +# exit if anything fails +set -e + +if [ -f "./bin/pybabel" ]; then + PYBABEL="./bin/pybabel"; +else + PYBABEL=pybabel; +fi + + +## This used to be a lot simpler... +## +## But now we have a Lojban translation that we can't compile +## currently. We don't want to get rid of it because we want it... see +## https://issues.mediagoblin.org/ticket/1070 +## to track progress. + +for file in `find mediagoblin/i18n/ -name "*.po"`; do + if [ "$file" != "mediagoblin/i18n/jbo/mediagoblin.po" ] && \ + [ "$file" != "mediagoblin/i18n/templates/en/mediagoblin.po" ]; then + mkdir -p `dirname $file`/LC_MESSAGES/; + $PYBABEL compile -i $file \ + -o `dirname $file`/LC_MESSAGES/mediagoblin.mo \ + -l `echo $file | awk -F / '{ print $3 }'`; + else + echo "Skipping $file which pybabel can't compile :("; + fi; +done diff --git a/devtools/move_translations_for_pootle.sh b/devtools/update_extlib.sh index 553a8c84..b94f0076 100755 --- a/devtools/move_translations_for_pootle.sh +++ b/devtools/update_extlib.sh @@ -1,7 +1,7 @@ #!/bin/bash # GNU MediaGoblin -- federated, autonomous media hosting -# Copyright (C) 2011, 2012 GNU MediaGoblin contributors. See AUTHORS. +# Copyright (C) 2015 GNU MediaGoblin Contributors. See AUTHORS. # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU Affero General Public License as published by @@ -16,17 +16,26 @@ # You should have received a copy of the GNU Affero General Public License # along with this program. If not, see <http://www.gnu.org/licenses/>. -# exit if anything fails + set -e -# move the files to Pootle-friendly layout -for lang in $(ls mediagoblin/i18n/); do - from="mediagoblin/i18n/$lang/LC_MESSAGES/mediagoblin.po" - to="mediagoblin/i18n/$lang/mediagoblin.po" - git mv $from $to -done +# Make sure we have npm available + +if ! which npm > /dev/null; then + echo "Can't find npm, no way to install extlib :("; + exit 1; +fi + +# Install bower if need be +if which bower > /dev/null; then + BOWER=`which bower`; +elif [ -f ./node_modules/.bin/bower ]; then + BOWER="./node_modules/.bin/bower"; +else + echo "Bower not found, installing via npm!"; + npm install bower; + BOWER="./node_modules/.bin/bower"; +fi -# english is not required and is Pootle's "template" now -mkdir mediagoblin/i18n/templates/ -git mv mediagoblin/i18n/en/mediagoblin.po \ - mediagoblin/i18n/templates/mediagoblin.pot +# Do package/file installs +$BOWER install diff --git a/devtools/update_translations_pootle.sh b/devtools/update_translations.sh index 1a299de8..5a4275fd 100755 --- a/devtools/update_translations_pootle.sh +++ b/devtools/update_translations.sh @@ -34,24 +34,7 @@ echo "==> Extracting translations" ./bin/pybabel extract -F babel.ini -o mediagoblin/i18n/templates/mediagoblin.pot . echo "==> Compiling .mo files" -## This used to be a lot simpler... -## -## But now we have a Lojban translation that we can't compile -## currently. We don't want to get rid of it because we want it... see -## https://issues.mediagoblin.org/ticket/1070 -## to track progress. - -for file in `find mediagoblin/i18n/ -name "*.po"`; do - if [ "$file" != "mediagoblin/i18n/jbo/mediagoblin.po" ] && \ - [ "$file" != "mediagoblin/i18n/templates/en/mediagoblin.po" ]; then - mkdir -p `dirname $file`/LC_MESSAGES/; - ./bin/pybabel compile -i $file \ - -o `dirname $file`/LC_MESSAGES/mediagoblin.mo \ - -l `echo $file | awk -F / '{ print $3 }'`; - else - echo "Skipping $file which pybabel can't compile :("; - fi; -done +./devtools/compile_translations.sh echo "==> Committing to git" git add mediagoblin/i18n/ diff --git a/devtools/update_translations_transifex.sh b/devtools/update_translations_transifex.sh deleted file mode 100755 index d82fab1f..00000000 --- a/devtools/update_translations_transifex.sh +++ /dev/null @@ -1,73 +0,0 @@ -#!/bin/bash - -# GNU MediaGoblin -- federated, autonomous media hosting -# Copyright (C) 2011, 2012 GNU MediaGoblin contributors. See AUTHORS. -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU Affero General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU Affero General Public License for more details. -# -# You should have received a copy of the GNU Affero General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - -# exit if anything fails -set -e - -echo "==> checking out master" -git checkout master - -echo "==> pulling git master" -git pull - -echo "==> pulling present translations" -./bin/tx pull -a - -git add mediagoblin/i18n/ -git commit -m "Committing present MediaGoblin translations before pushing extracted messages" \ - || true # Don't fail if nothing to commit - -echo "==> Extracting translations" -./bin/pybabel extract -F babel.ini -o mediagoblin/i18n/en/LC_MESSAGES/mediagoblin.po . - -echo "==> Pushing extracted translations to Transifex" -./bin/tx push -s - -echo "==> Waiting 5 seconds, so the server can process the new stuff (hopefully)" -sleep 5 - -# gets the new strings added to all files -echo "==> Re-Pulling translations from Transifex" -./bin/tx pull -a - -echo "==> Compiling .mo files" - -## This used to be a lot simpler: -# ./bin/pybabel compile -D mediagoblin -d mediagoblin/i18n/ - -## But now we have a Lojban translation that we can't compile -## currently. We don't want to get rid of it because we want it... see -## https://issues.mediagoblin.org/ticket/1070 -## to track progress. - -for file in `find mediagoblin/i18n/ -name "*.po"`; do - if [ "$file" != "mediagoblin/i18n/jbo/LC_MESSAGES/mediagoblin.po" ]; then - ./bin/pybabel compile -i $file \ - -o `dirname $file`/mediagoblin.mo \ - -l `echo $file | awk -F / '{ print $3 }'`; - else - echo "Skipping $file which pybabel can't compile :("; - fi; -done - -echo "==> Committing to git" -git add mediagoblin/i18n/ - -git commit -m "Committing extracted and compiled translations" || true - -echo "... done. Now consider pushing up those commits!" |