# What do/did you find to be the most complicated parts of Gramps?

**URL:** https://gramps.discourse.group/t/what-do-did-you-find-to-be-the-most-complicated-parts-of-gramps/9392
**Category:** Development
**Tags:** novice, gui
**Created:** [April 26, 2026, 1:41am UTC](https://gramps.discourse.group/t/what-do-did-you-find-to-be-the-most-complicated-parts-of-gramps/9392 "2026-04-26T01:41:34Z")
**Posts on this page:** 20
**Page:** 3

<div class="post-metadata">

### Author: ![StoltHD](https://avatars.discourse-cdn.com/v4/letter/s/db5fbb/32.png) [@StoltHD](https://gramps.discourse.group/u/StoltHD)
#### Post date: [April 27, 2026, 10:59pm UTC](https://gramps.discourse.group/t/what-do-did-you-find-to-be-the-most-complicated-parts-of-gramps/9392/41 "2026-04-27T22:59:22Z")

</div>

Thanks, **@dsblank**. As I mentioned to Nick, I’m not a code architect or a developer, so I can’t provide a formal technical specification or professional UI mockups.

However, what I _can_ do is provide **my ‘user-logic’** and my “simple real world approach”. I can try to help with:

- **Workflow integration:** Describing my ideal workflow between Zotero, Obsidian, and Gramps (and other tools using CSL).
- **Current vs. Ideal:** Explaining how I handle the bridge between Zotero and Gramps today, compared to how I would _like_ it to work in an ideal layered system.
- **Tool-agnostic logic:** Even though I use Zotero, the logic I’m describing would be much the same for users of Citavi, JabRef, or similar research tools.

When a GitHub discussion becomes available for this specific topic, I will certainly participate there with my thoughts. I can also try to gather relevant Discourse threads regarding repositories, sources, and citations and provide them as links, so developers don’t have to browse through hundreds of posts to find the core arguments.

_ **Note on translation:** This response was drafted in Norwegian and refined with the assistance of Google AI. The final content has been reviewed and approved by me._

---

<div class="post-metadata">

### Author: ![csam](https://yyz2.discourse-cdn.com/free1/user_avatar/gramps.discourse.group/csam/32/5361_2.png) [@csam](https://gramps.discourse.group/u/csam)
#### Post date: [April 28, 2026, 4:54am UTC](https://gramps.discourse.group/t/what-do-did-you-find-to-be-the-most-complicated-parts-of-gramps/9392/42 "2026-04-28T04:54:49Z")

</div>

> [@Nick-Hall](#):
>
> It was Windows only

I’m running Gramps 6.0 on macOS, and it has been like this at least since version 5.2

---

<div class="post-metadata">

### Author: ![emyoulation](https://yyz2.discourse-cdn.com/free1/user_avatar/gramps.discourse.group/emyoulation/32/67_2.png) [@emyoulation](https://gramps.discourse.group/u/emyoulation)
#### Post date: [April 28, 2026, 6:52pm UTC](https://gramps.discourse.group/t/what-do-did-you-find-to-be-the-most-complicated-parts-of-gramps/9392/43 "2026-04-28T18:52:12Z")

</div>

It is worth re-watching the review by an experienced genalogy software user (Ed Thompson, aka @ed4becky ) on the YouTube episode :

> [@Featuring GRAMPS Features! Is It Really A Genealogy Program for All?](https://gramps.discourse.group/t/featuring-gramps-features-is-it-really-a-genealogy-program-for-all/1322/1):
>
> GRAMPS on the **[Genealogy Software Showcase](https://gramps.discourse.group/t/featuring-gramps-features-is-it-really-a-genealogy-program-for-all/1322)**

It is less painful to watch at 2x speed. (You’ll spend less time telling the screen: “… no. no! NO! That is the hard way to…” )

Or you can read the [summary posting](https://gramps.discourse.group/t/featuring-gramps-features-is-it-really-a-genealogy-program-for-all/1322/4). It itemizes the major places where he has obvious difficulties. And each item has hotlinks to skip to that section of the Review.

---

<div class="post-metadata">

### Author: ![ursus](https://yyz2.discourse-cdn.com/free1/user_avatar/gramps.discourse.group/ursus/32/5975_2.png) [@ursus](https://gramps.discourse.group/u/ursus)
#### Post date: [April 28, 2026, 9:38pm UTC](https://gramps.discourse.group/t/what-do-did-you-find-to-be-the-most-complicated-parts-of-gramps/9392/44 "2026-04-28T21:38:15Z")

</div>

Here is what I stumbled into when starting using Gramps. (my English is limited, so bear with me)  
Most are uncritical.

1. The ‘birth/death/wedding etc’ event which behavior is hardcoded and acts different then custom events. Being unable to make a custom wedding event for church weddings, leaves me resorting to ‘alternative wedding’ and then making clear what kind of alternative it was.
2. The ideosyncratic behavior of date boundaries (from - to - after - between etc)
3. The quicksearch for lists (placenames etc etc) where the text-object of applied search covers the OK button, so I have to click the window to make the hint go away before I can click the OK button.
4. no preview for (first page of) pdf files
5. a quicker way to go from active person in person category to family category where the active person is filtered so only their families show.
6. Some list windows scroll-bars jump when clicking an item in the list. Most do not.
7. I had trouble understanding the differences between the hardcoded ‘adress’ menu and creating a ‘residence’ event.

==

So numbers 1, 2, 3 and 5. I have learned to work with them. But when beginning these presented to most difficulties. (Dates still do, and an ‘Alternative wedding’ still feels like needing explanation)  
Got used to the others though.

---

<div class="post-metadata">

### Author: ![kulath](https://avatars.discourse-cdn.com/v4/letter/k/e99b99/32.png) [@kulath](https://gramps.discourse.group/u/kulath)
#### Post date: [April 29, 2026, 5:50pm UTC](https://gramps.discourse.group/t/what-do-did-you-find-to-be-the-most-complicated-parts-of-gramps/9392/45 "2026-04-29T17:50:41Z")

</div>

> [@Nick-Hall](#):
>
> We already made a start in this direction by creating _Cite_ plugins to act as citation formatters. I wrote a small prototype using the [citeproc-py](https://pypi.org/project/citeproc-py/) module to format citations in report bibliographies.
> 
> [CSL](https://citationstyles.org) variables were stored in attributes as well as in the standard GEDCOM fields.

**CSL vs Evidence Explained citations**

I worked on a proof of concept to integrate CSL output of citations into Gramps see under [GEPS\_018](https://www.gramps-project.org/wiki/index.php/GEPS_018:_Evidence_style_sources#gramps-project:geps.2Fgep-018-evidence-style_implementation).

I discovered that EE was a bit of a crock, because Elizabeth Shown Mills had designed entirely new citation formats, ignoring perfectly acceptable existing formats.

For example, [ESM254](https://www.evidenceexplained.com/sites/default/files/documents/QCsample254.pdf) is a simple format for a ‘Census database: Online’. This is really just a website reference. ESM has decided to design her own format for this citation, instead of using the existing formats in any of the many CSL styles.

The point is you should take the data items she wants to record, and map them on to [CSL variables](https://docs.citationstyles.org/en/stable/specification.html#appendix-iv-variables) (e.g. container\_author). Then you can use any of the CSL styles to actually output the citation.

What she has done instead is to invent her own variables (e.g.WEBSITE CREATOR-OWNER), and also invent her own particular style.

Suppose you want to write an article about your great-grandfather for a particular journal or magazine. They will have their own house CSL style, and you will want your references in that style. Then you have a conflict between the normal references in their style and the EE refernces in her style.

For my prototype, I decided to ignore ESM’s format, while retaining her names for her variables (presumably these are the attributes that Nick mentions), and map her names onto CSL variables for constructing the output. For example this mapping.

`amap = {`  
` ‘type’ : ‘chapter’,`  
` ‘author’ : ‘%(COMPILER)s’,`  
` ‘title’ : ‘%(TITLE)s’,`  
` ‘edition’ : ‘%(TYPE)s’,`  
` ‘container_author’ : ‘%(WEBSITE_CREATOR/OWNER)s’,`  
` ‘container_title’ : ‘%(WEBSITE)s’,`  
` ‘url’ : ‘%(URL_(DIGITAL_LOCATION))s’,`  
` ‘locator’ : ‘%(ITEM_OF_INTEREST)s; %(CREDIT_LINE)s’,`  
` ‘accessed’ : ‘%(DATE_ACCESSED)s’,`  
` ‘page’ : ‘1-7’`  
` }`

---

<div class="post-metadata">

### Author: ![Bigfoot](https://avatars.discourse-cdn.com/v4/letter/b/b2d939/32.png) [@Bigfoot](https://gramps.discourse.group/u/Bigfoot)
#### Post date: [April 29, 2026, 6:41pm UTC](https://gramps.discourse.group/t/what-do-did-you-find-to-be-the-most-complicated-parts-of-gramps/9392/46 "2026-04-29T18:41:37Z")

</div>

Making filters that combines other filters in a flexible way. Making something like “F1 AND (F2 OR F3) AND NOT F4” (where F\* are existing filters) seems like something that could be done in a single filter. But instead you have to chain multiple filters to get the combination for AND/OR/NOT you want. Then it becomes messy and you realize you didn’t choose good describing names for some filters. So you rename them. And then realize that the filter name was actually used as a key so the filters that are using the renamed filters stopped working and needs to be updated.

---

<div class="post-metadata">

### Author: ![dsblank](https://yyz2.discourse-cdn.com/free1/user_avatar/gramps.discourse.group/dsblank/32/3649_2.png) [@dsblank](https://gramps.discourse.group/u/dsblank)
#### Post date: [April 29, 2026, 6:53pm UTC](https://gramps.discourse.group/t/what-do-did-you-find-to-be-the-most-complicated-parts-of-gramps/9392/47 "2026-04-29T18:53:58Z")

</div>

Good idea! Let’s see what could be done like this.

---

<div class="post-metadata">

### Author: ![Nick-Hall](https://yyz2.discourse-cdn.com/free1/user_avatar/gramps.discourse.group/nick-hall/32/95_2.png) [@Nick-Hall](https://gramps.discourse.group/u/Nick-Hall)
#### Post date: [April 29, 2026, 8:00pm UTC](https://gramps.discourse.group/t/what-do-did-you-find-to-be-the-most-complicated-parts-of-gramps/9392/48 "2026-04-29T20:00:44Z")

</div>

> [@kulath](#):
>
> For my prototype, I decided to ignore ESM’s format, while retaining her names for her variables (presumably these are the attributes that Nick mentions), and map her names onto CSL variables for constructing the output.

We may be better to store CSL variables and map the ESM variables at an earlier stage. Most variables can be strings or integers, although CSL-JSON supports names and dates.

e.g.

```python
"author": [
     {
             "family": "King",
             "given": "Martin Luther",
             "suffix":"Jr., Ph.D.",
             "dropping-particle":"Rev."
     }
]

```

and

```python
"accessed": {
     "date-parts": [[2005, 4, 12]]
},
"issued": {
     "date-parts": [[2000, 3, 15], [2000, 3, 17]]
}

```

Perhaps it is time to open a separate discussion for this.

---

<div class="post-metadata">

### Author: ![StoltHD](https://avatars.discourse-cdn.com/v4/letter/s/db5fbb/32.png) [@StoltHD](https://gramps.discourse.group/u/StoltHD)
#### Post date: [April 29, 2026, 8:54pm UTC](https://gramps.discourse.group/t/what-do-did-you-find-to-be-the-most-complicated-parts-of-gramps/9392/49 "2026-04-29T20:54:38Z")

</div>

Another thing about Elizabeth Shown Mills’ _Evidence Explained_ is that it is actually not open source. It is copyrighted and, in practice, a proprietary style.

- EE cannot be redistributed
- it cannot be copied
- it cannot be implemented verbatim
- and it remains a commercial standard owned by a single individual

Given this, I should also retract my earlier comment suggesting that creating a full EE CSL or Gramps template would be an enormous contribution — since EE cannot legally be redistributed, copied, or implemented verbatim, such a template would not be possible without violating copyright.

My bad for not thinking that one through in my first comment.

---

<div class="post-metadata">

### Author: ![dsblank](https://yyz2.discourse-cdn.com/free1/user_avatar/gramps.discourse.group/dsblank/32/3649_2.png) [@dsblank](https://gramps.discourse.group/u/dsblank)
#### Post date: [April 30, 2026, 6:58pm UTC](https://gramps.discourse.group/t/what-do-did-you-find-to-be-the-most-complicated-parts-of-gramps/9392/50 "2026-04-30T18:58:49Z")

</div>

> [@csam](#):
>
> The example above is made in Gimp, so there’s no code behind.
> 
> This example implements two things:  
> a) a field to enter a URL for the citation  
> b) a text field for the first note attached to the citation

I’m going to move some of these ideas over to the new discussion area for talking about the technical details.

Here is this one: [Simplified Entry Dialogs · gramps-project/gramps · Discussion #2277 · GitHub](https://github.com/gramps-project/gramps/discussions/2277)

Discussions will be technical in nature, but all are welcomed to participate. Of course this topic is about annoyances, so you can follow along to see the proposed user interface and participate.

---

<div class="post-metadata">

### Author: ![emyoulation](https://yyz2.discourse-cdn.com/free1/user_avatar/gramps.discourse.group/emyoulation/32/67_2.png) [@emyoulation](https://gramps.discourse.group/u/emyoulation)
#### Post date: [May 1, 2026, 4:56pm UTC](https://gramps.discourse.group/t/what-do-did-you-find-to-be-the-most-complicated-parts-of-gramps/9392/51 "2026-05-01T16:56:14Z")

</div>

There are a variety of minor tweaks that would make Gramps more friendly. Things that (probably) do not require significant code. Where do they fit in this discussion?

## Dashboard

1. replace the TopSurnames default dashboard gramplets
2. Three column layout instead of 2 column. (With an empty center column to whet curiosity about why it is empty and invite a place to add a gramplet.)

## Geography:

1. Rename view modes so that more than 3 labeled ones will fit on the Toolbar. (Probably needs consensus about verbiage.) Possible options:

2. During install, add a [Gramps User Directory](https://www.gramps-project.org/wiki/index.php/Gramps_Glossary#user_directory) `maps/fallback` set of custom map tiles (for levels 1-4 only, approx. 2mb) and set the _(existing but underdocumented)_ [custom tiles provider](https://github.com/gramps-project/gramps/pull/976/changes/44302ac1cebed3d97c6784bae762d3d57e196529) to use them.  
This would eliminate the Internet connection dependence for the initial content in the view. And we could evolve the tiles to have ‘hints’ about making a Place with Coordinates and an Event.

3. swap in the new [(more meanful) map pins](https://gramps.discourse.group/t/geographic-view/951/22) by @bjpcorp  
&nbsp; &nbsp; &nbsp; ![image](https://global.discourse-cdn.com/free1/uploads/gramps/original/2X/d/d0d0d0d97ab2abc39aeed707587240cd2d1b1db8.png)

## Charts

1. either: hide the Category’s empty sidebar and bottombar by default; or, add a default gramplet for each (maybe “Pedigree”, “Relatives” for the sidebar. And “What’s Next?” for bottombar)

## Navigator sidebar

1. select a primary sidebar and demote the other 2 built-ins to being addon “sidebar” plugins. This eliminates the (overly large) mode selector by default.
  - Category current _default_
  - Drop-down   
(my preferred. It requires the least screen width while having fully labeled view modes in the menus. Good for both power users and newbies)
  - Expander

## Feedback

1. reword the [Error Processing Arguments](https://gramps-project.org/wiki/index.php/Gramps_6.0_Wiki_Manual_-_Manage_Family_Trees#Break_the_lock_on_the_.22Family_Tree_name.22_database.3F_dialog) error message about a locked database on the post-crash restart.

## More intuitive file locations during install

1. install the sample data in user writable space instead of write-protected core directories. (Including the `gramps/example/csv`, `gramps/example/gedcom`, `gramps/example/gramps` `data/tips.xml`) to a `example` folder in the `USER_PLUGINS` folder. (Allows revising these files with the [Addon Manager](https://gramps-project.org/wiki/index.php/Gramps_Glossary#addon).)
2. set an application-specific **Gtk File Chooser** [Shortcut](https://gramps.discourse.group/t/need-suggestions-for-documenting-the-gtk-file-chooser/1820/9) button to the examples folder path. (addresses [#11623](https://gramps-project.org/bugs/view.php?id=11623))
3. The use of the `USER_CSS` directory is unclear. Add a dummy `gramps_user.css` (or whatever filename will be the topmost CSS layer above `data/gramps.css`) to that folder during installation.

---

<div class="post-metadata">

### Author: ![dsblank](https://yyz2.discourse-cdn.com/free1/user_avatar/gramps.discourse.group/dsblank/32/3649_2.png) [@dsblank](https://gramps.discourse.group/u/dsblank)
#### Post date: [May 1, 2026, 6:19pm UTC](https://gramps.discourse.group/t/what-do-did-you-find-to-be-the-most-complicated-parts-of-gramps/9392/52 "2026-05-01T18:19:49Z")

</div>

Nice, specific ideas!

> [@emyoulation](#):
>
> ## Dashboard

Yes, a dashboard refresh would be welcomed, especially if the new named multi-dashboard PR is merged (and there is time between when it is merged and release—I wish there was time between merging a PR and its release for more testing, refinements, and customizations like this)

> [@emyoulation](#):
>
> ## Geography:

I spent some time on making the shortcut toolbar better for all views in the [Simplified Interface PR](https://github.com/gramps-project/gramps/pull/2214). Because not everyone is going to like any change, this is all behind a config setting.

[I think a built-in Gramps definition of terms and concepts would be great. But I see that isn’t the suggestion.]

Yes, built-in maps and better pins! I’d like to spend some time working on a KML interface too.

> [@emyoulation](#):
>
> ## Charts

Yes, we should re-visit every Category and either add good gramplets, or remove bar.

> [@emyoulation](#):
>
> ## Navigator sidebar

I also did some work on this too in [Simplified Interface PR](https://github.com/gramps-project/gramps/pull/2214). I added another option that is even more narrow.

> [@emyoulation](#):
>
> ## Feedback

Yes, a small fix. Do you want to handle that one?

> [@emyoulation](#):
>
> ## More intuitive file locations during install

And maybe expose the folder names/locations to the user in a better way.

---

<div class="post-metadata">

### Author: ![emyoulation](https://yyz2.discourse-cdn.com/free1/user_avatar/gramps.discourse.group/emyoulation/32/67_2.png) [@emyoulation](https://gramps.discourse.group/u/emyoulation)
#### Post date: [May 1, 2026, 6:57pm UTC](https://gramps.discourse.group/t/what-do-did-you-find-to-be-the-most-complicated-parts-of-gramps/9392/53 "2026-05-01T18:57:55Z")

</div>

> [@dsblank](#):
>
> Yes, we should re-visit every Category and either add good gramplets, or remove bar.

That is one of the things that @cdhorn mentioned when he was building a statistical analysis Dashboard CardView. He could not find the way to initiate a new view with the sidebar and bottombar disabled nor simply hidden by default.

> [@dsblank](#):
>
> Yes, a small fix. Do you want to handle that one?

I’ll certainly search for the dialog and submit a PR. I am just concerned that it might be a generic dialog rather than a single purpose. And that I will not be able to recognize that.

It looks like [that section](https://github.com/gramps-project/gramps/blob/b4ffb385a226985f493ed348c657c9af9faac008/gramps/gui/grampsgui.py#L635) is used for any invalid CLI parameter passing.  
what do you think of `Cannot process as requested` ? PR [#2281](https://github.com/gramps-project/gramps/pull/2281)

---

<div class="post-metadata">

### Author: ![dsblank](https://yyz2.discourse-cdn.com/free1/user_avatar/gramps.discourse.group/dsblank/32/3649_2.png) [@dsblank](https://gramps.discourse.group/u/dsblank)
#### Post date: [May 1, 2026, 6:59pm UTC](https://gramps.discourse.group/t/what-do-did-you-find-to-be-the-most-complicated-parts-of-gramps/9392/54 "2026-05-01T18:59:51Z")

</div>

> [@emyoulation](#):
>
> He could not find the way to initiate a new view with the sidebar and bottombar disabled nor simply hidden by default.

I’ll take a look to see what is need to add that functionality.

---

<div class="post-metadata">

### Author: ![PLegoux](https://yyz2.discourse-cdn.com/free1/user_avatar/gramps.discourse.group/plegoux/32/413_2.png) [@PLegoux](https://gramps.discourse.group/u/PLegoux)
#### Post date: [May 1, 2026, 7:54pm UTC](https://gramps.discourse.group/t/what-do-did-you-find-to-be-the-most-complicated-parts-of-gramps/9392/55 "2026-05-01T19:54:44Z")

</div>

> [@aviansid](#):
>
> Perhaps when I click the + button I get a drop down showing my preferred events followed by “Other…”

A long press on the plus button brings up this menu, and a single press displays the current behavior.

---

<div class="post-metadata">

### Author: ![PLegoux](https://yyz2.discourse-cdn.com/free1/user_avatar/gramps.discourse.group/plegoux/32/413_2.png) [@PLegoux](https://gramps.discourse.group/u/PLegoux)
#### Post date: [May 1, 2026, 8:06pm UTC](https://gramps.discourse.group/t/what-do-did-you-find-to-be-the-most-complicated-parts-of-gramps/9392/56 "2026-05-01T20:06:36Z")

</div>

> [@zed](#):
>
> When one selects “People” view, one has to additionally click into the window to be able to activate search by Ctrl+F. This seems to be one unnecessary click.

I asked a similar question a long time ago.

It concerned whether the menu shortcuts in the main interface should remain available even when you’re in an editor. Currently, if you’re editing a person and want to create another, you have to click in the interface to be able to use Shift-Alt-P.

---

<div class="post-metadata">

### Author: ![PLegoux](https://yyz2.discourse-cdn.com/free1/user_avatar/gramps.discourse.group/plegoux/32/413_2.png) [@PLegoux](https://gramps.discourse.group/u/PLegoux)
#### Post date: [May 1, 2026, 8:25pm UTC](https://gramps.discourse.group/t/what-do-did-you-find-to-be-the-most-complicated-parts-of-gramps/9392/58 "2026-05-01T20:25:24Z")

</div>

> [@emyoulation](#):
>
> CardView

Speaking of Cardview, something that would be nice to have using the regular Gramps is its Tags view. It’s particularly useful for searching for or modifying something.

I use the regular Gramps view to sort or edit tags, and the Cardview to find where a tag is applied.

---

<div class="post-metadata">

### Author: ![emyoulation](https://yyz2.discourse-cdn.com/free1/user_avatar/gramps.discourse.group/emyoulation/32/67_2.png) [@emyoulation](https://gramps.discourse.group/u/emyoulation)
#### Post date: [May 2, 2026, 4:09pm UTC](https://gramps.discourse.group/t/what-do-did-you-find-to-be-the-most-complicated-parts-of-gramps/9392/59 "2026-05-02T16:09:39Z")

</div>

9 posts were split to a new topic: [Easter Egg: Hiding Windows/Dialogs of Gramps](https://gramps.discourse.group/t/easter-egg-hiding-windows-dialogs-of-gramps/9442)

---

<div class="post-metadata">

### Author: ![david1](https://avatars.discourse-cdn.com/v4/letter/d/73ab20/32.png) [@david1](https://gramps.discourse.group/u/david1)
#### Post date: [May 2, 2026, 7:17am UTC](https://gramps.discourse.group/t/what-do-did-you-find-to-be-the-most-complicated-parts-of-gramps/9392/61 "2026-05-02T07:17:08Z")

</div>

When Graph View with Show Tags option is selected, give an option to display tag text, tag color, or tag text inside the colored box. I find it difficult to keep track using color alone when looking at the chart. While a tag color key would be nice, putting the tag text into each person’s box would be the best solution.

---

<div class="post-metadata">

### Author: ![comeng](https://avatars.discourse-cdn.com/v4/letter/c/2acd7d/32.png) [@comeng](https://gramps.discourse.group/u/comeng)
#### Post date: [May 2, 2026, 8:46am UTC](https://gramps.discourse.group/t/what-do-did-you-find-to-be-the-most-complicated-parts-of-gramps/9392/62 "2026-05-02T08:46:26Z")

</div>

In principle would be a good idea feel it would take up to much screen  
space particularly when having multiple tags could it be done by  
message box appearing when hovering mouse over tag  
phil

[Previous page](https://gramps.discourse.group/t/what-do-did-you-find-to-be-the-most-complicated-parts-of-gramps/9392.md?page=2)

[Next page](https://gramps.discourse.group/t/what-do-did-you-find-to-be-the-most-complicated-parts-of-gramps/9392.md?page=4)
