#!/bin/sh . "${srcdir=.}/init.sh"; path_prepend_ . ../src # Test of Desktop Entry support. : ${XGETTEXT=xgettext} cat <<\EOF >err1.desktop [Desktop Entry] This is an invalid line Name =Foo EOF (LANGUAGE= LC_ALL=C ${XGETTEXT} --add-comments -o - err1.desktop 2>&1; exit) | grep "missing '=' after" || Exit 1 cat <<\EOF >err2.desktop [Desktop Entry EOF (LANGUAGE= LC_ALL=C ${XGETTEXT} --add-comments -o - err2.desktop 2>&1; exit) | grep "unterminated group name" || Exit 1 cat <<\EOF >err3.desktop [Desktop Entry] Not a blank line! EOF (LANGUAGE= LC_ALL=C ${XGETTEXT} --add-comments -o - err3.desktop 2>&1; exit) | grep "invalid non-blank line" || Exit 1 cat <<\EOF >err4.desktop [Desktop Entry]a EOF (LANGUAGE= LC_ALL=C ${XGETTEXT} --add-comments -o - err4.desktop 2>&1; exit) | grep "invalid non-blank character" || Exit 1 # gettext 0.19.4 issued an baseless warning of this. cat <<\EOF >ok4.desktop [Desktop Entry] EOF (LANGUAGE= LC_ALL=C ${XGETTEXT} --add-comments -o - ok4.desktop 2>&1; exit) | grep "invalid non-blank character" && Exit 1 cat <<\EOF > xg.desktop [Desktop Entry] Type=Application Name =Foo # This is a comment for comment # This is a comment for comment Comment= \sThis is a \nmultiline\t comment; for testing Comment[foo]=Already translated comment X-Foo = bar # This is a comment before a blank line Keywords=Keyword1;Keyword2;Key\;word3; EOF ${XGETTEXT} --add-comments -o - xg.desktop | grep -v 'POT-Creation-Date' > xg-desktop.pot || Exit 1 cat <<\EOF > xg-desktop.ok # 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" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=CHARSET\n" "Content-Transfer-Encoding: 8bit\n" #: xg.desktop:4 msgid "Foo" msgstr "" #. This is a comment for comment #. This is a comment for comment #: xg.desktop:7 msgid "" " This is a \n" "multiline\t comment; for testing" msgstr "" #: xg.desktop:12 msgid "Keyword1;Keyword2;Key\\;word3;" msgstr "" EOF : ${DIFF=diff} ${DIFF} xg-desktop.ok xg-desktop.pot result=$? exit $result