Vimとは

今更過ぎて聞けない、テキストエディタの知識

Vimとは

慣れている人でなければ難しいテキストエディタ

パソコンという便利な物が出来てから相当の時間が経過し、現代社会となった今では日本だけで考えるともはや一家に一台パソコンを備え持っている事が当然の世の中になっている。少し前、それも10年以上前で考えればパソコンを持っている家庭はかなり稀だった。どうして必要になったのかは、政府が推し進めたIT革命なる産業の押し出しも関係しており、更にそれに便乗するように企業が商品として利用するためインターネットを利用したサービスを続々とリリースしていった。やがてパソコンを持っていなければ何も出来ないとまで、既存のサービスではありえなかったサービスをインターネットを介さないと利用することができないといった、そんな驚くような変遷を行ったところもある。使えないと取り残される、そんな意識を持って購入することになった人もいれば、単純に仕事を始めとした生活の一部として導入しても問題ないものとして扱われるようになっていった。

こうした状況を踏まえて考えてみると、政府の目論みはまんまと成功したといえるだろう。先進的に内部に取り入れていた企業もそれなりに存在していたが、それまでパソコンを使っているのはごく一部の職種の人という固定観念を完璧に覆し、誰でも使用する生活必需品とまで呼ばれるようになった。だが、パソコンとはそれでも本来の性質からは全く外れていない、高性能端末としての意義は揺るがない。だが性能が高すぎるがゆえ、それに依存して何も問題が起こらないと高を括っていると意外に困ったことになったりする場合もある。良い例がシステムエラーなどが発動した場合という点だ、筆者もそういう意味では度々解決方法を模索するために友人などに尋ねては何とか潜り抜けたが、今現在でも見た事ないようなイレギュラー事項に遭遇した場合には、悪戦苦闘するときはある。直ぐに解決出来ればいいが、そこまで簡単に物事を押し進めることが出来ない場合が多く、困ったことにその原因を突き止める事が出来てもそれがどうして生じてしまったのかという、過程を理解することができない、といったこともよくあることだ。

エラーについては解決しようと思えば出来るので良いとしてもだ、パソコンの機能をフルに使いこなせていると質問されたとき、どれ程の人がその機能を存分に活かしきれているか考えて見たい。予想の域を超えないが、それでも大半の人が必要最低限使用することが出来るソフトやアプリケーションを利用しているだけに留まっているのではないだろうか。実際筆者も、パソコンを生かしたソフトを活用しているかと聞かれると、とてもではないがYESとはいえない。専門的に使用しているわけでもない限りは自分が不便さを感じていない部分で満足できていればそれで良い、そんな風に考えている。

しかしそれでは少しもったいない場合もある、というのもパソコンに初期から搭載されている機能だけでも十分だと感じながら、外部で新たに製作されたソフトの使い勝手がとても良いと言う場合がある。例えばだ、初期搭載として頻繁に見かける機能として『メモ帳』のようなテキストエディタなどを利用している人は多いはず。ただ専門職として仕事で活用しなければならない人にしてみれば、メモ帳では使いづらい場合に出くわすことも少なくない。そんな人達は使い勝手が便利なテキストエディタを利用しようと思う、その代表格として『Vim』というものがある。こちらのテキストエディタを仕事で利用している人は少なくない。ただ此方は初心者でも利用しやすいかと聞かれたらそうではなく、どちらかといえば中・上級者が利用しているものとなっている。

そんなVimと呼ばれるテキストエディタとは何か、少し考察して行こう。

こちらもやはり、いちプログラマーが製作した事が原点だった

以前筆者は圧縮解凍プログラム、Lhazを開発したちとら氏を個人的に調査したことがある。彼の人の場合、Lhazを開発した理由には自分が使いやすい物がなかったから作った事がきっかけで、今日まで

に広く知れ渡っているものとなっている。過程でさまざまな改良を施しての到達となっているのはもちろんだが、この事例ではテキストエディタであるVimも同様のことが言える。どういうことかというと、元々このVimを開発したのはやはりとあるプログラマーが製作した者という点までそっくりなのだ。製作したのは『Bram Moolenaar』というオランダ人で、やはりこちらも自分に使い勝手がいいエディターがないとのことから製作した経緯となっている。使い勝手がいいものがないという話だが、やはり彼もまた世界的にパソコンが最新鋭過ぎた時代、1980年代後半においての話だ。この頃ではまだソフトに関してだけ言うなら、専門的に扱っている人はこう言ってはあれだがおざなりに作成されたソフトを利用していたことになる。

ブラム氏はその頃使用していたパソコンとは、欧州で人気を博していた『Amiga』を使用していたのだが、その際にテキストエディタとして一般的に利用されていた『Vi』を利用しようとする。ところが、AmigaにはViが搭載されていないのはもちろん、対応していなかったために困り果ててしまう。このViとはその頃人気だったテキストエディタであり、これが後に続くVimとしてまた面白い進化を遂げることになるのだった。どういうことかというと、ブラム氏はViを使用していないのならどうしたのかというとなんとそのクローンを用いて性質は良く似ているが異なるものとして、Vimを作り出したのが全ての始まりである。


ViとVimの異なる点

クローンとして誕生したVimだが、基本的な性能として原形としてモチーフとしている部分は大きい。では具体的にどんなところが異なっているのかというと、それは次のようなものになる。

  • マウスを使わず、キーボードで操作する
  • カーソルキーを使用するかどうか
  • 画面上における命令となる手段を覚える必要がある

主な点としてはこの三つがViからVimとして活用されるようになった際においての点で、異なる。まだ1980年代後半頃ともなればマウスを使用する機会はほとんど存在しておらず、全ての作業をキーボードの操作1つで行われていた。この点で考えてると分かるのは、慣れてくれば作業効率は格段に上がるといえるが、そうでない場合の初心者がViを利用するとなったらまずは操作方法から覚えなくてはならない。そしてブラインドタッチの如くキーボードを見ないで打てるようになるまでには相当の訓練を必要とする。

現在ではこれらの操作も一般化されたことにより、マウスやカーソルキーなどを利用できるようになっているため、使い方としてみた場合には進化していると見て良い。ただこれらの特徴は決して欠点と分類されるのではなく、あくまで長所とした見方を持っておいたほうが良いという意見も存在している。

Vimの主な特徴について

ではそんなやはり個人のプログラマーが自分が利用しやすいものとして開発したテキストエディタであるVimとはどういうものなのかというと、コンセプトとしてはオリジナルの性能にいかにして近づくことが出来るかどうかに掛かっていた。新たに製作するとなればやはりオリジナルの二番煎じに甘んじるのは開発者としていかがなものだ、となるとやはりそれ以上に性能の高いものを開発しようとする意思が働いてもおかしくはない。やがてそんなブラム氏はViを遥かに超える開発を行ないたいと思うようになり、その願望は実現するものとなりViを超えるソフトとして誕生するのだった。それを記念して『Vi IMproved』という名称が用いられて、現在では多くのプログラマーに利用してもらえる優れたテキストエディタとして活用されている。

そんなVimとはどんな機能を持っているのかなど、少し特徴をピックアップするとこんな物がある。

  • 基本的な操作はViと同じ、キーボードを使用した作業となる
  • マウス操作を用いるCUIでも機能し、そのCUIにしかない機能も搭載されている
  • 自分なりの自己流改造を行うことが出来る

このように、本来のViに備わっていた機能を原形として利用することが出来るのはもちろん、Viにはなかった特徴としてオリジナル改良を施すことが出来るようになったのがVimというクローンの進化形となっている。ただこうした機能はあくまで英文においてのみ有効に機能するモノで、日本語で使用するとなったら不便さが出てしまうものとなっているため、専門的な人が利用するものだという事が理解出来るだろう。

肥大になりすぎた結果

誕生してからバグなどのエラーなどが発生した際には改良し、そして年月を経る毎に更なる機能が追加されるなど発展はとめどなく行われた。誕生してから25年という時間が経過したが、それによりかなり煩雑なアプリケーションとなってしまったことは否めず、こうした状況を改善すべく現代アーキテクチャに作り変えようとする動きも今年になって出始めた。肥沃さがあっていいことだろうと取れるが、それも少々加減しないと折角の高機能も宝の持ち腐れとなってしまうこともある。だからこそ内部から一新することによって、問題が生じた際にはメンテナンスがしやすくなるようにとのことで、より自由度の高い機能を提供できるように改良が勧められているVimである。

言語開発

    ↑ ページの上部へ