【コラム】

OS X ハッキング!

81 Carbon Emacsの設定(3)

    海上忍  [2004/03/01]

    PC-UNIX向けのX Window System「XFree86」の新バージョンがリリースされ、v4.4.0となった。XFree86の移植版「X11 for Mac OS X」はv4.3.0をベースとしているので、どのような変更点があるかはOS Xユーザとしても気になるところ。いろいろ試す予定なので、続報をお待ちいただきたい。

    ようやくインライン画像対応パッチが

    当コラム第78回で紹介したインライン画像対応パッチだが、ようやく正式コミットの運びとなり、CVSリポジトリから入手可能なソースコードにも反映された。ソースコードをすべてダウンロードし直してからコンパイルを試みたが、特に問題はないようだ。まずは以下の手順に従い、最新のCVS版Carbon Emacsをインストールしてみよう。

    CVS版Carbon Emacsのインストール(管理者権限要)

    $ rm -rf ./emacs
    $ export CVS_RSH="ssh"
    $ cvs -z3 -d:ext:anoncvs@savannah.gnu.org:/cvsroot/emacs co emacs
    $ cd emacs
    $ ./configure --with-carbon --without-x
    $ make bootstrap
    $ sudo make install
    $ rm -rf /Applications/Emacs.app
    $ cp -r mac/Emacs.app /Applications

    ついにCarbon Emacsで画像を表示

    これだけでは画像ファイルを表示できないので、M-x auto-image-file-mode(M-xは[ESC]に続けて[x]を押すという意味)を実行しよう。これで、テキストファイルを開く要領(C-x C-f)で画像ファイルを開けるはず。この機能を常に有効にする場合には、以下のリストをCarbon Emacsの初期化ファイルに書き加えておこう。

    なお、サポートされている画像フォーマットは、C-h v image-type-regexpsで調べたかぎりでは8種類のようだ。PNGとJPEG、GIFとTIFFはサポートされているが、Preview.appの代役を期待するのは少し荷が重いかもしれない。

    34 ;;image
    35 (auto-image-file-mode)

    Diredモード使用時の注意点

    C-x dを実行すると起動される「Dired」は、Emacsをファイラーとして使うためのモードだ。Carbon Emacsならばテキストファイルだけでなく画像ファイルも開けるので、なにかと便利。ファイルシステムに変則的な文字コードを使用しているMac OS Xの場合、濁点を含む日本語ファイル名を正しく表示できないという問題はあるが、それを除けば動作に支障はない。

    しかし、Mac OS X 10.3に収録されているls(/bin/ls)は、環境変数LANGに「ja_JP.UTF-8」を設定していると、「ls -l」を実行したときの月が「Dec」や「Nov」ではなく「12」や「11」として表示されてしまう。Finder/Dock経由でCarbon Emacsを起動する場合、「~/.MacOSX/environment.plist」で定義しないかぎりLANGはブランクのためDiredモードは正常動作するが、シェルから「emacs -nw」として起動したときに問題が生じる。付け焼き刃的な対処策だが、以下のようなエイリアスの定義をシェルの初期化ファイル(bashの場合「~/.bash_profile」)に加えておくといいだろう。

    alias emacs="LANG=C emacs -nw"

    インライン変換でなければ許せない場合は

    以前と比較すると大幅に機能が改善されたCarbon Emacsだが、「インライン変換の未サポート」は未解決のまま現在に至る。この問題にはCarbon APIとも関連する深い事情があるため、ATOKやEGBRIDGEの愛好者は"小窓"とうまく付き合って行くしかなさそうだ。

    それでもインライン変換にこだわりたい場合には、 Anthyがお勧め。ごく一般的な方法でインストール (現バージョンでは当コラム第48回のような手直しは不要)し、以下の記述を初期化ファイルに追加すれば、「Ctrl-\」とタイプすれば日本語を入力できるようになる。

    36 ;;For Anthy
    37 (setq process-connection-type t)
    38 (setq load-path (cons
    39 "/usr/local/share/emacs/site-lisp/anthy/" load-path))
    40 (load-library "anthy")
    41 (setq default-input-method "japanese-anthy")
    42 (anthy-change-hiragana-map "," "、")
    43 (anthy-change-hiragana-map "." "。")

    新着記事

    特設サイトの情報

      人気記事

      一覧

      イチオシ記事

      新着記事

      特別企画

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