Added translation tags to get-involved/guides/new-translators
This commit is contained in:
@@ -1,81 +1,112 @@
|
||||
{% extends "global/layout.html" %}
|
||||
{% block title %}New Translator's Guide{% endblock %}
|
||||
{% block title %}{% trans %}New Translator's Guide{% endtrans %}{% endblock %}
|
||||
{% block content %}
|
||||
Here's a very quick guide to getting started.
|
||||
{% trans %}Here's a very quick guide to getting started.{% endtrans %}
|
||||
|
||||
<h2>How to Translate the Website</h2>
|
||||
<h2>{% trans %}How to Translate the Website{% endtrans %}</h2>
|
||||
|
||||
<p>{% trans transifex='https://www.transifex.com/projects/p/I2P/' -%}
|
||||
Translation of the website is done with .po files. The easiest way by far to
|
||||
translate the website is to sign up for an account at
|
||||
<a href="{{ transifex }}">Transifex</a> and request to join a translation team.
|
||||
Alternatively it can be done "the old way" as outlined below.
|
||||
{%- endtrans %}</p>
|
||||
|
||||
<ol>
|
||||
<li>
|
||||
Preparation
|
||||
<b>{% trans %}Preparation{% endtrans %}</b>
|
||||
<ol>
|
||||
<li>
|
||||
Come to #i2p-dev on irc and talk to people.
|
||||
Claim the language -
|
||||
To make sure other coworkers don't bump onto the files you are working on,
|
||||
please update the translation status on <a href="http://ugha.i2p/i2pTranslation">this wiki page</a>.</li>
|
||||
<li>
|
||||
Follow the <a href="{{ site_url('get-involved/guides/newdevelopers') }}">new developer's guide</a>,
|
||||
Including the installation of monotone,
|
||||
checking out i2p.www branch, and generate your own monotone keys.
|
||||
It is not required that you sign a dev agreement.</li>
|
||||
<li>{% trans url='http://ugha.i2p/i2pTranslation' -%}
|
||||
Come to #i2p-dev on irc and talk to people.
|
||||
Claim the language -
|
||||
To make sure other coworkers don't bump onto the files you are working on,
|
||||
please update the translation status on <a href="{{ url }}">this wiki page</a>.
|
||||
{%- endtrans %}</li>
|
||||
<li>{% trans newdevs=site_url('get-involved/guides/new-developers') -%}
|
||||
Follow the <a href="{{ newdevs }}">new developer's guide</a>,
|
||||
Including the installation of monotone,
|
||||
checking out i2p.www branch, and generate your own monotone keys.
|
||||
It is not required that you sign a dev agreement.
|
||||
{%- endtrans %}</li>
|
||||
</ol>
|
||||
|
||||
<li>
|
||||
Create files:
|
||||
If the file for your language does not exist yet, copy another language file to a new file <code>foo_xx.bar</code> for your language.
|
||||
Then '<code>mtn add</code>' the file.
|
||||
Also add a <code>_layout_xx.html</code> for your language xx.
|
||||
Add a flag image file for the menu (copy from the router).</li>
|
||||
<li>{% trans -%}
|
||||
<b>Create files:</b>
|
||||
If the file for your language does not exist yet:
|
||||
{%- endtrans %}
|
||||
<ol>
|
||||
<li>{% trans -%}
|
||||
Run "<code>./extract-messages.sh</code>" to generate a <code>messages.pot</code> in the base directory.
|
||||
Edit the header of this file, then run "<code>./init-new-po.sh locale</code>" to generate the file
|
||||
<code>i2p2www/translations/locale/LC_MESSAGES/messages.po</code>. "<code>mtn add</code>" this file.
|
||||
{%- endtrans %}</li>
|
||||
<li>{% trans -%}
|
||||
Edit <code>i2p2www/pages/global/lang.html</code> and add a line for your language (copy an existing line).
|
||||
{%- endtrans %}</li>
|
||||
<li>{% trans -%}
|
||||
Add a flag image file to <code>i2p2www/static/images/flags/</code> for the menu (copy from the router).
|
||||
{%- endtrans %}</li>
|
||||
</ol>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
Edit files:
|
||||
Edit <code>_layout_xx.html</code>, <code>_menu.html</code>, and other files with any text editor.
|
||||
Be sure not to use an editor in HTML mode that reformats everything.</li>
|
||||
<li>{% trans -%}
|
||||
<b>Edit files:</b>
|
||||
Edit <code>i2p2www/translations/locale/LC_MESSAGES/messages.po</code>.
|
||||
To work with .po files efficiently, you may wish to use <a href="http://www.poedit.net/download.php">POEdit</a>
|
||||
{%- endtrans %}</li>
|
||||
|
||||
<li>
|
||||
Check in:
|
||||
<code>mtn pull</code>, <code>mtn update</code>. Then check in by "<code>mtn ci -k yourname@mail.i2p file1 file2 ...</code>"
|
||||
This collects the diff info of your changed file into your local repo. Then "<code>mtn sync mtn.i2p2.de -k yourname-transport@mail.i2p i2p.i2p</code>".
|
||||
This synchronizes your local repo with the repo on the target machine.</li>
|
||||
|
||||
<li>
|
||||
Repeat. Check in often. Don't wait until it is perfect.</li>
|
||||
<li>{% trans -%}
|
||||
<b>Check in:</b>
|
||||
"<code>mtn pull</code>", "<code>mtn update</code>". Then check in by "<code>mtn ci -k yourname@mail.i2p file1 file2 ...</code>"
|
||||
This collects the diff info of your changed file into your local repo. Then "<code>mtn sync mtn.i2p2.de -k yourname-transport@mail.i2p i2p.i2p</code>".
|
||||
This synchronizes your local repo with the repo on the target machine.
|
||||
{%- endtrans %}</li>
|
||||
|
||||
<li>{% trans -%}
|
||||
Repeat. Check in often. Don't wait until it is perfect.
|
||||
{%- endtrans %}</li>
|
||||
|
||||
|
||||
</ol>
|
||||
|
||||
<h2>How to Translate the Router Console</h2>
|
||||
<h2>{% trans %}How to Translate the Router Console{% endtrans %}</h2>
|
||||
|
||||
<p>The easiest way by far to translate the router console is to sign up for an account at
|
||||
<a href="https://www.transifex.com/projects/p/I2P/">Transifex</a> and request to join a translation team.
|
||||
Alternatively it can be done "the old way" as outlined below.</p>
|
||||
<p>{% trans transifex='https://www.transifex.com/projects/p/I2P/' -%}
|
||||
The easiest way by far to translate the router console is to sign up for an account at
|
||||
<a href="{{ transifex }}">Transifex</a> and request to join a translation team.
|
||||
Alternatively it can be done "the old way" as outlined below.
|
||||
{%- endtrans %}</p>
|
||||
|
||||
<ol>
|
||||
<li>
|
||||
Preparation
|
||||
<b>{% trans %}Preparation{% endtrans %}</b>
|
||||
<ol>
|
||||
<li>
|
||||
Come to #i2p-dev on irc and talk to people.
|
||||
Claim the language -
|
||||
To make sure other coworkers don't bump onto the files you are working on,
|
||||
please update the translation status on <a href="http://ugha.i2p/i2pTranslation">this wiki page</a>.</li>
|
||||
<li>
|
||||
Follow the <a href="{{ site_url('get-involved/guides/newdevelopers') }}">new developer's guide</a>,
|
||||
Including the installation of monotone and the gettext tools,
|
||||
checking out i2p.i2p branch, and generate your own monotone keys.</li>
|
||||
<li>
|
||||
Generate your own gpg key and sign the dev agreement.</li>
|
||||
</ol></li>
|
||||
<li>{% trans url='http://ugha.i2p/i2pTranslation' -%}
|
||||
Come to #i2p-dev on irc and talk to people.
|
||||
Claim the language -
|
||||
To make sure other coworkers don't bump onto the files you are working on,
|
||||
please update the translation status on <a href="{{ url }}">this wiki page</a>.
|
||||
{%- endtrans %}</li>
|
||||
<li>{% trans newdevs=site_url('get-involved/guides/new-developers') -%}
|
||||
Follow the <a href="{{ newdevs }}">new developer's guide</a>,
|
||||
including the installation of monotone and the gettext tools,
|
||||
checking out i2p.i2p branch, and generate your own monotone keys.
|
||||
{%- endtrans %}</li>
|
||||
<li>{% trans -%}
|
||||
Generate your own gpg key and sign the dev agreement.
|
||||
{%- endtrans %}</li>
|
||||
</ol>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<li>{% trans -%}
|
||||
Before starting a console translation, better help translate some i2p webpages first.
|
||||
At least an i2p homepage in your language would be great. This will also help you learn monotone.</li>
|
||||
At least an i2p homepage in your language would be great.
|
||||
{%- endtrans %}</li>
|
||||
|
||||
<li>
|
||||
What to translate:
|
||||
There are about 15 files in the i2p.i2p branch that needs translation:
|
||||
<li>{% trans -%}
|
||||
<b>What to translate:</b>
|
||||
There are about 15 files in the i2p.i2p branch that needs translation:
|
||||
{%- endtrans %}
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
@@ -98,81 +129,97 @@ What to translate:
|
||||
<code>apps/susidns/locale/messages_xx.po</code></li>
|
||||
</ul>
|
||||
|
||||
Where xx is your language code like fr/de/ch/zh/...
|
||||
{% trans -%}
|
||||
Where xx is your language code like fr/de/ch/zh/...
|
||||
There may be or may not be files with your lang code. If not, you can create your own. by copying and renaming other language files you know with your own lang code.
|
||||
{%- endtrans %}</li>
|
||||
|
||||
There may be or may not be files with your lang code. If not, you can create your own. by copying and renaming other language files you know with your own lang code.
|
||||
</li>
|
||||
<li>{% trans -%}
|
||||
<b>Create files:</b>
|
||||
If the file for your language does not exist yet, copy another language file to a new file <code>foo_xx.bar</code> for your language.
|
||||
Then "<code>mtn add</code>" the file.
|
||||
After creating a .po file, edit the headers. Then run "<code>ant distclean poupdate</code>".
|
||||
{%- endtrans %}</li>
|
||||
|
||||
<li>
|
||||
Create files:
|
||||
If the file for your language does not exist yet, copy another language file to a new file foo_xx.bar for your language.
|
||||
Then 'mtn add' the file.
|
||||
After creating a .po file, edit the headers. Then run 'ant distclean poupdate'.
|
||||
</li>
|
||||
<li>
|
||||
Start to work:
|
||||
Edit the HTML files with any text editor.
|
||||
Be sure not to use an editor in HTML mode that reformats everything.
|
||||
To work with .po files efficiently, you may wish to use <a href="http://www.poedit.net/download.php">POEdit</a>
|
||||
</li>
|
||||
<li>
|
||||
Check in:
|
||||
mtn pull, mtn update. Then check in by "mtn ci -k yourname@mail.i2p file1 file2 ..."
|
||||
This collects the diff info of your changed file into your local repo. Then "mtn sync mtn.i2p2.de -k yourname-transport@mail.i2p i2p.i2p".
|
||||
This synchronizes your local repo with the repo on the target machine.
|
||||
</li>
|
||||
<li>
|
||||
<li>{% trans -%}
|
||||
<b>Start to work:</b>
|
||||
Edit the HTML files with any text editor.
|
||||
Be sure not to use an editor in HTML mode that reformats everything.
|
||||
To work with .po files efficiently, you may wish to use <a href="http://www.poedit.net/download.php">POEdit</a>
|
||||
{%- endtrans %}</li>
|
||||
|
||||
<li>{% trans -%}
|
||||
<b>Check in:</b>
|
||||
"<code>mtn pull</code>", "<code>mtn update</code>". Then check in by "<code>mtn ci -k yourname@mail.i2p file1 file2 ...</code>"
|
||||
This collects the diff info of your changed file into your local repo. Then "<code>mtn sync mtn.i2p2.de -k yourname-transport@mail.i2p i2p.i2p</code>".
|
||||
This synchronizes your local repo with the repo on the target machine.
|
||||
{%- endtrans %}</li>
|
||||
|
||||
<li>{% trans -%}
|
||||
Repeat. Check in often. Don't wait until it is perfect.
|
||||
|
||||
</li>
|
||||
{%- endtrans %}</li>
|
||||
</ol>
|
||||
|
||||
<p>As you can see, it's not that difficult.
|
||||
If you have questions about the meaning of the terms in the console, ask in #i2p-dev on IRC.
|
||||
</p>
|
||||
<p>{% trans -%}
|
||||
As you can see, it's not that difficult.
|
||||
If you have questions about the meaning of the terms in the console, ask in <code>#i2p-dev</code> on IRC.
|
||||
{%- endtrans %}</p>
|
||||
|
||||
|
||||
<h2>FAQ</h2>
|
||||
<h2>{% trans %}FAQ{% endtrans %}</h2>
|
||||
|
||||
<b>Q: Why do I have to install monotone, Java, jsp, learn about .po files and html, etc.? Why can't I just do a translation and email it to you?</b>
|
||||
<p><b>{% trans -%}
|
||||
Q: Why do I have to install monotone, Java, jsp, learn about .po files and html, etc.? Why can't I just do a translation and email it to you?
|
||||
{%- endtrans %}</b></p>
|
||||
|
||||
<b>Answer: Several reasons:</b>
|
||||
<p><b>{% trans %}A: Several reasons:{% endtrans %}</b></p>
|
||||
|
||||
<ul>
|
||||
<li>You might be interested in translating via Transifex. Request to join a translation team <a href="https://www.transifex.com/projects/p/I2P/">here</a></li>
|
||||
<li>
|
||||
We don't have anybody who has time to accept manual contributions and submit them to our source control system on your behalf. Even if we did, it doesn't scale.</li>
|
||||
<li>{% trans transifex='https://www.transifex.com/projects/p/I2P/' -%}
|
||||
You might be interested in translating via Transifex. Request to join a translation team <a href="{{ transifex }}">here</a>.
|
||||
{%- endtrans %}</li>
|
||||
|
||||
<li>
|
||||
Maybe you are thinking translation is a one-step process. It isn't. You can't do it all at once. You will make mistakes. You need to test it and tweak it to make it look right <i>before</i> you submit it. Developers will update or add to the English text, thus requiring a translation update.
|
||||
</li>
|
||||
<li>
|
||||
Having translators use a source control system directly provides authentication and accountablility - we know who is doing what, and we can track changes, and revert them if necessary.
|
||||
<li>{% trans -%}
|
||||
We don't have anybody who has time to accept manual contributions and submit them to our source control system on your behalf. Even if we did, it doesn't scale.
|
||||
{%- endtrans %}</li>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
.po files are not difficult. If you don't want to work directly with them, we recommend 'poedit'.
|
||||
</li>
|
||||
<li>
|
||||
HTML files are not difficult. Just ignore the html stuff and translate the text.
|
||||
</li>
|
||||
<li>
|
||||
Installing and using monotone is not that difficult. Several of the translators and other contributors to I2P are non-programmers, and they use monotone regularly. Monotone is simply a source control system, it is not about "coding".
|
||||
</li>
|
||||
<li>
|
||||
Our items to translate are not "documents". They are html files and po files, with a specific format and character encoding (UTF-8) that must be maintained, and not corrupted by email programs or other methods of transfer.
|
||||
</li>
|
||||
<li>
|
||||
We looked at 'pootle' as a front-end for translators. It didn't work well, needed an administrator, and a pootle-based process would suffer from a number of the above flaws.</li>
|
||||
<li>{% trans -%}
|
||||
Maybe you are thinking translation is a one-step process. It isn't. You can't do it all at once. You will make mistakes. You need to test it and tweak it to make it look right <i>before</i> you submit it. Developers will update or add to the English text, thus requiring a translation update.
|
||||
{%- endtrans %}</li>
|
||||
|
||||
<li>{% trans -%}
|
||||
Having translators use a source control system directly provides authentication and accountablility - we know who is doing what, and we can track changes, and revert them if necessary.
|
||||
{%- endtrans %}</li>
|
||||
|
||||
<li>{% trans -%}
|
||||
.po files are not difficult. If you don't want to work directly with them, we recommend 'poedit'.
|
||||
{%- endtrans %}</li>
|
||||
|
||||
<li>{% trans -%}
|
||||
HTML files are not difficult. Just ignore the html stuff and translate the text.
|
||||
{%- endtrans %}</li>
|
||||
|
||||
<li>{% trans -%}
|
||||
Installing and using monotone is not that difficult. Several of the translators and other contributors to I2P are non-programmers, and they use monotone regularly. Monotone is simply a source control system, it is not about "coding".
|
||||
{%- endtrans %}</li>
|
||||
|
||||
<li>{% trans -%}
|
||||
Our items to translate are not "documents". They are html files and po files, with a specific format and character encoding (UTF-8) that must be maintained, and not corrupted by email programs or other methods of transfer.
|
||||
{%- endtrans %}</li>
|
||||
|
||||
<li>{% trans -%}
|
||||
We looked at 'pootle' as a front-end for translators. It didn't work well, needed an administrator, and a pootle-based process would suffer from a number of the above flaws.
|
||||
{%- endtrans %}</li>
|
||||
</ul>
|
||||
|
||||
<p>{% trans -%}
|
||||
<b>In summary:</b>
|
||||
|
||||
Yes, we know it is somewhat of a hurdle to get started. It's really the only possible way we can do it. Give it a try, it really isn't that hard.
|
||||
{%- endtrans %}
|
||||
|
||||
<h2>More Information</h2>
|
||||
The #i2p-dev channel on IRC, or the <a href="http://zzz.i2p/forums/14">translation forum on zzz.i2p</a>.
|
||||
|
||||
|
||||
<h2>{% trans %}More Information{% endtrans %}</h2>
|
||||
<p>{% trans zzz=i2pconv('zzz.i2p') -%}
|
||||
The #i2p-dev channel on IRC, or the <a href="http://{{ zzz }}/forums/14">translation forum on {{ zzz }}</a>.
|
||||
{%- endtrans %}</p>
|
||||
|
||||
{% endblock %}
|
||||
|
Reference in New Issue
Block a user