chart

package
v0.0.6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 12, 2026 License: Unlicense Imports: 13 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var Command = &cli.Command{
	Name:   "chart",
	Usage:  "Create a family tree chart.",
	Action: chartCmd,
	Flags: append([]cli.Flag{
		&cli.StringFlag{
			Name:        "gedcom",
			Aliases:     []string{"g", "input"},
			Usage:       "GEDCOM file to read from",
			Destination: &chartopts.gedcomFile,
		},
		&cli.StringFlag{
			Name:        "gramps",
			Usage:       "Gramps xml file to read from",
			Destination: &chartopts.grampsFile,
		},
		&cli.StringFlag{
			Name:        "gramps-dbname",
			Usage:       "Name of the gramps database, used to keep IDs consistent between versions of the same database",
			Destination: &chartopts.grampsDatabaseName,
		},
		&cli.StringFlag{
			Name:        "type",
			Aliases:     []string{"t"},
			Usage:       "Type of chart to produce: descendant, ancestor, fan or focus",
			Destination: &chartopts.chartType,
		},
		&cli.StringFlag{
			Name:        "config",
			Aliases:     []string{"c"},
			Usage:       "Path to a KDL tree configuration file",
			Destination: &chartopts.treeConfig,
		},
		&cli.StringFlag{
			Name:        "output",
			Usage:       "output image filename",
			Destination: &chartopts.outputFilename,
		},
		&cli.StringFlag{
			Name:        "person",
			Usage:       "identifier of person to build tree from",
			Destination: &chartopts.startPersonID,
		},
		&cli.StringFlag{
			Name:        "key",
			Aliases:     []string{"k"},
			Usage:       "Identifier of the key individual",
			Destination: &chartopts.keyPersonID,
		},
		&cli.StringFlag{
			Name:        "title",
			Usage:       "Title to add to chart",
			Destination: &chartopts.title,
		},
		&cli.IntFlag{
			Name:        "gen",
			Usage:       "number of generations to draw",
			Value:       2,
			Destination: &chartopts.generations,
		},
		&cli.IntFlag{
			Name:        "detail",
			Usage:       "level of detail to include with each person (0:none,1:years,2:dates,3:full)",
			Value:       3,
			Destination: &chartopts.detail,
		},
		&cli.BoolFlag{
			Name:        "direct",
			Usage:       "only show children of direct ancestors (same as children=direct) DEPRECATED",
			Value:       false,
			Destination: &chartopts.directOnly,
		},
		&cli.BoolFlag{
			Name:        "parents",
			Usage:       "include parents of person",
			Value:       false,
			Destination: &chartopts.parents,
		},
		&cli.StringFlag{
			Name:        "children",
			Usage:       "which children to show in the descendant chart (all, direct=children of direct ancestors, none=no children",
			Value:       "all",
			Destination: &chartopts.children,
		},
		&cli.BoolFlag{
			Name:        "minimalsurnames",
			Usage:       "only show surnames that are different to father's",
			Value:       false,
			Destination: &chartopts.minimalSurnames,
		},

		&cli.BoolFlag{
			Name:        "compact",
			Usage:       "attempt to compact displayed information (for descendant charts)",
			Value:       false,
			Destination: &chartopts.compact,
		},

		&cli.BoolFlag{
			Name:        "nodecoration",
			Usage:       "don't include title or legend",
			Value:       false,
			Destination: &chartopts.nodecoration,
		},

		&cli.BoolFlag{
			Name:        "debug",
			Usage:       "draw debug information",
			Value:       false,
			Destination: &chartopts.debug,
		},
		&cli.Float64Flag{
			Name:        "font-scale",
			Usage:       "scale all fonts by this factor",
			Value:       1.0,
			Destination: &chartopts.fontScale,
		},
		&cli.StringFlag{
			Name:        "target",
			Usage:       "target of output, either a paper size ('A3Landscape') or 'web' which sizes to fit and makes background transparent",
			Value:       "A3Landscape",
			Destination: &chartopts.target,
		},
	}, logging.Flags...),
}

Functions

func BuildAncestorChart

func BuildAncestorChart(t *tree.Tree, startPerson *model.Person, detail int, depth int, compact bool) (*gtree.AncestorChart, error)

func BuildButterflyChart added in v0.0.3

func BuildButterflyChart(t *tree.Tree, startPerson *model.Person) (*gtree.ButterflyChart, error)

func BuildDescendantChart

func BuildDescendantChart(t *tree.Tree, startPerson *model.Person, detail int, depth int, compact bool, children string, parents bool, minimalSurnames bool, showStars bool) (*gtree.DescendantChart, error)

func BuildFanChart added in v0.0.3

func BuildFanChart(t *tree.Tree, startPerson *model.Person, maxGeneration int) (*gtree.FanChart, error)

func BuildFocusChart added in v0.0.3

func BuildFocusChart(t *tree.Tree, startPerson *model.Person, detail int, minimalSurnames bool, showStars bool) (*gtree.DescendantChart, error)

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL