LoginSignup
10
10

More than 5 years have passed since last update.

vim キーボードマクロで連番(シーケンス) を生成する

Posted at

概要

数値にカーソルを合わせてCtrl + a でのカウントアップを利用して
連番の文字列を生成する

8/16進数になっちゃう

デフォルトだと「01」等の0から始まる数値は8進数になってしまうため、(0x01だと16進)

:set nrformats=

によって、数値インクリメントオプションをクリアし、10進数としてカウントアップするようになる

キーボードマクロの作成

host01
host03
host02
host04

等の連番文字列を作る場合の例

まず1行目を普通に書く

host01

カーソルを1行目にあわせてキーボードマクロの記録を開始する
qa でマクロ記録開始
次に、行をヤンクyy
次に、行をペーストp
次に、行末に移動$
次に、カウントアップCtrl+a

ここまでをマクロに保存 q

キーボードマクロの再生

記録したマクロは@aで再生できる
再生する際に10@aとすると10回再生が繰り返される

host01
host02
host03
host04
host05
host06
host07
host08
host09
host10
host11
host12

ちなみにhost-01をCtrl+aでカウントアップすると
host00 になります。 -1が0になったという感じですね。
この回避方法は何かあるとは思うのだけど調べてません。

10
10
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
10
10