Помощник переводчика систем phpNuke, phpWebSite и phpWebLog

версия 1.3

Содержание

Что такое phpNuke?

phpNuke - это распространяемая бесплатно под лицензией GNU/GPL ядро (движок) для создания Веб-порталов, написанное на языке PHP. Данное определение также применимо ко всем остальным системам (см.ниже), поддерживаемым данной программой. Но первоначально программа была написана для phpNuke, потому она и называется NukeLang.

Одним из особенностей системы phpNuke является возможность быстрого переключения интерфейса портала на разные языки. Вся текстовая информация для каждого из языков хранится в файле с названием вида lang-XXXXXX.php (где XXXXXX - название языка, например, english для английского и russian для русского) в подкаталоге language и для того, чтобы перевести интерфейс портала на другой язык достаточно создать новый файл с переводом. В дальнейшем мы такой файл будем называть файлом с переводом (если у кого-то есть предложение называть такие файлы по другому - пишите:)).

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

А что такое phpWebsite, phpWebLog и pSlash?

Другие аналогичные системы для создания порталов. Они тоже распространяются под лицензией GNU/GPL, также написаны на PHP, но (пока) имеют меньше функций, хотя каждая из них не лишена своей изюминки. И может оказаться, что для какой-то конкретной задачи, какая-нибудь из них подойдет лучше, чем phpNuke.

Что делает программа NukeLang?

Программа последовательно загружает два файла: первый с исходным английским текстом (хотя в принципе можно использовать файл с любым другим языком), второй с переведенным текстом и отображает их в виде таблицы, которую можно редактировать и в которой переведенные и непереведенные строки отображаются разными цветами (см.рис.1) и есть возможность быстро перескочить на следующую непереведенную строку (см.Поиск нужных строк).

Рис.1.Главное окно программы с частично переведенными строками для русского языка (файлы в формате версии 5).

В настоящий момент используются два формата файлов с переводами: то что было в версиях до 4 включительно и формат, который был введен в версии 5. Точнее, оба формата являются простыми текстовыми файлами со скриптами на PHP, но в 5 версии было принято другая структура хранения текстовых строк (которая, по идее, должна обеспечивать большую скорость работы всего портала). Программа корректно работает (по крайней мере, старается) с обеими версиями файлов с переводами (см.рис.1 и 2).

Рис.2.Главное окно программы с частично переведенными строками для русского языка (файлы в формате версии 4).

Как можете, видеть таблица состоит из трех колонок: "Line #" - номер строки в файле для данного текста; "Original" - оригинальный текст; "Translated" - переведенный текст. Текст который на самом деле переведен отображается залаеным цветом, а непереведенный - синим. Алгоритм определения цвета очень простой - если в тексте встречаются символы из второй половины кодовой таблицы текст считается переведенным.

Как работать с программой

Загрузка файла с переводом

Для начала работы необходимо загрузить файлы с переводами. Если у вас уже есть файл с переводом для вашего языка, то необходимо выбрать пункт меню "File"->"Open" (или нажать комбинацию Ctrl+N), если же вы начинаете перевод с нуля то "File"->"New" (или нажать комбинацию Ctrl+O). В любом случае программа сначала попросить вас указать файл с шаблоном для перевода (см.рис.3). Если вы хотите перевести phpNuke версии 4, то необходимо выбрать файл lang-TEMPLATE.php, если версии 5, то файл lang-english.php.

Рис.3.Окно выбора файла с шаблоном для перевода.

Если до этого был выбран пункт меню "New", то на этом загрузка завершается и можно начать перевод. Если же до этого был выбран пункт меню "Open" - то программа попросит также указать файл с переводом. После загрузки этого файла можно взятся за перевод.

Сохранение файла с переводом

Для сохранения файла с переводом в том же файле из которого он был загружен необходимо выбрать пункт меню "File"->"Save"(или нажать комбинацию Ctrl+S). Если файл не был изменен, то этот пункт недоступен. Для сохранения файла под другим названием необходимо выбрать пункт меню "File"->"Save as". Этот пункт доступен всегда.

Редактирование таблицы

Для того, чтобы изменить текст перевода, просто встаньте на эту строку и начните ввод текста. Однако, надо помнить, что в этом случае ввод начнется в пустую строку. Для того, чтобы просто подправить существующий текст надо встать на эту строку и нажать Enter (весь текст выделится цветом) и нажать любую из клавиш перемещения курсором (текст обратно должен стать нормальным и должна появится каретка ввода).

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

Для закрепления ввода достаточно нажать клавишу Enter или просто перейти на другую строку.

Поиск нужных строк.

Для быстрого перемещения по строкам предназначены четыре пункта меню "Edit": пункт "Find..." ищет вхождения заданной строки (см.ниже и Рис.4); пункт "Find again" ищет следующее вхождение; пункт "Find untranslated" ищет ближайшую непереведенную строку и пункт "Find missing" ищет ближайшую отсутствующую строку (строку, имеющуюся в шаблоне перевода, и отсутствующую в файле перевода).

Рис.4. Диалоговое окно для поиска подстроки.

Алгоритм поиска следующий: если в заданной подстроке присутствует один из символов "*" или "?", то она принимается за маску и ищется строка удовлетворяющая данной маске. Символ "*" при этом заменяет любое количество символов (или их отсутствие), а символ "?" - ровно один символ. Если этих символов в заданной подстроке нет, то ищется её вхождение в тексте. Такой режим отменяется если включен последний переключатель ("Use '*' and '?' symbols as ordinary characters") . В этом случае всегда ищется вхождение заданной подстроки в тексте. Назначения остальных трех переключателей, я надеюсь, понятно из их названия.

Настройка программы

Пока из настроек (пунктов меню "Options") доступна только настройка шрифта таблицы (пункт "Font...").

Выход из программы

Для выхода из программы необходимо выбрать пункт меню "File"->"Exit" или нажать комбинаций Alt+X или Alt+F4. Если файл с переводом был изменен, то программа выдаст запрос на сохранение изменений.

История изменений

Версия 1.4 (от 26 июня 2001г.)

Версия 1.3 (от 23 июня 2001г.)

Версия 1.2 (от 21 июня 2001г.)

Версия 1.1 (от 19 июня 2001г.)

Версия 1.0

На чем написана эта программа

Программа написана на Delphi 5.

Исходные тексты прилагаются.

Состав дистрибутива

В состав дистрибутивного файла NukeLang.zip входят:

  1. Исполняемый модуль программы - файл NukeLang.exe.
  2. Исходные тексты программы - файл NukeSrcs.zip.
  3. Документация к программе - файл NukeDocs.zip.

Условия распространения

Программа может свободно распространяться при условии сохранения неизменного содержимого дистрибутива и при условии, что не будет браться плата за распространение за исключением компенсации затрат на копирование.

Контактная информация

Любые пожелания, отклики и информацию о найденных ошибках просьба направлять по адресу: irnis@mail.ru.

Последнюю версию программы всегда можно найти по адресу: www.irnis.net.

Авторские права

Все права на программу принадлежат его автору - Ирнису И.Халиуллину.