Difference between revisions of "Translation environment22"

From Gramps
Jump to: navigation, search
Line 2: Line 2:
  
 
From Gramps '''2.2.x''' to Gramps '''{{stable_branch}}'''.
 
From Gramps '''2.2.x''' to Gramps '''{{stable_branch}}'''.
 +
 +
==How it works==
  
 
[http://www.gnu.org/software/gettext/manual/gettext.html GNU gettext] and [http://live.gnome.org/TranslationProject/DevGuidelines/Localize%20using%20gettext%20and%20intltool Gnome] provide utilities and a [http://www.gnome.org/~malcolm/i18n/build-changes.html translation framework]:
 
[http://www.gnu.org/software/gettext/manual/gettext.html GNU gettext] and [http://live.gnome.org/TranslationProject/DevGuidelines/Localize%20using%20gettext%20and%20intltool Gnome] provide utilities and a [http://www.gnome.org/~malcolm/i18n/build-changes.html translation framework]:
Line 21: Line 23:
 
  # Merges translated strings into key file, ''root'' directory :
 
  # Merges translated strings into key file, ''root'' directory :
 
  intltool-merge -k po/ data/gramps.keys.in data/gramps.keys  
 
  intltool-merge -k po/ data/gramps.keys.in data/gramps.keys  
 +
 +
===Files and directory===
 +
 +
If you want a script to take your translatable strings into account, you must add your source file path in the file : <code>po/POTFILES.in</code>. For this report example, you should add:
 +
 +
...
 +
# plugins directory
 +
src/plugins/AncestorChart2.py
 +
src/plugins/AncestorReport.py
 +
...
 +
src/plugins/FindDupes.py
 +
src/plugins/Leak.py
 +
src/plugins/MediaManager.py
 +
src/plugins/Myreport.py                # <------
 +
src/plugins/NarrativeWeb.py
 +
src/plugins/PatchNames.py
 +
...
 +
 +
In this file, the sources are sorted within each directory or category.
 +
 +
You can check missing references (not on <code>POTFILES.in</code> and <code>POTFILES.skip</code>) with the command
 +
/intltool-update -m
 +
into <code>/po</code> directory.
 +
  
 
[[Category:Translators/Categories]]
 
[[Category:Translators/Categories]]
 
[[Category:Developers/General]]
 
[[Category:Developers/General]]

Revision as of 12:39, 3 October 2012

This page describes the second translation environment.

From Gramps 2.2.x to Gramps 51.

How it works

GNU gettext and Gnome provide utilities and a translation framework:

  • msginit will generate a standard gettext header.
  • intltool-update will manage template and translations.
  • intltool-extract will extract translation strings on .glade and .xml files, by generating files with .h extension.
# Generates a new template (gramps.pot), into /po directory :
intltool-update -p
  • intltool-merge will merge cached translations into .in files
# Merges translated strings into desktop file, root directory :
intltool-merge -d po/ data/gramps.desktop.in data/gramps.desktop
# Merges translated strings into xml file, root directory :
intltool-merge -x po/ data/gramps.xml.in data/gramps.xml
# Merges translated strings into key file, root directory :
intltool-merge -k po/ data/gramps.keys.in data/gramps.keys 

Files and directory

If you want a script to take your translatable strings into account, you must add your source file path in the file : po/POTFILES.in. For this report example, you should add:

...
# plugins directory
src/plugins/AncestorChart2.py
src/plugins/AncestorReport.py
...
src/plugins/FindDupes.py
src/plugins/Leak.py
src/plugins/MediaManager.py
src/plugins/Myreport.py                # <------
src/plugins/NarrativeWeb.py
src/plugins/PatchNames.py
...

In this file, the sources are sorted within each directory or category.

You can check missing references (not on POTFILES.in and POTFILES.skip) with the command

/intltool-update -m 

into /po directory.