Skip to content

completed list of Heredis custom tags#5179

Open
BertKoor wants to merge 21 commits into
fisharebest:mainfrom
BertKoor:heredis_customTags
Open

completed list of Heredis custom tags#5179
BertKoor wants to merge 21 commits into
fisharebest:mainfrom
BertKoor:heredis_customTags

Conversation

@BertKoor
Copy link
Copy Markdown
Contributor

@BertKoor BertKoor commented Jul 10, 2025

Known issues:

  • restriction on subtag will show in red, so not to give impression this works
  • coordinates of a submap/subdivision will not put a location marker on the map
  • collapsing Research Information does not yet work as intended
  • will put the labels in English and add French & German translations

@codecov
Copy link
Copy Markdown

codecov Bot commented Jul 10, 2025

Codecov Report

❌ Patch coverage is 99.15254% with 1 line in your changes missing coverage. Please review.
✅ Project coverage is 35.57%. Comparing base (a30e37c) to head (5dd0e76).
⚠️ Report is 39 commits behind head on main.

Files with missing lines Patch % Lines
app/Module/IndividualFactsTabModule.php 0.00% 1 Missing ⚠️
Additional details and impacted files
@@             Coverage Diff              @@
##               main    #5179      +/-   ##
============================================
+ Coverage     35.39%   35.57%   +0.18%     
- Complexity    11183    11194      +11     
============================================
  Files          1165     1173       +8     
  Lines         48004    48113     +109     
============================================
+ Hits          16990    17117     +127     
+ Misses        31014    30996      -18     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@BertKoor BertKoor force-pushed the heredis_customTags branch from 6557032 to c7e649c Compare July 14, 2025 09:28
@BertKoor
Copy link
Copy Markdown
Contributor Author

Sorry about the multiple pushes, but I'm done with this (I think/hope)

@fisharebest
Copy link
Copy Markdown
Owner

Thanks for all this. Looks good,

I just need to review the new translation texts before I merge this.

@BertKoor
Copy link
Copy Markdown
Contributor Author

BertKoor commented Jul 29, 2025

Here's the notes I kept of the translations, which mostly come from Heredis itself, but I did not check all :

French English German known
Identifiant du fichier File identifier Dateikennung
Statut d’union Union type Status der Partnerschaft
* Mariage * Marriage * Verheiratet
* Fiançailles * Engaged * Verlobt
* Séparation * Separation * Getrennt
* Divorce * Divorce * Geschieden yes
* Autre union officielle * Other type of marriage * Andere offizielle Partnerschaft
* Union libre * Cohabitee * Eheähnliche Lebensgemeinschaft
* Statut d’union inconnu * Unknown family status * Unbekannt
* Autre statut * Other status * Anderer Status
Géolocalisation des subdivisions Geolocation of subdivisions Ortsunterteilungsgeolokalisierung
* Latitude de subdivision * Latitude of subdivision * Ortsunterteilungsbreitengrad
* Longitude de subdivision * Longitude of subdivision * Ortsunterteilungslängengrad
Qualité de citation complète Quality of completed citation Qualität der Zitat
Qualité de la source Quality of the source Qualität der Quelle
* Originale * Original * Original
* Dérivé * Derived * Abgeleitet
Qualité de l’information Quality of the information Qualität der Informationen
* Primaire * Primary * Primär
* Secondaire * Secondary * Sekundär
Qualité de la preuve Quality of the evidence Qualität der Nachweis
* Directe * Direct * Direkt
* Indirecte * Indirect * Indirekt
* Negative * Negative * Negativ
Infos de recherche Research data Recherchedaten
* Projet de recherche * Research project * Rechercheprojekt
* Document * Document * Dokument yes
* Lieu de recherche * Search place * Ort der Recherche
* Date de recherche * Search date * Datum der Recherche
* Référence * Call number * Verweis yes
* URL * URL * Website yes
* Note * Note * Notiz yes
Sans descendance Childless Kinderlos
Filiation Child status Filiation
* Légitime * Legitimate * Legitim
* Naturel * Natural * Außerehelich
* Reconnu * Legally recognised * Rechtlich anerkannt
* Légitimé * Legitimated * Legitimiert
* Trouvé * Foundling * Gefunden
* Adopté * Adopted * Adoptiert
* Adultérin * Illegitimate * Unehelich
* Mort-né * Stillborn * Totgeboren
* Non connue * Unknown * Unbekannt
Père introuvable Untraceable father Vater unauffindbar
Mère introuvable Untraceable mother Mutter unauffindbar
Individu secondaire Secondary person Sekundäre Person
Sans union Unmarried Ledig
Signature Signature Unterschrift
Etiquette personnalisée Personalized flag Farblabel
Etat des recherches Research status Recherchestand
* Ne pas rechercher * No search record * Keine Recherche notwendig
* Faire des recherches * Search record * Recherche notwendig
* Introuvable * Untraceable record * Unauffindbar
* Recherches en cours * Search in progress * Laufende Recherche
Classement Archive Archiv

@BertKoor
Copy link
Copy Markdown
Contributor Author

BertKoor commented Dec 31, 2025

I've checked the translations, here's an updated list:

French English German known translation in webtrees
Identifiant du fichier File identifier Dateikennung
Statut d’union Union type Status der Partnerschaft
* Mariage * Marriage * Verheiratet (as Heirat) yes (added context 'FAM:_UST')
* Fiançailles * Engaged * Verlobt
* Séparation * Separation * Getrennt (as Trennung) yes (added context 'FAM:_UST')
* Divorce * Divorce * Geschieden yes
* Autre union officielle * Other type of marriage * Andere offizielle Partnerschaft
* Union libre * Cohabitee * Eheähnliche Lebensgemeinschaft
* Statut d’union inconnu * Unknown family status * Unbekannt
* Autre statut * Other status * Anderer Status
Géolocalisation des subdivisions Geolocation of subdivisions Ortsunterteilungsgeolokalisierung
* Latitude de subdivision * Latitude of subdivision * Ortsunterteilungsbreitengrad
* Longitude de subdivision * Longitude of subdivision * Ortsunterteilungslängengrad
Qualité de citation complète Quality of completed citation Qualität der Zitat
Qualité de la source Quality of the source Qualität der Quelle
* Originale * Original * Original
* Dérivé * Derived * Abgeleitet
Qualité de l’information Quality of the information Qualität der Informationen
* Primaire * Primary * Primär
* Secondaire * Secondary * Sekundär
Qualité de la preuve Quality of the evidence Qualität der Nachweis
* Directe * Direct * Direkt
* Indirecte * Indirect * Indirekt
* Negative * Negative * Negativ
Infos de recherche Research data Recherchedaten
* Projet de recherche * Research project * Rechercheprojekt
* Document * Document * Dokument yes
* Lieu de recherche * Search place * Ort der Recherche
* Date de recherche * Search date * Datum der Recherche
* Référence * Call number * Verweis yes
* URL * URL * Website yes
* Note * Note * Notiz yes
Sans descendance Childless Kinderlos
Filiation Child status Filiation
* Légitime * Legitimate * Legitim
* Naturel * Natural * Außerehelich
* Reconnu * Legally recognised * Rechtlich anerkannt
* Légitimé * Legitimated * Legitimiert
* Trouvé * Foundling * Gefunden
* Adopté * Adopted * Adoptiert yes (with context male/female pedigree)
* Adultérin * Illegitimate * Unehelich
* Mort-né * Stillborn * Totgeboren yes (under key stillborn)
* Non connue (as Inconnu) * Unknown * Unbekannt yes
Père introuvable Untraceable father Vater unauffindbar
Mère introuvable Untraceable mother Mutter unauffindbar
Individu secondaire Secondary person Sekundäre Person
Référence extérieure Reference number Referenznummer
Sans union Unmarried Ledig
Santé Health Gesundheit
Signature Signature Unterschrift yes
Etiquette personnalisée Personalized flag Farblabel
Etat des recherches Research status Recherchestand
* Ne pas rechercher * No search record * Keine Recherche notwendig
* Faire des recherches * Search record * Recherche notwendig
* Introuvable * Untraceable record * Unauffindbar
* Recherches en cours * Search in progress * Laufende Recherche
Classement Archive Archiv

I've never added new strings for translation. I understood this is best done after merge of the code?

@fisharebest
Copy link
Copy Markdown
Owner

I've never added new strings for translation. I understood this is best done after merge of the code?

Yes. There's a script which scans the source code for I18N::translate(...) strings, which updates all of the .PO files to create new entries. This update gets pushed to github, and the translation server reads it from there.

Because it creates a large number of text changes (line numbers in the .PO files, etc.), it can add many MB to the size of the GIT repository. So I generally do it once per release.


Sorry for the ongoing delay. There are lots of new translations here, and I want to get them right before adding them to the .PO files, and creating work for the translators.

  • Some of texts aren't clear. e.g. what is "Geolocation of subdivisions". I'm guessing you simply got these texts from an online source, and might not know yourself.

  • Most controlled values get displayed after a label and a colon. For this reason, they are generally written in lower-case.
    e.g. "Quality of data: primary"

GEDCOM doesn't really have controlled values for level-1 facts. But many of these Heredis tags do. So lower-case values won't work here. e.g. this controlled value would need to be "Primary", not "primary".

Screenshot 2026-02-10 at 00 02 45

This mismatch prevents us from re-using the translations in other contexts. I wonder if there's another way to display them?

  • There is some inconsistency "Quality of completed citation" / "Quality of the source". ("the"). I also wonder whether "Quality of the source" is clearer than "Source quality" (or vice versa).

I might be over-thinking a lot of this... ;-)

@BertKoor
Copy link
Copy Markdown
Contributor Author

Sorry for the ongoing delay

No problem, I understand, since there's quite a backlog of chores and not that much free time to get things done.

There are lots of new translations here, and I want to get them right before adding them to the .PO files, and creating work for the translators.

If you could add a note "Do not bother to translate" (but I guess you can't) ;-)
The users needing this will predominantly be French. I've not seen a user of Heredis not being French.
We could probably get away with not doing any translations here and stick to French only, but that's not how we do things.

Some of texts aren't clear. e.g. what is "Geolocation of subdivisions".

I can show you some screenprints. I've installed the regular (French) "2025" edition and the "2025 World" edition which allows switching between English & German. That requires restart of the app so it's a laborous task. I've filled in some data, exported to GEDCOM and watched what tags & values it generates. These screens is all I have and it doesn't make things much clearer. This here is where there is a "subdivision" and on another tab you can fill the coordinates (latitude/longitude)
Screenshot 2026-02-10 at 16 58 29

Screenshot 2026-02-10 at 16 57 37

Some enumerations give away the translations in Heredis are not up to par, eg marital state is displayed as "Marriage" but the tag value itself is "MARRIED". I have left this exactly as I found it.

Most controlled values get displayed after a label and a colon. For this reason, they are generally written in lower-case.
e.g. "Quality of data: primary"

The values I did find in our own translations were with an upper case initial letter, eg Unknown. This is also how it is presented in Heredis. I would not be too fussy over that. Otherwise I have to add a context to all of them, so not to get the capitalization mixed up. Maybe do that?

@BertKoor
Copy link
Copy Markdown
Contributor Author

Maybe a bit more info is needed for tha subdivision thing. I've entered BIRT:PLAC = "London" and subdivision = "Soho".
Screenshot 2026-02-11 at 14 39 30
With the pencil you can locate it on the map:
Screenshot 2026-02-11 at 14 38 37

Upon GEDCOM export the head contains

1 PLAC
2 FORM Town, Area code, County, Region, Country, Subdivision

and the event is coded as:

1 BIRT
2 DATE 1800
2 PLAC London,,Greater London,,ENGLAND,Soho
3 MAP
4 LATI N51.508530
4 LONG W0.125740
3 _SUBMAP
4 LATI N51.515102
4 LONG W0.132559

which is rendered in webtrees as:
Screenshot 2026-02-11 at 14 58 06

The edit form in webtrees finally shows labels of the subdivision:
Screenshot 2026-02-11 at 14 59 14

and I have some more tweaking to do :-/
Screenshot 2026-02-11 at 15 00 32

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants