Supprimer plusieurs lignes par adresse

8

Je regardais ce défi vimgolf , et j'ai pensé qu'il serait bien de supprimer des lignes spécifiques par adresse. Je sais que je peux le faire avec :<line_number>d, mais existe-t-il un moyen de répertorier plusieurs numéros de ligne pour dêtre exécuté? J'imagine quelque chose comme ça:, :1,4,32dmais bien sûr, cela ne fonctionne pas.

Comment cela se ferait-il?

Sauce McBoss
la source

Réponses:

6

La |commande bar peut être utilisée pour séparer plusieurs commandes dans une seule instruction de commande.

Votre exemple pourrait être écrit comme :1d|4d|32d

http://vimdoc.sourceforge.net/htmldoc/cmdline.html#:\bar

ewatt
la source
1
Cela exécute les commandes de manière séquentielle - :1d|4dsupprimera donc la première ligne, puis supprimera la quatrième ligne, qui était la cinquième ligne avant la suppression de la première ligne. Le faire à l'envers lui permettrait d'être plus intuitif - :32d|4d|1d.
evilsoup