| J'utilise mutt avec ce superbe éditeur qu'est VIM. Après un long apprentissage et des heures de lectures de lignes de script VIM, j'ai modifié une fonction qui permet d'ajouter des alias mutt dans VIM.
Cette fonction est basée sur celle de Luc HERMITE et à l'avantage de n'insérer des alias que sur les lignes adéquates (To, Cc, Bcc) alors qu'à l'origine les alias sont placés sur la ligne où est positionné le curseur.
Voici donc cette fonction :
"Champs désigne la ligne d'insertion
"alias ...
func! AppendAlias(champs,alias)
"on se positionne au début du fichier
normal 1G
"on recherche la ligne commençant par champs
"et on sauvegarde la ligne qui va bien
exe '/^' . a:champs
let l = line('.')
"on recherche l'alias dans le fichier mutt
"(cf macro de Luc)
let addr = GrepAlias(a:alias)
"ici je teste si c'est la première insertion d'un alias
if getline(l) !~ '^.*>$'
call setline(l,getline(l).addr)
else
"sinon je prends la ligne à laquelle je rajoute une ',' séparatrice et l'alias
call setline(l,getline(l).','.addr)
endif
endf
Voilà c'est tout.
Après ça il suffit de créer les mappings qui vont bien comme suit :
command! -nargs=1 Ca :call AppendAlias('To:\s*',)
noremap ,Ca :Ca
command! -nargs=1 CA :call AppendAlias('Cc:\s*',)
noremap ,CA :CA
Libre à vous dee rajouter les Reply-To et autre Bcc
Ensuite dans le mode mail il suffit de taper en mode normal ,Ca pour ajouter un alias dans le champs 'To' et le tour est joué !!
Happy viming !
:-)
|