Blob Blame History Raw
#!/bin/sh
. "${srcdir=.}/init.sh"; path_prepend_ . ../src

# Test wrapping long lines.
# Both msgid and location comments should wrap at the same column.

cat <<\EOF > xg-test13.c
/* With --width=30, the following 10 gettext calls will produce:

     #: x:1 x:2 x:3 x:4 x:5 x:6 x:7
     #: x:8 x:9 x:10
     msgid "a"

   because strlen("#:") + strlen(" x:N") * 7 = 30.  */
#line 1 "x"
gettext ("a");
gettext ("a");
gettext ("a");
gettext ("a");
gettext ("a");
gettext ("a");
gettext ("a");
gettext ("a");
gettext ("a");
gettext ("a");

/* And the following gettext call will produce:

    msgid ""
    "x:1 x:2 x:3 x:4 x:5 x:6 x:7 "
    "x:8 x:9 x:10"

   because strlen("\"") + strlen("x:N ") * 7 + strlen("\"") = 30.  */
gettext ("x:1 x:2 x:3 x:4 x:5 x:6 x:7 x:8 x:9 x:10");
EOF

: ${XGETTEXT=xgettext}
${XGETTEXT} --omit-header --add-location --width=30 -d xg-test13.tmp \
            xg-test13.c || exit 1
LC_ALL=C tr -d '\r' < xg-test13.tmp.po > xg-test13.po || exit 1

cat <<\EOF > xg-test13.ok
#: x:1 x:2 x:3 x:4 x:5 x:6 x:7
#: x:8 x:9 x:10
msgid "a"
msgstr ""

#: x:19
msgid ""
"x:1 x:2 x:3 x:4 x:5 x:6 x:7 "
"x:8 x:9 x:10"
msgstr ""
EOF

: ${DIFF=diff}
${DIFF} xg-test13.ok xg-test13.po
result=$?

exit $result