あって当然と思っていたものが
4月2日の日記に書いたように、ここしばらくの間は XFS ベースのシステムを使っていたのだけど、大きなファイル操作をしているときに background で仕事をしていると重くて重くて仕方がない。まあ覚書とかで、システムの復旧にそう手間がかからない状態なので、今日の空いた時間を使って、エイヤっと ext4 上に再度システムを構築し直した。
こういうときは、squeeze/sid のインストールイメージを取ってきて netinst するのだけど、最小限のシステムから必要なものを足しつつ、いつも使うツールを make していたときにふと気付いた……おいおい、default で ed って入らないの?
ed と言っても、普通の方にはお分かりいただけないかもしれない。僕も、直接使う機会はなかなかないのだけど、ed というのは「ラインエディタ」と言われるエディタである。現在のシステムに慣れた方は、エディタというと、Windows の notepad(いわゆる「メモ帳」)とかのように、あるウインドウの中に文書が展開されていて、好きな場所を好きなように編集できるものを想像されると思うのだけど、このようなエディタ以前に、いくつかのエディタの形式があったわけだ。ed はそのひとつである。
MS-DOS の時代にコンピュータを使い始められた方は、VZ エディタとか MIFES とかいう名前を御記憶の方もおられるかもしれない。これらは、GUI ではない DOS のコマンド画面上に文書を展開し、好きな場所を好きなように編集できるエディタである。こういうエディタを、スクリーンエディタと言うのだけど、これの登場以前にもエディタは存在した。その頃は、画面全体を使う利便性より、それに要するディスクやメモリの余裕がなかったり、あるいはダム端末などの、一画面の書き換えに時間や操作が必要な端末だったりしたために、画面の書き換えを最小限度に抑えて文書編集ができる方が優先された時代である。
僕が MS-DOS 上で最初に使ったエディタが、まさにこれだった。EDLIN と言うのだが……おそらくご存知の方はかなりの少数派だと思う。これは、1行単位で文書を展開し、修正し、保存する……その繰り返しで文書を編集するというエディタだった。VZ を入手するまでの何日か、僕はこれで泣きそうな気分で FORTRAN のソースを書いたりしていたのだった。DOS の標準エディタはこの EDLIN なのだけど、UNIX の標準エディタとして実装されたのが、先の ed である。
もちろん、このご時世には、ed をリアルタイムの文書編集に使うことはほぼ皆無である。システムに深刻なトラブルが生じたときのために、一応僕も使い方は覚えているけれど、これでソースや blog を書く気にはとうていなれそうもない。僕は UN*X 系のシステムの管理を行うときには vi を使うことが多いけれど、最近では vi を使えない UN*X ユーザも多いらしい。僕が UNIX を使い出した頃には、vi なんてライブラリのリンク次第でいつでも使えなくなる可能性があるんだから、admin は echo と ed で非常時を乗り切れなければダメだ、なんて話があったんだけど……
まあ、そういう話は大袈裟かもしれないけれど、でも ed がないのは困る。何故かというと、shell script でファイルの処理を行うときに、script から呼び出して使うことがあるからだ。今日の場合は、upTeX のインストールをしようとしていたら、妙なスクリプトエラーが出て、ん?あーこれ ed 入ってないじゃん、と気付いたのであった。しかし……要するに、ed がなくても困らないということは、shell script 使えなくても問題ないってこと?あーなるほど、自分で make とかしない UN*X ユーザってのが存在するわけか……しかし、じゃあ何が楽しくて UN*X 使ってるんだろう。不思議な話である。