newforms-admin - possible improvements for internationalization

1 view
Skip to first unread message

pm13

unread,
Sep 13, 2007, 1:27:40 PM9/13/07
to Django developers
I use newforms-admin branch and I like it very much. And I have some
ideas for possible improvements for internationalization.

1. Capitalized verbose names for models

Now the preferred format is:

class Contact(models.Model):
email = models.CharField(verbose_name=_('email'))

class ContactForm(forms.Form):
email = forms.CharField(label=_('Email'))

Why is once 'email' and once 'Email'? I think it is quite
inconsistent.

But it is specially bad for translators. Example: I have a model with
ten fields. I use form_for_model and form_for_instance. I realize that
I need a form with seven fields from model and some new fields. So I
have to translate the fields again - gettext doesn't know that 'email'
is similar to 'Email'.

I think it should be possible (not necessary) to use capitalized
verbose names in models. It means to uncapitalized some words in admin
- but it is possible, I do it in my personal branch.

2. Capitalized titles

In Django this kind of translations is used for my language:

msgid "Add %s"
msgstr "%s: přidat"

msgid "Change %s"
msgstr "%s: změnit"

So "Add contact" is translated as "kontakt: přidat" - title is not
capitalized. So I would like if admin capitalizes all titles. Again -
it is possible, I use it.

3. Pagination in admin

My language is really strange. Imagine that you have this grammar:

1 contact,
2 contacts, 3 contacts, 4 contacts
5 contactz, 6 contactz, ...

And expression "5 contacts" is an error. OK, everybody knows what it
means - but for perfectionist it is not good enough.

So I propose to enable "translate" this expression in admin. It would
be no change for English and for other languages. But I could use this
translation:

msgid "%(count)s %(verbose_name)s"
msgstr "%(verbose_name)s: %(count)s"

Ticket:
http://code.djangoproject.com/ticket/5425

4. Uncapfirst and admin_list_filter

Tickets:
http://code.djangoproject.com/ticket/5424
http://code.djangoproject.com/ticket/5426

These tickets are needed for (1) and (2). The second one is not
controversial. But the first one is a little magical. I would like
this mapping:

Contact -> contact
Some field with many words -> some field with many words
ORM framework -> ORM framework

I have many fields with abbreviation at the beginning. I don't want to
uncapitalize it. So I propose this rule - the first letter has to be
low only if the second letter is low.

(1) + (2)

I haven't create ticket and patches for (1) and (2):
- they depends on (3) and (4)
- my patches are good for me but not good for Django

But I would like to contribute with them - if you think that they can
be applied.

Reply all
Reply to author
Forward
0 new messages