Gettext

Данную инструкция ви можете скачать по ссылке

http://www.imagecms.net/downloads/getText.zip

1. Установка Gettext расширения.

      1.1. Linux OS.

Linux  пользователи,  которые  собирают  PHP  ­­with­gettext=shared  должны включить
расширение  gettext.so в файл /etc/php.ini.

      1.2. Windows OS.

       Если  gettext  не  установлен  пользователи  Windows  должны  добавить php_gettext.dll
до  их  каталога  расширений,  и  включить  его  в  файле  php.ini(добавить  или
розкоментировать строчку: extension=php_gettext.dl).

2. Установка Poedit редактора .po файлов.

○ Скачать Poedit windows.
○ Скачать  Poedit  linux  (cкорее  всего,  пакет уже  является частью  вашего
дистрибутива.).
○ Скачать Mac OS Poedit.
После установки программа попросит ввести свой email и имя переводчика.

3. Настройка парсеров.

      3.1. Настройка PHP парсера.

      Выбрать в  меню  Edit­>Preferences.  Перейти  на вкладку Parsers. Если нет PHP
парсера надо создать(на боковой панели кнопка New) и ввести настройки:
○ Language: PHP;
○ List of extentions: *.php;
○ Parser command: xgettext ­­force­po ­o %o %C %K %F ­L php;
○ An item in keywords list: ­k%k;
○ An item in input file list: %f;
○ Source code charset: ­­from­code=%c.
Ниже, на рисунке, представлены настройки парсера:



      3.2. Настройка Smarty парсера.

                 3.2.1. Настройка для Windows ОS.
      Выбрать  Параметры  → Парсеры. Создать  Smarty  парсер(на  боковой панели
кнопка New) и ввести настройки:
○ Язык: Smarty;
○ Расширения: *.tpl;
○ Командная строка:
php.exe ­f "C:\OpenServer\domains\site.name\application\language\smarty.php" %o %C %K %F
      ,где "C:\OpenServer\domains\site.name\application\language\smarty.php  ­  путь   к  файлу
smarty.php  которий  росположен  в  папке  \application\language\, вы  должны  изменить  путь C:\OpenServer\domains\site.name\ на свой.
○ Ключевые: ­k%k;
○ Входные файлы: %f;
○ Кодировка: ­­from­code=%c.

                              3.2.1.1. Настройка файла парсера для Windows ОS.

      Откройте файл smarty.php из каталога \application\language\.
● Изменить строку 8 фала на:
define('_DAT', 'C:\\Progra~1\\Poedit\\bin\\_temp.php'), где C:\\Progra~1\\Poedit\\bin\\_temp.php - путь
где создавать временный файл для хранения срок из smarty шаблонов.
● Изменить строку 42 фала на:
exec('C:\Progra~1\Poedit\bin\xgettext.exe --force-po -o "'.$p[1].'" '.$p[2].' '.$p[3].' '._DAT), где
C:\Progra~1\Poedit\bin\xgettext.exe - путь установленный по умолчанию к утилите xgettext.exe.

                  3.2.2. Настройка для Linux ОS.
      Выбрать  в  меню  Edit  →  Preferences.  Перейти  на  вкладку   Parsers.  Создать
Smarty парсер(на боковой панели кнопка New) и ввести настройки:
○ Language: Smarty;
○ List of extentions: *.tpl;
○ Parser command: php ­f "/var/www/site.name/application/language/smarty.php" %o %C %K %F

      ,где  /var/www/site.name/application/language/smarty.php  ­  путь  к  файлу  smarty.php  которий
росположен в папке /application/language/, вы должны изменить путь /var/www/site.name/ на свой.

○ An item in keywords list: ­k%k;
○ An item in input file list: %f;
○ Source code charset: ­­from­code=%c.

                        3.2.2.1. Настройка файла парсера для Linux ОS.

      Откройте файл smarty.php из каталога \application\language\.
● Изменить строку 8 фала на:
define('_DAT', '/var/www/image.loc/_temp.php'), где /var/www/image.loc/_temp.php - путь где
создавать временный файл для хранения срок из smarty шаблонов.
● Изменить строку 42 фала на:
exec('xgettext --force-po -o "'.$p[1].'" '.$p[2].' '.$p[3].' '._DAT);

      3.3. Настройка Javascript парсера.

                  3.3.1. Настройка для Windows ОS.
      Выбрать  Параметры  →  Парсеры.  Создать  Javascript   парсер(на  боковой
панели кнопка New) и ввести настройки:
○ Язык: Javascript;
○ Расширения: *.js;
○ Командная строка: php.exe ­f "C:\OpenServer\domains\site.name\application\language\js.php" %o %C %K %F
      ,где  "C:\OpenServer\domains\site.name\application\language\js.php ­ путь к файлу js.php которий
росположен в папке \application\language\,  вы должны изменить путь
C:\OpenServer\domains\site.name\на свой.
○ Ключевые: ­k%k;
○ Входные файлы: %f;
○ Кодировка: ­­from­code=%c.

                        3.3.1.1. Настройка файла парсера для Windows ОS.

      Откройте файл js.php из каталога \application\language\:
● Изменить строку 8 фала на:
define('_DAT', 'jsLangs.php'), где jsLangs.php - файл которой будет автоматически создаваться при
парсинге js файлов.
● Изменить строку 42 фала на:
exec('C:\Progra~1\Poedit\bin\xgettext.exe --force-po -o "'.$p[1].'" '.$p[2].' '.$p[3].' '._DAT), где
                              C:\Progra~1\Poedit\bin\xgettext.exe - путь установленный по умолчанию к утилите xgettext.exe.

      3.3.2. Настройка для Linux ОS.
      Выбрать  в  меню  Edit  →  Preferences.  Перейти  на  вкладку   Parsers.  Создать
Javascript парсер(на боковой панели кнопка New) и ввести настройки:
○ Language: Javascript;
○ List of extentions: *.js;
○ Parser command:
php ­f "/var/www/site.name/application/language/js.php" %o %C %K %F
,где  /var/www/site.name/application/language/js.php  ­  путь  к  файлу  js.php  которий росположен  в
папке /application/language/, вы должны изменить путь /var/www/site.name/ на свой.
○ An item in keywords list: ­k%k;
○ An item in input file list: %f;
○ Source code charset: ­­from­code=%c.

                        3.3.2.1. Настройка файла парсера для Linux ОS.

      Откройте файл js.php из каталога \application\language\:
● Изменить строку 8 фала на:
define('_DAT', 'jsLangs.php'), где jsLangs.php - файл которой будет автоматически создаваться при
парсинге js файлов (при  парсинге js  файлов  также создается  jsLangs.tpl, который нужен для передачи
переведенных строк js объекту).
● Изменить строку 42 фала на:
exec('xgettext --force-po -o "'.$p[1].'" '.$p[2].' '.$p[3].' '._DAT);

4. Настройка каталога Poedit.

Для настройки каталога нужно выбрать в меню Каталог → Настройки.
● Вкладка “Информация о проекте” ­  ввести нужные данные;
● Вкладка “Пути” ­ ввести пути для поиска строк. Например:
Здесь  “Базовой  путь”  выходит  на  три  уровня  выше  от  файла  .po.  Первый   из
путей указывает на поточной каталог из базовой пути, второй ­ выходит на три уровня
выше от  базовой пути и указывает на каталог /templates/administrator.
Для взаимодействия c js парсером базовой путь должен бить: “//”.



● Вкладка  “Ключевые  слова”  ­ здесь  нужно ввести  ключевое слово  по  котором
будет производится поиск фраз для перевода, введите “lang”.


5. Робота с .po файлами.

      5.1. Описание интерфейса Poedit.

      Интерфейс программы содержит функции необходимые как для генерации
языковых файлов из конкретно выбранного проекта, так и для последующего их
перевода на другие языки.
      Все сгенерированные при этом языковые файлы имеют расширение *.po
(например  “admin.po”),  и  могут в  удобной  форме  быть  переведены на  любой другой
язык  при помощи данной программы группой переводчиков. Полученные локализации
легко и быстро интегрируются в проект.
      Внешний вид программы при открытии PO файла:



Poedit: Описание интерфейса приложения (версия 1.0) windows OS.
На картинке описаны следующие элементы программы:
(1) ­ текст, требующий перевода
(2)  ­  текст,  переведенный  в  автоматическом  режиме  и  потому  требующий
проверки.
Если  он  является  правильным,  то  нужно  подтвердить  его  правильность
снятием  нажатия  кнопки  "неточно" (вверху,  с  нарисованными  тучами).  Либо  вручную
подправить.
(3) ­ текст, требующий перевода
(4) ­ собственно, место для вписания перевода.
(5) ­ комментарий  к  исходному тексту, ­ часто используется в случае, если текст
для перевода является частью более обширного предложения.
(6) ­ у данного текста есть комментарий
        (7) ­ данный текст переведен либо исправлен вами и считается верным.

      5.2. Работа в программе Poedit.

      Откройте  нужной  .po  файл  в  программе  Poedit.  Чтобы  пропарсить  файлы  по
указанным  в  предыдущем   пункте  путям нужно  нажать  кнопку “Обновить”,  произвести
перевод и сохранить нажав на кнопку “Сохранить”.

      5.3. Работа с .po файлом в Google translate toolkit.

      Перейдите в Google translate toolkit. Далее по пунктах:
● Нажать кнопку “Upload”;
● Нажать “Add content to translate”, выбрать “Upload file” и загрузить .po файл;
● Выбрать  язык  оригинала  и  язык на который надо сделать перевод и нажать кнопку “Next”;
● Нажать  кнопку  “No,  thanks”  если  вы  хотите  произвести  перевод   бесплатными средствами Google
    translate toolkit или же выбрать платного партнера;
● Выбрать  ваш  файл  из  списка  переведенных,  после  чего   вам  будут  доступны
    все средства для редактирования переведенного файла;
● После  редактирования  вы  можете  завершить  перевод  нажав  кнопку “Complete” и загрузить файл выбрав в              меню File → Download.