Пропало правильное отображение плюральных форм. Как вернуть?

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

Аватар пользователя ingumsky@drupal.org ingumsky@drupal.org 8 февраля 2009 в 21:56

Добрый вечер!

Буквально только что заметил, что у меня на сайте пропала часть плюральных форм — например, на главной у меня есть «1 комментарий» и «5 комментариев», но при этом два коммента обозначаются как «2 комментариев». То же касается и просмотров — и здесь есть лишь две формы «просмотр» и «просмотров», но при это нет «просмотра». Поискал в базе соответствующие строки: есть правильные переводы и для «1 comment», и для «count comments» и для «count[2] comments». Аналоги для «reads» так же присутствуют. Предполагаю, что повредить мог форс перевода для Advanced forum, который мне заодно переимновал Views из «Представлений» в «Просмотры», но никак не могу сообразить, как исправить ошибку. Подскажите, пожалуйста, куда смотреть и что искать.

Комментарии

Аватар пользователя ingumsky@drupal.org ingumsky@drupal.org 10 февраля 2009 в 0:57

"volocuga" wrote:
У меня как то помню почему то слетела формула в переводе.Проверь

Да, как я понимаю, так и есть. Спасибо. А вот как её вернуть? Найти перевод с нормальными неиспорченными формами или можно руками где-то исправить?

Аватар пользователя Valeratal Valeratal 30 марта 2009 в 13:56

у меня аналогичная трабла

в трекере 2новый , 3новый (причем, именно так, без пробела)

Не могу понять где это исправить

кстати, чем отличается

«count comments» и «count[2] comments»

я пытался поиском, поменять перевод на "новых: count)

что то ничего не менялось

Аватар пользователя ingumsky@drupal.org ingumsky@drupal.org 30 марта 2009 в 16:30

Valeratal
Вам необходимо жёстко импортировать (с заменой строк) модуль, в котором формула для русского языка указана верно. Я, к сожалению, не помню, в каком именно модуле это есть, но вы можете пошерстить папку с модулями ядра на предмет того, чтобы в тексте встречалось count reads, например.

кстати, чем отличается

«[user=count]count[/user] comments» и «[user=count]count[/user][2] comments»

В том, что при правильной работе формулы, подставляются слова, имитирующие разные падежи. Сравните:
Английский:
21 comments
22 comments
Русский:
21 комментарий
22 комментария

Аватар пользователя Valeratal Valeratal 30 марта 2009 в 23:50

нашел, в модуле comment
попробую заменить

поменял, пока ничего нового
вот смотрю код модуля трекер

  $rows = array();
  while ($node = db_fetch_object($result)) {
    // Determine the number of comments:
    $comments = 0;
    if ($node->comment_count) {
      $comments = $node->comment_count;

      if ($new = comment_num_new($node->nid)) {
        $comments .= '<br />';
        $comments .= l(format_plural($new, '1 new', 'count new'), "node/$node->nid", array('query' => comment_new_page_count($node->comment_count, $new, $node), 'fragment' => 'new'));
      }
    }

А вот кусок перевода из модуля comments

#: modules/comment/comment.module:429
msgid "1 new comment"
msgid_plural "count new comments"
msgstr[0] "count новый комментарий"
msgstr[1] "count новых комментария"
msgstr[2] "count[2] новых комментариев"

вроде плюрал присутствует

Аватар пользователя Valeratal Valeratal 31 марта 2009 в 9:19

да, жестким, с заменой всего что можно
300 строк заменено

p.s. где то тут читал, что на множественные формы плохо влияет модуль panels

Аватар пользователя ingumsky@drupal.org ingumsky@drupal.org 31 марта 2009 в 13:01

Возможно, что и так, но, если вы заменили перевод, по идее, Panels уже не должен оказывать негативного влияния. Во всяком случае я не понимаю, каким может быть механизм такого воздействия.