Animal pedigree

From Gramps
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:Animal.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 (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.

For example:

git clone http://git.code.sf.net/p/gramps/source Gramps

  • Change branch and make sure it builds:

cd Gramps
git checkout -b gramps31 origin/maintenance/gramps31
./autogen.sh
make

Initial build requirement for Ubuntu 7.04:

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


cp gramps_animal_2_2_6.po.gz po
cd 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 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 "$_ en_US.gmo\n"}elsif(/^POFILES/){chop; "$_ en_US.po\n"}else{print $_}' Makefile

  • Now you can build again:

make

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 src
LANGUAGE=en_US python gramps.py

  • Enjoy!

See also