vim で連番を入力(キーボードマクロ利用)

カーソルを最初の数字がある行に移動し、ノーマルモードで以下のコマンドを実行する。

qayyp12l<C-a>q8@a

<ul>
    <li id="hoge0"></li>
</ul>

実行結果

<ul>
    <li id="hoge0"></li>
    <li id="hoge1"></li>
    <li id="hoge2"></li>
    <li id="hoge3"></li>
    <li id="hoge4"></li>
    <li id="hoge5"></li>
    <li id="hoge6"></li>
    <li id="hoge7"></li>
    <li id="hoge8"></li>
    <li id="hoge9"></li>
</ul>

スクリーンキャスト

コマンドの詳細

qa
レジスタ文字(ここでは a を使用)にキー入力の記録を開始する。
yyp
カーソル行をカーソル行の下にコピー&ペーストする。
12l
lを12回実行し、数字上までカーソルを移動させる。
<C-a>
カーソル下の数字をインクリメントする。(<C-x>でデクリメントできる)
q
キー入力の記録を停止する。
8@a
レジスタ文字(ここでは a を使用)に記録されたキー入力を8回実行する。
ViIMproved‐Vim完全バイブル
Steve Oualline 高橋 則利
技術評論社
売り上げランキング: 247818
«
»