Comment créer plusieurs lignes ayant le même contenu, exception faite d'une (ou plusieurs) valeur numérique qu'on incrémente ou décrémente ?
On va prendre comme exemple le type qui veut générer
<option value='0'> 0 </option> <option value='1'> 1 </option> <option value='2'> 2 </option> ... <option value='42'> 42 </option>
|
La solution est assez intéressante car elle fait appel aux marqueurs (mark) et aux registres (recording).
D'abord on écrit la première ligne :
<option value='0'> 0 </option>
On se place sur le premier nombre et on place un marqueur qu'on va nommer n :
mn
On se place sur le second nombre et on place un marqueur p :
mp
On commence l'enregistrement d'une séquence de commandes qu'on va nommer a :
qa
La séquence en question :
YP`n<CTRL-a>`p<CTRL-a>
Fin de l'enregistrement :
q
Explication de la séquence :
On copie la ligne courante, on la colle juste au dessus :
YP
On se rend au marqueur n et on incrémente grâce à CTRL-a :
`n<CTRL-a>
Idem pour le marqueur p :
`p<CTRL-a>
Maintenant on peut exécuter la séquence autant de fois qu'on veut avec @a
Par exemple 42@a (pour 42 fois)
Message édité par Xavier_OM le 11-03-2009 à 16:06:50
---------------
Il y a autant d'atomes d'oxygène dans une molécule d'eau que d'étoiles dans le système solaire.