Как работать с po-файлами
Материал из База знаний проекта Russian Fedora
Содержание |
Что такое po-файл?
Специфичный файл с переводом чего бы то ни было - интерфейса программы, встроенной справки программы, текста документации и т.д.
По своей сути файл представляет из себя набор строк вида "оригинальный текст" (msgid) - "переведенный текст" (msgstr) плюс немного служебной информации. "Текстом" может быть как одно слово, так и целый абзац.
Зачем нужен po-файл?
Это позволяет иметь текст перевода отдельно от его формы. Простой пример - вся документация Fedora / Red Hat в ее разных формах (html, pdf) генерируется из одних xml-файлов. В этих файлах на месте текста стоят те самые msgid. При создании русской документации на их место подставляются msgstr из русских po-файлов. В итоге сделанный однажды перевод текста используется для создании документации в html и pdf. В случае смены формы (дизайна) достаточно поменять структуру/схему xml и не надо ничего делать с содержанием - оно подставится автоматически. Плюс, когда придет время обновлять документацию, можно будет повторно использовать уже переведенные части текста - в тех местах, где msgid останутся прежними, нужные msgstr будут вставлены автоматически.
Как работать с po-файлом?
Теоретически можно редактировать po-файл вручную. Но лучше так не делать, благо есть удобные программы для этого. Как варианты по умолчанию можно порекомендовать для GNOME gtranslator, а для KDE - kbabel (для KDE 4.X используйте Lokalize из пакета kdesdk). И тот, и другой, разумеется, есть в репозитариях Fedora.
Краткая инструкция по работе с gTranslator
Внимание! Крайне рекомендуется при переводе документации иметь перед глазами не только po-файл, но и оригинальный текст на английском, чтобы не потерять смысл и контекст того, что Вы переводите.
Заполнение служебной информации
Перед тем, как приступить к переводу, заполните несколько служебных полей - как Вас зовут, на какой язык переводим, в какой кодировке писать переводы.
Для этого в меню выберите "Правка" - "Параметры" и перейдите на вкладку "Заголовок". Вы увидите ряд полей, которые надо заполнить:
Пожалуйста, заполните все поля.
Обязательно проверьте, что кодировка выставлена в "UTF-8". Поле "Э-почта команды" заполните на свое усмотрение (по умолчанию можно использовать fedora-documentation [ГАВ] www.russianfedora [ТОЧКА] ru или fedora-localization [ГАВ] www.russianfedora [ТОЧКА] ru).
Общие принципы
Откройте в gTranslator po-фaйл. Вы увидите примерно такое окно:
Из наиболее ценного - группы строк "Непереведенные", "Неточные" и "Переведенные" в левом верхнем углу экрана. Это ровно то, с чем нам предстоит работать дальше.
Раскрываем список "Неточные" и видим примерно следующее:
В левой колонке видны части текста, через которые нам предстоит последовательно пройти. Выделяем любую из них. После этого в центральном поле сверху видим оригинальный английский текст, а снизу - русский перевод, признанный неточным. Неточности могут быть самые разные - от откровенных ошибок до указания "Fedora" вместо "Fedora 10" или некорректного форматирования. Наша задача - понять, что не так в русской версии, и исправить это.
Раскрываем список "Непереведенные".
Все выглядит примерно так же, как и с "Неточными". Отличие лишь в том, что русского перевода на этот раз нет совсем и его предстоит написать.
Из всего остального обязательно обратите внимание на 2 кнопки на верхней панели - "Сохранить" и "Компилировать".
Значение кнопки "Сохранить" достаточно интуитивно и в дальнейших комментариях не нуждается.
По нажатию же кнопки "Компилировать" gTranslator скомпилирует po-файл средстваим msgfmt. Что принципильно для нас - при этом он проверит его корректность. После компиляции Вы должны получить сообщение примерно следующего вида.
Если сообщение такое есть - все нормально. Если в сообщении говорится о неких ошибках - скорее всего, на каком-то этапе была повреждена структура файла. В этом случае стоит разобраться, что менялось с прошлой компиляции, и устранить ошибки.


