# Frequently Asked Questions

1. Can I have thousands of people in my database?
  There is no limit to the number of records in the program's database. A large database size, about ten thousand records, may hinder program performance. This will be addressed in a future release.
2. Can I add source references to each person, family, and event?
  You have no limits when attaching source references to person, family, and other objects—including all events and cases. All references to sources may be grouped by archives.
3. I need to record data about unrelated persons, which lived in a single community and were, at most, relatives of each other in the past, but this was not revealed quickly. Can I do this with GEDKeeper?
  The program has no limits for storing unrelated persons. In fact, having unrelated persons in the database was an initial program requirement.
4. Can I print or export data from GEDKeeper to some commonly used formats?
  The following are options available for data exporting:
  - Three types of trees: ancestors, descendants, and combined. Other types are not yet implemented currently but can be added later when number of requests increases. GEDKeeper can print trees itself, and you can export a tree to a JPG, BMP, GIF, PNG, WMF, SVG, PDF graphics file then print such a file from an external application.
  - Export a list of persons to an Excel workbook. Currently there are not many settings for export tuning and selecting of exported information, but this will evolve as needed.
  - Export a persons' statistical data with cataloging, in several Web-formats.
  - Create pedigrees which have two schemes of numbering: d'Aboville and Konovalov. Such pedigrees are created as HTML, RTF, or PDF files then you can use any third-party viewer installed in your system (for example, SumatraPDF or Adobe Reader) to print such files. The generated files have hyperlinks for main navigation. Optionally you can add references to sources and notes into the generated files.
  - Create Google maps with marks for places of birth, death, living of all persons in database, or of a single selected person. Built-in printing may be implemented in the future. In the meantime, use a screen capture program or process (such as [`PrtScr`] in Windows) or the built-in image saving function (to JPEG file).
5. Can I import data from other application using the GEDCOM format?
  Yes, importing GEDCOM-formatted data is fully supported. GEDCOM is the native data format for GEDKeeper. GEDKeeper uses some extensions of the format, but all of them meet requirements for GEDCOM extensions. Therefore, you can also export data from GEDKeeper to other software supporting GEDCOM. We occasionally check such compatibility. Here is the list of out extensions: groups for quick and vivid joining unrelated persons, objects: "research", "task" and "communication" (to store correspondence archive, creating and tracking tasks, and researches).
6. How do I create a list or persons grouped by sex, age, place, or social status, as defined in a source?
  To create such lists, you can use one of the following methods:
  - Sort a list by clicking a column header. Ascending and descending order sorting is implemented in all lists in the program—including age, sex, and place of residence columns.
  - Sort on an individual part of name. In order to do this, you have to split one full name column to a three-parted column set. Go to "Service\Options..." and change how a name is shown in lists to split on individual component.
  - Filter content. You can use a filter on the following object properties: sex, live/died attribute, "patriarch" attribute, logical group of people, name, and place of residence. When filtering by name and place you can use special meta-characters to search by a "mask": '*' symbol matches any number of any characters, and the '?' symbol matches any single character. In such a way a "Sm*" filter matches any name starting with "Sm" and "*sm*" matches any name having "sm" inside the name. You can define compound filters by using the "OR" conjunction symbol "|". For example: "*jo*|*sm*" matches any name with "jo" or "sm" inside the name.
  - Use groups. You can sort by a group, apply a filter to a group, and view a groups' members when you have selected the group in its native list. This is one of the most flexible and advanced types of navigation because one person can have several social or other groups.
7. Can GEDKeeper shows empty dates on death and birth events as "?" in lists?
  Currently this is not implemented. It may be implemented in the future as an optional feature. Numerous tests revealed that such behavior clutters main lists up. However, if we get enough number of requests for this feature, we will implement it.
8. Can you improve the new persons adding feature by implementing an "Apply and continue" button?
  A similar feature is implemented by the plugin that can be accessed via the "Plugins\Stream input" menu. This plugin gives the ability to add minimal information about a person while you need to handle a large number of persons. You enter only some main information and put aside adding information about relationships and other secondary data.
9. How to mark a person whose existence or location on the tree is in doubt?
  There are two main options:
  - Bookmark the person (person edit dialog). But since this is just a bookmark, over time it may become unclear what exactly the bookmark meant.
  - You can create several groups for different purposes: "In question", "Killed in WWII", "Special search", "Conflict". And include the person, if necessary, in one or more necessary groups. This will allow you to categorize the entire array of information by various criteria and quickly find the right people.
10. If there is a bilingual (multilingual) tree, is it possible to somehow quickly switch the display of names and surnames to another language (all at once)?
  If the names in the database were entered in several different languages, then quickly switching the display of all names in the list to another language is possible in the "Languages" item of the Navigator plugin (menu Plugins\Navigator). If some person does not have a name in the required language, the one that is available will be displayed.
11. How to specify godparents (godfathers), witnesses (guarantors)?
  For this kind of information, there is a special form of entries - "Associations" in the dialog for editing persons. When entering associations, you can specify the type and link to a specific person.
12. What should be displayed in the drop-down list of patronymics when adding/editing a person? Expected the latest entered values, but the list is always empty.
  The drop-down list for patronymics does not show the latest entered values, but options when a new person is added from the parents' family - in this case, by the father's name, the female and male patronymics are automatically substituted - if the program has previously recorded a combination of the desired name and one of the patronymic forms (like self-training). Adding a child from the parents' family works either in the family editing dialog, or when adding a son/daughter from one of the parents in the tree diagram by right-clicking.
13. Is it possible to rearrange the numbers of records in a database loaded from a third-party source (numbers with large gaps, very large values, etc.)?
  The easiest way to rearrange all identifiers at the user level is to do the following:
  1. Create a new empty database file, save it with a new name;
  2. Perform the database merge operation (menu Service\Tools). That is, merge the current database with the identifiers you don't like into the new empty one. Not vice versa.
  When merging, the entire data structure remains the same. The order of records, internal content, all relationships. Merging always only "adds" files. No attempts are made to merge duplicate records together. This is the task of a separate function. The only thing that changes during merging is the numbers/identifiers from the merging database.
14. What are the differences between versions 2.XX and 3.XX? Do I understand correctly that they have the same functionality, but are written for different OS?

  Versions 2.XX are based on .NET Framework and can only run on Windows (7/8/8.1/10/11).

  Versions 3.XX are implemented on the basis of .NET Core + EtoForms and were planned as a complete replacement (cross-platform) for Windows, Linux, MacOS, etc. - with the complete cessation of development of 2.XXVersions 3.XX are implemented on the basis of .NET Core + EtoForms and were planned as a complete replacement (cross-platform) for Windows, Linux, MacOS, etc. - with the complete cessation of development of 2.XX.

  But over time, it was discovered that .NET Core is constantly removing support for decommissioned OS versions, including Windows. Because of this, there are numerous compatibility issues between GEDKeeper 3.XX and Win7/8/8.1.

  - dialogues are not centered correctly, they shift;
  - print preview is very buggy;
  - slightly slower than tree diagram graphics (but smoother and more accurate);
  - data output is slower and data highlighting does not work in table views of the main window;
  - interface themes are not possible;
  - some graphic files (rare jpg, tif, bmp) are less supported;

  Therefore, until the moment when (or if) there is nothing to choose from (restrictions, loss of the ability to use some option) - it was decided to develop both lines. This is very labor-intensive. But if in Linux you can only use 3.XX, then in Windows it is inconvenient to use it - and this is on Win10/11.

  So for all versions of Windows I recommend using 2.XX - it is more stable and the interface is more efficient.

  All the differences concern only the interface. The core is completely identical, i.e. all the functionality is identical, not related to the appearance and interaction with the user. And both lines of versions are compiled simultaneously from the same code base during releases.