Я изменил всё на значение по умолчанию (en) в app.yml и выполнил команду ./launcher rebuild app. После этого языком по умолчанию стал английский (США), и поведение вернулось к исходному: любые изменения локализации по умолчанию отменяются. То есть интерфейс принимает изменение, но когда я подтверждаю его (например, на немецкий) и перехожу на другую вкладку в админ-панели, а затем возвращаюсь, снова отображается английский (США).
Означает ли это, что любые изменения языка по умолчанию всегда должны вноситься через правку app.yml и последующую пересборку приложения?
После того как я изменил язык по умолчанию в app.yml на английский (США), я мог использовать кнопку «Заменить текст», чтобы изменить весь текст (например, Условия использования) с прежнего немецкого на английский, так как это язык по умолчанию. Это сработало. Однако, когда я попытался затем заменить весь текст (например, с английского на немецкий), это не сработало.
Означает ли это, что функция «Заменить текст» работает только в сторону языка по умолчанию экземпляра Discourse?
@gerhard
Чтобы начать тестирование, я установил DISCOURSE_DEFAULT_LOCALE: de_formal и выполнил ./launcher rebuild app. Затем я заменил весь текст с помощью соответствующей кнопки.
На моем тестовом экземпляре требуется вход в систему. При выходе из системы я получаю сообщение:
Требуется учетная запись. Пожалуйста, попросите существующего участника отправить приглашение или войдите в систему, чтобы продолжить.
Соответствующий текст в разделе администрирования — “login_required.welcome_message_invite_only”. Я дважды проверил в Transifex, что нет непереведенных строк с этим текстом. Однако Discourse (работающий с Deutsch(Sie)) по-прежнему отображает неформальный текст.
Возможно, в исходном файле языка в Transifex отсутствует какой-то текст?
@gerhard
Я уже нашел решение. Причиной была настройка «устанавливать локаль из заголовка accept language». Она была у меня активна, и это приводило к отображению неформального текста, так как заголовок языка моего браузера не содержит «de_formal».
Да, этой строки не хватает, так как она находится в плагине, а у меня сейчас нет времени это исправить. Скорее всего, это придётся отложить до тех пор, пока я не найду возможность перенести это в Crowdin и реализовать полноценное автоматизированное решение.
Я буду стараться обновлять переводы из Transifex каждую неделю. Это лучшее, что я могу сделать на данный момент. Извините. В ближайшие месяцы я постараюсь поработать над более качественным решением.