diff options
Diffstat (limited to 'po/messages.sh')
-rwxr-xr-x | po/messages.sh | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/po/messages.sh b/po/messages.sh new file mode 100755 index 0000000..818688c --- /dev/null +++ b/po/messages.sh @@ -0,0 +1,69 @@ +#!/bin/sh + +# Modified by Tobi Vollebregt for use with kio-locate. + +# Inspired by Makefile.common from coolo +# this script is used to update the .po files + +# To update the translations, you will need a specific gettext +# patched for kde and a lot of patience, tenacity, luck, time .. + + +# I guess one should only update the .po files when all .cpp files +# are generated (after a make or scons) + +# If you have a better way to do this, do not keep that info +# for yourself and help me to improve this script, thanks +# (tnagyemail-mail tat yahoo d0tt fr) +# + +SRCDIR=../src +TIPSDIR=$SRCDIR/appdata + +KDEDIR=`kde-config --prefix` +EXTRACTRC=extractrc +KDEPOT=`kde-config --prefix`/include/kde/kde.pot +XGETTEXT="xgettext -C -ki18n -ktr2i18n -kI18N_NOOP -ktranslate -kaliasLocale -x $KDEPOT " + +## check that kde.pot is available +if ! test -e $KDEPOT; then + echo "$KDEPOT does not exist, there may be something wrong with your installation!" + XGETTEXT="xgettext -C -ki18n -ktr2i18n -kI18N_NOOP -ktranslate -kaliasLocale " +fi + +## extract the strings +echo "extracting the strings" + +echo -e 'i18n("_: NAME OF TRANSLATORS\\n"\n"Your names")\ni18n("_: EMAIL OF TRANSLATORS\\n"\n"Your emails")' > $SRCDIR/_translatorinfo.cpp + +## bad hack to get strings from *.ui files +# Armin Straub <[email protected]> +UIC="uic -tr i18n" +TMPHACK="$SRCDIR/tmphack" +mkdir $TMPHACK || exit 1 +for F in "$SRCDIR/"*.ui; do + echo ".. preparing $F" + FN=$TMPHACK/$(basename "$F") + $UIC "$F" > "$FN.h" && $UIC -impl "$FN.h" "$F" > "$FN.cpp" +done +kconfig_compiler -d $TMPHACK $SRCDIR/*.kcfg $SRCDIR/*.kcfgc +## bad hack to get strings from *.ui files + +$XGETTEXT `find $SRCDIR -name "*.cpp"` -o kio_locate.pot + +## bad hack to get strings from *.ui files +rm -rf "$TMPHACK" +## bad hack to get strings from *.ui files + +# remove the intermediate files +rm -f $SRCDIR/_translatorinfo.cpp + +## now merge the .po files .. +echo "merging the .po files" + +for i in `ls *.po`; do + msgmerge $i kio_locate.pot -o $i || exit 1 +done + +## finished +echo "Done" |