セクション

catn.vim : 行先頭に連番を挿入するスクリプト

作者: 小見 拓 最終変更 2010年01月11日 11時49分
— カテゴリ:

選択した範囲の行の先頭に連番を挿入するスクリプトです。Unixの"cat -n"。 (Windows, Mac)

概要

catn.vim : 行先頭に連番を挿入するスクリプト
http://indefero.taku-o.net/index.php/p/download/source/file/master/catn.vim

選択した範囲の行の先頭に連番を挿入するスクリプトです。

インストール方法

スクリプト をダウンロードして、
pluginディレクトリにコピーしてください。

ファイル URL
catn.vim http://indefero.taku-o.net/index.php/p/download/source/file/master/catn.vim

使用方法

コマンドのフォーマット

スクリプトをインストールすると、「:Catn」コマンドを使用できるようになります。
「:Catn」コマンドのフォーマットは3通りあります。
どのフォーマットのコマンドを呼び出す場合にも、連番を挿入する範囲を指定する必要があります。

" 指定した範囲の行の先頭に、1から始まる連番を挿入
:'<,'>Catn

" 指定した範囲の行の先頭に、指定した番号からの連番を挿入
:'<,'>Catn {開始値}

" 指定した範囲の行の先頭に、指定したフォーマットで指定した番号からの連番を挿入
:'<,'>Catn {フォーマット} {開始値}

指定した範囲の行の先頭に、1から始まる連番を挿入

「:Catn」コマンドにパラメータを与えないと、1から始まる連番を、 指定した範囲の行頭に挿入します。

public class Main {
  public static void main(String[] args) {
    System.out.println("Hello World");
  }
}

↑ 上のようなコードがある時に、連番を挿入したい範囲をビジュアルモードで選択するか、
コマンドラインモードで指定して、「:Catn」コマンドを実行すると、

" ファイル全体を対象に「:Catn」コマンドを実行
:%Catn

↓ 次のように連番を埋め込みます。

1 public class Main {
2   public static void main(String[] args) {
3     System.out.println("Hello World");
4   }
5 }

指定した範囲の行の先頭に、指定した番号からの連番を挿入

「:Catn」コマンドにパラメータを1つ、数値を与えると、
その数値から始まる連番を、指定した範囲の行頭に挿入します。
(パラメータで指定した数値を含む)

public class Main {
  public static void main(String[] args) {
    System.out.println("Hello World");
  }
}

↑ 上のようなコードがある時に、連番を挿入したい範囲をビジュアルモードで選択するか、
コマンドラインモードで指定して、「:Catn」コマンドに連番開始値を与えて実行すると、

" 1行目から5行目を対象に、連番開始値50を指定して「:Catn」コマンドを実行
:1,5Catn 50

↓ 次のように連番を埋め込みます。

50 public class Main {
51   public static void main(String[] args) {
52     System.out.println("Hello World");
53   }
54 }

指定した範囲の行の先頭に、指定したフォーマットで指定した番号からの連番を挿入

フォーマットを指定して、連番を挿入することもできます。

:'<,'>Catn {フォーマット} {開始値}

フォーマットには、vimエディタのprintf()ファンクションで使用できるフォーマットを指定します。
例えば、次のようにコマンドを実行すると、

" 数値8桁、0埋めのフォーマット
:%Catn %08d: 500

↓ 次のように連番を埋め込みます。

00000500:public class Main {
00000501:  public static void main(String[] args) {
00000502:    System.out.println("Hello World");
00000503:  }
00000504:}

半角スペースを入れる場合は、「\」でエスケープする必要があります。

" 数値8桁、0埋めのフォーマット。間に1つスペースを入れる。
:%Catn %08d:\  500
00000500: public class Main {
00000501:   public static void main(String[] args) {
00000502:     System.out.println("Hello World");
00000503:   }
00000504: }
ドキュメントアクション
コメント
{no}. {user_name}  {posted}
{message_body}

(必須)
氏名を入力してください。
Eメールアドレスを入力してください。
(必須)
送りたいメッセージを入力してください。
Recent Comment
EnhCommentify.vim : 複数のファイルタイプに対応したソースコメントアウト、コメントアウト解除スクリプト — 名無しのvim使い
==> anonymous [2010/03/22 06:32:47]
vimエディタから外部のプログラムやコマンドを実行する。 — 名無しのvim使い
==> 通りすがりnoです [2010/02/04 18:28:49]
==> 通りすがりの者です [2010/02/04 18:30:28]
==> 通りすがりのものです2 [2010/02/04 18:41:38]
PCに昨日初めてさわった人でもわかるgvim超々入門 (Windows、vim6) — 名無しのvim使い
==> anonymous [2009/11/05 11:57:11]
==> 佐藤 よしお [2009/11/27 15:53:34]
==> 小見 拓 [2009/11/27 18:40:42]
==> anonymous [2010/01/06 19:48:09]
Update Feed
RSS1.0 / RSS2.0 / ATOM