$Id: README,v 1.3 2004/04/25 16:34:45 joern Exp $
Notes for translators
This document describes briefly the steps for adding a new translation to dvd::rip and maintaining this translation in case of software updates.
1. Install required packages
- Package gettext >= 0.13
- Perl Module Locale::TextDomain >= 1.10
Locale::TextDomain is packaged as libintl-perl in Debian (and probably also in other Linux distributions).
2. Add a new translation
- Open the PACKAGE file in a text editor and add your language code to the LINGUAS variable.
- Copy the file 'video.dvdrip.pot' to 'LANGCODE.po', e.g. for french this would be this command:
% cp video.dvdrip.pot fr.po
- Now edit your .po file using an UTF-8 aware text editor or a .po file editor like gtranslator, emacs, kbabel or something else.
- Run 'make install' to build/rebuild all messages databases and install them in dvd::rip's library path
- Start dvd::rip from the source directory to test your translation. If you don't have LC_MESSAGES set to your language code, you need to do this now or set it temporarily for each dvdrip call like this:
% LC_MESSAGES=fr_FR ./dvdrip
3. Maintaining a translation
In case of software updates, messages could have been changed, deleted or added. So you need to keep your translation up-to-date.
- run 'make update-po' to extract new, changed or deleted messages from the dvd::rip source code. This updates all .po files correspondently.
- edit your .po file. At this point a .po aware editor like gtranslator saves you a lot of work, because it shows you which messages are new resp. changed.
- as explained above a 'make install' will rebuild all messages catalogs and you're done.
Credits
The whole l10n framework is based on Guido Flohr's Perl module Locale::TextDomain. When I began adding l10n support to dvd::rip I was wondering about all this gettext stuff, which wasn't really Perlish and I thought about implementing my own small framework. But luckily enough I found this module well timed and I was surprised how easy l10n can be ;)
