Принятые практики по интернационализации проектов (IDE, Phpstorm), как вы пишете шаблоны?

Подскажите пожалуйста как обычно принято делать переводы сайтов на разные языки? Насколько я понял есть 2 подхода построения шаблонов (пример на twig):
  • {{ t('Строка') }}
  • {{ t('#ID_STRING') }}


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

Во втором случае читаемость шаблонов сильно ухудшается.

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

Поделитесь пожалуйста своим опытом, кто каким образом переводит интерфейсы.

Фреймворк Yii 1
  • Вопрос задан
  • 477 просмотров
Пригласить эксперта
Ответы на вопрос 2
@ollisso
Если в id_string использовать адекватные id, то всё работает очень хорошо и легко.

Адекватные id, например:
error_no_user_found
error_wrong_password
success_user_registered

И так понятно что там написано, а как будет в финальном тексте - обычно не так важно.
Ответ написан
sanchezzzhak
@sanchezzzhak
Ля ля ля...
Переводы в IDE(phpStorm) с автокомплитом большая проблема, так как ключи массива словаря IDE не видит

На одном проекте именовал так
Файл message.model.php
return [
'NAME_ATTR' => 'Имя',
'NAME_PLACEHOLDER' => 'Ведите ваше имя'
];
<?=Yii::t('message.model','NAME_ATTR')?>
+ Куча файлов словарей было от моделей
Вьюхи и прочий интерфейс отдельно, все в одну кучу не скидывал.

Там где не было перевода, был тупой вывод текста в стиле NAME_PLACEHOLDER что сразу бросалось в глаза.
Переводы это еще та попа-боль.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы