検索
連載

Linuxの定番テキストエディタ「vi」をマスターしよう(2)検索/オプション活用編“応用力”をつけるためのLinux再入門(19)(2/3 ページ)

「vi(vim)」は、ターミナルで使用する「テキストエディタ」です。前回は起動と終了、カーソル移動を中心とした基本操作を紹介しました。今回は、ファイルの編集時にはもちろん、閲覧のみの場合でも便利な「検索」と「オプション」の使用方法について簡単な例で紹介します。

Share
Tweet
LINE
Hatena

オプションの使い方をマスターしよう

 vi(vim)にはさまざまなオプションがあり、細かい制御が可能です。オプションは「設定ファイル(/etc/vimrc(※)および~/.vimrc)」の他、viの実行中に「:set」コマンドでも設定を変更できます。

【※】Ubuntu環境の場合は「/etc/vim/vimrc」を使用。また、「/etc/vim/vimrc」から「/etc/vim/vimrc.local」を読み込むよう設定されている。



 オン/オフを切り替えるタイプのオプションの場合は、「:set オプション」でオン、「:set noオプション」でオフになります。例えば、ハイライト表示(hlsearch)は「:set hlsearch」でオン、「:set nohlsearch」でオフになります(後述のオプション例参照)。

 文字列や数字を設定するオプションの場合は、「:set オプション=値」のように指定します。「:set オプション」のみで実行すると、現在の設定値が表示されます(後述のオプション例参照)。

 「:set」だけを実行すると、現在、既定値とは異なる状態になっているオプションが一覧表示されます(画面3)。

画面3
画面3 「:set」で既定値とは異なる状態になっているオプションを確認できる

●コマンドやオプションの補完

 コロン(:)コマンドに続けてコマンドやオプションを入力する場合は、「:se」まで入力して[Tab]キー([Ctrl]+[I]キー)による補完が可能です。

 例えば、「:set hlsearch」であれば、「:se[Tab]キー スペース hls[Tab]キー」で入力できます。複数の候補がある場合は、[Tab]キーを複数回押すと別の候補が表示されます。

 省略表記があるオプションも存在します。例えば、「:set hlsearch」は「:set hls」、「:set nohlsearch」は「:set nohls」で実行できます(「:set」は「:se」でも可)。

 なお、「nohlsearch」はオプションだけでなく、コマンドにもなっており、「:nohl」(:nohlsearch)のみで実行できます。

●設定ファイル

 vimは、設定ファイルとして「/etc/vimrc」および「~/.vimrc」を使用します。この設定ファイルには、コロンコマンドで実行したい内容を直接記述することができます。つまり、「hlsearch」を設定したい場合は、「set hlsearch」のみ記述します。

 例えば、CentOSの場合、「/etc/vimrc」でカラー表示が可能な端末ではハイライト表示がオンになるように設定されています。

「/etc/vimrc」(CentOS 7の設定例)

" Switch syntax highlighting on, when the terminal has colors

" Also switch on highlighting the last used search pattern.

if &t_Co > 2 || has("gui_running")

syntax on

set hlsearch

endif


 普段はオフにしたいという場合は、ホームディレクトリの「.vimrc」に「set nohlsearch」という行を追加します。以下のコマンド実行例では、「echo」コマンドで「~/.vimrc」に設定行を追加しています。リダイレクトに「>>」を使用しているので、既にファイルがある場合は追記、ファイルがない場合は新規作成となります。

echo set nohlsearch >> ~/.vimrc

(「~/.vimrc」にハイライト表示をオフにする行を追加する)


 viで編集したい場合は「vi ~/.vimrc」コマンドを実行します。編集用のコマンドについては次回解説します。

 なお、起動時に「-f」オプションを追加することで、設定ファイルを指定することができます。設定ファイルを指定せず、デフォルトのみの設定で起動したい場合は「vi -f NONE ファイル名」のように指定します。

Copyright © ITmedia, Inc. All Rights Reserved.

ページトップに戻る