Difference between revisions of "Writing a plugin"
(→Share it) |
m (→Test it) |
||
Line 17: | Line 17: | ||
* See [[Unit_Test_Quickstart|Unit Test Quickstart]] | * See [[Unit_Test_Quickstart|Unit Test Quickstart]] | ||
+ | * Check syntax issues with [http://gramps-project.org/wiki/index.php?title=Programming_Guidelines#Pylint pylint] | ||
+ | |||
+ | There is some samples of tests for localized [[Relationship_Calculator#Tests|Relationships calculators]]: | ||
+ | |||
+ | cd /home/me/grampssvn | ||
+ | export PYTHONPATH=/home/me/grampssvn/src | ||
+ | python src/plugins/rel/rel_it.py | ||
+ | |||
+ | cd /home/me/grampssvn | ||
+ | export PYTHONPATH=/home/me/grampssvn/src | ||
+ | pylint src/plugins/rel/rel_it.py > /home/me/grampssvn/src/plugins/rel/it.txt | ||
== Share it== | == Share it== |
Revision as of 09:23, 1 December 2010
Write it
To get started writing a plugin, please see the following tutorials:
- Addons development - for Gramps version 3.2
- Gramplets
- Quick Views
- Report-writing tutorial
For more general GRAMPS development information, see:
Test it
- See Unit Test Quickstart
- Check syntax issues with pylint
There is some samples of tests for localized Relationships calculators:
cd /home/me/grampssvn export PYTHONPATH=/home/me/grampssvn/src python src/plugins/rel/rel_it.py
cd /home/me/grampssvn export PYTHONPATH=/home/me/grampssvn/src pylint src/plugins/rel/rel_it.py > /home/me/grampssvn/src/plugins/rel/it.txt
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. See Howto: Contribute to GRAMPS
- Create a filename.tar.gz or filename.zip file of your plugin code
- Upload the code to this wiki
- Add an entry of your plugin to Plugins3.2. See Plugin list legend for meaning of columns. Please use these meanings and pay attention to details; this page is machine readable.
- Create a new wiki page, and refer to that page here, with a short description of what the plugin does
Internationalize it (3.2 and later)
This section describes a method of internationalizing your code for versions of Gramps 3.2 and later. The previous section describes a new method for Gramps 3.1 and earlier.
Please see Addons development for complete details.
Also, have a look at Coding for translation.
Pitfalls
- We support right to left languages like Arabic, so never constructs text parts by concatenation of pieces. Always use full sentences/paragraphs with variable substitution, so that a right to left language can translate it correctly.