#! /bin/sh # Test msgfmt and msgunfmt on a PO file with contexts. tmpfiles="" trap 'rm -fr $tmpfiles' 1 2 3 15 tmpfiles="$tmpfiles mf-14.po" cat <<\EOF > mf-14.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 mf-14.mo" : ${MSGFMT=msgfmt} ${MSGFMT} -o mf-14.mo mf-14.po test $? = 0 || { rm -fr $tmpfiles; exit 1; } tmpfiles="$tmpfiles mf-14.tmp mf-14.out" : ${MSGUNFMT=msgunfmt} ${MSGUNFMT} -o mf-14.tmp mf-14.mo test $? = 0 || { rm -fr $tmpfiles; exit 1; } LC_ALL=C tr -d '\r' < mf-14.tmp > mf-14.out test $? = 0 || { rm -fr $tmpfiles; exit 1; } tmpfiles="$tmpfiles mf-14.ok" cat <<\EOF > mf-14.ok msgid "" msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" msgctxt "Audi" msgid "car" msgstr "voiture" msgctxt "File|" msgid "New" msgstr "Nouveau" msgctxt "File|" msgid "Open" msgstr "Ouvrir" msgctxt "Lock state" msgid "Closed" msgstr "Fermé" msgctxt "Lock state" msgid "Open" msgstr "Ouvert" msgctxt "Océ" msgid "copier" msgstr "photocopieur" EOF : ${DIFF=diff} ${DIFF} mf-14.ok mf-14.out result=$? rm -fr $tmpfiles exit $result