(1/2)エディタは世の中に星の数ほどあり、優劣はつけ難い。自分が一番使いやすいもの、慣れているものを使えばそれでよい。ときに備えて最低限マスターすべきエディタもある。});なぜviなのか?基本はviUNIXにおけるエディタの2大潮流は、viとEmacsです。System(以下X)を前提としたGNOMEやKDEに含まれるGUIベースのエディタも一般的になりつつあります。これらはWindows用のエディタと使い方が似ているのですが、Xの使えない環境では利用できません。Emacsは現代的なフルスクリーンエディタです。文字を打てば素直に反映されますし、X環境に対応したXEmacsもあります。ワークステーションでも持て余すほど巨大なプログラムの代表でしたが、最近のPCではEmacsといえどもちっとも鈍重には感じません。いずれにしてもエディタには一長一短があり、簡単に優劣をつけられません。普段は自分の気に入ったもの、使いやすいものを使用すれば問題ありません。非常時にはそうもいきません。システムクラッシュの回復時に使うべきエディタとして考えると、Emacsは複雑すぎます。サーバマシンなどではEmacsがインストールされていない可能性もあります。viがインストールされていないマシンはまずありません。7.1では、Emacsが/usr/binにあるのに対して、viは/binにあります。viは最低限必要なコマンドに位置付けられているわけです。viの特徴それでは、viの特徴を見てみましょう。何といっても、「モード」を持っていることが最大の特徴です。キー入力そのままに文字を入力する状態を「編集モード」、キー入力でviの機能を利用する状態を「コマンドモード」と呼びます。viの起動直後はコマンドモードであり、文字をタイプしてもその文字が入力されるわけではありません。文字を入力するには、[i](insert)や[a](append)などのコマンドを表すキーをタイプして編集モードに移行する必要があります。入力が終わったら、[ESC]キーを押してコマンドモードに戻ります。viを使うためには、どちらのモードになっているかを常に意識している必要があるということです(画面1)。最下部に「INSERT」と表示されており、編集モードであることが分かる2番目の特徴は、ラインエディタをベースとしていることです。ラインエディタといってもピンとこないでしょう。Windowsでは、edlinというラインエディタが用意されています。3.1にはすでにあった由緒正しいエディタですが、使ったことのある人はほとんどいないと思います。viやEmacsはフルスクリーンエディタで、常にテキストが画面上に表示されています。これに対して、ラインエディタはコマンドを駆使してテキストを表示・編集します。viの第1の特徴は、実はラインエディタをベースとしているという第2の特徴から必然的に導かれるといっていいでしょう。ラインエディタは、コマンドを知らないと使えませんし、慣れないと極めて使いにくいものです。大きな長所があります。それは、とにかく文字の入出力ができれば使えることです。詳しく説明すると、viやEmacsといったフルスクリーンエディタでは、画面を縦横に使った表示をするだけに、そのためのコントロールシーケンスを必要とします。画面の上から5行目だけを書き換えるといったことができなければなりません。Xやコンソールから使っていれば当然利用できる機能です。時としてシステムの調子がおかしくなったのをメンテナンスするとき、このコントロールシーケンスが働かなくなることがあります。シリアルラインからダム端末経由でログインしたときも、フルスクリーンエディタは使えないと思った方がいいでしょう。した場合でも、ラインエディタなら問題なく使えます。viの使い方、特にexモードの使い方を覚えておくと、いざというときに「ex」というラインエディタが使えて助かることがあるのです。システム管理者を志すなら、こうした事態にも備えておく必要があるでしょう。ちなみに、exはviのベースになったラインエディタの名前です。現在のLinuxディストリビューションでは、exもviも同一のファイルで、ハードリンクを使って別の名前のファイルとして用意されています。起動したときの名前に応じて、exとして動作するかviとして動作するかが決まるようになっています。メールマガジンをご購読ください。申し込みページへITmediaはアイティメディア株式会社の登録商標です。