diff --git a/src/SubstKeywords.py b/src/SubstKeywords.py index 6bd63b4eb..a3a6aeb03 100644 --- a/src/SubstKeywords.py +++ b/src/SubstKeywords.py @@ -18,6 +18,21 @@ # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # +""" +Provides the SubstKeywords class that will replace keywords in a passed +string with informatin about the person. For sample: + +foo = SubstKeywords(person) +print foo.replace('$n was born on $b.') + +Will return a value such as: + +Mary Smith was born on 3/28/1923. +""" + +__author__ = "Donald N. Allingham" +__version__ = "$Revision$" + #------------------------------------------------------------------------ # # python classes @@ -31,14 +46,33 @@ import string # #------------------------------------------------------------------------ class SubstKeywords: + """ + Produces an object that will substitute information about a person + into a passed string. + + $n -> Name - FirstName LastName + $N -> Name - LastName, FirstName + $i -> GRAMPS ID + $b -> Date of birth + $B -> Place of birth + $d -> Date of death + $D -> Place of death + $s -> Preferred spouse's name - FirstName LastName + $S -> Preferred spouse's name - LastName, FirstName + $m -> Date of preferred marriage + $M -> Place of preferred marriage + """ + def __init__(self,person): + """Associates a person with the class""" + self.n = person.getPrimaryName().getRegularName() self.N = person.getPrimaryName().getName() self.b = person.getBirth().getDate() self.d = person.getDeath().getDate() self.B = person.getBirth().getPlaceName() self.D = person.getDeath().getPlaceName() - self.i = "%s" % person.getId() + self.i = str(person.getId()) if len(person.getFamilyList()) > 0: f = person.getFamilyList()[0] @@ -61,6 +95,8 @@ class SubstKeywords: self.M = "" def replace(self,line): + """Returns a new line of text with the substitutions performed""" + line = string.replace(line,"$n",self.n) line = string.replace(line,"$N",self.N) line = string.replace(line,"$b",self.b)