<aside> <img src="/icons/list-indent_blue.svg" alt="/icons/list-indent_blue.svg" width="40px" /> Table des matières

<aside> <img src="/icons/chat_blue.svg" alt="/icons/chat_blue.svg" width="40px" /> 📢 Français

📢 English

</aside>

</aside>


Untitled

<aside> <img src="/icons/light-bulb_yellow.svg" alt="/icons/light-bulb_yellow.svg" width="40px" /> Une idée saugrenue m’est passée par la tête: voir si je trouvais des fichiers Gedcom en ligne puis dans l’affirmative si j’en trouvais avec des données qui pourraient m’intéresser.

Ici la recherche Google de fichiers avec l’extension GED et contenant le nom de ville Mohon:

filetype:ged mohon - Google Search

Et là, un fichier Gedcom trouvé suivant ces critères, fichier que j’ai téléchargé:

</aside>

Préparation de mes données

Je vais utiliser ce filtre assez souvent. Il affiche les individus qui ont un ou plusieurs événements personnels ou familiaux à Mohon ou mentionnent une source dont le titre contient Mohon:

Untitled

En premier lieu, je vais l’utiliser dans ma base principale pour extraire un fichier de sauvegarde Gramps (non compressé - on va voir pourquoi ensuite) composé des différentes informations relatives aux individus retournés par ce filtre:

Untitled

J’importe ce fichier dans une nouvelle base créée pour l’occasion que je nomme Mohon et je mets à tous les individus une belle étiquette de couleur jaune vif histoire de pouvoir ensuite repérer les miens de ceux du Gedcom:

Untitled

Untitled

Préparation des données provenant du Gedcom

Dans une seconde base temporaire, j’importe le Gedcom trouvé sur Internet:

Untitled

Et je le normalise un peu en mettant les noms en minuscules avec seulement l’initiale en majuscule afin qu’il soit similaire au mien:

Untitled

Puis je l’exporte lui aussi au format de sauvegarde Gramps, là aussi non compressé.

J’ouvre alors mes deux fichiers de sauvegarde Gramps dans un éditeur afin de récupérer les groupements de noms que j’utilise dans ma base principale et les mettre dans le fichier obtenu à partir du Gedcom (le dernier paragraphe du fichier nommé namemaps que je copie d’un fichier à l’autre), ça m’évite ainsi de devoir refaire ces regroupements manuellement lorsque j’aurais réuni les deux fichiers dans une seule base.

Untitled

Import et réconciliation des données des deux sources

Import

Après enregistrement de ce fichier modifié, je peux venir l’importer dans la base Mohon qui ne contient pour l’instant que mes informations. Je me retrouve alors avec des individus qui proviennent des deux fichiers; les miens en jaune et ceux issus du fichier Gedcom que j’ai retravaillé en blanc:

Untitled

On voit dans l’image précédente que les regroupements de noms ont bien fonctionné puisque dans chaque groupement on voit des lignes blanches et jaunes.

Réconciliation

Parmi les petits problèmes à corriger lors d’un import Gedcom il y a celui du rapprochement des noms de lieux. Je me retrouve en effet avec les lieux provenant de ma base et ceux provenant du Gedcom. Pour l’occasion comme le seul qui m’intéresse de corriger pour l’instant c’est Mohon, je vais simplement fusionner les deux lieux Mohon en un seul, cela permettra à mon filtre y recherchant les événements des individus de s’y retrouver:

Untitled

Utilisation des deux sources d’informations réunies en une

Je n’ai plus maintenant qu’à faire tourner mon filtre dans la vue Individus afin ensuite de voir s’il y a des personnes communes à nos deux bases, comme c’est le cas par exemple ici avec Vincente Boudart. La base issue du Gedcom (en blanc) m’apportant la date de naissance précise que je n’avais pas dans mes données (en jaune):

Untitled

Conclusion

Largement plus pratique que d’aller chercher les informations une à une sur Geneanet ; en publiant mon arbre généalogique sur mon site web, je vais désormais sélectionner l’option permettant à la possibilité de télécharger mon Gedcom d’être incluse sur une des pages du site. Je le faisais il y a longtemps lorsque j’utilisais PAF, je vais reprendre cette bonne habitude de partager mon Gedcom. Cà permettra peut-être à d’autres de se l’accaparer et de travailler avec comme je viens de le faire ici. Et accessoirement, ça fera une sauvegarde supplémentaire de mes données.


Annexes

SuperTool: Tri des individus groupés dans l’ordre alphabétique des prénoms

J’ai ajouté dans mes préférences un format de nom qui me permet de trier les individus par leur prénom et développé un script SuperTool pour l’appliquer aux individus que j’ai regroupé lorsqu’ils avaient des patronymes similaires.

Le format de nom

Il faut ajouter un format de nom Prénom + Nom dans les préférences d’affichage (sans s’en servir pour autant, ce n’est pas une obligation, personnellement ma préférence est sur le premier format, celui par défaut: Nom + Prénom + Suffixe). Il faut aussi que ce soit le dernier de la liste ou il faudra modifier le script.

Untitled

Le script

Pour trier dans l’ordre alphabétique des prénoms les individus groupés parce qu’ayant des patronymes similaires (ex: Coehetuhan, Couhetuhan), j’utilise ce petit script Supertool qui se charge de faire le travail, il se base sur le fait que j’ai un mis caractère dans tous mes regroupements, il s’agit d’un chevron (”<<”) qu’il reconnait dans le nom du groupe. Il utilise aussi le dernier format de nom indiqué dans les préférence (le sort_order = -1 du script ci-dessous, si on voulait utiliser un autre format il faudrait lui indiquer un autre numéro, -1 représentant le dernier de la liste, -2 l’avant-dernier et ainsi de suite).

[Gramps SuperTool script file]
version=1

[title]
Individus - Sort_as des individus groupés

[category]
People

[initial_statements]
# La dernière entrée du Format des noms dans les Préférences doit être: Prénom, Patronyme[nom]
# /!\\ Ne pas cocher Commit Changes, le commit est explicite dans le script

sort_by_fn = True # Par prénom -> True; Par nom -> False 
symbole_groupement = "<<"

if sort_by_fn:
    sort_order = -1
else:
    sort_order = 0

[statements]
nobjs = nameobjs
if symbole_groupement in db.get_name_group_mapping(nobjs[0].get_group_name()):
    modifie = False
    for n in nobjs:
        if n.get_sort_as() != sort_order:
            n.set_sort_as(sort_order)
            modifie = True
    if modifie:
        db.commit_person(person, trans)

[filter]

[expressions]

[scope]
all

[unwind_lists]
False

[commit_changes]
False

[summary_only]
False

Résultat

Avant passage du script ça donne ceci dans les groupements (ex.: dans le groupement Couhetuhan, Perrine est positionnée avant Anne):

Après, l’ordre alphabétique des prénoms est respecté quelque soit l’orthographe du nom:

Untitled



<aside> <img src="/icons/arrow-turn-left_blue.svg" alt="/icons/arrow-turn-left_blue.svg" width="40px" /> Retour au blog Ma généalogie avec Gramps

</aside>

<aside> <img src="/icons/info-alternate_blue.svg" alt="/icons/info-alternate_blue.svg" width="40px" /> Et pour en savoir plus


Ma généalogie avec Gramps

Gramps. Présentation

Mon Gramps

</aside>

<aside> <img src="/icons/shuffle_blue.svg" alt="/icons/shuffle_blue.svg" width="40px" /> Une page au hasard


Untitled Database

</aside>

<aside> <img src="/icons/info-alternate_blue.svg" alt="/icons/info-alternate_blue.svg" width="40px" /> Articles sur les mêmes thématiques


Untitled Database

</aside>