#! /bin/sh TEXTDOMAINDIR=.. LANGUAGE=tests LC_ALL=en LC_MESSAGES= LANG= export TEXTDOMAINDIR LANGUAGE LC_ALL LC_MESSAGES LANG tmpfiles="LC_MESSAGES" test -d LC_MESSAGES || mkdir LC_MESSAGES tmpfiles="$tmpfiles module1.po module2.po" cat < module1.po #default domain "messages.mo" msgid "SYS_(C)\n" msgstr "MSGFMT(3) portable message object file compiler\n" "Copyright (C) 1995 Free Software Foundation\n" "Report bugs to \n" msgid "msg 1" msgstr "msg 1 translation" # domain "help_dom" msgid "help 2 %d" msgstr "help 2 translation" # domain "error_dom" msgid "error 3" msgstr "error 3 translation" EOF cat < module2.po # --- #default domain "messages.mo" msgid "mesg 4" msgstr "mesg 4 translation" # domain "error_dom" msgid "error 3" msgstr "alternate error 2 translation" msgid "error 5" msgstr "error 5 translation" # domain "window_dom" msgid "window 6" msgstr "window 6 translation" EOF : ${MSGFMT=msgfmt} ${MSGFMT} module1.po module2.po -o LC_MESSAGES/gen.mo tmpfiles="$tmpfiles mf-test1.out" : ${GETTEXT=gettext} ${GETTEXT} gen 'SYS_(C) ' > mf-test1.out tmpfiles="$tmpfiles gtmf-test1.ok" cat < gtmf-test1.ok MSGFMT(3) portable message object file compiler Copyright (C) 1995 Free Software Foundation Report bugs to EOF : ${DIFF=diff} ${DIFF} gtmf-test1.ok mf-test1.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: