Как заставить Django makemessages использовать существующие переводы приложений, а не дублировать их?
Как заставить makemessages игнорировать уже переведенные строки?
В Django 5 я запускаю
./manage.py makemessages -l fr
Я также скопировал templates/registration/registration_form.html
из приложения "Регистрация" (django-registration-redux), чтобы я мог модифицировать его для расширения base.html из моего проекта.
Теперь каждая переведенная строка в моей копии registration_form.html
попадает в мой файл locale/fr/LC_MESSAGES/django.po
для перевода.
Однако эти строки уже переведены в каталоге app. В документации говорится:
[Django] ищет и использует, если он существует, каталог локали в каждом из установленных приложений, перечисленных в INSTALLED_APPS
.
Это правильное и прекрасное поведение. Переводы в порядке.
Итак, я не хочу, чтобы все эти строки были в моем файле и выглядели так, будто их нужно переводить заново.
Я попробовал каждый из следующих вариантов:
./manage.py makemessages -l fr -i registration/locale
./manage.py makemessages -l fr -i .venv/lib/python3.11/site-packages/registration/locale/
безрезультатно.