Вопрос по синтаксису .PO файла

Главные вкладки

Аватар пользователя volocuga volocuga 26 января 2009 в 17:13

Вот кусок перевода:

#: user.module:531;575
msgid "Navigation"
msgstr "Навигация"

Интересует первая строка.Понятно,это ссылка на сам код.Я всегда полагал,что цифры-это строки в коде.Однако посмотрел повнимательнее-нигде строки не совпадают.Строки смотрел в Dreamweaver.

Пробовал совсем цифры не указывать,перевод впринципе цепляется,но вот для такого случая не могу перевести "удалить" ("копировать" в той же строке нормально перевелось)

'admin/store/settings/taxes/copy/'. $rule->id), l(t('delete'),

Описал это таким кодом:

#: uc_taxes/uc_taxes.module
msgid "delete"
msgstr "удалить"

Комментарии

Аватар пользователя Azerot Azerot 26 января 2009 в 22:52

Если я что-то понимаю в .po файлах, то всё, что начинается с # - это комментарий и не несёт никакого функционального назначения - можно смело удалять и не парится. По поводу того, что не переводится удалить - посмотри в файле перевода - возможна эта строка УЖЕ переведена, вот твой перевод и не берётся.

Аватар пользователя volocuga volocuga 27 января 2009 в 0:15

Строка переведена,и не раз.Однако меня не устраивает,что вместо "удалить" подставляется "Удалить".Всё же думаю,логично,что источник указывается,не зря же всё это пишется.

У КОГО КАКИЕ МНЕНИЯ ЕЩЁ БУДУТ?

Аватар пользователя Azerot Azerot 27 января 2009 в 0:20

А ты попробуй оставить только один перевод. Увидишь он будет работать везде, не взирая на указанные источники. Я не помню точно, работает то ли первый, то ли последний перевод - остально тупо игнорится.

Аватар пользователя volocuga volocuga 27 января 2009 в 0:36

Согласен,будет работать наверняка.Только мне нужно,чтобы я смог указывать что и откуда берётся-иначе это противоречит принципам программирования.

Аватар пользователя Azerot Azerot 27 января 2009 в 12:21

Противоречит оно или нет, но так работает механизм переводов gettext, для которого мы делаем .po файлы.

Мне самому не нравится такая ситуация, потому что в зависимости от контекста одни и те же английские фразы для понимания логики происходящего ПРОСТО НЕОБХОДИМО переводить по-разному. А тут, например, disabled - выключено и всё!

Я даже написал на англоязычном сайте Drupal предложение как можно было бы всё улучшить, но это предложение осталось даже без отзывов. Как говориться все забили!

Можете почитать:
http://drupal.org/node/300978