msgfilter-1   [plain text]


#! /bin/sh

# Test general filter execution.

tmpfiles=""
trap 'rm -fr $tmpfiles' 1 2 3 15

if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then
  # Stardent Vistra SVR4 grep lacks -e, says ghazi@caip.rutgers.edu.
  if (echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn >/dev/null; then
    ac_n= ac_c='
' ac_t='        '
  else
    ac_n=-n ac_c= ac_t=
  fi
else
  ac_n= ac_c='\c' ac_t=
fi

# Some fold programs (like SunOS4 and FreeBSD) don't have an option to wrap at
# spaces.
echo abc | fold -b -s -w 20 >/dev/null 2>&1 || { rm -fr $tmpfiles; exit 77; }

# Some fold programs (like HP-UX) insert a newline at the end, if the last
# line was not terminated with a newline and the -s option was given.
foldoutputcount=`echo $ac_n "abc$ac_c" | fold -b -s -w 20 | wc -c`
foldoutputcount=`echo "$foldoutputcount" | sed -e 's/[ 	]//g'`
test "$foldoutputcount" = 3 || { rm -fr $tmpfiles; exit 77; }

tmpfiles="$tmpfiles mfi-test1.po"
cat <<\EOF > mfi-test1.po
# HEADER.
#
msgid ""
msgstr ""
"Project-Id-Version: Bonnie Tyler\n"
"Content-Type: text/plain; charset=ISO-8859-1\n"
"Content-Transfer-Encoding: 8bit\n"

#: married-men:4
#, fuzzy
msgid "The world is full of married men"
msgstr "So viele verheiratete Männer"

#: married-men:5
msgid "with wives who never understand"
msgstr "und ihre Frauen verstehen sie nicht"

#: married-men:6
msgid "They're looking for someone to share"
msgstr ""

# schwer zu übersetzen...
#: married-men:7
msgid "the excitement of a love affair"
msgstr ""

#: married-men:8
msgid "Just as soon as they find you"
msgstr ""

#: married-men:9
msgid "They warn you and darn you"
msgstr ""

#~ msgid "You fly on the wings of romance"
#~ msgstr "Die Flügel der frischen Liebe heben dich zum Himmel"

#, fuzzy
#~ msgid "In the eyes of the world"
#~ msgstr "Für die anderen"

# Etwas freie Übersetzung.
#~ msgid "You're just another crazy girl"
#~ msgstr "bist du bloß ein verrücktes dummes Ding"

#~ msgid "Who loves a married man"
#~ msgstr "das einen verheirateten Mann liebt"
EOF

tmpfiles="$tmpfiles mfi-test1.out mfi-test1.err"
: ${MSGFILTER=msgfilter}
LC_ALL=C \
${MSGFILTER} -i mfi-test1.po -o mfi-test1.out fold -b -s -w 20 >mfi-test1.err 2>&1
result=$?
cat mfi-test1.err | grep -v 'warning: Locale charset' | grep -v '^ '
test $result = 0 || { rm -fr $tmpfiles; exit 1; }

tmpfiles="$tmpfiles mfi-test1.ok"
cat <<\EOF > mfi-test1.ok
# HEADER.
#
msgid ""
msgstr ""
"Project-Id-Version: \n"
"Bonnie Tyler\n"
"Content-Type: \n"
"text/plain; \n"
"charset=ISO-8859-1\n"
"Content-Transfer-Enc\n"
"oding: 8bit\n"

#: married-men:4
#, fuzzy
msgid "The world is full of married men"
msgstr ""
"So viele \n"
"verheiratete Männer"

#: married-men:5
msgid "with wives who never understand"
msgstr ""
"und ihre Frauen \n"
"verstehen sie nicht"

#: married-men:6
msgid "They're looking for someone to share"
msgstr ""

# schwer zu übersetzen...
#: married-men:7
msgid "the excitement of a love affair"
msgstr ""

#: married-men:8
msgid "Just as soon as they find you"
msgstr ""

#: married-men:9
msgid "They warn you and darn you"
msgstr ""

#~ msgid "You fly on the wings of romance"
#~ msgstr ""
#~ "Die Flügel der \n"
#~ "frischen Liebe \n"
#~ "heben dich zum \n"
#~ "Himmel"

#, fuzzy
#~ msgid "In the eyes of the world"
#~ msgstr "Für die anderen"

# Etwas freie Übersetzung.
#~ msgid "You're just another crazy girl"
#~ msgstr ""
#~ "bist du bloß ein \n"
#~ "verrücktes dummes \n"
#~ "Ding"

#~ msgid "Who loves a married man"
#~ msgstr ""
#~ "das einen \n"
#~ "verheirateten Mann \n"
#~ "liebt"
EOF

: ${DIFF=diff}
${DIFF} mfi-test1.ok mfi-test1.out
result=$?

rm -fr $tmpfiles

exit $result