Некоторые тексты сайта не принимают изменения

Некоторые тексты сайта отображаются в исходном виде, независимо от того, сколько раз мы их изменяем. На данный момент мы наблюдали это только в сообщениях или уведомлениях.

Например, в следующем сообщении:

rate_limiter.by_type.create_like:
Вы достигли максимального количества лайков. Пожалуйста, подождите %{time_left}, прежде чем попробовать снова.

Если вам нужно больше элементов, пожалуйста, сообщите мне :pray: :slight_smile:

Когда я пытаюсь настроить текст rate_limiter.by_type.create_like на своем сайте, пользователь видит этот текст при превышении настройки максимальное количество лайков в день. Какая версия Discourse используется на вашем сайте? Какой язык по умолчанию установлен на вашем сайте? Включена ли настройка разрешить выбор языка пользователем на вашем сайте?

Какая версия Discourse используется на вашем сайте?
Мы используем версию 2.6.0.beta2

Какой язык по умолчанию установлен для вашего сайта?
В настройках сайта: fa_IR
В app.yml: (не задано)

Включена ли настройка «Разрешить выбор языка пользователем» на вашем сайте?
Нет, она отключена


Та же проблема наблюдается в тексте ниже:

js.topic.deleted_by_author.other
(тема отозвана автором и будет автоматически удалена через %{count} ч, если не будет отмечена как нарушающая правила)

У меня возникает точно такая же загадочная проблема с некоторыми настройками кастомизации текста.

Локальные настройки пользователя отключены.

Самую последнюю версию Discourse я собрал и обновил несколько часов назад.

Мой язык по умолчанию — венгерский.
Я могу изменить эти тексты только отредактировав английскую версию. Возможно, это связано с английским языком. Если я редактирую английский, венгерский также перезаписывается. :thinking:

Эта проблема будет исправлена в этом PR:

Это другая проблема. Возможно, это регрессия. Я разбираюсь с этим.

@nildarar и @Don: не думали ли вы о том, чтобы добавлять переводы на https://translate.discourse.org/, вместо того чтобы изменять непереведённые строки в панели администратора? Так другие пользователи тоже смогут воспользоваться результатами вашей работы.

Мне не удалось воспроизвести проблему. Я переключил свой тестовый форум на персидский (فارسی), настроил js.topic.deleted_by_author.other, удалил тему, и появился настроенный текст.

Вы имеете в виду под «той же проблемой», что вы видите английский текст, когда настраиваете эту строку? Это потому, что она ещё не переведена на персидский язык. Вы можете сделать это на Crowdin — вот прямая ссылка на эту строку.

Я только что настроил текст, используя разные виды сленга, чтобы сделать язык и форум более личными. Вот почему я пока не переводил это официально. Но, думаю, пришло время присоединиться к Crowdin и заняться переводом. Спасибо, Герхард! :slightly_smiling_face:

Спасибо @gerhard за то, что вы следите за этой проблемой.

Да, я очень заинтересован в том, чтобы помочь. Но в этом отношении у меня есть две проблемы:

  1. Из-за огромного объёма словаря перевод в среде, отличной от Discourse, — сложная задача, и во многих случаях требует тестирования и предварительного просмотра. Именно в этом заключается проблема текущего перевода: слова переводятся не в нужных местах. Я бы хотел, чтобы существовал способ отправлять переводы напрямую из Discourse в сообщество. Это предотвратило бы множество проблем.

  2. Мы используем собственную терминологию в сообществе и присвоили специфические названия различным функциям. То есть, в нашем форуме нет эквивалентных переводов для таких слов, как Topic (Тема), Replay (Ответ), OP (Автор темы), Like (Нравится) и т.д. Кроме того, мы перевели наши тексты и сообщения на сленг, чтобы сделать их более удобными для пользователей. Поэтому нам приходится выполнять эту персонализацию локально.

Да, именно так: когда пользователь удаляет тему, отображается английский текст этого сообщения, хотя мы изменили этот текст в настройках сайта.


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

Извините, мне не удалось воспроизвести эту проблему. В моих тестах кастомизированный текст отображается у клиента даже в том случае, если на момент настройки перевода ещё не существовало.

Это запланировано в нашем дорожной карте. Я надеюсь, что сможем реализовать это в течение следующих 6–12 месяцев.

В таком случае использование функции «Настройка текста» — правильный выбор. Именно для этого мы и создали эту функцию.

Обычно я делаю так: когда вижу непереведённую строку, перехожу на Crowdin, ищу эту строку и вношу свой перевод. Я понимаю, что просмотр всего списка непереведённых строк на Crowdin может быть пугающим, особенно если вы не знаете, где эти строки используются. Поэтому рекомендую делать наоборот.

Спасибо, тогда я проверю ещё раз, возможно, смогу предоставить вам больше информации.

Это очень радует :blush: :+1:

Эта функция великолепна :smiling_face_with_three_hearts:

Спасибо за отличную рекомендацию. Хотелось бы, чтобы у нас была возможность вручную обновлять одобренные переводы Discourse из Crowdin. Тогда мы могли бы фиксировать общие изменения в Crowdin и обновлять переводы каждую неделю. Изменение перевода и ожидание ежемесячных обновлений немного затрудняет процесс.
Извините, что беспокою вас своими идеями.

Недавно мы начали обновлять переводы еженедельно (каждый вторник). Возможно, это поможет…