Show langchk.sh syntax highlighted
#!/bin/bash
# Removes unnecesary spaces and tabs after the key,
# checks for duplicated keys
# checks for missing keys
# strips unneccesarry lines
# by Peter Aron Horvath from Hungary, Miskolc
# petesm@freemail.hu
clear
echo -e "Lang File Checking for \33[32;01maMSN\33[0m v0.1b by Peter Aron Horvath"
echo "http://www.iit.uni-miskolc.hu/~horvath16/"
echo
if [ -z $1 ]; then
echo "USAGE: langchk <english lang file> <costum lang file>"
exit
fi
if [ -z $2 ]; then
echo "USAGE: langchk <english lang file> <costum lang file>"
exit
fi
# checking for missing keys
echo -e "Using file \33[32;1m'$1'\33[0m as directory to process \33[32;1m'$2'\33[0m"
echo "Checking for duplicated keys/missing keys and stripping:"
rows=`cat $1|wc -l|awk '{print $1}'`
echo -n "key: $rows / "
n=0
echo>lang.post
for i in `cat $1 |awk '{print $1}'`
do
n=`expr $n + 1`
echo -ne "\33[6;13H"
echo "$n"
res=`cat $2 |grep "^$i "`
if [ -z "$res" ]; then
#key not found
err=`echo "$err\n\33[31;01mMissing key:\33[0m $i"`
else
row=`echo "$res" | uniq`
if [[ "$res" != "$row" ]]; then
#duplicated key
err=`echo "$err\n\33[31;1mDuplicated key:\33[0m $i"`
else
orig=`cat $1|grep "^$i "`
trans=`cat $2|grep "^$i "`
if [[ "$orig" == "$trans" ]]; then
#key not translated
if [[ ! "$i" == "amsn_lang_version" ]]; then
err=`echo "$err\n\33[33;1mNot translated key:\33[0m $i"`
fi
else
#all ok write key out
# remove unnecesary spaces
echo $res |awk '{print $1 " " substr($0,index($0,$2),length($0))}'>>lang.post
fi
fi
fi
done
if [ -n "$err" ]; then
echo -e $err
echo -e $err >langchk.log
echo "Lines in yellow are just notices."
echo "'lang.fix' does not contain the lines with errors!"
else
echo "Lang file OK and fully translated!"
fi
echo "amsn_lang_version 2" >lang.fix
cat lang.post |grep -v "amsn_lang_version 2"|grep -v "^$"|sort -d >>lang.fix
rm lang.post
echo
echo "Owerwrite file '$2' with the final output? [y/N]"
read a
if [[ "$a" == "y" || "$a" == "Y" ]]; then
cat lang.fix >$2
echo "Now please send '$2' to:"
echo "amsn-translations@lists.sourceforge.net"
echo "remember partialy translated files are usefull too!"
else
echo "'lang.fix' is the output."
echo "Now please reaname it to the correct name and send it to:"
echo "amsn-translations@lists.sourceforge.net"
echo "remember partialy translated files are usefull too!"
echo "$1 and $2 files are untouched!"
fi
exit
See more files for this project here
A very nice MSN compatible messenger application, aMSN Messenger is a multiplatform MSN messenger clone. Works pretty much like its Windows based counterpart. Perfect for keeping in touch with those friends who have not yet seen the light. Works on linux
Project homepage:
http://sourceforge.net/projects/amsn
Programming language(s): C,C++,PHP,Tcl,XML
License: other
LANG-HOWTO
addkey.tcl
complete.pl
convert.tcl
genlangfiles.c
genpage.c
lang1.tmpl
lang2.tmpl
lang3.tmpl
langal
langast
langca
langca_VC
langchk.sh
langcs
langcy
langda
langde
langee
langel
langen
langes
langeu
langfi
langfr
langfr_CA
langfri
langglg
langgr2
langhu
langid
langis
langit
langko
langlt
langmk
langnl
langno
langoc
langpl
langpt
langpt_BR
langro
langru
langsk
langsl
langsr
langsv
langtr
langzh-CN
langzh-TW
missing.py
sortlang