msgcat файл_загруженный_с_Transifex > переименованный_файл
Платформа Transifex упрощает взаимодействие переводчиков, является местом, где команда переводчиков может централизованно хранить свои PO-файлы и распространять информацию. Доступен онлайн-редактор, который также подходит и для ревизии переводов.
Инструкции по использованию смотрите в Центре помощи Transifex.
Можете использовать онлайн-редактор Transifex при необходимости, но:
на всякий случай не забывайте почаще делать локальные резервные копии
форматирование текста переводов легче выполнять и проверять локально, при помощи специализированных PO-редакторов, таких как Lokalize или Poedit
Для перевода web-страниц в формате asciidoc использование Transifex обязательно (смотрите ниже).
Если предпочитаете переводить локально, выбирайте на Transifex Скачать для перевода (а не Скачать для использования) и Заблокировать этот перевод, чтобы предупредить остальных, что вы работаете над ним. Это исключит дублирование усилий… Несколько членов команды могут одновременно работать над одним большим PO-файлом, если договорятся, кто какую часть переводит. |
Transifex не переносит строки переведенного текста. Это приводит к появлению очень длинных строк, усложнению чтения в текстовом редакторе и даже к высокой загрузке процессора. Чтобы избежать этого, после загрузки PO-файла наберите:
и используйте Lokalize или Poedit для перевода переименованного_файла. Этот файл будет с переносами строк, но в остальном будет идентичен загруженному файлу, так что не повредит. |
Если переводите локально, не забывайте выгружать отредактированный файл на Transifex, приостанавливая работу с ним, не держите блокировку без нужды.
Lokalize входит в состав Slackware. Вы можете либо прочесть Lokalize Handbook в сети, либо из меню Помощь, нажав [F1]. Рекомендуемые настройки:
Настройка ⇒ Настроить Lokalize ⇒ Идентификация: Выбрать язык (установить в целевой язык).
Настройки ⇒ Настроить Lokalize ⇒ Внешний вид: Выбрать шрифт фиксированной ширины с засечками (моноширинный), например Courier. Это позволит различать 0 (цифра) и O (буква) или | (пайп) и I (буква) и проверять форматирование, например выравнивание первых слов на последовательных строках.
Настройка ⇒ Настроить Lokalize ⇒ Внешний вид: Выбрать Индикаторы состояния для выделения непереведенных и неточных строк, также как позиция курсора в столбце, очень удобно для проверки длины строк, когда это имеет значение.
Poedit не поставляется со Slackware, но доступен на SlackBuilds.org.
У него не хватает удобных функций для проверки длины строки, но в остальном его функционал аналогичен Lokalize, так что можно выбирать один или другой редактор по своему вкусу.
В Правка ⇒ Настройки ⇒ Редактор отметьте Автоматически проверять орфографию и, как и в Lokalize, выберите шрифт фиксированной ширины с засечками.
Этот сжатый архив содержит все необходимое для создания продуктов slint, как и инструменты для участников slint. Он называется slint-[дата].tar.xz и находится в каталоге pub/.
Для его распаковки наберите:
tar xf slint-[дата].tar.xz
Появится каталог slint-[дата]. Смотрите файл CONTENT.TXT в нем для более подробной информации, таблица ниже только приводит сценарии, используемые для создания продуктов slint и инструменты для переводчиков. Все пути указаны относительно этого каталога.
Имя сценария и расположение | Назначение |
---|---|
build/slint.sh |
Создает гибридный (CD/DVD или USB) образ установщика Slint или дистрибутив Slackware c установщиком Slint. |
build/make_slint_packages |
Итернационализирует разные пакеты Slackware и создает пакет SlintLocales. |
build/slintLocales |
Создает пакет, включающий все обновленные переводы сценариев Slackware, входящих в установщики Slint (всех версий) или инструментов для Slackware. |
tools_for_translators/toolbox.sh |
Этот сценарий управляет переводами сообщений, собранных в slackware.pot. |
tools_for_translators/toolbox_slint_sh |
Этот сценарий управляет переводами сообщений, выводимых сценарием slint.sh . |
tools_for_translators/generate_man_pages |
Генерирует переведенные страницы руководств для разных инструментов Slackware. Позволяет проверять PO-файлы. Использование этого сценария требует установленного пакета po4a, доступного в каталоге extra/. |
Ресурс slint, файл slackware.pot
Когда вы закончите перевод, поместите файл в каталог wip/, (пере)именуйте, например, в ru_RU.slackware.po, затем запустите на выполнение /path/to/tools_for_translators/toolbox.sh и выберите в меню проверить_PO. Если все идет хорошо:
скопируйте ru_RU.slackware.po в каталог po/ (перевод на русский в этом примере)
Запустите /path/to/build/SlintLocales.SlackBuild для включения обновленного перевода в пакет SlintLocales
Запустите /path/to/build/slint.sh для создания гибридного CD или USB образа установщика
Разверните образ на CD или USB-флешку
Попытайтесь установить (очевидно, на русском языке в данном случае), на виртуальную или реальную машину
Чтобы запустить установщик в виртуальной машине, вы можете использовать файл .iso как виртуальный носитель, в этом случае не нужно записывать его на физический носитель. |
Ресурс: POT file for slint.sh
Когда вы закончите перевод, поместите файл в каталог wip/, переименуйте, например, в ru_RU.slint.po для руского, затем запустите /path/to/tools_for_translators/toolbox_slint_sh и выберите в меню проверить_PO.
Если все идет хорошо, снова запустите /path/to/tools_for_translators/toolbox_slint_sh, но выберите формат_PO в меню. Если все идет хорошо, будет сгенерирован и помещен в соответствующий каталог в дереве slint-[дата] файл slint.mo (в данном примере slint_locales/ru/LC_MESSAGES).
Затем попробуйте ваш перевод, сравнивая с английской и немецкой версиями командами наподобие:
/path/to/build/slint.sh
LANG=de_DE.utf8 /path/to/build/slint.sh
Опять же, поместите PO-файлв каталог wip/, (пере)именуйте, например, в ru.pkgtools.po (страницы руководств, входящих в пакет pkgtools на русском). Затем выполните команду:
/path/to/tools_for_translators/generate_man_pages ru.pkgtools
Если все идет хорошо, сценарий создаст все страницы руководств (в данном случае: ru.explodepkg, ru.installpkg, ru.makepkg, ru.pkgtool, ru.removepkg, ru.upgradepkg). В противном случе читайте сообщения об ошибках, вносите необходимые правки и попробуйте еще раз. Вы можете избежать многих ошибок, прочитав Предупреждения.
Чтобы сравнить переведенные страницы руководств с оригинальными, выполните, например, это (пример для перевода на русский):
cd /path/to/wip/
LANG=ru_UA.utf8 GROFF_ENCODING=utf8 man ./installpkg # переведенное руководство
GROFF_ENCODING=utf8 man installpkg # оригинальное руководство
Чтобы не набирать "GROFF_ENCODING=utf8" каждый раз, добавьте эту строку в ~/.bashrc:
export GROFF_ENCODING=utf8
Как показано в Перевод web страниц, следующие страницы сгенерированы asciidoc из исходных текстовых файлов: slint.html, installer.html, package.html, Contribute, Translators, Tools и ChangeLog, так же как template.po.
Эти файлы нужно переводить при помощи онлайн-редактора Transifex: попытка выгрузить переведенный текстовый файл на Transifex оканчивается неудачей с сообщением о неизвестной ошибке редактора, поэтому перевод этих файлов локально и выгрузка их на Transifex - не вариант.
Но онлайн-редактор Transifex имеет преимущество в том, что позволяет добавлять в файлы переводов строки и целые параграфы, сохраняя при этом привязку к строкам оригинального английского файла.
Это позволяет переводчикам изменять их переводы, добавляя информацию, специфичную их локали, например, о том, как пользователь может получить поддержку на этом языке или в данной стране, или о ссылках на локализованную документацию и прочем.
При обновлении оригинального англоязычного файла те строки текста в переводе, которые совпадают с изменившимися строками из англоязычного файла, будут отброшены. На этот случай вы можете сохранить то, что набирали, если сделаете локальную копию перевода (загрузив его с Transifex), затем вы можете скопировать старый перевод из этой локальной копии и вставить его в редакторе Transifex, при необходимости отредактировав. Даже проще, если щелкнуть "Код страницы" внизу меню новой веб страницы, будет показан соответствующий исходный текстовый файл. Кроме того, редактор Transifex имеет возможность «Предложения» (аналогичную «Памяти переводов» в Lokalize), которая «запоминает» похожие последние переводы строк. Эта возможность может быть очень полезна, когда бы страница сайта ни была обновлена. Transifex помнит ваш последний перевод и предоставляет ссылку «Используйте это», вы можете просто воспользоваться ею, избежав повторного набора и перевода. |
Основной документ - это Руководство пользователя AsciiDoc, но для начала, прочтите шпаргалки по AsciiDoc. Еще быстрее, при установленном AsciiDoc, следующая команда:
asciidoc --help syntax > asciidoc.txt
Она запишет в файл asciidoc.txt общие сведения о синтаксисе разметки AsciiDoc, которые вы можете прочесть или распечатать.
Тщательно сохраняйте разметку как есть. Например, добавление или удаление пробелов или символов «новой строки» может привести к неожиданному результату. Ниже несколько примеров:
Начало параграфа с пробела приведет к генерации буквального параграфа, отображаемого специальным шрифтом
«= текст» приведет к генерации заголовка уровня 0 (заголовка документа), но только если «=» — первый символ в строке, есть пробел после него и пустая строка перед ним.
добавленный в конец строки «\+» приведет к генерации разрыва строки только если перед «+» есть пробел.
Во избежание путаницы с кодами форматирования рекомендуем сперва копировать исходную (английскую) строку в перевод (просто щёлкнув значок с двумя листами справа над исходной строкой), затем отредактировать её. |
Вы легко можете проверить, как выглядит страница, сгенерированная из вашего перевода. Просто выполните следующее:
lftp -c "mirror https://slint.fr/website/"
Загрузите ваш перевод с Transifex (назовем его <translation.txt>) в каталог website, созданный предыдущей командой
cd website
CONFIG_FILE=slint.conf.en
# Необязательно, если заголовок и меню, переведенные на ваш язык, загружены на веб-сайт:
wget https://slint.fr/slint.conf.ll; CONFIG_FILE=slint.conf.ll # замение «ll» на код вашего языка (две буквы)
# затем сгенерируйте веб-страницу
asciidoc -b xhtml11 -a icons -f $CONFIG_FILE <translation.txt> # эта команда сгенерирует <translation.html>
firefox <translation.html> &
Следующие слова имеют специальное значение в AsciiDoc и не должны переводиться, когда они начинают параграф с предупреждением (они заменяются значками): TIP, NOTE, IMPORTANT, WARNING и CAUTION.
Вообще говоря, ссылки и URL не должны переводиться, но их заголовки - можно, в зависимости от контекста. В следующих примерах (полученных из вывода asciidoc --help syntax) только значение caption можно переводить:
Ссылки на документы:
[[id]] (определяет цель ссылки)
<<id,заголовок>> (ссылка на назначенный id)
link:filename#id[заголовок] (ссылка на внешний HTML-файл)
Адреса URL:
http:address[заголовок] (ссылка на веб-страницу)
mailto:address[заголовок] (ссылка на получателя электронной почты)
Изображения:
image:filename[заголовок] (встроенное изображение)
image::filename[заголовок] (блок с изображением)