TextPlus Charts pre-TNGv13

From TNG_Wiki
Jump to: navigation, search
Ambox notice.png This article applies to all versions of TextPlus Charts in TNGv10, TNGv11, and TNGv12, up through mod version
TNG 12.0
TNG 11.0
TNG 10.0

Note:Version 16d comes with extensive Revision Notes, including visualizations of significant recent changes

TextPlus Charts (pre-TNGv13)
Summary Implements two new charts: Text+ Descendant Chart, and Text+ Ancestor Chart.
Mod Updated 26 Dec 2019
Download link v12.0.0.16d
TNG 12.0
Czech, Dutch, French, German, Norwegian, Spanish see Language Strings textplus_charts_languages_v12.0.0.16.zip
See the Revision History for older versions
Download stats
Author(s) Robin Richmond with translations by Ken Roy, Henny Savenije, Hendrik Martius, Bernard Wortelboer, Ron Krzmarzick, and Kåre Kjøllesdal.
Homepage this page
Mod Support My Mod Support form or TNG Community Forums
Contact Developer My Mod Support form
Latest Mod
Min TNG V 12.0
Max TNG V 12.2
Files modified
Updates admin_pedconfig.php, admin_updatepedconfig.php,

Descendant charts (descend.php, descendtext.php, desctracker.php, register.php),
Pedigree charts (pedigree.php, pedigreetext.php, verticalchart.php, ahnentafel.php, extrastree.php),
tngrobots.php, cust_text.php (English, Czech, Dutch, French, German, Norwegian, Spanish),
Installs: rrtextplus_descend.php, rrtextplus_ancestor.php, rrtextplus_lib.php, rrtextplus_innermenuedit.php, js/rrtextplus_lib.js, css/rrtextplus.css, img/rrtextplus_plus.gif, img/rrtextplus_plus.gif, img/rrtextplus_locate.gif, English textplus_help.php, plus images are installed in folder Languages/English/TextPlus.

May Install rrshared_innermodmenu3.php, rrshared_modsettingsblocks3.php, rrshared_wikilogo.gif
Related Mods
Some language strings have not yet been translated. See #Language_Strings

Purpose of the Mod

To define two new charts - the Text+ Ancestor Chart, and the Text+ Descendant Chart. Both charts follow a text format (basically an outline layout) but draw lines between parents and children. Links to these charts placed on the TNG "Inner Menu" (the link menu just below the TNG Tab Bar) on the Person Profile and on Pedigree and Descendant chart pages, which contains the native links to the various types of Ancestor and Descendant charts.

Features of the Text+ Charts

  • The Text+ Descendant Chart is very similar to TNG's Text Descendant Chart, but has several additional features.
  • The Text+ Pedigree Chart serves the same purpose as TNG's Text Ancestor Chart, but does not use the standard 4-generations-per-page Pedigree format. It can display at least 15 or so generations in one chart that is one page wide and several pages long. It also has some of the same 'additional features' as the Text plus Descendant Chart.
[Show Additional features]
[Hide features]

Both charts:

  1. Draw lines to connect people with their children.
  2. Display places of birth and death instead of just dates.
  3. Display charts display alternate birth date and/or place (i.e. christening date/place) when the birth date and/or place is missing.
  4. Display burial date and/or place when the death date and/or place is missing. (When the "location" component of a burial placeplace contains the word "Cemetery", the entire Cemetery name is removed from the placename.)
  5. Display the last known place of residence and the date of that residence event for people who are living (if security contraints allow it).
  6. Can display ALL of a person's descendants or ancestors rather than a specific number of generations,
  7. Display a summary at the bottom of the chart,
  8. Have mod options that control where, whether, and how to present dates, placenames, age, and marriage data.
  9. Have run-time options that control the size and spacing of the charts. Some parameters are available in the main window, and some parameters are available only in the Format for Printing window.
  10. Have run-time options that affect the information to be displayed in the chart. (See Mod Options below.
  11. Allow the user to save the size and spacing parameters to a cookie for use by subsequent charts.
[Hide Features]

Mod Options

This mod has several types of options, including

  1. Several configuration variables at Admin>>Setup>>Chart Settings.
  2. New choices for native selection box options Admin>>Setup>>Chart Settings
  3. Run-time options in the TextPlus Chart programs that affect charts dynamically
  4. Persistent cookies that retain some of the run-time option settings.
  5. Mod Parameters - strictly for a utility program that may no longer be useful.
[See all Options details]
[Hide Options Details]

Config Variables

There are about 10 settings (depending on how you count them) in the options form at Admin>>Setup>>Chart Settings

  1. The initial Page Width setting for the "main" TNG window. There is no cookie or other setting to override this setting.
  2. The initial Page Width setting for the "Format for Printing" window. The print-formatting cookie that can be saved from the Format for Printing window overrides this value.
  3. Whether to display (1)full dates or (2)year only. There is no option to omit dates entirely.
  4. Whether to display Placenames.
  5. Whether to use the conventional format when the birthdate and deathdeate are the same or a compact format where the placename is displayed only once: Paris France;5 Oct 1830 - Aug 1887.
  6. Whether to display the person's age.
  7. Whether to show marriage data.
  8. Assuming that marriage data is to be shown, whether to display marriage data in the Text+ Ancestor chart (1) once, with the child, (2) Twice; once with each parent, or (3) not at all.
  9. Whether to show a floating footer (which stays at the bottom of the screen) in the Descendant and/or Ancestor charts.

Option Choices

This mod adds selection box options to two native fields in the options form at Admin>>Setup>>Chart Settings:

  1. The option to select "Text+" has been added to the "Initial Display" field in the "Pedigree Chart" subform.
  2. Similarly, the option to select "Text+" has been added to the "Initial Display" field in the "Descendancy Chart" subform,

Run-time Options

These options are presented by the two Text+ Chart programs (in the "main" page), to change the charts dynamically, at, well, at run-time. The run-time options are illustrated and described in the Visualizations below, and are described with additional detail in the Text+ Charts help file.

Persistent Cookies

All users (not just Admins, and not just users with accounts) can save their preferred Text+ Print Formatting options (indentation, font size, page width, etc.) for use in subsequent charts. There are separate cookies for the Text+ Ancestor and Descendant charts.

Mod Parameters

The TextPlus Charts mod comes with an 'Inner Menu Utility' that can be useful on sites where the Inner Menu gets crowded with links by the installation of several mods that add Inner Menu Links. Two classic Mod Parameters support that utility.

[Close Options Details]

Other Mods


No known conflicts with published mods. However, there is a conflict with older versions of an Add New Items mod that was written by Ian Fettes.


Some mods that install new chart programs do not coordinate their Inner Menu links with the TextPlus Charts mod. This lack of coordinations is not a conflict, but the consequence is that

  • The Inner Menu of some mod-installed chart programs may not contain links to the Text+ Charts, and
  • The Inner Menu of the Text+ Chart programs may not contain links to some mod-installed chart programs.

For instance, the Ancestor map mod installs a link labeled "Map" to the Inner Menu of the various native TNG Pedigree charts. But even if the TextPlus mod has already added the "Text+" link to those programs, the new Ancestor Map program does not link to the Text+ Ancestor Chart.

But the Text+ Ancestor chart program does check for the presence of the Ancestor Map program (mappedigree.php), and installs the "Map" link if the program is present.

Much the same is true of the Male Female and Parent Lines mod.

Related Mods

This mod coordinates closely with Count Descendants   [Show Content]
[Hide Content]

Count Descendants
If you want to use both Count Descendants and TextPlus Charts, you should install Count Descendants v9+ and TextPlus Charts v15+ This mod coordinates with Count Descendants v9+ in two distinct ways.

  1. The Descendant Chart program's Inner Menu:
    • The Text+ Descendancy Chart program installed by this mod contains a link to the Count Descendants chart that is visible only if [Count Descendants]] is installed.
    • Similarly, the Count Descendants Chart installed by Count Descendants contains a link to the The Text+ Descendant Chart that is visible only if TextPlus Charts is installed.
  2. The Admin>>Setup>>Chart Settings form
    Both mods add
    (1) An option to the "Initial Display" selection box in the "Descendancy Chart" section of the Chart Settings form, and
    (2) A help link next to that selection box
    The two mods coordinate over that help link in two ways:
    1. Both mods insert nearly-identical Javascript (document).ready functions that install the help link only if the other (document).ready function installed by the other mod has not already created the link, and
    2. Both mods add text to the Chart Settings help file describing the choice(s) they add to the Chart Settings form.

Show Mod Names
Like almost all of my mods, the code installed by TextPlus Charts collects information that can be used by Show Mod Names, but only if Show Mod Names is installed. TextPlus Charts is not dependent on Show Mod Names.

[Hide Related Mods ]



Language strings for Czech, Dutch, French, German, Norwegian, and Spanish can be installed from textplus_charts_languages_v12.0.0.16.zip. See Language Strings for more information about the translations.

Files Installed

This mod contains two mod subfolders, the normal one, text_plus_charts_v12.0.0.16a with at least 20(!!) files, and a shared subfolder named RR-shared_mod_includes_v12.0.0.3.   [Show Details]
[Hide Details]

The Text Plus Charts zip file has two mod subfolders:

  1. text_plus_charts_v12.0.0.16a - The subfolder that you expect to exist for any mod that installs files. It contains
    1. rrtextplus_descend.php - The TextPlus Descendand Chart
    2. rrtextplus_ancestor.php - The TextPlus Ancestor Chart
    3. rrtextplus_lib.php - A PHP function library used by both Text+ Chart programs
    4. rrtextplus_tracker_ajx.php - An Ajax program that generates the new "Locate In Chart" popup
    5. rrtextplus_innermenuedit.php - A standalone PHP program to remove or restore the old "Text" chart link in the Inner Menu of Ancestor and Descendant Chart programs. (See Inner Menu Utility)
    6. rrtextplus_help.php - A Help file in the English Languages folder
    7. js/rrtextplus_lib.js - A standalone Javascript library
    8. css/rrtextplus.css - A standalone CSS stylesheet. The stylesheet is not in genstyle.css because
      • There are already too many styles in genstyle.css that are seen by too many programs that don't need them, and
      • Well, I finally realized that I was using too many classnames and id's that weren't sufficiently distinct for me to be confident that they would not collide with other mods.
    9. img/rrtextplus_plus.gif - A white-on-black plus sign icon used in the TextPlus Descendant Chart as an icon for tree branches that have been compressed.
    10. img/rrtextplus_locate - A spyglass icon used in the TextPlus Descendant Chart to launch the 'Locate In Chart' popup.
    11. And at least eight screenshot files used by the TextPlus help file; all in the folder Languages/English/textplus
  2. The shared folder RR-shared_mod_includes_v12.0.0.3, which contains files that help to manage mod options in many of my mods. The files used by this mod are:
    1. rrshared_innermodmenu3.php - Inner Mod Menus
      • (In the two TextPlus Charts programs, the Inner Mod Menu is visible only to TNG Admins, not to end-users.)
    2. rrshared_modsettingsblocks3.php - Mod Settings Blocks
      • (This mod's options are at Admin>>Setup>>Chart Settings, not Admin>>Setup>>General Settings>>Robin's Mods.)
    3. img/rrshared_wikilogo.gif - An icon that links to a mod's TNG Wiki page from an Inner Mod Menu or Mod Settings Block
[Hide Related Mods ]

Copying Shared Files

Each mod that contains the shared folder may install some or all of its shared files, depending on whether those files already exist, and whether that mod needs that particular file. Once a file from the shared folder has been installed (by any mod), that file will not be overwritten or removed by the subsequent installation or un-installation of any mod (including this one), nor will its presence or absence generate any Mod Manager errors.

If you unzip mod distribution files directly into your mods folder, then the presence of the shared subfolder and the installation of its files should be invisible to you. But if you generally copy mod subfolders to your mods folder after you have unzipped the distribution file, then you need to make sure to copy the folder RR-shared_mod_includes_v12.0.0.3 (well, unless you are confident that it is already in your mods folder because it was part of another mod).
[Show Installation Details]


  • A working TNG installation.
  • An installed current version of the Mod Manager.
  • You should backup files listed in the panel on the right.


  1. Remove and delete previous version of this mod.
  2. Backup the files updated by this mod. They are listed in the panel at the upper right.
  3. Download the .zip file, Extract its .cfg file to the mods folder.
  4. Follow the normal automated installation for Mod Manager, as shown in the example Mod Manager - Installing Config Files.


  1. Try using the Mod Manager Remove capability
  2. Contact me through My Mod Support form.
[Hide Details]


  • These visualizations describe the Text+ Charts "from scratch". For visualizations of the most recent changes, see the Revision History.
  • Some of these visualizations are marked up and annotated more thoroughly in the Text+ Charts help file, which can be found on the mod author's TNG site
[Show the Visualizations]
[Hide the Visualizations]
1. Text+ Descendant Chart
Textplus16 descendant main.jpg
Overview of differences between the native Text Descendant Chart and the Text+ Descendant chart.
[See details]
[Hide details ]
  1. In the "Inner Menu" (white text on dark blue)
    1. The first line of the Inner Menu is essentially the same as it is in the Text charts, though
      • In the "Generations" selection box, the value 'all' has been selected so that all generations of the individual's descendants are to be displayed. The Text+ Chart format can handle upwards of 15 generations in the width of one landscape 8x11 page.
    2. The TextPlus Chart program extends the Inner Menu with two lines of run-time options. On the second line:
      • Four checkboxes on the second line control optional features of the chart. These controls are specific to the Text+Descendant Chart.
        • The "Hide living & private data..." checkbox is visible only to administrators who can see the data of living and private people. This option lets administrators see the chart as it would be seen by non-administrators.
        • The "& Descendants" checkbox hide living and private descendants of living and private people, just to remove some of the not-necessarily-useful "living" and "private" labels in a chart.
        • The "& Descendants" checkbox and label have been disabled and greyed-out because you can't hide living and private descendants until you hide living and private data.
        • The "Siblings #s" checkbox and label have been disabled and greyed-out because the program won't let you display sibling numbers without generation numbers.
    3. On the third line of the Inner Menu (which is the same in the two Text+ Charts),
      • The Width option is used to determine where to wrap lines within the chart. (See Margins and Line-Wrapping below to understand why the Text+ programs cannot depend on the web browser to wrap lines at the right margin.)
      • There is a button that pops up the Text+ Charts help file, which is installed by the mod. (In general, TNG has help files only for Admin programs, not for end-user programs.)
      • The presence of the "Format for Printing" button (which is really a duplicate of the standard TNG "Print" button at the upper right of the page) emphasizes that users who want to print a Text+ chart should essentially always use the Format for Printing page to control the shape of the Text+ Chart and make sure that it fits the desired page width.
  2. At the right side of the Inner Menu is an Inner Mod Menu, which drops down from the label "Mod Information". The Inner Mod Menu is opened here for illustration. It has three links:
    • The Wiki icon is a link to the mod's Wiki article (i.e. this article),
    • To the section of the Wiki article (i.e. this article) that describes the mod options,
    • A direct link to the mod options within the program that edits the options, at Admin>>Setup>>Chart Settings.
  3. The chart legend:
    1. The spyglass icon serves as a "Locate descendant in Chart" link is different from the icon used in the native TNG Descendant Text Chart, because the appearance and functionality of that link is different in this program. See item 4g below.
    2. The Expand and Collapse buttons mimic the Expand and Collapse buttons from the native TNG Descendant Text Chart, except that
      • The Expand button is white-on-black so that it stands out better, and
      • The Text+ Chart does a great deal more with compressed branches of the tree:
        • The counts in the floating footer shown at the bottom of the screen clip change as branches of the tree are collapsed and expanded, and
        • The Text+ Chart uses a session cookie to remember the clipped branches, and shows the chart in the modified state when the chart is displayed in the Format for Printing window or if this person's chart is re-displayed later in the browser session.
  4. In the chart itself
    1. The starting person's parents are shown at the top of the chart.
    2. Connects parents to children with solid lines, and connects spouses with dotted lines
    3. Under the control of mod options, this chart shows dates and places of birth and death, and date and place of marriage.
    4. Dates can be full or year-only, and places and marriage data can be omitted. (not shown)
    5. Under the control of a mod option, Text+ Descendant Charts can also include each person's age. (not shown)
    6. Like the native Descendant Text Chart, branches of the Text+ Descendant Chart's descendant tree can be compressed and expanded. The white-on-black plus sign next to Olive Irene KUYKENDALL reveals that all of her descendants have been clipped out of the chart.
    7. Clicking on the hourglass icon (for 'Locate in chart') pops up a box labeled "Locate James Billingsley Hutcheson', which contains
      • A small chart similar to the Text+ Descendant chart, but that doesn't show siblings; it just shows the path from teh chart's starting person to the target person,
      • Hyperlinks to the chart that the native code displays when its "Locate in chart' icon is clicked, and
      • Hyperlinks to the target person's Descendant and Ancestor Charts.
             (Of course, there isn't much point in locating a person so close to the starting person, but this popup is just for illustration.)
    8. As you can see immediately above the Chart Summary, the Text+ Chart, like the native Text charts, show a link to a person's descendant chart if that person is (1) a "leaf" of this tree, and (2) has descendants. Also, the link to the descendant chart is formatted like a button so that it stands out more.
  5. The chart ends with a summary of its contents.
    • The Chart Summary you see here is a floating copy of the summary that is truly at the very end of the chart (and outside of this screen clip). The floating summary keep track dynamically of the number of people who are visible in the chart. It floats at the very bottom of the browser window so that you can always be aware of the size and contents of the chart.
    • Through a mod option, the floating footer can be suppressed.
    • The title bar of the Chart Summary has a 'top' button that take you to the top of the chart. That link is not particularly meaningful in this screen clip, where the top of the chart is already visible, but it can be very handy in long charts.
    • Significantly TNGv12.2 piloted a native "top of page" link in a couple of templates, where it is represented as a bold arrow that always floats in the bottom-right corner of the screen. If and when this arrow is implemented in all templates, the "Top" button will be removed from the Chart Summary.
[Close Text+ Descendant Chart Details]
2. Text+ Descendant Chart in the Format for Printing window
Textplus16 descendant print.jpg
  1. The "Format for Printing" fieldset supplies chart layout parameters that customize a chart for the printer page width, and allows the user to save a persistent cookie with those parameter values.
    • These run-time options allow users to make sure that the chart program wraps the chart contents to the desired margins.
  2. The "Chart Content" fieldset duplicates the content-control checkboxes that were in the main window.
  3. The chart control form, the Expand/Collapse controls at the top of the chart, the <<Print>> link at the top-right, and the popup copy of the chart summary are not printed to a printer.
  4. The plus sign next to "Anna Mary (Mamie) Kuykendall", which indicates that her descendants have been compressed out of the chart, is a carry-over from the chart in the main window. That is, if you compress tree branches in the main window, those branches remain compressed when you open the "Format for Printing" window.
  5. Note that the icons that link to other charts are still present in the Format for Printing page, but they should not print.
3. Text+ Ancestor Chart
Textplus16 ancestor main.jpg
The Text+ Ancestor Chart uses what might be called a "double outline" format in which:
  • Each generation is indented by just a few characters, </li>
  • The data for a given person runs to the right margin and wraps back to that generation's left margin (not the chart's left margin),</li>
  • Upwards of 20 generations can be included in a single chart, without having to resort to laying pages side-by-side. On 8.5x11 paper in portrait mode, at least 15 generations are quite readable. (Such a chart would be quite long; its length would, of course be reduced if it were printed in landscape orientation.)

In many ways, this layout is more like an outline-formatted Descendancy Chart(such as the Text+ Descendant Chart) than standard Pedigree Charts (or the TNG variants), which

  • Divide a page (or the screen) into (typically) 5 columns,</li>
  • Constrain all information about people in generation i to column i, and
  • Are generally balanced so that they show (or leave space for) ancestral lines with no data.

As a result (especially when they contain more than 4 or 5 generations), Text+ Ancestor Charts have less whitespace than comparable Pedigree Charts and are much narrower and thus much easier to print, but tend to be a good bit longer.

On the second line of the Text+ Ancestor Chart Inner Menu

  1. The first three checkboxes determine whether certain information is included in the report</li>
    • The "Generation #'s" checkbox is checked, so there is a generation # in front of the name of each person in the report.
    • The "Siblings" checkbox controls whether each person's siblings are included in the chart, or, to put it another, whether the chart contains aunts and uncles.
    • The "Compact Layout" checkbox removes some blank lines that improve readability. That is, the blank lines improve readabilty, and without them, the chart is not quite so long.
  2. The "Focus on Generation" control causes names in the selected generation to be highlighted. It defaults to generation 1; the starting person. For this screenshot, it has been changed to 9. (The 9th generation is represented here by Christian MOYER and Anna Barbara BERGERY.)
    • The highlighted generation should generally be 1 or zero (i.e. no highlighting) when the chart is printed (from the Format for Printing page).
    • When you change the highlighted generation, the display shifts so that the first person in the chart in that generation is visible on the screen.

As with the Text+ Descendant chart, the line wrapping is done by the program, not by the web browser.

4. Full Text+ Chart Examples (from version 15 of the mod) saved as PDFs

These charts do not all use the same chart settings or browser settings. And, of course, the size and shape of charts depends heavily on your data. That's generally not so true with classic Ancestor charts, but is definitely true with the Text+ Ancestor Chart.

  1. Descendant Chart - 4 Generations, Portrait, 2 pages
  2. Descendant Chart - 6 Generations, Landscape, 9 pages
  3. Descendant Chart - 10 Generations
  4. Ancestor Chart - 5 Generations, Portrait, 1 pages
  5. Ancestor Chart - 7 Generations, Landscape, 2 pages
  6. Ancestor Chart - 12 Generations, Legal, 4 pages
    ("Legal" means "Legal-length paper in Landscape mode)
  7. 12 Generation Ancestor Chart with siblings:
    You might, at first, think that, because the portrait pages are longer, the chart should take fewer pages in portrait mode. But in landscape mode, the chart is wider, and fewer lines are wrapped. Thus the portrait chart is 8.5" wide and 154" long, and the landscape chart is 11" wide by 119" long. The "legal" chart uses larger paper, and thus fewer pages. It is 14" wide by 95" long". When I'm sharing or saving a large chart like this, I prefer the legal width because the chart is shorter.

(Note: In the Ancestor Chart PDFs, some of the lines and text colored. I do not know why. The coloring seems to be an artifact of some browsers, at certain zoom levels.)

5. Mod settings for the Initial Ancestor (e.g.Pedigree) and Descendant charts, at Admin>>Setup>>Chart Settings
Textplus15 setup.jpg
This mod adds a "Text+" option to the "Initial Display" selection in both the "Pedigree Chart" and "Descendant Chart" sections of the options form. These options allow you to define the Text+ charts as your default Pedigree and/or Descendant charts.
6. Text+ settings in a Mod Settings Block at Admin>>Setup>>Chart Settings
Textplus16 setup robin.jpg
These options should be fairly self-explanatory, but it is worth noting that
  1. The stylized "W" next to the mod name is a link to the mod's Wiki article.
  2. A message at the bottom of this block refers to the TextPlus Charts options that are in other subforms Admin>>Setup>>Chart Settings (and that have to be there.) See [#Mod_Options|the Mod Options section of this article) for information about those options.
7. Margins and Line Wrapping

Because the Text+ charts draw vertical lines connecting the parents and children, they cannot adjust the chart's left margin as generations are indented. In these charts, long lines of text that bump up against the browser window's right margin wrap all the way to the left margin, like this:

Textplus16 early wrap.jpg
Thus, the Text+ Chart programs have to do their own wrapping. To wrap lines effectively, the programs need to know a target page width, which is supplied by an selection box on the Text+ Chart screen, in which the options are options "Mobile", "Portait", "Landscape", or "Legal" (meaning landscape orientation on legal paper.

With the appropriate settings, the chart excerpt above could look like this:

Textplus16 good wrap.jpg
where the red underline show where the program wrapped the data lines. Note that the lines were wrapped at logical breaks in the data.
8. Formatting for Printing

In the main TNG page, users can supply a page width and/or adjust the browser width to correct chart wrapping,

But when the goal is to produce a chart that looks good on paper, more options are need, so the Text+ Charts' Format for Printing page supplies 5 options:

Textplus16 print formatting menu.jpg
The buttons at the right manage a persistent cookie that saves settings from one session to another. The printer formatting options are:
  1. Indentation, the number of spaces that will be added to the chart's left margin for each generation in the chart.
  2. Size, the font size, measureded in points. The selection box provides for 7pt 10 13pt.
  3. Line Height, defined as a percentage of the default line height. This option does not affect the margin; its purpose is to control gaps in the charts' vertical lines. The vertical lines are composed of individual line-drawing characters, and, at normal line heights, those characters do not always meet. (Sometimes they look good on the screen, but not on a printer; a print preview should reveal any gaps.) In most situations, a line height of about 90% seems to allows the charts to form solid lines.
  4. Width, which was described above.
  5. The label '+/-' is for a fudge factor' (number of spaces) that accounts for
    • Variations in printed page margins in different web browsers on different computers, and<
    • The inherent inaccuracy of a line-wrapping algorithm that does not know about the widths of every proportional font character. (Yes, the wrapping would be much cleaner with a monospaced font, but a chart that uses fix-width characters would look awful.)

Significantly, because of the inaccuracy of the wrapping algorithm, printing a chart with good margins can take a few cycles of looking at print previews in the web browser, and adjusting the fudge factor to assure that lines are

  • not so long that the web browser wraps them all the ways to the left margin, and
  • not so short that they leave too large a right margin.

(Note that print previews should be sufficient; you shouldn't have to generate trial printouts.)

[Hide all Visualizations]

Language Strings

This mod defines numerous language strings, and Czech, Dutch, French, German, Norwegian, and Spanish translations. However, in the current release of the language .cfg file, not all of the new strings have been translated, and some are not even included. The missing strings will just be displayed in English.
(FWIW, based on my own experiences, and on strong feedback from native speakers of other languages, I am insufficiently confident of Google translate to use it even for initial versions of the language strings.)

I am, of course, open to offers to update the translations or profile new languages. FWIW, I am working on a new program that is intended to help implement translations by placing the English and other language strings next to each other in two columns on the screen.

Avoiding Line-wrapping

The Text+ charts use unconventional presentations of dates and placenames to reduce the number of characters required to display a person's data, and thus to reduce the amount of line-wrapping required to print a chart:

  • "Unknown" is displayed as "??", and, in some cases, omitted.
  • If an individual was born and died in the same place, the placename is displayed only once followed by a semicolon and the birth and death dates, e.g. Cleveland, Bradley, Tennessee, USA;15 Nov 1815 - 04 Jan 1887 .
  • When both the date and place are unknown, nothing is printed (well, except when it is known that a person has died, in which case "??" is displayed).
  • I also use an unpublished mod to create shorter versions of USA place names (e.g. "Cleveland, Cuyahoga, OH" for "Cleveland, Cuyahoga County, Ohio, USA". At present, this scheme depends on four(!?!) other published mods: Gedcom Converter, Placename Format, Placesearch-More Info, and Burials-More Details. If you're interested in using short place names, let me know, and I'll share the mod with you.

Inner Menu Utility

If you install the TextPlus Charts mod and other mods that place links on the Ancestors or Descendants Inner Menus, those Inner Menus can become awkwardly long. Since there is some overlap between the native Text charts and the corresponding Text+ charts, some TNG admins have requested a way to suppress the native "Text" links in the innermenus. This mod installs a utility program that does exactly that in selected chart program. The is invoked only through a link in the TextPlus Charts mod description in Mod Manager. Be aware, however, that

  • The native Text Ancestor chart is very different in appearance from the Text+ Ancestor, so you may want to keep both links in place.
  • The native Text Descendant chart has a new ancestor-tracking feature that is not found in the Text+ Descendant chart. Specifically, in front of a each descendant's name, the native Text Ancestor chart now displays the child numbers of all of that descendant's ancestors. (That is, it could indicate that the current person is the first child of the 3rd child of the 2nd child, etc.)

Revision History

Mod Version TNG Versions Date Note
v12.0.0.16d 12.0-12.2 26Dec2019
Visualizations of Significant Recent Changes [Show Details]
Visualizations of Significant Recent Changes [Hide Details]
  1. The Inner Mod Menu, shown in its open state. It is visible only to TNG Admins.
    Textplus16 revision innermodmenu.jpg
  2. Locate Person In Chart - I never quite understood the native 'Locate Person in Chart' functionality, which displayed a chart that did draw a path from the starting person to the target person, but though siblings and spouses in a way that just confused me. Now, the 'Locate" icon just pops up a short variant of the Text+ Descendant Chart to show how the target person descends from the starting person. The popup also has links to
    1. The old Locate Person In Chart" chart,
    2. The target person's Text+ Ancestor Chart, and
    3. The target person's Text+ Descendant Chart.
    Textplus16 revision locatepopup.jpg
  3. Floating Footer - The footer at the very bottom of the Text+ Ancestor and Descendant Charts can also float that the bottom of the page, so that, at any time, you can see what the scope of the report is.
    • This is particularly significant in the Text+ Descendant Chart, where branches of the chart can be compressed and expanded. The floating footer keeps track of the number of people (and other elements) that are visible at the moment.
    • The "Top" button in the floating footer's title bar scrolls the browser window to the top of the chart.
    Textplus16 revision floatingfooter.jpg
  4. Line Height Adjustment - At some settings in some browsers, the vertical line-drawing characters will become separated, like this:
    Textplus16 revision height1.jpg
    But reducing the 'Line height' setting can bring the verical lines together, at the expense of squeezing the text lines closer together.
    Textplus16 revision height2.jpg
  5. Mod Options - Several mod options now control whether specific elements are included in a chart:
    Textplus16 revision options.jpg
[Hide visualizations of recent changes]
Revision Notes [Show Details]
Revision Notes [Hide details]

These revision notes cover mod version 6d and the short-lived version 6c

  1. The mod Options are now all in pedconfig.php, the Charts Setup program.
    • Added mod options to suppress the floating footers
    • Added a mod option to suppress printing of the "=>" link to a new report for certain people in the charts. (v6d)
    • Removed mod options that determine whether the icons are displayed after each person's name.
  2. Improved cross-template formatting of the "=>" link to a new report for certain people in the charts. (v6d)
  3. Removed the icons representing links to Ancestor and Descendant charts on each line of chart data, right after the person's name.
  4. In the Text+ Descendant Chart, links to the person's Ancestor and Descendant charts are in the 'Locate Person in Chart' popup.
  5. The 'Locate Person in Chart' title bar shows the person's name as 'firstname lastname'.
  6. Both chart pages now have an Inner Mod Menu, but only when viewed by a TNG Admin.
  7. Internal changes
    • The mod's css style sheet has been moved from genstyle.css to a separate css file.
    • Substantial code cleanup in the Ajax module, rrtextplus_tracker_ajx.php
    • Corrected some stringsin the Languages zip file.
    • In both zip files, the language strings have been modified so that they are all delimited by double-quotes.
[Hide revision notes]
v12.0.0.16beta4 12.0-12.1+ 13Sep2019 Changes to mod options; new dynamic Descendant Chart features; a new Ancestry Chart formatting option.
Still needed: Translations of new language strings, help file updates, and updates to this Wiki article.
[Show Details]
[Hide details]

Changes to both Chart Programs

  • The run-time "Format for Printing" options now include Line Height. With normal line height (especially when printed), the vertical line characters often do not connect to form solid lines. Reducing the line height to about 90% generally results in solid lines.
  • A copy of the chart footer now floats at the bottom of the screen until the user closes it.
  • New Mod Settings control where, whether, and how dates, placenames, the person's age, and marriage data are included in the charts.
  • The mod options that affect the Text+ Charts directly are now in Admin>>Setup>>General Settings, in a new subform named Robin's Mods.

In the TextPlus Descendant Chart

  • The footer's counts of people in the chart change dynamically as the little plus and minus signs are clicked to prune and restore branches of the tree.
  • On the "main" page (not the "Format for Printing" page), each descendant's name is immediately followed by three icons that generate or link to information about that descendant.
    1. An icon representing an outline descendancy chart is a hyperlink to that person's Text+ Descendant chart
    2. A spyglass icon pops up a small div that shows a straight-line descendancy chart (in the Text+ format) from the starting person to the selected person. The popup contains a link to the old chart that was identified as "Descendancy Chart to this Point"
    3. An icon representing a pedigree chart is a hyperlink to the person's Text+ Ancestory chart.

In the TextPlus DescendantChart More Subtle Changes

  • When the user generates a chart (of either type) that displays all of a person's descendants, the "Generations" selection box in the Inner Menu is modified to limit the Generations selection to the number of generations in the chart.
  • When a chart contains all of the starting person's descendants or ancestors, then
    • The selection in the Generations selection list is set to "All"
    • The list of options in the Generations selection list is limited to the number of generations in the chart.
  • In both charts, several native navigational menus are now omitted when the chart is printed. Most of these menus have always been omitted from the Format for Printing page, but now, they are omitted even when the main page is printed.
  • In the Text+ Descendant Chart, the plus sign icon that used to restore tree branches that have been pruned is now a negative image (white on a dark background) so that the fact that the branch has been pruned is more obvious.
  • The TextPlus Help file has been modified, but more work is needed to simplify it, match it to version 16, and focus it on end-users (leaving TNG admins to depend on the Wiki article).
[Hide details]
Czech, Dutch, French, German, Norwegian, Spanish:
12.0-12.0.2+ 22Nov2018 No structural changes to the charts themselves.
[Show Details]
[Hide details]
  • Removed two mod parameters and replaced them with "mod options"; that is, TNG system variables, defined in admin_pedconfig.php, at Admin>>Setup>>Chart Settings. (This change has not been documented in the body of this article.)
  • When there is no saved print settings cookie (in the Format for Printing window) the "Clear Cookie" button is now labeled "No Cookie"
  • The two changes listed above generated new language strings. As before, not all of the strings have been translated in all Text+ Charts languages.
  • In the Ancestor Chart Inner Menu and Format for Printing control form, the Highlight Generation drop-down box is now limited to the number of generations that are shown in the chart.
  • The starting person's parents have the Descendant and Ancestor icons, but not the straight-line descendancy icon.
  • The three icons for descendants and the two icons for parents are omitted from the Format for Printing window.

In the TextPlus Ancestor Chart

  • Code cleanup. In particular, I cleared up several PHP warning that show up only when I make the PHP error level more strict than the TNG norm. The warnings were mostly about uninitialized variables.
[Hide details]
Czech, Dutch, French, German, Norwegian, Spanish:
UTF-8: utf_v12.0.0.15b
ISO: iso_v12.0.0.15b
12.0-12.0.2+ 10 Nov 2018 No structural changes to the charts.
[Show Details]
[Hide details]

Changed the values of the generations parameter that the TextPlus chart programs pass to other chart programs in their InnerMenu. Basically, the generations parameter used by the TextPlus charts was sometimes too large for some of the other charts.

  • Fixed problems that showed up in PHP v7.1, and incorporated translations of "Unknown" and "Alive" in the formatting of birth, death, and marriage dates.

In the two language files: Ron Krzmarzick supplied Czech and Spanish translations and cleaned up some German and French strings.

[Hide details]
Czech, Dutch, French, German, Norwegian, Spanish:
UTF-8: utf_v12.0.0.15b
ISO: iso_v12.0.0.15b
12.0-12.0.2+ 10 Nov 2018
  • Fixed problems that showed up in PHP v7.1, and incorporated translations of "Unknown" and "Alive" in the formatting of birth, death, and marriage dates.
  • Coordinated more closely with Count Descendants,
  • The utility that can remove the old "Text" links is now invoked only through the mod's description in the

Mod Manager mod list (not through the Admin Chart Settings)

  • In the two language files: Ron Krzmarzick supplied Czech and Spanish translations and cleaned up some German and French strings.
French, Dutch, German, Norwegian UTF8 translations: utf8_v10.1.0.13
French, Dutch, German, Norwegian non-UTF translations: iso_v10.0.1.13
10.1.0 - 5 Dec 2017 The only meaningful functional enhancement is that, in the Descendant Text+ Chart, the counts in the summary at the bottom of the chart change as you collapse and expand tree branches.
[Show Details]
[Hide details]

User interface changes:

  1. The fontsize, page size, and indentation controls on the Format for Printing page are highlighted more clearly, and do not print on a printer.
  2. Checkboxes on the innermenu now are shaded out when they are not applicable. Previously, they were hidden.


  1. The innermenu now has a button labeled 'Format for Printing' that is equivalent to the 'Print' button, instead of just a reminder to use the TNG button.
  2. Reworked the style classes that this mod defines in genstyle.css so that
    • They have a prefix of "cg" and are less likely to affect other programs, and
    • The rrnoprint class is no longer used - removing a dependency on Show Mod Names
  3. Fixed the fan chart link in the innermenu
  4. Removed the second line from cust_text.php target location search strings so that
  5. Added a standalone program to remove or restore the old Text chart links in the innermenus of various programs.
  6. Removed the mod-parameter that tried to hide the old Text chart link.
  7. Rewrote the Help file, added several screen clips, and moved the screen clips to the language folder.
  8. The Show Mod Names mod is now optional
[Hide details] 10.1.2 - 11.0.1 15 Jun 2016 Added the system parameter that suppresses the link to the plain text charts, and the mod and its install programs now coordinate with the Ancestor Map and the Fan Chart.

French, Dutch, German, Norwegian UTF-8 translations:
French, Dutch, German, Norwegian ISO translations: download 10.0.2 - 10.0.3 17 Feb 2016
  • Fixes a comment typo in css/genstyle.css
  • Registers the mod and displays mod names using the Show Mod Names v2 conventions, and thus requires Show Mod Names. (Note: This dependency was removed in subsequent versions)
  • Implements label tags and no-wrap styling to improve the wrapping of the Text+ menus.
  • Adds help links to affected fields on the Administration >> Setup >> Chart Settings form, (Thus uses Blue Info Button)(The dependency was removed in subsequent versions)
Languages 10.0.2 - 10.1.2 14 Sep 2015 Modified a few German, Dutch, and Norwegian strings that Google Translator messed up.

UTF-8 language strings v10.0.2.10b.zip
ISO language strings v10.0.2.10b.zip & 10.0.2 - 10.1.2 6 Sep 2015 Added annotation to make the Chart Formatting Form and help text easier to find and use, especially on the pretty-print page. Also fixed a bug that prevented non-English language installations from saving printer formatting settings to a cookie.
languages 10.0.2 - 10.1.1 27 May 2015 New German translations. & 10.0.2 - 10.1.1 25 May 2015
[Show Details]
[Hide details]

In the config file:

  • To avoid conflicts with a new mod from Eric Hoppe, changed a couple of target locations to put my Text+ innermenu link AFTER the text link instead of BEFORE the register link.

In descendtextplus.php and pedigreetextplus.php:

  • No longer changes the font family for the chart - uses the same font family and size as other charts
  • Removes an extra </div> that could have affected the footer of some sites.

In descendtextplus.php:

  • Positions the conditional descendcount.php link after the PDF link, instead of before.
[Hide details] & 10.0.2 - 10.1.1 12 Apr 2015 Displays christening data if birth data is missing, and burial data if death data is missing. & 10.0.2 - 10.1 3 Feb 2015
  • Added two content-control parameters to the Text+ Descendant program.
  • The Text+ content-control parameters are now on the "main" screen as well as the Pretty Print screen.
  • Added the two Text+ programs to tngrobots.php.
  • Minor user interface enhancements. 10.1 12 Jan 2015 Updated database function calls for TNG v10.1 compatibility. 10.0.2-10.0.3 10 Jan 2015 Moves the printer-configuration form to the "Pretty-Print" page so that users can view charts without having to fuss with the printer configuration settings. 10.0.2 12 Aug 2014 First production release

Sites using this mod

If you download and install this mod, please add your site to the table below.

URL User Note Mod-Version TNG-Version User-language
Families all over the world Hans Weebers public / private 12.0.1 NL, EN, DE, (Fr)
van Heerden Genealogy Emile Private site v12.0.0.16beta3 v.12.1 English
An example in Robin Richmond's Genealogy Database Robin Richmond Mod developer 12.2 English
Van der Maarel Genealogy Edward van der Maarel 12.0.2 EN, NL
Mitchell Families Online Roger Mitchell Another great tool for visitors, very well implemented! 10.1.0 English
Turner mob Margaret Grogan Turner Another great tool for visitors, thanks! 10.0.3 English
Hooley Family Links Rick Hooley Public/Private Site See Here See Here EN
Wortelboer Genealogy Bernard Wortelboer Public site 11.0.0 NL, EN
Solem Jan-Thore Solem Not public 10.1.0 Norwegian
Moss family tree Chris Moss Best text-based display. Public. 11.1.2 EN, DE, FR
Brady Family Tree in Western Australia Darryl Brady Public site 11.0.1 EN, DE
Roots & Relatives Remembered Ron Krzmarzick Public & Private See Here See Here EN,DE,CS
Our Family Links Chuck Filteau Public site, modified Template 12 v10.1.2 EN
Racine d'Alsace J-Louis Valory Public/Private - T17 customized 12.3 FR
Journeys in Genealogy Patrick Thrush Public WordPress/TNG bundle 12.0.3 English
Our Family Histories Bryan S. Larson See Here See Here English
Familienforschung SCABELL Helga Scabell Public/Private 12.1 DE, EN, PT
Kleinmann Genealogy John Kleinmann Public/Private 12.3 EN
Our Acadian Family Randal Suire Public/Private Media (Very Useful) 12.0.3 EN, FR