記録モードを使ってみた

記録モードを使って、テスト用の XML データを作ってみた。

<?xml version="1.0" encoding="UTF-8" ?>
<items>
<item id="0">
<hoge>hoge0</hoge>
<foo>foo0</foo>
<bar>bar0</bar>
</item>
</items>

このような XML の、item ノードを、数字をインクリメントしつつ増やすのが要件。

まず item ノードの先頭 (line 4) にカーソルを置き、

qavjjjjjy6jP^Aj0^Aj0^Aj0^Akkk0q10@a

を入力する。やっていることは、ビジュアルモードでヤンクペースト (qavjjjjjy6jP) して、数字をインクリメント (^Aj0^Aj0^Aj0^Akkk0) して、最後に記録されたコマンドを実行 (q10@a) している。^A は CTRL+A を表している。

結果はこうなる。

<?xml version="1.0" encoding="UTF-8" ?>
<items>
<item id="0">
<hoge>hoge0</hoge>
<foo>foo0</foo>
<bar>bar0</bar>
</item>
<item id="1">
<hoge>hoge1</hoge>
<foo>foo1</foo>
<bar>bar1</bar>
</item>
...
<item id="11">
<hoge>hoge11</hoge>
<foo>foo11</foo>
<bar>bar11</bar>
</item>
</items>

記録されたコマンドはレジスタに入っているので、:reg で確認できる。