Как переводить веб-сайт
Перевод веб-сайта выполняется в файлах .po. До сих пор самый простой способ перевода веб-сайта - получить аккаунт на Transifex и присоединиться к команде переводчиков. Или можно переводить "по старинке", как описано ниже.
-
Подготовка
- Зайдите на #i2p-dev в IRC и поговорите с людьми. Запросите язык - Чтобы бы уверенными, что ваши соратники не затрут файлы, над которыми вы работаете, пожалуйста, обновляйте статус перевода на этой wiki-страничке.
- Follow the new developer's guide, including the installation of git and the gettext tools. You will need the i2p.www repository. It is not required that you sign a dev agreement.
- Создайте файлы:
Если файла для вашего языка еще нет:
- Выполните "
./extract-messages.sh
", чтобы сгенерироватьmessages.pot
в основной директории. Отредактируйте заголовок файла, затем выполните "./init-new-po.sh locale
" чтобы сгенерировать файлi2p2www/translations/locale/LC_MESSAGES/messages.po
. "mtn add
" этот файл. - Отредактируйте
i2p2www/pages/global/lang.html
и добавьте строку для вашего языка (скопируйте какую-нибудь строку). - Добавьте файл с изображением флага в
i2p2www/static/images/flags/
для меню (скопируйте из маршрутизатора).
- Выполните "
- Отредактируйте файлы:
Отредактируйте
i2p2www/translations/locale/LC_MESSAGES/messages.po
. Чтобы эффективно работать с файлами .po, возможно, вы захотите использовать POEdit - Git Workflow:
You can then add all new and changed files to your next commit using
git add .
(or specify which files instead of the dot). Please note the suggested workflow for git on our git-page. - Повторите. Размещайте чаще. Не ждите пока оно станет совершенным.
Как Переводить Консоль Маршрутизатора
До сих пор самый простой способ перевода консоли маршрутизатора - получить аккаунт на Transifex и присоединиться к команде переводчиков. Или можно переводить "по старинке", как описано ниже.
-
Подготовка
- Зайдите на #i2p-dev в IRC и поговорите с людьми. Запросите язык - Чтобы бы уверенными, что ваши соратники не затрут файлы, над которыми вы работаете, пожалуйста, обновляйте статус перевода на этой wiki-страничке.
- Follow the new developer's guide, including the installation of git and the gettext tools. You will need the i2p.i2p repository.
- Сгенерируйте ваш собственный gpg ключ и подпишите соглашение разработчика.
- До начала перевода консоли маршрутизатора помогите перевести несколько веб-страниц i2p. Хотя бы домашнюю страницу i2p на ваш язык, это было бы здорово.
- Что переводить:
Есть около 15 файлов в ветке i2p.i2p, которые нужно перевести:
-
installer/resources/readme/readme_xx.html
-
installer/resources/initialNews/initialNews_xx.xml
-
apps/routerconsole/locale/messages_xx.po
-
installer/resources/proxy/*_xx.ht
(about 9 files) -
apps/routerconsole/jsp/help_xx.jsp
-
installer/resources/I2P Site.help/help/index_xx.html
-
apps/i2ptunnel/locale/messages_xx.po
-
apps/i2psnark/locale/messages_xx.po
-
apps/susidns/locale/messages_xx.po
-
- Создайте файлы:
Если файла для вашего языка еще нет, скопируйте файл другого языка в новый файл
foo_xx.bar
для вашего языка. Затем "mtn add
" файл. После создания файла .po, отредактируйте заголовки. Затем выполните "ant distclean poupdate
". - Начните работу: Отредактируйте файлы HTML в любом текстовом редакторе. Не нужно использовать редакторы в режиме HTML, которые отформатируют весь текст. Для более эффективной работы с файлами .po, вы, возможно, захотите использовать POEdit
- Git Workflow:
You can then add all new and changed files to your next commit using
git add .
(or specify which files instead of the dot). Please note the suggested workflow for git on our git-page. - Повторите. Размещайте чаще. Не ждите пока оно станет совершенным.
Как вы видите, это не так сложно.
Если у вас есть вопросы на счет значения терминов в консоли, спросите в #i2p-dev
в IRC.
FAQ
Q: Why do I have to install git, Java, jsp, learn about .po files and html, etc.? Why can't I just do a translation and email it to you?
A: You do not / Several reasons:
- First of all: you don't have to, you can translate via Transifex (aka "using a web-site to translate"). Request to join a translation team here. Aside from that ...
- У нас нет людей, у которых есть время для приема помощи вручную и размещения в системе контроля версий от вашего имени. Даже если бы и были, это плохо масштабируется.
- Может, вы думаете, что перевод это одношаговый процесс. Это не так. Вы не сможете выполнить его за один раз. Вы будете совершать ошибки. Вам нужно его протестировать и сделать его верным до того, как вы его утвердите. Разработчики обновляют или добавляют Английский текст, поэтому требуется обновление перевода.
- Наличие переводчиков, использующих систему контроля версий, увязано с аутентификацией и отчетностью - мы знаем, кто что делает, и мы можем отследить изменения, и отменить их в случае необходимости.
- в файлах .po нет ничего сложного. Если вы не хотите работать непосредственно с ними, мы рекомендуем 'poedit'.
- В файлах HTML нет ничего сложного. Просто игнорируйте все тэги и переводите текст.
- Installing and using git is not that difficult. Several of the translators and other contributors to I2P are non-programmers, and they use git regularly. Git is simply a source control system, it is not about "coding".
- Наша единица перевода - это не "документ". Это файлы html и .po, в определенном формате и с кодировкой символов (UTF-8), это нужно поддерживать и не поломать при отправке по почте или другими методами передачи.
- Мы рассматриваем 'pootle' в качестве фронт-энда для переводчиков. Он работает не так, как нужно, нуждается в администрировании, и pootle-подобный процесс страдает от ряда вышеописанных недостатков.
В итоге: Да, мы знаем, что у начинающих есть преграды. Это действительно единственный способ. Попробуйте, это на самом деле не так сложно.
Больше информации
Канал #i2p-dev в IRC, или форум перевода на zzz.i2p.