# Preface

GRAMPS is a software package designed for genealogical research. Although similar to other genealogical programs, GRAMPS offers some unique and powerful features, which we'll discuss below.

GRAMPS is a Open Source Software package, which means you are free to make copies and distribute it to anyone you like. It's developed and maintained by a worldwide team of volunteers whose goal is to make GRAMPS powerful, yet easy to use.

## Why use GRAMPS?

Most genealogy programs allow you to enter information about your ancestors and descendants. Typically, they can display family relationships through charts, graphs, or reports. Some allow you to include pictures or other media. Most let you include information about people even if those people are not related to the primary family you happen to be researching. And they may include features that let you exchange data with other programs and print different types of reports.

GRAMPS has all these capabilities and more. Notably, it allows you to integrate bits and pieces of data as they arise from your research and to put them in one place — your computer. You can then use your computer to manipulate, correlate, and analyze your data, rather than messing with reams of paper.

## What's new since 1.0.X

If you are new to GRAMPS, it may not be important for you to know how GRAMPS version 2.0.0 (the object of this manual) differs from previous versions of the software. You may therefore elect to skip this section.

However, if you are already familiar with GRAMPS and are interested in the new aspects and features of version 2.0.0, please read on.

Berkeley database backend

  We've adopted the Berkeley database format (BSDDB) as the default for GRAMPS. Berkeley is the most widely used open source developer database in the world.

  This change allowed us to overcome issues of performance and memory requirements that beset version 1.0.X. With the new back-end, database sizes of up to a hundred thousand people no longer present a major obstacle.

  The default extension for GRAMPS' BSDDB database files is grdb. The new format is open and fully documented in the developer's API reference distributed with the source code of GRAMPS.

  ### Preferred format

  The preferred and default format for &app; is the new BSDDB format.

  A consequence of the new database back-end is that the "saving" function is no longer necessary (or even possible). Now, once you approve changes, they are immediately applied; this means that clicking OK in the Person, Family, Source, Place, Media object, or Event editor immediately records changes in the database.

  In previous versions, you could "quit without saving." This option no longer exists per se; however, in version 2.0.0, you can achieve the same effect if you abandon or "cancel" all changes and then quit.

  Also, it is now possible to undo recent actions.

Other database back-ends

  Along with the BSDDB backend, we've incorporated "in-memory" database handling for the GRAMPS XML and GEDCOM formats. This means you can now open files in those two formats and work with their data without having to first create a new database and import data into it. Since this approach requires GRAMPS to hold all the data in memory, it is only useful for small databases (depending on available memory size).

  ### GEDCOM Editing

  Please keep in mind that some information in a GEDCOM file may be lost during import into GRAMPS. Simply opening and viewing the file will not change it. However, if any changes were made and they were not abandoned upon exit, exiting GRAMPS will save the data, with the possible data loss.

Desktop integration

  We've improved the way GRAMPS integrates with the GNOME desktop interface common to many Linux distributions. All file formats recognized by GRAMPS are now registered as mime types; each has its own icon and has GRAMPS as its default handler. Thus, if you double-click on any file having one of these formats, GRAMPS will launch and open the file.

  We've also added support for GNOME's "recent documents" function and have incorporated this function within GRAMPS itself.

Interface improvements

  We've made numerous changes in the interface. Most of them are subtle and incremental improvements, and all of them cannot be listed here. The most notable are:

  - Removal of alphabetical tabs.

  - Ability to add/remove/rearrange columns in list views.

  - Removal of the Save function and addition of Undo.

  - Proper window management and removal of most modal windows.

  - Support for Tip of the Day.

  - Person-dependent context menus (right-click) in Pedigree View, listing parents, children, spouses, and siblings.

  - Addition of an Export wizard.

  - Built-in Find function in list views.

  - Addition of a Date selector dialog.

  - Name editor enhancements: patronymic names and non-default grouping.

  - "Recent document" support (both within GRAMPS and GNOME-wide)

Import and Export

  We've added import and export filters for the GeneWeb format.

Reports

  - We've added a new report: Statistics Chart.

  - We've changed the overall report framework. All reports now remember the options you configure for them.

  - It is possible to generate reports from the command line, without launching the interactive GRAMPS session.

  - The report API is much simpler now, making it easy to write custom reports.

  - A single code instance may be used for a standalone report, a book item, and a command-line report.

Internationalization

  The approach for entering and displaying dates has been completely reworked. The new framework allows for a deeper localization of displayed dates than was ever possible using the translatable strings.

  The internationalization of names has also been improved. Names can be grouped under a non-default string. Patronymic names are supported, and it is easy to program new ways to display names in the manner customary to a given culture or language.

## Typographical conventions

In this book, some words are marked with special typography:

- Applications

- `Commands` you type at the command line

- `Filenames`

- Replaceable text

- Labels for buttons and other portions of the graphical interface

- Menu selections look like this: Menu Submenu Menu Item

- Buttons you can click

- `Anything you type in`

The manual also provides assorted bits of additional information in tips and notes, as follows.

### Tip

Tips and bits of extra information will look like this.

### Note

Notes will look like this.

Finally, there are warnings, notifying you where you should be careful:

### Example Warning

This is what a warning looks like. If there's a chance you'll run into trouble, you will be warned beforehand.