【コラム】

OS X ハッキング!

78 Carbon Emacsは現在進行形

    海上忍  [2004/02/09]

    Apple謹製のWebブラウザ「Safari」がバージョンアップして1.2となった。HTMLのレンダリング速度が改善されたほか、画像をデスクトップへドラッグ&ドロップしたときの挙動など不具合も修正されている。まだ入手していない場合には、ソフトウェア・アップデート経由でダウンロードしよう。

    さて、今回は予定どおりEmacsを取り上げたい。Emacsは、UNIX系OSでは今さら紹介する必要のないほど有名なソフトウェアであり、独自の処理系(Emacs Lisp)を備えるなど"エディタ"の範疇には収まりきれないほどの多機能さがウリだ。OS Xにも標準装備されているため、UNIX系OSに不慣れなユーザでも名前くらいは耳にしたことがあるのではないだろうか。

    /usr/bin/emacsとの違い

    そのEmacsだが、OS XにはCarbon APIを利用した「Carbon Emacs」が存在する。標準装備のEmacs(/usr/bin/emacs)と比較すると、独立したウインドウとして表示できるほか、Finderからドラッグ&ドロップしてファイルを開けるといったGUIとの連携強化、Carbon APIがサポートするOpenTypeやTrueTypeといったアウトラインフォントを使える、といった相違点がある。筆者もOS X 10.0の頃から使いはじめ現在に至るが、最近いくつかの変更が加えられたため、再度注目している次第だ。

    最大の変更点は、Emacsのウインドウ内に画像(インライン画像)を表示できるようになったこと。これで、emacs-w3mを利用してWebの閲覧が可能になっただけでなく、Preview.appなどのビューアを起動しなくても画像を閲覧できるようになった。ターミナル(Terminal.app)は画像表示機能を持たないため、その上で起動されるemacsには当然ながら無理な芸当だ。

    もう1つ、フォント名にマルチバイト文字を含めることが可能になった点も見逃せない。これまでのCarbon Emacsでは、「apple-osaka\201|\223\231\225\235(Osaka等幅の場合)」の要領でフォント名を表現しなければならなかったが、今後は「ヒラギノ角ゴ」や「ヒラギノ明朝」のように、フォントパネルに表示されるフォント名をそのまま指定できる。

    Carbon Emacsには、カーソル位置でことえりやATOKによる日本語入力を行う「インライン変換」に未対応という欠点があるものの、それを補って余りある機能が用意されている。これを機会に、メーラーやWebブラウザとしても使えるCarbon Emacsを導入してみてはいかがだろうか?

    CVSリポジトリからソースコードを入手

    そのCarbon Emacsだが、正式にはリリースされていない。Carbon Emacsは通称で、実際には現在開発が進められている「開発途上版Emacs」であり、それをOS X用にコンパイルしたものなのだ。

    今回のCarbon Emacsにおける機能強化も開発途上版での話であり、誰でもインストールできるようにバイナリパッケージとして配布されているわけではない。インターネット上に確保されたソースコードの集積所(CVSリポジトリ)から最新のソースをダウンロードし、自力でコンパイルする必要がある。まずはOS Xの開発環境とともにインストールされるcvsコマンドを利用し、以下の要領でソースコードをダウンロードしてみよう。

    $ export CVS_RSH="ssh"
    $ cvs -z3 -d:ext:anoncvs@savannah.gnu.org:/cvsroot/emacs co emacs

    ※初回はフィンガープリントが確認されるため、GNU EmacsのWebサイトに掲載されたものと相違ないことを確認すること。

    これで、カレントディレクトリに「emacs」ディレクトリが作成され、コマンド実行時点における最新のソースコード一式がダウンロードされたはずだ。このコマンドラインはCVSリポジトリが更新されたかどうかを確認し、差分のみダウンロードするよう機能するため、常に最新の開発途上版のソースコードを入手できる。

    ただし、ソースコードは世界各地に在住する開発者により始終改変されるため、ダウンロードのタイミングによってはコンパイルに失敗することがある。そのような場合には、cvsコマンドを実行するとき、次のように日付指定(この場合2004年2月8日)するといいだろう。

    $ cvs -z3 -d:ext:anoncvs@savannah.gnu.org:/cvsroot/emacs co -D "2004-02-08" co emacs

    ソースコードを入手できれば、あとはコンパイルするだけなのだが……実は、先ほど紹介したインライン画像のサポートは、差分(パッチ)が開発者のメーリングリストに投稿されたばかりで、ライセンスの関係によりCVSリポジトリへ反映されていない"ナマモノ"の段階だ。次回の内容は、その状況を見て判断したいと思う。

    新着記事

    特設サイトの情報

      人気記事

      一覧

        イチオシ記事

        新着記事

        特別企画

        マイナビニュースマガジン