By krak on
Сейчас на сайте благодаря этому переводу секунды переведены как Второй. Кто как борется с такими проблемами?
Groups audience:
Сейчас на сайте благодаря этому переводу секунды переведены как Второй. Кто как борется с такими проблемами?
Comments
Перевожу через l10n_client и
Перевожу через l10n_client и читаю контекст. Без контекста такие вещи перевести правильно нереально.
Очень интересно, а во всех остальных модулях, которые используют эту строку, тоже имеется в виду секунда?
Если модули для семерки -
Если модули для семерки - можно использовать контекст.
Правда в самом модуле должна быть соответствующая поправка, которую решать нужно патчем к модулю в соответствующем issue
Это как May (Май) и may (можно)
Для шестерки - увы 8(...
Семерка
Да, как раз увидел глюк на семерке в модуле views сортировать по дате обновления материала.
podarok, расскажите поподробнее, пожалуйста, про использование контекста.
http://localize.drupal.org/no
http://localize.drupal.org/node/2109 + http://drupal.org/project/issues/search/drupal?issue_tags=msgctx
Здесь больше...
Идея в том, чтобы такие "спорные" и перегруженые слова заключить в определённый контекст и соответственно переводить по иному.
А сама функция t() будет обрабатывать контекст в зависимости от контекста, уж простите за тавтологию
Как это сделать? - Если видите прямую зависимость и находите перегруженное слово - желательно посмотреть в каких модулях это слово используется. Найти строки в коде. И в тех модулях, где перевод не соответствует действительности
- необходимо прописать контекст,
- создать патч в соответствующем модуле либо ядре(тут врядли, но тоже можно встретить),
- отправить через issue авторам модуля и настоять на принятии
-- народ тут может выступить в качестве поддержки и патч примут.
Это нужно, абы Ваш перевод начал учитываться сдесь - уже в интерфейсе перевода можно увидеть контексты, их там еще недавно было только четыре.
После этого додаете msgctx строчку в po файлике в своему "иному" переводу и при импорте контекст запишется в базу сайта и при выводе будет учитываться.
podarok, прошу прощения, а
podarok, прошу прощения, а можно на примере порядок действий. Вот нашел красивый пример, который завязан на большое количество модулей и ядро.
Слово None.
http://localize.drupal.org/translate/languages/ru/translate?sid=2476
5 вариантов перевода. Количество плагинов использующих этот текст просто огромен. На примере views могу сказать, что логичнее перевод или Нет, или Пусто. Видимо для какого-то проекта или модуля None лучше переводится как Ни один.
1 - Нужен список модулей, в
1 - Нужен список модулей, в котором это слово должно по другому переводиться.
2 - После этого - в тех модулях выделить контексты, тоисть определиться с переводом
3 - После этого в зависимости от количества контекстов и принадлежности их к тому или иному модулю - нужно в этих модулях (по сути только в версиях для семерки) изменить код для придания контекста.
4 - После этого - создать патч к соответствующему модулю и создать для этого модуля issue с объяснениями автору с прилагаемым патчем
5 - Дождаться, пока патч примут, либо напроситься в co-maintainer к проекту и самому добавить изменения в cvs
После этого контекст появится здесь на лдо
После пункта 3 у Вас уже будет рабочая версия модуля с определённым контекстом и импорт po файла с переводом и с прописаным msgctx в нём будет учитывать контекст и выводить корректную строку..
Пункты 4 и 5 нужны для того, чтобы в новой версии модуля Вам не пришлось делать изменения по поводу контекста опять.
К сожалению даная проблема в большинстве своем касается кириллицы и сопутствующих ей языков...
Могу предложить свою помощь в качестве патчепродвигателя на самом друпалорге, если возьмете на себя отлов спорных слов, которым нужен контекст
Насчет None не уверен, уж
Насчет None не уверен, уж очень много он где используется. Я не уверен какой из вариантов больше подходит. Может быть "пусто" или "нет" было бы проще установить по-умолчанию, а для остальных выставить контекстное пространство. А вот Second сейчас поразбираюсь. Идею понял и буду двигать ее в массы. Надеюсь переход на git будет быстрее, т.к. cvs нет под ругой и нет желания ставить.
tortoise cvs и будет
tortoise cvs и будет счастье...
Либо из консоли + http://drupal.org/patch
Про "пусто"
Как раз вчера переводы на странице настройки языков корректировал.
Вот тут (example.com/admin/settings/language/configure) "Пусто" смотрелось бы весьма странно.
В этом свете, "Нет" - имхо, гораздо нейтральнее и, следовательно, универсальнее.