1988.03 再び編集環境について

わーくすてーしょんのあるくらし (15)

1988-03 大橋克洋

先月号でエデイタを vi から emacs へ変更する話をしたので、 今月はその続きである。結論をいうと新しい環境への移動は大成功で、 予想通り新しい環境へ慣れるまで 一週間の間はかなりイライラさせられたが、 現状ではこうして emacs の中で快調に原稿を書いている。 一般にコンピュータアレルギーという中には、食わず嫌いで この一週間の我慢ができず諦めてしまうことが多いように思う。

○ emacs 環境での作業

emacs の解説記事を読むと、emacs はエデイタというより 環境そのものであるというような文章がよくのっている。 確かに使っているうちに emacs から外に出ることが少なくなってきた。

デイレクトリを渡り歩いたり、ファイルの参照はもちろん、 シェルで行う色々なことが emacs の中でできてしまうし、 どうしてもシェルで処理したいなら Control-Z で emacs を バックグラウンドジョブに放り込んでおいて (厳密にはバックグラウンドでもないようだが、 ユーザはそう思っていて差し支えない)シェルで処理を行い、 再び fg コマンドを与えれば emacs の中へ戻って仕事を続けることができる。

画面を2つに切り片方に他のテキストを表示させ それを参照しながら文章を書けるのは大変便利で、 SUN の場合ウインドウは自由に切れるのだが、 それも時と場合で emacs のウインドウの方が便利なことが多い。

○ LISP による拡張機能

emacs は LISP で機能を拡張することができる。 ちなみにこの文章はネットワークで流れてきた PDS(沖電気の 矢野さん作成)のワープロ用ルーチンを emacs に組み込んで使っている。 辞書がほとんど空っぽなのでしばらくは単語登録をしなければならないが、 その使い勝手にはほぼ満足している。

こうしてみると、 ライフワークとして取り組んでいる電子カルテシステムは C 言語で書いてきたが、 どうも emacs の中の一つのルーチンとして LISP で書き直した方が正解ではないかと考えるようになった。 emacs の中では LISP の式を走らせてみることができるので、 これから LISP を勉強してみようと思っている。

書店を見ても LISP に関する書籍はいくつかの入門書があるだけで、 あまり具体例をあげて説明したものがない。 使えるようになるのにちょっと努力を要しそうだが、 考えてみれば6年前に UNIX や C 言語をはじめた時も、 石田晴久先生の本が一冊あっただけだったので、 やってみれば何とかなるだろうと考えているが、 パワーの落ちてきたこの頃では、またまた泥沼に入ることも 目に見えているようである。

○ 日本語環境

GNU Emacs に日本語拡張機能を与えたものが Nemacs という 名前で PDS として流れている。 Nemacs では拡張部分のひとつとして漢字コードを、 ファイル、入力、出力のそれぞれについて、 シフトJIS、JIS、EUC のいずれにでも自由に設定を変えて 使用できるので大変便利で、 メールやニュースで流れてきた JIS コードのテキストを読み込んで、 EUC コードにしてファイルに吐き出すというような 漢字フィルターとしても使え、 日本語の入力に関し好きなフロントエンドを使うことができる。

emacs には行の右端をそろえる機能がある。 ちゃんと日本語対応になっていて、 こうして文章を書きながらワンタッチに近い操作で行える。 実はこれを書きながら emacs には必ずこういう機能があるはず と思って help 機能で捜してみた。 「やはりあった! emacs は凄い、、、」というのが真相である。

現在 SUN の上で使っている JNIX という日本語フロント プロセッサは最近慣れてはきたものの、辞書登録がその場でできず 別のアプリケーションを立ち上げなければならないのと、 漢字変換にファンクションキーを使うのがどうも好きになれず 前述のものと組み合わせて使っている。

○ メールならびにニュース

rmail や rnews というようなものも emacs に拡張機能として組み込まれており、 これを使うようになってから断然ニュースを読む効率がアップした。 それら自身かなり使いやすくなっている上に emacs 本来の機能を使えるのも魅力である。

emacs のソースの LISP ライブラリーを見てみると、 実に沢山のルーチンが登録されているので、 まだまだ色々なことができそうである。

○ プログラム開発

以前にも書いたように、 ファイルからファイルへ渡り歩くのは大変便利にできているし、 他のウインドーで別のファイルを参照したりできる。 emacs の中でコンパイルを行うと 別のウインドーにその結果が表示され、 そこに表れるエラーメッセージを見ながら コンパイルの終了しないうちからファイルを修正することができる。

また next-error コマンドでエデイタの中のポインター を次々とエラーの起こった場所へ飛ばせることができる。 このエデイタに慣れるまでは、 おかしなファイルを作ってしまったり 変更していけないファイルを変更してしまったりするのが恐ろしくて、 なかなか本格的にプログラム開発に使うのがためらわれたが、 今となってはこれ無しではやっていけなくなりそうである。

○ マンマシーンインタフェースの向上を

このように機能が豊富で使いやすいとはいっても、emacs はあくまでもプロあるいはマニア用のエデイタと言わざるを得ない。

このようなコンセプトのものを いかに良いマンマシーンインタフェースのもとに実現するかが 今後の大きな課題ではないかと思う。 そのためには 大きな発想の転換とユニークなアイデアを必要とするところだが、 例によって Mac あたりに期待したいところである。

Mac といえば Mac II の上で走る UNIX である A/UX がそろそろリリースされるそうだが、 どうも日本で手に入るにはまだ時間がかかりそうなのと、 当分日本語化は期待できそうもない様子に大変がっかりしている。

< 1988.02 編集環境について | 1988.04 レーザプリンタの世界 >