Vim

Script gedcmod pour Vim


[Index] [Index Vim]

Télécharger le script de saisie Vim7 pour LifeLines.

Explications publiées sur fr.comp.applications.genealogie

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=)

Date de dernière modification : samedi 22 novembre 2008.