[GETTEXT BUG] xgettext(1) can't extract "gettext -- foo"
- From
Ævar Arnfjörð Bjarmason <avarab@gmail.com>
- Date
- Jun 5, 2012, 09:05 UTC
- Message-ID
- <CACBZZX7rhA23k5Mz=dY6G_75hwBMgWbKrkAGJv4rd9URAh4vHw@mail.gmail.com>
The Git project is having issues with xgettext being unable to extract msgid's provided to gettext(1) where the first argument is --. Here's a minimal testcase:
$ cat /tmp/xgettext-tesh.sh
#!/bin/sh
. gettext.sh
gettext "hello "
gettext -- "world"
echoIf that's extracted with xgettext(1) the message on line 4 is presumed to be "--", when in fact it should be "world":
$ xgettext --omit-header --force-po --output=/tmp/xgettext.po
--language=Shell --debug /tmp/xgettext-tesh.sh ; cat /tmp/xgettext.po
#: /tmp/xgettext-tesh.sh:3
msgid "hello "
msgstr "" #: /tmp/xgettext-tesh.sh:4
msgid "--"
msgstr ""There's currently a proposed patch to hack around this using something like:
gitgettext () {
gettext -- "$1"
echo
}Is there a better way to handle this, and is this a bug the gettext project is aware of and might be fixing sometime soon?