Difference between revisions of "Third-party Addons"

From Gramps
Jump to: navigation, search
(Gramplets)
(fix double redirect)
(64 intermediate revisions by 7 users not shown)
Line 1: Line 1:
Third-party plugins give you more tools to work with your genealogy data in GRAMPS. This page lists plugins written by users to work with the current 3.0.x series version of GRAMPS. Plugins which have not yet been re-written to work with the current version can be seen on the [[Old Third-party Plugins]] page.
+
#REDIRECT [[4.1 Addons‎]]
 
 
These plugins are not officially part of GRAMPS and are not supported by the GRAMPS Developers. Any feature requests or bugs with these plugins should be directed at the respective plugin writer, '''NOT''' to the GRAMPS bug tracker!
 
 
 
[[Category:Plugins]]
 
[[Category:Developers/General]]
 
 
 
= Installing Plugins in GRAMPS =
 
 
 
To use one of these plugins add the file(s) to your [[GRAMPS User Directory]] in the ''plugins'' subdirectory, and restart GRAMPS  (alternitively you can reload all plugins by selecting 'Tools > Debug > Reload Plugins').
 
 
 
 
 
= Normal plugins =
 
== Descend] Report ==
 
[[Image:cousin_chart.png|thumb|Sample Descend] chart]]
 
The Descend] report is a graphical report that closely resembles the descendant report (only on steroids).
 
#Given a person, this report will display a descendant report for that person
 
#Given a center family, This report will display a descendant report for that family
 
#With the first option, you can choose to print a descendant report of the selected persons parents
 
##Of course this will print all brothers and sisters of the selected person (if any).
 
#With the second option, you can choose to start with the parents of the seclected family parents (as shown in the picture)
 
##the top half of the report will show a descendant report of the fathers parents. 
 
##The bottom half will show a descendant report of the mothers (center family) parents. 
 
##The center family will be the junction of the two descendant reports. 
 
 
 
'''Download, Manual and Installation'''
 
See: [[Descendant B Report]]
 
 
 
<br clear=all>
 
 
 
== Family Sheet ==
 
 
 
[[Image:FamilySheet.jpg|thumb|Sample Family Sheet]]
 
 
 
=== Description ===
 
 
 
A Family Sheet is a page which contains all available info about a specific
 
person, the families this person is a father or mother in, and the children
 
of these families.
 
 
 
The intended use for this report is to get a full dump of the database in
 
nice paper form in a way suitable to file it in a folder.
 
 
 
Each Family Sheet contains a key at the top right which is derived from the
 
relationship from the central person in the database and the person for
 
which the sheet is printed. For direct ascendants, the Family Sheet key is
 
the "Ahnentafel" number (also known as Eytzinger, Sosa, Sosa-Stradonitz, or
 
Kekule number). Each child is assigned a letter starting from "a", and the
 
Family Sheet key of the child is the Family Sheet key of the parent with
 
the child's letter appended.
 
 
 
The report contains full information (including all events, attributes,
 
source references, and notes) for the key person and all its spouses.
 
For children that had spouses, only a short section (including only name
 
and birth event info) is printed along with a reference to the Family Sheet
 
page on which this child would be the key person, while for children that
 
had no spouses, full info is printed.
 
 
 
If recursive printing is selected, each Family Sheet is followed by the
 
Family Sheets of the children that had spouses.
 
 
 
=== Installation ===
 
 
 
Just donwload [[media:FamilySheet.tar.gz|this archive]], unpack it, and copy the contained FamilySheet.py file into your .gramps/plugins folder. The menu item "Family Sheet" should appear in your "Reports|Text reports" menu item.
 
 
 
=== Caveats ===
 
 
 
* The report uses &lt;u&gt;...&lt;/u&gt; to underline the call name if the call name is a part of the first name. This only works with CairoDoc based output (direct printing, PDF export) and HTML output.
 
 
 
<br clear="all"/>
 
 
 
== Family Tree ==
 
 
 
=== Description ===
 
 
 
The Family Tree report starts with a center family and prints both ancestors (to the left) and descendants (to the right).
 
 
 
There are a number of differences to the standard ancestor and descendant reports:
 
* The whole report is centered on the page, the boxes are also aligned in a more centered than top-aligned way
 
* Marriage and divorce information is included
 
* The names are printed in a bigger font than the dates and places (birth date, death date, etc)
 
* This report has options to use the call name instead of the first name, or to underline the call name (only works with PDF output)
 
* There are 3 predefined ways of formatting the birth/death/marriage/divorce data: year only, full date, or full date and place
 
* This report makes better use of the available space for printing ancestors
 
* On the ancestors side, father and mother are combined in a box
 
* On the descendants side, spouses are included
 
 
 
=== Installation ===
 
 
 
Just donwload [[media:FamilyTree.tar.gz|this archive]], unpack it, and copy the contained FamilyTree.py file into your .gramps/plugins folder. The menu item "Family Tree" should appear in your "Reports|Graphical reports" menu item.
 
 
 
=== Caveats ===
 
 
 
* The report uses &lt;u&gt;...&lt;/u&gt; to underline the call name if the call name is a part of the first name. This only works with CairoDoc based output (direct printing, PDF export) and HTML output.
 
* Printing on more than one page doesn't work, you usually want to use the "scale to fit on a single page" option.
 
 
 
<br clear="all"/>
 
 
 
== Place Completion Tool ==
 
[[Image:place_completion_tool_example2.png|thumb|Place completion tool in action]]
 
The place completion tool enables you to work on a selection of your places. It can look up latitude and longitude, and you can set county, parish, state, ... data on a group of places with one click.
 
 
 
'''Download, Manual and Installation'''
 
 
 
See: [[Place completion tool]]
 
<br clear=all>
 
 
 
== Hungaria (Website Generator) ==
 
 
 
[http://gramps.aggotthonsch.com/ Hungaria] is a GRAMPS 3.0 plugin that seeks to generate feature- and media-rich websites.
 
 
 
It is currently in pre-alpha stage--not feature-complete, nor ready for serious use.  It is available for testing however, in order to showcase features as they are added.  The website [http://gramps.aggotthonsch.com/] also shows example websites generated by the latest available version of Hungaria and its precursor [[Xsl|XSLT stylesheets]].
 
 
 
Chief among Hungaria's aims is to more actively and meaningfully integrate photographs into genealogy websites (e.g.: providing mouse-over thumbnail profiles of individuals, providing mouse-over photograph of places, et al) and to provide both simple and broad internationalization functionality (e.g.: multi-lingual websites are generated by default, notes will be parsed for version in multiple language versions to be displayed on their respective page, et al).
 
 
 
View the demonstration website to get a better idea of Hungaria's aims:
 
 
 
[http://csaladfa.aggotthonsch.com/ Dentumogeria Demonstration Website] (generated by Hungaria's XSLT precursor--more complete)
 
 
 
[http://gramps.aggotthonsch.com/demo/ Hungaria Demonstration Website] (generated by Hungaria--less complete)
 
 
 
= Quick Reports =
 
[[Quick Reports]] are a new addition to GRAMPS 3.0, which allows for easy plugin creation on a fixed canvas. They are available in the context menu on the views on selecting a person, place, ... (and possibly too in the context menu on the editor dialogs).
 
 
 
For an overview of Third party Quick Reports, see [[Unsupported Quick Reports]].
 
 
 
= Gramplets =
 
[[Gramps_3.0_Wiki_Manual_-_Gramplets|Gramplets]] are gadgets available in the Gramplet view of GRAMPS. The official ones are documented in the [[Gramps_3.0_Wiki_Manual_-_Gramplets|Manual]]
 
 
 
== What Next Gramplet ==
 
 
 
The [[media:WhatNext.tar.gz|What Next Gramplet]] displays a list of the "most urgent" information gaps in your family tree. It is based on the following assumptions:
 
* You want to know first and last name, birth date and place, and death date and place of each person
 
* You want to know father, mother, marriage date and place, and - if divorced - divorce date and place of each family with married parents
 
* You want to know at least the mother of each family with unmarried parents
 
* The closer the relationship to the main person, the more "urgent" the information gap is.
 
* The closer the common ancestor is from the main person, the more "urgent" the information is (e.g. nephews are considered more "urgent" than uncles, even though both have a distance of 3, because for nephews the common ancestor is father/mother, while for uncles, the common ancestor is grandfather/grandmother)
 
* Marriage data and personal data of the spouse is slightly less "urgent" than personal data of the directly related person
 
* Half brothers are less "urgent" than brothers
 
 
 
<br clear="all"/>
 
 
 
= Information for Plugin writers =
 
== Share it==
 
Have you written a plugin for GRAMPS you want to share with the world? Here's how you do it:
 
 
 
* Add the correct license. GRAMPS is GPLv2, you use the GRAMPS plugin system, so make sure you have the correct license at the top of your file
 
* Create a filename.tar.gz file of your plugin code
 
* Upload the code to this wiki
 
* Add a description of your plugin to this page.
 
 
 
== Internationalize it ==
 
There is a big possibility that you are not a native English speaker and want your report in your mother tongue. To enable others to use your report, and make it easy to include your report later in GRAMPS without large changes, do the following for text:
 
 
 
==== Translation function ====
 
* Suppose you have a string Name, which you want for your own use in French, so Nom. Then write a translation function with the name _.
 
* For every string, pass it through your translation function: _("Name")
 
* Your translation function should then look like this:
 
 
 
mytranslation = {
 
    'Name' : "Nom"
 
    }
 
 
from gettext import gettext
 
import locale
 
lang = locale.getlocale()[0]
 
if lang:
 
    lang = lang.split('_')[0]
 
def _(string):
 
    if lang == 'fr':
 
        return mytranslation.get(string, gettext(string))
 
    else:
 
        return gettext(string)
 
 
 
Change here 'fr' by the language code of your language
 
* If the report becomes part of GRAMPS, it will suffice to delete this code and replace it by
 
from gettext import gettext as _
 
* Note that you only need to include strings that are not yet a part of GRAMPS, as those will be translated automatically by the gettext routine
 
 
 
==== Pitfalls ====
 
* We support right to left languages like Arabic, so never constructs text parts by concatination of pieces. Always use full sentences/paragraphs with variable substitution, so that a right to left language can translate it correctly.
 

Revision as of 04:50, 14 July 2015

Redirect to: