The Family Historian API

tFTF Syntax

tFTF syntax is a text-only alternative to eFTF syntax that is provided for the convenience of plugin authors.  It is currently only supported as an option in the context of the SetText method of RichText objects.  It allows rich-text to be constructed entirely as a text string (unlike FTF syntax and eFTF syntax which require the use of rich text object methods to add record links and citations).  The only limitation of tFTF syntax is that you cannot add citations using this syntax.  You can however add record links.  The tFTF syntax for record links is given below.  Apart from record links and citations, tFTF syntax is in all other respects identical to eFTF syntax.

Record Link Syntax

Record links in tFTF have a very similar syntax to their syntax in FTF syntax.  A tFTF record link is still marked by the <rec=(params)> command.  Like FTF syntax, this has three parameters.  The only difference is with respect to the first parameter.  In FTF syntax, this is an index into the record table.  In tFTF syntax it is the qualified record id (see fhGetQualifiedRecordId)  Parameters 2 and 3 are the same in both syntaxes: these are display text, and a flag.  The latter indicates whether the link is automatic or not.  The display text is used if the qualified record id is invalid or if the record is not found or if the link is not automatic.  The flag (the 3rd parameter) is set to 'auto' if the link is automatic and 'text' if it isn't.  If a link is automatic, this means that the link is displayed as the record's display name, and it is updated automatically if that changes.  If the flag is 'text', the display text is always shown as the display for the link.  This is an example of what a record link might look like in tFTF syntax:  <rec=I67,"my father",text>;  and this is another example:  <rec=I67,"John Smith",auto>.   The qualified record id consists of a letter indicating the record type (in the example, this is the letter 'I' for 'Individual') followed by the record id (67 in the example).