Один файл YAML против нескольких файлов YAML в разных папках и подпапках
Я работаю над автоматизацией процесса перевода и улучшением процесса локализации в целом на сайте Rails. Я использую SimpleBackend, поэтому для хранения переводов используются только файлы YAML.
Текущий каталог локалей состоит из папок, затем подпапок (в некоторых случаях) и тех подпапок, содержащих файлы yml. Я рассматриваю возможность интеграции проекта с каким-либо сторонним инструментом, например Transifex, для управления переводами, поэтому, возможно, использование одного файла YAML для каждого языка может быть полезным для управления рабочим процессом.
Если кто-то может выделить плюсы и минусы обеих структур, было бы очень полезно решить, следует ли мне переходить от структуры вложенных файлов к шаблону одного файла или нет. Кроме того, проект представляет собой проект с открытым исходным кодом с активными участниками и поэтому думает о долгосрочном решении.
Спасибо!
1 ответ
Я думаю, что любые инструменты, которые вы используете для плавного прохождения процесса, очень сильно влияют на это решение. Вы должны выяснить, как именно Transifex хочет, чтобы вещи были структурированы в выводе, и попытаться сохранить текущую структуру ввода, и дать этому шанс, прежде чем принимать решение.
Однако, на мой взгляд, для большого приложения с большим количеством переводимого текста я бы предпочел, чтобы в вашем языке по умолчанию было несколько файлов yaml и один или два консолидированных файла yaml для каждого иностранного перевода. Если в вашем приложении не так много переводимого текста, возможно, вам подойдет один файл, но, учитывая, что он уже разделен, есть хороший шанс, что это лучший выбор. В команде с большим количеством участников вы можете получить очень большой файл оттока (может быть, с большим количеством конфликтов слияния), который каждый постоянно меняет.
Разделение на отдельные файлы позволяет логически отделить текст для соответствия домену в вашем приложении, например, отдельный файл yaml для почтовых программ (или даже каждого почтового) и один для каждого домена (или контроллера). В любом случае, это дает вам контроль над стратегией вашей организации.
Тем не менее, IMO не имеет большого значения для разделения ваших иностранных переводов, чтобы отразить эту структуру. Системы, с которыми у меня есть опыт работы (не Transifex), генерируют для вас ваши файлы иностранных переводов, поэтому вам просто нужно синхронизировать их с веб-интерфейсом и зафиксировать результаты.