Animal pedigree

From Gramps
Revision as of 12:37, 18 November 2009 by Romjerome (Talk | contribs) (How to install the animal translation file)

Jump to: navigation, search

You can use GRAMPS also to keep track of the pedigree of breed animals. Note however that no special provisions are available for this. e.g. a bull will have countless families, and numerous children, for which the GRAMPS interface is not really designed.

Animal translation file

For easy working with animals in GRAMPS, it helps if some terminology is changed. That is

  • Person -> Animal
  • Father -> Sire
  • Mother -> Dam
  • Marriage -> Pairing


The file File:Gramps animal 2 2 6.po.gz, File:Gramps animal 3 1 3.po.gz (3.1.3) are an English sub-translation that makes using GRAMPS far more intuitive when dealing with animals.

Example output from a build using this file can be seen here or here (dogs in french)

How to install the animal translation file

NOTE: this is a hack! Use with caution.

  • Adaptation is done on the source code, by overwriting a language-country code you don't need. So first, you need to get the source code. Download with those instructions the source code of version 3.1. For example:

svn co

  • Change directory to the source code and make sure it builds:

cd [myhome/mypath/]gramps31

Initial build requirement for Ubuntu 7.04:

sudo apt-get install libglib2.0-dev gnome-common

cp gramps_animal_2_2_6.po.gz [myhome/mypath/]gramps31/po
cd [myhome/mypath/]gramps31/po
gzip -d gramps_animal_2_2_6.po.gz

  • Now you have to use a locale that you wouldn't usually use. For instance, if your locale is en_GB, use en_US. create a symbolic link to gramps_animal_2_2_6.po in the po directory. The en_US locale is an example in all the command lines below. In the po directory do:

Update the translation according to last code :

msgmerge gramps_animal_2_2_6.po gramps.pot -o en_US.po

  • And make sure the po/Makefile picks up the special locale that you chose:

perl -n -i -e 'if(/^ALL_LINGUAS/){chop; print "$_ en_US\n"}else{print $_}' Makefile

  • The gramps31/Makefile also needs to be modified to add the previously unused locale:

cd ..
perl -n -i -e 'if(/^ALL_LINGUAS/){chop; print "$_ en_US\n"}elsif(/^CATALOGS/||/^GMOFILES/) \
{chop; print "$_\n"}elsif(/^POFILES/){chop; "$_ en_US.po\n"}else{print $_}' Makefile

  • Now you can build again:


To install this version globally, overwriting the install of your package manager, also do

sudo make install

  • To run GRAMPS with the new locale applied, all that is required in the case of a global install is:

LANGUAGE=en_US gramps

In the case you only have GRAMPS locally, do instead

cd [myhome/mypath/]gramps31/src
LANGUAGE=en_US python

  • Enjoy!