-rwxr-xr-x | i18n/status.sh | 96 |
1 files changed, 55 insertions, 41 deletions
diff --git a/i18n/status.sh b/i18n/status.sh index 859c442..9205172 100755 --- a/i18n/status.sh +++ b/i18n/status.sh @@ -1,46 +1,60 @@ -#/bin/sh +#!/bin/sh + +# +# Function: +# showStringStats <title> <file> +# +# Parameters: +# <title> Title to be displayed. +# <file> Name of file to be counted. +# +function showStringStats () +{ + echo -n "$1: " + if [ -e "$2" ]; then + csTotal=`grep translation "$2" | wc -l` + csUnfinished=`grep translation "$2" | grep type=\"unfinished\" | wc -l` + echo ${csUnfinished}", that means `expr ${csUnfinished} \* 100 / ${csTotal}`% needs to be done." + else + echo "'$2' is missing. No stats available!" + fi +} + +# +# Main +# arg=$1 foo=$1 -if [ x${arg}x = xx ] -then - arg=. +if [ "x${arg}x" = "xx" ]; then + arg="." foo="all" fi -#general figures -echo "Status of $foo" -echo - -echo "number of strings: " -strs=`find $arg -name "*.ts" -exec cat {} \; | grep translation | wc -l` -echo $strs -echo "unfinished: " -unfi=`find $arg -name "*.ts" -exec cat {} \; | grep translation | grep type=\"unfinished\" | wc -l` -echo $unfi", that means" `expr \( $strs - $unfi \) \* 100 / $strs`% "are done" -echo "obsolete: " -obso=`find $arg -name "*.ts" -exec cat {} \; | grep translation | grep type=\"obsolete\" | wc -l` -echo $obso `expr $obso \* 100 / $strs`% - -#if [ "foo" = "all" ] -#then - #from here on we will only look at the core-parts. All numbers have to be 0% if - #the specific language will be in the official release. - echo - echo "Core:" - core_today=`grep translation $arg/today.ts | grep type=\"unfinished\" | wc -l` - core_todo=`grep translation $arg/todolist.ts | grep type=\"unfinished\" | wc -l` - core_addressbook=`grep translation $arg/addressbook.ts | grep type=\"unfinished\" | wc -l` - core_datebook=`grep translation $arg/datebook.ts | grep type=\"unfinished\" | wc -l` - libopie=`grep translation $arg/libopie.ts | grep type=\"unfinished\" | wc -l` - _core_today=`grep translation $arg/today.ts | wc -l` - _core_todo=`grep translation $arg/todolist.ts | wc -l` - _core_addressbook=`grep translation $arg/addressbook.ts | wc -l` - _core_datebook=`grep translation $arg/datebook.ts | wc -l` - _libopie=`grep translation $arg/libopie.ts | wc -l` -#fi - - echo "Today:" $core_today", that means" `expr $core_today \* 100 / $_core_today`% "needs to be done" - echo "Datebook:" $core_datebook", that means" `expr $core_datebook \* 100 / $_core_datebook`% "needs to be done" - echo "Todo:" $core_todo", that means" `expr $core_todo \* 100 / $_core_todo`% "needs to be done" - echo "Addressbook:" $core_addressbook", that means" `expr $core_addressbook \* 100 / $_core_addressbook`% "needs to be done" - echo "libopie:" $libopie", that means" `expr $libopie \* 100 / $_libopie`% "needs to be done" +# +# General figures +# +echo -e "Status of ${foo}:\n" + +echo -n "Number of strings: " +strs=`find ${arg} -name "*.ts" -exec grep translation {} \; | wc -l` +echo ${strs} + +echo -n "Unfinished: " +unfi=`find ${arg} -name "*.ts" -exec grep translation {} \; | grep type=\"unfinished\" | wc -l` +echo ${unfi}", that means `expr \( ${strs} - ${unfi} \) \* 100 / ${strs}`% are done." + +echo -n "Obsolete: " +obso=`find ${arg} -name "*.ts" -exec grep translation {} \; | grep type=\"obsolete\" | wc -l` +echo ${obso}" (`expr ${obso} \* 100 / ${strs}`%)" + +# +# from here on we will only look at the core-parts. All numbers have to be 0% if +# the specific language will be in the official release. +# +echo -e "\nCore:\n" + +showStringStats "Addressbook" "${arg}/addressbook.ts" +showStringStats "Datebook" "${arg}/datebook.ts" +showStringStats "libopie" "${arg}/libopie.ts" +showStringStats "Today" "${arg}/today.ts" +showStringStats "Todo" "${arg}/todolist.ts" |