Tools

Vim: 行番号の表示

投稿日:2016年7月1日 更新日:

Vim の行番号表示機能について説明します。

1. 前提とする環境

  • Vim 7.4

2. 行番号表示に関する設定項目

number (もしくは nu

  • 毎行の前に行番号を表示します。
  • この表示をしないことを明示的に指定する場合は、nonumber もしくは nonu を使います(デフォルトはこちらの設定になります)。
  • 参考: ‘number’ options – Vim日本語ドキュメント

relativenumber (もしくは rnu

  • カーソル行からの相対的な行番号を表示します。
  • この表示をしないことを明示的に指定する場合は、norelativenumber もし nornu を使います(デフォルトはこちらの設定になります)。
  • Vimの中で、:help relativenumber を実行してヘルプを見てみると以下のように説明されいます。

    カーソル行からの相対的な行番号を表示する。相対行番号を見れば縦移動のコ
    マンドでカウント指定 (|count|) を使うとき自分で数える必要がないので便
    利である。

  • 例えば、現在カーソルがある行の少し上の方にカーソルを移動したい場合、相対的な行番号が表示されていれば、目的の行の行番号をさっと見て 10であれば 10 k と入力すればよいのです。
  • 参考: ‘relativenumber’ options – Vim日本語ドキュメント

3. この設定項目を組み合わせて、4種類の表示形式を指定することができる

‘number’ options – Vim日本語ドキュメントに以下の説明があります。

‘relativenumber’ オプションは表示される番号をカーソルからの相対にす
る。’number’ と共にこれら4つの組み合わせがある。 (カーソルは3行目):

  'nonu'          'nu'            'nonu'          'nu'
  'nornu'         'nornu'         'rnu'           'rnu'

  |apple          |  1 apple      |  2 apple      |  2 apple
  |pear           |  2 pear       |  1 pear       |  1 pear
  |nobody         |  3 nobody     |  0 nobody     |  3 nobody
  |there          |  4 there      |  1 there      |  1 there

つまりこういうことです。

nonu + nornu

  • 行番号を表示しません。

nu + nornu

  • 通常の行番号を表示します。

nonu + rnu

  • 相対的な行番号を表示します。

nu + rnu

  • 相対的な行番号を表示しますが、カーソルがある行だけは、通常の行番号を表示します。

4. ~/.vimrc に記述する

4種類の中のどれかを指定するわけですが、何も指定しなければ、頭に no がついた方の設定が記述された場合と同じ結果になります。(nonu + nornu が記述された場合と同様に、行番号は表示されません)

また、2つの設定項目を記述する場合、1行で書くことも2行で書くこともできます。

1行で書く場合の例

set number relativenumber

2行で書く場合の例

set number
set relativenumber

5. できあがり

「カレント行は通常の行番号、それ以外は相対行番号」の設定を行った場合(nu + rnu)、以下のようになります。(色の設定も行っています)

vim-line-number

※ 画像をクリックすれば何度でも再生します。

📂-Tools
-,

執筆者:labo


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

JavaScript

npm のパッケージを最新版に更新する

目次1. npm のパッケージを最新版に更新するには?2. npm-check-updates を使ってプロジェクト内のパッケージを最新版にする手順1. npm-check-updates をインスト …

Evernote

【Evernote】検索でヒットするはずのノートが、ヒットしない場合の対処法

【Evernote】検索しても、特定のノートがヒットしない場合の対処法について説明します。

WSL

WSL (または WSL 2) から外付けストレージ側にアクセスできない場合の対処方法

WSL (または WSL 2) で外付けストレージ側に移動できない場合の対処方法を紹介します。

Linux

scp の代わりとしての rsync コマンドとそのオプション

1. はじめに scp コマンドというのは、ssh コマンドを内部で使って、ローカルホストとリモートホスト間でファイルをコピーするためのコマンドです。ssh コマンドは SSH という暗号化された安全 …

Vim

vi (vim) の終了手順について

私の vi (vim) 終了手順について書いています。