#! /bin/sh # Test msggrep on a PO file with contexts. tmpfiles="" trap 'rm -fr $tmpfiles' 1 2 3 15 tmpfiles="$tmpfiles mg-test7.po" cat <<\EOF > mg-test7.po msgid "" msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #. A menu item msgctxt "File|" msgid "Open" msgstr "Ouvrir" #. A menu item msgctxt "File|" msgid "New" msgstr "Nouveau" #. Denote a lock's state msgctxt "Lock state" msgid "Open" msgstr "Ouvert" #. Denote a lock's state msgctxt "Lock state" msgid "Closed" msgstr "Fermé" #. A product msgctxt "Audi" msgid "car" msgstr "voiture" #. A product msgctxt "Océ" msgid "copier" msgstr "photocopieur" #~ msgid "Save As" #~ msgstr "Enregistrer l'as" #. A menu item #~ msgctxt "File|" #~ msgid "Save As" #~ msgstr "Enregistrer sous" EOF tmpfiles="$tmpfiles mg-test7.tmp mg-test7.out mg-test7.err" : ${MSGGREP=msggrep} LC_MESSAGES=C LC_ALL= \ ${MSGGREP} -J -e "File|" -o mg-test7.tmp mg-test7.po 2> mg-test7.err result=$? cat mg-test7.err | grep -v 'warning: Locale charset' | grep -v '^ ' test $result = 0 || { rm -fr $tmpfiles; exit 1; } LC_ALL=C tr -d '\r' < mg-test7.tmp > mg-test7.out test $? = 0 || { rm -fr $tmpfiles; exit 1; } tmpfiles="$tmpfiles mg-test7.ok" cat <<\EOF > mg-test7.ok msgid "" msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #. A menu item msgctxt "File|" msgid "Open" msgstr "Ouvrir" #. A menu item msgctxt "File|" msgid "New" msgstr "Nouveau" #. A menu item #~ msgctxt "File|" #~ msgid "Save As" #~ msgstr "Enregistrer sous" EOF : ${DIFF=diff} ${DIFF} mg-test7.ok mg-test7.out result=$? rm -fr $tmpfiles exit $result