Adding a translation to gkrellmms
0) History
This document is taken from the gkrellm source tree and adapted for gkrellmms
1) Extract the strings from the source
In the gkrellmms top level directory, create the .po template (.pot):
xgettext -k_ -kN_ *.c -o po/gkrellmms.pot
2) Update or create .po files
If there are any existing translations, XX.po files, then merge them:
cd po
msgmerge XX.po gkrellmms.pot > XX.po.new
mv XX.po.new XX.po
Or, if this is a new translation, copy the template:
cd po
cp gkrellmms.pot XX.po
3) Add translations
Edit XX.po to add translations for new strings, fix broken translations, and touch up fuzzy translations.
4) Make and install gkrellmms with i18n enabled
If make is run from this directory instead of the top level dir, you must explicitely enable i18n in all the below examples by adding enable_nls=1 to the make command:
make enable_nls=1
And for the install step:
make install enable_nls=1
i18n will be automatically enabled when make is run from the top level dir.
In either case, a make install will for each XX.po file create a XX.mo file and copy it to:
$LOCALEDIR/XX/LC_MESSAGES/gkrellmms.mo
If there is no LOCALEDIR environment variable, then the default install will be to:
/usr/share/locale/XX/LC_MESSAGES/gkrellmms.mo
But, if you want a different explicit install directory, do for example:
make install LOCALEDIR=/usr/local/share/locale
or (for bash)
export LOCALEDIR=/usr/local/share/locale
make install
Other export lines:
sh: export LOCALEDIR; LOCALEDIR=/usr/local/share/locale
csh: setenv LOCALEDIR /usr/local/share/locale
You can also specify the textdomain package name. From bash:
make install PACKAGE=gkrellmms2
Using a translation
A user must have localizations enabled for a translation to be used. To enable a localization, the LANG environment variable should be set via the command line or the shell login startup files.
For example, to see the French translation, a user should be able to:
From bash:
export LANG=fr_FR
or from csh
setenv LANG fr_FR
If fr_FR does not work, try fr_FR.ISO_8859-1
