Add notes for translators.

Signed-off-by: OGINO Masanori <masanori.ogino@gmail.com>
This commit is contained in:
OGINO Masanori 2014-01-13 15:18:04 +09:00
parent 729715779a
commit 1ba61b915b

View File

@ -8,6 +8,12 @@ source code.
the Markdown docs (reference manual, tutorials, etc.) distributed with
this git repository.
[po4a](http://po4a.alioth.debian.org/) is required for generating translated
docs from the master (English) docs.
[GNU gettext](http://www.gnu.org/software/gettext/) is required for managing
the translation data.
# Building
To generate all the docs, just run `make docs` from the root of the repository.
@ -38,3 +44,40 @@ http://johnmacfarlane.net/pandoc/README.html#pandocs-markdown
A nice quick reference (for non-pandoc markdown) is at:
http://kramdown.rubyforge.org/quickref.html
# Notes for translators
To start the translation for a new language, see po4a.conf at first.
To generate .pot and .po files, do something like:
~~~~
po4a --copyright-holders="The Rust Project Developers" \
--package-name="Rust" \
--package-version="0.10-pre" \
-M UTF-8 -L UTF-8 \
po4a.conf
~~~~
(the version number must be changed if it is not 0.10-pre now.)
Now you can translate documents with .po files, commonly used with gettext. If
you are not familiar with gettext-based translation, please read the online
manual linked from http://www.gnu.org/software/gettext/ . We use UTF-8 as the
file encoding of .po files.
When you want to make a commit, do the command below before staging your
change:
~~~~
for f in doc/po/**/*.po; do
msgattrib --untranslated $f -o $f.strip
if [ -e $f.strip ]; then
mv $f.strip $f
else
rm $f
fi
done
~~~~
This removes untranslated entries from .po files to save disk space.