An alternative to gettext machinery extension on Django’s side would be to migrate from gettext to project Fluent as a translation backend, but for that Fluent is still not mature enough yet.
What makes it more complicated is the fact, that there can be mutliple fields listed as field_labels in the message, e.g. E-Mail-Adresse und Login. Would article be even different in that case?
For what it’s worth I’ve logged this case in django-admin-i18n-requirements project:
% python print_improvements.py ../django de --module conf
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ current translation with examples ┃ enhanced translation ┃ enhanced examples ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩
│ db/models/base.py:1467 │ gender:field_labels: │ Benutzer mit diese E-Mail-Adresse existiert bereits. │
│ %(model_name)s with this %(field_labels)s already exists. │ feminine: '%(model_name)s mit diese %(field_labels)s existiert bereits.' │ Gruppe mit diese E-Mail-Adresse existiert bereits. │
│ │ other: '%(model_name)s mit diesem %(field_labels)s existiert bereits.' │ Berechtigung mit diese E-Mail-Adresse existiert bereits. │
│ │ │ Sitzung mit diese E-Mail-Adresse existiert bereits. │
│ │ │ Website mit diese E-Mail-Adresse existiert bereits. │
│ │ │ Umleitung mit diese E-Mail-Adresse existiert bereits. │
│ │ │ Flat Page mit diese E-Mail-Adresse existiert bereits. │
│ │ │ Logeintrag mit diese E-Mail-Adresse existiert bereits. │
│ │ │ Inhaltstyp mit diese E-Mail-Adresse existiert bereits. │
└───────────────────────────────────────────────────────────┴────────────────────────────────────────────────────────────────────────────┴──────────────────────────────────────────────────────────┘
As I explained above the correct demonstrative pronoun is “dieser”, NOT “diese” for E-Mail.
And the demonstrative pronoun for “Login” would be “diesem”, thus you need to write “mit dieser E-Mail-Adresse und diesem Login”. As this seems not possible with how the sentence is structured right now, the structure itself should change.
@doom Thx for your input. But haven’t we already agreed on the fact that we need to restructure the sentence? Still no invite, though, to be able to fix it
Thank you for explaining (I’ve fixed in the reqs repo). So to handle properly multiple fields in this message, we would need to move “this” inside “field_labels” to be able to control the declension properly based on the gender of particular field labels.
Polish has the same issue here (“tą”/“tym” for feminine/other gender of field label), plus declension of the noun (field label).
I’ve updated from current incorrect
%(model_name)s z tymi %(field_labels)s już istnieje.
to
Istnieje już instancja modelu %(model_name)s mająca takie same pole/pola %(field_labels)s.