You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

93 lines
1.6 KiB

#! /bin/sh
trap 'rm -fr $tmpfiles' 1 2 3 15
tmpfiles="mm-test3.in1 mm-test3.in2"
cat <<EOF > mm-test3.in1
#
# def.po
#
#: file:100
msgid ""
"not existing"
msgstr "but with translation"
#: file2:101
msgid "not existing without translation"
msgstr ""
#: file3:102
msgid "still existing"
msgstr "translation"
#: should-not-be-here:10
#~ msgid "former obsolete"
#~ msgstr ""
#~ "but again useful"
#~ msgid "this stays obsolete"
#~ msgstr "even after running msgmerge"
#
# trailing comments should be removed
EOF
cat <<EOF > mm-test3.in2
#
# ref.po
#
#: file3:102
msgid "still existing"
msgstr "here is normally no comment"
#: file4:10
msgid ""
"former obsolete"
msgstr ""
#
# trailing comments should be removed, even here
EOF
tmpfiles="$tmpfiles mm-test3.out"
: ${MSGMERGE=msgmerge}
${MSGMERGE} -q mm-test3.in1 mm-test3.in2 -o mm-test3.out
tmpfiles="$tmpfiles mm-test3.ok"
cat << EOF > mm-test3.ok
#: file3:102
msgid "still existing"
msgstr "translation"
#: file4:10
msgid "former obsolete"
msgstr "but again useful"
#
# def.po
#
#~ msgid "not existing"
#~ msgstr "but with translation"
#~ msgid "this stays obsolete"
#~ msgstr "even after running msgmerge"
EOF
: ${DIFF=diff}
${DIFF} mm-test3.ok mm-test3.out
result=$?
rm -fr $tmpfiles
exit $result
# Preserve executable bits for this shell script.
# Thanks to Noah Friedman for this great trick.
Local Variables:
eval:(defun frobme () (set-file-modes buffer-file-name file-mode))
eval:(make-local-variable 'file-mode)
eval:(setq file-mode (file-modes (buffer-file-name)))
eval:(make-local-variable 'after-save-hook)
eval:(add-hook 'after-save-hook 'frobme)
End: