# Preface

&app; is a genealogical application. &app; is an acronym for the Genealogical Research and Analysis Management Programming System. To put it shortly, it allows you to store, edit, and research genealogical data using your computer. Its functionality is somewhat common to other genealogical programs. However, &app; offers some unique features.

## Why GRAMPS?

&app; was conceived under the concept that most genealogy programs were designed to provide the researcher the capability to input information related to a particular family tree. Most of these programs have allowed for the arranging and storing of information consistent with the GEDCOM standards. They usually provide means for displaying descendant or ancestral relationships by means of graphical displays, charts, or reports. These may be augmented with pictures or other media to enhance the data. Most provide for inputting data on unconnected individuals/families that may or may not have a relationship to the primary surname being researched. Various other enhancements may also be provided in the genealogical program that allows for different degrees of importing and exporting data from other programs and printing the data contained in the various reports.

&app;, on the other hand, attempts to provide all of the common capabilities of these programs, but, more importantly, to provide an additional capability of integration not common to these programs. This is the ability to input any bits and pieces of information directly into &app; and rearrange/manipulate any/all data events in the entire data base (in any order or sequence) to assist the user in doing research, analysis and correlation with the potential of filling relationship gaps. In short, it is a tool that provides a way to input all your research into one place and do your analysis and correlation using the speed, power, and accuracy of your computer instead of pencils and unmanageable reams of paper.

## What's new since 1.0.X

This section lists most notable changes from the previous stable branch of &app;, the 1.0.X.

Berkeley database backend

  The default format for &app; is now the BSDDB database. This change allowed us to overcome performance issues and memory requirements of the 1.0.X branch. With the database backend, the database sizes of up to a hundred thousand people do not present a major obstacle any longer.

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

  A consequence of the new database backend is that the changes, once approved by the user, are applied immediately. In short, once you click OK in the Person, Family, Source, Place, Media object, or Event editor, all the changes made to this object are recorded in the database. No saving is necessary (or even possible). The analog of quitting without saving would be abandoning all changes and quitting. Also, it is possible to undo recent actions.

Interface improvements

  There were numerous changes in the interface. Most of them are subtle and incremental improvements, and all of them cannot be listed here. The most noticeable changes are:

  - Removal of alphabetical tabs

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

  - Removal of 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

  - Export wizard

  - Built-in Find function in list views

  - Date selector dialog

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

  - Recent file support (both gramps-specific and gnome-wide)

Other database backends

  Along with the BSDDB backend, the in-memory database handling for &app; XML and GEDCOM formats has been added. Simply put, it is now possible to natively open data in those two formats (although the preferred and default format is grdb) and work with that data, without necessarily setting up an empty database and then importing into it. This approach requires holding all data in memory, so it is only useful for small databases (depending on the available memory size). In such mode, the data is automatically saved upon exit, to mimic the functionality of the real database.

  ### GEDCOM Editing

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

Import and Export

  New import and export filters available for the GeneWeb format.

Reports

  A new report -- Statistics Chart -- has been added to &app;.

  An overall change of the whole report framework has been acomplished. All reports now remember their options. It is possible to generate reports from the command line, without launching the interactive &app; session. The report API is much simpler now, making it easy to write custom report. A single code instance may be used for a standalone report, a book item, and a command-line report.

Command line

  The new command line functionality includes opening the filename argument given without any flags, as well as new flags and options for report generation. Also, the addition of new formats leads to addition of available format options.

Internationalization

  The approach for entering and displaying dates has been completely re-worked. In particular, the new framework allows for a deeper localization of displayed dates than was ever possible using the translatable strings.

  The internationalization of names have also been improved. Names can be grouped under a non-default string. Patronymic names are supported, and it is easy to program new ways on displaying names, as may be required by various cultures and languages.

Desktop integration

  All formats known to &app; are now registered as mime types, each with its icon and &app; as a default handler. Double-clicking on a file with any of these formats will launch &app; and open that file. &app; also added support for the recent documents functinonailty. This is on both for the GNOME-wide level and within the &app;.

  The preferences are now properly store using GConf, with schemas, partitioning of keys into smaller directories, error checking, and notification.

## Typographical conventions

In this book, we 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`

We also provide 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, we have warnings, in cases where you should be careful:

### Example Warning

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