Script gedcmod pour Vim |
Télécharger le script de saisie Vim7 pour LifeLines.
Bonjour, Je viens de mettre mon script Vim (7.0 ou +) d'aide à la saisie gedcom [...]. Le script utilise les replis. Si cela ne vous est pas familier : - zR ouvre tous les replis. - zM ferme tous les replis. - za bascule ouverture/fermeture du repli de la ligne courante. Il faut copier gedcmod.vim dans le répertoire ftplugin utilisateur, normalement : ~/.vim/ftplugin/ sous Unix [...]vim\vimfiles\ftplugin\ sous Windows Dans ce répetoire, créer (ou modifier) gedcom.vim avec la ligne : source gedcmod.vim Ajouter le chemin des fichiers de lieux et de sources dans .vimrc let g:Gedcmod_plfile = 'c:\lifelines\outputs\vimplac.txt' let g:Gedcmod_srcfile = 'c:\lifelines\outputs\vimsrc.txt' let g:Gedcmod_namefile = 'c:\lifelines\outputs\vimname.txt' let g:Gedcmod_lifelines = 1 Cette dernière ligne permet d'afficher les libellés de sources pour LifeLines. Copier les programmes LifeLines dans le bon répertoire, modifier éventuellement les noms de fichiers en sortie et les exécuter pour créer les fichiers de lieux, sources et noms. On dispose maintenant du complément utilisateur pour les lieux, sources et noms. Après la saisie de 2 PLAC, on commence par taper le début du lieu et on tape CTRL-X CTRL-U pour avoir la listes des lieux correspondants Après la saisie de « La », il m'est proposé :
Si la ligne commence par un niveau et SOUR, le complément cherche les sources par auteur et titre et renvoie la clé du pointeur. On peut bien sur utiliser les expression régulières de Vim pour la chaîne à rechercher. 2 SOUR .*1906 me renvoie toutes les sources qui contiennent 1906 :
Si la ligne commence par 1 NAME et contient un /, c'est la recherche d'un nom qui est proposée :
Cette recherche peut prendre un peu de temps et ne devrait être utilisée que ponctuellement : quand on utilise le même nom, il est plus efficace de le stocker dans un tampon ("ny) Le script contient aussi : - la définition de "placeholders" pour sauter d'un emplacement réservé à la saisie vers le suivant en utilisant <CTRL-J>. Je n'utilise pas <++> comme généralement car LifeLines l'utilise pour les XREF. Il faut donc utiliser [+libelle+]. J'ai par exemple dans mon linesrc : INDIREC=0 INDI\n1 NAME [+firstname+]/[+surname+]/\n1 SEX [+sexe+]\n1 DEAT Y Il n'est pas conseillé du tout de laisser les TAGS vides du paramétrage par défaut : ils vérifient les tests du type if(birth()). - la définition de quelques tags gedcoms comme abréviations (g suivi du tag en majuscules). Les "placeholders" sont utilisés pour les lignes à compléter. Ex : iab gOBJE 1 OBJE^M2 FILE [+filename+]^M2 FORM [+filetype+] nb : on saisit ^M avec <CTRL-V><CR> (<CTRL-Q><CR> sous Windows). [1] C'est bien gVim Windows, mais avec toutes les options d'interface graphiques virées (set go=)