Skip to content

miptliot/tp_translations

 
 

Repository files navigation

Описание

Скрипт для разделения текущих переводов openedu на те, что уже есть в edx, и на собственные дополнения и перезаписи.

Требует polib.

Подготовка

В папках собраны текущие .po файлы edx и текущие npoed переводы. Для прокторинга также добавлен фрагмент из platform/django.po, т.к. у нас там часть переводов. Раздел Использование. не обязателен: можно перейти сразу к Добавление в edx.

Использование

  1. python transform_translations.py separate
    

    Разделяет старые переводы и складывает их в папку collected/ виде файлов *_add и *_over для каждого приложения. Можно посмотреть over файлы и решить, нужны ли такие перезаписи.

  2. python transform_translations.py compile
    

    Создает общий файл переводов django(js).po в collected/. Предупреждает о наличии неуникальных msgid. Если есть предупреждения - их необходимо исправить до использования в edx, иначе edx выдаст ошибку при компиляции .po файлов. Перед вызовом можно добавить в collected/ другие .po файлы переводов, они будут добавлены в общий файл переводов.

  3. (Опционально)

python transform_translations.py fix

Исправляет файлы django(js).po: делает неуникальные msgid уникальными, выбрасывая все значения, кроме одного (произвольного).

Подключение других переводов

В репозитории хранятся старые файлы переводов (в папке data) и они же в новой форме в папке collected. Если необходимо добавить дополнительные переводы, нужно добавить их .po файлы в collected, вызвать python transform_translations.py compile. См Использование.

Добавление в edx

1. В /edx/app/edxapp/edx-platform выполняем git clone репозитория 3. Добавляем путь до "npoed_translations" в LOCALE_PATHS первым:

LOCALE_PATHS = (REPO_ROOT + "/npoed_translations", ) + LOCALE_PATHS
  1. (Опционально, т.к. переводы уже собраны)Вызываем python manage.py lms compilemessages --settings=ENV. В выводе команды отображаются все файлы, которые были использованы для составления переводов, смотрим, что там есть наша папка.
  2. (Опционально, т.к. djangojs.js уже собраны в edx-platform)Вызываем python manage.py lms compilejsi18n --settings=ENV. Повторяем команду для cms (т.к. два одинаковых djangojs.js храятся для lms и cms).

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%