- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
TEMPLATES = ( # {'s': 0, 'm': 1, 'l': 2, 'xl': 3, 'xxl': 4}
((1, 0), _("1-z")), ((1, 1), _("1-z-a")),
((1, 2), _("1-z-a-p1")), ((2, 0), _("2-z")),
((2, 1), _("2-z-a")), ((2, 2), _("2-z-a-p2")),
((2, 3), _("2-z-a-p3")), ((3, 0), _("3-z")),
((3, 1), _("3-z-a")), ((3, 2), _("3-z-a-p1")),
((4, 0), _("4-z")), ((4, 1), _("4-z-a")),
((4, 2), _("4-z-a-p3")), ((4, 3), _("4-z-p3")),
((4, 4), _("4-p3")),)
> 1-z
первый зэ
> 4-z
четвёртый зэ
>4-z-p3
четвёртый зэ третья смена
Если там действительно gettext. Но смущает приведенное использование в классе: как оно поможет с локализацией?
И переводчикам таки предлагается знать что такое "2-z-a-p3"?
Может быть, конечно, я ошибаюсь, и это бессмысленные наборы символов или в _() заключены по ошибке.
Если так копнуть, то лично я ожидал бы увидеть дополнительный слой абстракции (отдельный модуль, например), а не строки напрямую... И нормальный коммент (чтоб передать в шаблон локализации и было яснее как трактовать).
Wiki:
> Основным отличием от других подобных инструментов является то, что в gettext для обозначения переводимых строк в тексте программы используются их английские оригиналы, а не специальные идентификаторы.
Не поделитесь пруфом?
http://www.gnu.org/software/gettext/manual/gettext.html#Charset-conversion
> Also, when gettext does not find a translation for msgid, it returns msgid unchanged – independently of the current output character set. It is therefore recommended that all msgids be US-ASCII strings
А вообще я самостоятельно не пытался использовать русский, например, но тем не менее всегда считал, что gettext может работать с чем угодно.
Если включить pedantic-mode, то /0 =). Скорее, ограничение на набор символов (а точнее, вроде ascii).