błąd w „django-admin.py makemessages” lub wywołanie xgettext? -> „Ostrzeżenie: niezakończony ciąg”

django-admin.py makemessages umiera z błędami „ostrzeżenie: niezakończony ciąg” w przypadkach, gdy naprawdę długie łańcuchy są zapakowane:

<code>string = "some text \
          more text\
          and even more"
</code>

Te ciągi nie muszą nawet być tłumaczone - np. łańcuchy zapytań sql. Problem znika, gdy łączę ciąg, ale wynik wygląda brzydko i dołączenie do niego wymaga czasu ...

Czy ktoś ma taki problem? Czy znalazłeś sposób, aby to naprawić?

Mam następujące wersje narzędzi:

xgettext-0.17, gettext-0.17, django-1.0.2, python-2.6.2

To byłobilet w tej kwestii, ale został prawdopodobnie zamknięty, ponieważ błąd pojawia się tylko w niektórych kombinacjach wersji składowych.

EDIT: znalazłem źródło problemu - xgettext drukuje komunikaty ostrzegawcze na sterr, a django traktuje je jako błędy krytyczne i kończy działanie.

zwracany status wywołania xgettext to 0 - „sukces”. Domyślam się, że django powinno rozpoznać to jako sukces i nie wychodzić z powodu ostrzeżeń.

Co ciekawe xgettext nadal wyodrębnia ciągi zawinięte w odwrotny ukośnik, jeśli muszą zostać przetłumaczone, ale wyświetla ostrzeżenia w stderr („niezakończony ciąg”) i plik .po („umiędzynarodowione wiadomości nie powinny zawierać`)

Wywołanie xgettext jest następujące:

<code>xgettext -d django -L Python --keyword=gettext_noop \
         --keyword=gettext_lazy --keyword=ngettext_lazy:1,2 \
         --keyword=ugettext_noop --keyword=ugettext_lazy \
         --keyword=ungettext_lazy:1,2 
         --from-code UTF-8 -o - source_file.py
</code>

wywoływane z django / core / management / commands / makemessages.py

questionAnswers(1)

yourAnswerToTheQuestion