Salut, Je suis intrigué par le titre de ton message ... Pourquoi continues-tu à utiliser des autocommands ? Procéder avec les mail ftplugins est bien plus propre.
* On Wed, Jan 15, 2003 at 01:18:06PM +0100, Sébastien MICHEL <[EMAIL PROTECTED]> wrote: > Je suis entrain de revoir mes fonction de remise en forme > de mail. > Voici ce que j'ai pour l'instant > map ;vide :0<CR>/^$<CR> > map ;par ;vide<CR>:.,$normal vgq<CR> > > voici ce que je veux faire: > map ;para ;vide<CR>/^.\{75\}.\+$<CR>v/\.$<CR>gqj Utilises &tw plutot que 75. Comme ça si un jour tu veux changer de valeur ou en faire profiter d'autres personnes, tu n'auras rien d'autre à faire qu'un : :set tw=72 Sinon, j'imagine que tu considères que les paragraphes sont délimités par des points et non par des lignes vides. > mais j'aimerai le faire dans une boucle du genre > while /^.\{75\}.\+$ > ;para > endwhile > L'ideale serai de ne pas touche ma signature aussi... ;) > je vais essayer de remplacer ce while par un g// pour eviter > la creation d'une fonction mais c'est pas gagné ;p Faire des fonctions n'a rien de sale. C'est bien plus lisible et maintenable que les mappings 100 vi (sans 'm'). Pourquoi pas un truc du style (pas testé): function s:Toto() let pos = line('.') normal! G let fin = search('^-- $', 'b') if fin <= 0 | let fin = line('$') | endif exe pos while pos < fin let pos = search('^.\{'.&tw.'}.\+$', 'W') " Sans le 'W', la function pourrait boucler et revenir à la " section des entêtes. Chose que fait aussi '/' si 'wrapscan' " n'est pas mis à faux. if pos <= 0 break endif :normal! gq/\.$j " forme simplifiée sans passer par 'v' vu que 'gq' nous laisse " dans l'/operator-pending mode/, cf |motion.txt| " :normal! gq'} " +--> pour: jusqu'à la fin du paragraphe plutot que le point " suivant. Tout le monde ne pense pas à mettre des points " à la fin ses phrases. Sauter des lignes est plus " fréquent. endwhile endfunction :nnoremap ;doit gg'}:call <sid>Toto()<cr> Par contre, c'est totalement inadapté à des messages comme celui-ci qui contient du code. -- Luc Hermitte http://hermitte.free.fr/vim/mail.php3