weltschmerz uses the GNU gettext utilities  for translation.
We recommend reading this entire document as well as familiarizing yourself with
GNU gettext. See  for a quick overview.
As a translator, it is your job to create (and maintain) your language's PO file
for weltschmerz. Initially, that PO file will be created from the "Portable
Object Template" - a file containing all translatable strings in the program.
This POT file is provided by the author of this software. You can find it (along
with all other files relevant for translation) in the po/ directory. It is the
software author's responsibility to keep the POT file up to date so that you as
a translator do not have to bother updating it. If, however, you happen across a
string that has not been marked for translation, the author will happily accept
a patch. Refer to 'UPDATING THE POT FILE' for more information.
ADDING A TRANSLATION
First, find your language's language code in  or . Once you have found it,
create a PO file by running the following in the project's root directory:
sh po/init-po.sh <Language code>
There should now be a PO file for your language in the po/ directory. You may
edit this file with whatever tool you are most comfortable with. If you don't
know what to use, poedit  is a reasonable choice. Refer to  if you need
information on how to translate plural forms. Make sure to fill out the header
properly (this is best done in a text editor). You may refer to already existing
PO files for this. Finally, make sure to add your language's PO file to POFILES
in the Makefile.
Once the translation is complete, commit the changes to the LINGUAS file, the
Makefile, and your language's PO file to git. You may then submit this commit
to the author via git-format-patch(1) and git-send-email(1). If you don't know
how to do this, see  for a guide. Feel free to find the author on IRC and
ask for help if you are struggling.
UPDATING THE POT FILE
Even though the POT file should always be up to date, sometimes you may need to
regenerate it to pick up on changes to the source code that went unnoticed by
the author. To do this, run the following in the project's root directory:
Note that this will also update all translations listed in the LINGUAS file.
Please commit and submit this change separately from any translation.