Quantcast
Viewing all articles
Browse latest Browse all 5712

vimで簡単にインクリメント

はじめに

vimでインクリメント、連番を簡単に入力出来たらな。って思った事はありませんか。
私は、IPアドレスを連番で入力している時にふと思いました。
そこで、vimのマクロ機能を使えば出来る事が発覚。
早速やってみました。

目標

192.168.1.1

これだけが入力された状態で、各行にIPアドレスが入り、192.168.1.225までの連番を登録出来るようにしてみます。

マクロの登録

vimは、 qの後にアルファベット1文字で、マクロを記録するモードに入ります。
今回は、aという文字に対して登録してみようと思います。
マクロに登録する内容としては、下記のようにしてみます。

  • 1行をコピーして、次の行に貼り付ける -> yyp
  • 貼り付けた文字列の行末に移動 -> $
  • 数字をインクリメントする -> Ctrl+a

Image may be NSFW.
Clik here to view.
test.gif

マクロを使って、255までを入力してみる

登録したマクロは、@+[アルファベット]で利用可能です。
[アルファベット]の部分はマクロを登録するときに指定した、qの後に押した文字になります。
今回は、qaと入力したので、@aと入力すれば、インクリメントされた番号が次の行に貼り付けられます。

マクロは繰り返して使える

@aと入力すると、登録されたマクロを実行しますが、[数字]@a(例えば、5@a)のようにすると、数字で指定した回数分が連続して実行されます。

目的を果たして見る

さて、では最初に目標としていた、192.168.1.1だけ入力された状態から、192.168.1.225までコピペを実現してみます。

コマンドとしては、192.168.1.1の行で、254@aとすれば良さそうです。

↓は実際に実行してみた結果です。

Image may be NSFW.
Clik here to view.
test2.gif


Viewing all articles
Browse latest Browse all 5712

Trending Articles