Поиск недостующих ключей в yaml-файлах

Автор: admin от 30-12-2013, 16:05, посмотрело: 1078

Иногда open source проекты переводятся на множество иностранных языков. С одной стороны это делает их более доступными для широкого круга пользователей, но с другой стороны, все эти переводы нужно поддерживать. Переводы обычно разделены по yaml-файлам и выделены в отдельную директорию, содержимое которой выглядит примерно так: en.yml, ru.yml, de.yml...
Что мне приходится видеть в open source проектах, это что в определенный период времени кто-то решил перевести все тексты на свой родной язык, добавляя при этом файл вида xx.yml. Перевод сделан, все отлично, но проект не стоит на месте, добавляются новые функции, удаляется старый код. Человек, который сделал изначальный перевод, в большинстве случаев, уже не следит за всеми эти движениями и не добавляет за каждым разом новые переводы. Люди, которые контрибьютят код, тоже не способны делать переводы на все языки, которые поддерживает проект. Получается так, что имеется много yml файлов, эталонным из них обычно является en.yml. Когда приходят новые люди, желающие дополнить недостающие переводы, они сталкиваются с проблемой что в каждом файле сотни строк текста и никак нельзя понять какие из них отсутствуют или избыточны.
Именно для этих целей, я написал простой джем под названием Differz, который сравнивает yaml-файлы и показывает недостающие ключи. Установить можно просто выполнив
gem install differz

Если используется rbenv, то так же нужно выполнить
rbenv rehash

Чтобы показать разницу между en.yml и de.yml, нужно выполнить такую строку в консоли:
differz show en.yml de.yml

Для примера, я запустил данное приложение на популярном проекте activeadmin, которое перевели на много языков. Вот результат сравнение en.yml и de.yml:
Поиск недостующих ключей в yaml-файлах

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

Источник: Хабрахабр

Теги: Ruby, ruby, gem, differ, yaml, yml

Категория: Программирование » Веб-разработка

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

Добавление комментария

Имя:*
E-Mail:
Комментарий:
Полужирный Наклонный текст Подчеркнутый текст Зачеркнутый текст | Выравнивание по левому краю По центру Выравнивание по правому краю | Вставка смайликов Выбор цвета | Скрытый текст Вставка цитаты Преобразовать выбранный текст из транслитерации в кириллицу Вставка спойлера
Введите два слова, показанных на изображении: *