#! /bin/sh . "${srcdir=.}/init.sh"; path_prepend_ . ../src # Test iterative mode of msgfmt --desktop. cat <<\EOF > mf.desktop [Desktop Entry] Type=Application Name =Foo Comment[foo]=Already translated comment Comment= \sThis is a \nmultiline comment; for testing Keywords=Keyword1;Keyword2;Key\;word3; EOF cat <<\EOF > fr.po # SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # FIRST AUTHOR , YEAR. # #, fuzzy msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2014-03-17 07:36+0900\n" "PO-Revision-Date: 2014-03-17 08:40+0900\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: xg.desktop:4 msgid "Foo" msgstr "" "French\n" "foo" #: xg.desktop:5 msgid "" " This is a \n" "multiline comment; for testing" msgstr "" "French \n" "comment" #: xg.desktop:7 msgid "Keyword1;Keyword2;Key\\;word3;" msgstr "one;two;thr\\;ee;" EOF cat <<\EOF > mf.desktop.ok [Desktop Entry] Type=Application Name[fr]=French\nfoo Name=Foo Comment[foo]=Already translated comment Comment[fr]=French \ncomment Comment=\sThis is a \nmultiline comment; for testing Keywords[fr]=one;two;thr\;ee; Keywords=Keyword1;Keyword2;Key\;word3; EOF # Sanity checks for contradicting options. ${MSGFMT} --desktop --template=mf.desktop -l fr fr.po \ >/dev/null 2>/dev/null \ && Exit 1 ${MSGFMG} --desktop --template=mf.desktop fr.po -o mf.desktop.out \ >/dev/null 2>/dev/null \ && Exit 1 # Proceed to the .desktop file generation. ${MSGFMT} --desktop --template=mf.desktop -l fr fr.po -o mf.desktop.out \ || Exit 1 : ${DIFF=diff} ${DIFF} mf.desktop.ok mf.desktop.out result=$? exit $result