#!/bin/bash # Filip Komar, 2014 # @license GPL v2 # @author Filip (rebuilding a gettext dictionaries) # @copyright 2014/03 # inspired by check_for_translation_work.sh error=0 declare -A resources source ./tools/web_projects.dat for resource in "${!resources[@]}" do php_source=${resources[$resource]} php tools/extract2gettext.php $php_source $resource true current_error_level=$? # catch error level if [ $current_error_level -gt 1 ]; then error=$current_error_level error_in_source=$php_source fi if [ -f ./langs/en/$resource.pot ]; then # cut too long lines msgmerge --quiet ./langs/en/$resource.pot ./langs/en/$resource.pot > ./langs/en/$resource.tmp mv ./langs/en/$resource.tmp ./langs/en/$resource.pot for directory in ./langs/* do # update po files too if [ -d $directory/ ]; then if [ -f $directory/$resource.po ]; then msgmerge --update --quiet $directory/$resource.po ./langs/en/$resource.pot fi fi done fi done echo '' case $error in 0) echo "Done lookup for _g() and _r() in php source code. Gettext catalogs (pot files) rebuilded. Existing po files updated." ;; 2) echo "!!!! Please fix $error_in_source first !!!! See details above." ;; 3) echo "!!!! Failed to write $error_in_source !!!! See details above." ;; esac