タイトル大津真=XはUNIXでサーバで》UNIXの定番エディタ - ViとEmacs(1)カテゴリー文書作成アプリケーション, UNIX, 大津真=XはUNIXでサーバで
作成日2002/2/26 16:52:42作成者新居雅行
   この記事のPDFファイル(1005KB)は以下のアドレスにあります。
   ダウンロードには、MDOnlineのアカウントが必要です。
   pdfs/MDOnline020015.pdf
 ‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥
UNIX系OSで使用可能な代表的なフリーエディタにViとEmacsがあります。さて、どちらがすぐれたエディタ?突き詰めると宗教戦争になりかねませんから、ここではふれないことにしましょう。
さすがに今では素のViが使われることは少なくなり、Viクローンと呼ばれるViの機能強化版が主流です。代表的なViクローンとしてVIMが有名です。Vimは早くから多言語に対応し、最近のバージョンではGUIも備えています。
Emacsに関しては、GNUプロジェクトによる本家のEmacsの開発も進められていますが、Emacsの開発の遅さに業を煮やして分派したXEmacsという流派があります。XEmacsはメニューバーやツールバーなどのGUIにいち早く対応し、その使い勝手のよさからユーザ数としては本家GNU Emacsをしのぐ勢いです。なお、Emacs系エディタはEmacs Lispと呼ばれるLisp言語を使用して自由にカスタマイズできることが人気の秘密ですが、両者の開発が進むにつれて互換性が乏しくなってきているのが残念です。

◇VIM
 http://www.vim.org
◇Emacs
 http://www.gnu.org/directory/emacs.html
◇XEmacs
 http://www.xemacs.org

――――Mac OS XでViとEmacsを使用するには
Mac OS Xには最初からVi(viコマンド)とEmacs(emacsコマンド)が用意されています。ただし、どちらもTerminal内での使用を前提にしているため、日本語が使えません。解決策としてはフリーX Window SystemであるXFree86をインストールしておくという方法があります。

◇XFree86
 http://www.xfree86.org/

その場合の手順の概略を次に示します。

1. XFree86をインストール
2. Ktermなどの日本語ターミナルをインストール
3. Cannaなどの日本語入力システムをインストール
4. Vi派の方は、Viの拡張版であるVIMをインストール
5. Emacs派の方は、Emacs 21あるいはXEmacsをインストール

XFree86の最新版であるバージョン4.2は、Mac OS Xに正式に対応しているためバイナリディストリビューションをダウンロードしたら後はインストーラの指示に従っていけば簡単にインストールできます。これまでは別途XDarwinが必要であった、Aquaと共存可能な「ルートレースモード」も最初から組み込まれています。ただし、詳しくは述べませんが、XFree86 4.2は日本語のロケールのサポートに難がありまともに機能しません(俗に恐怖のX Locale問題と呼ばれています)。
そのため筆者の場合には、まだXFree86 4.2への移行には踏み切れず、旧バージョンのXFree86 4.1を、日本語ロケールライブラリlibxpg4と組み合わせて使っています。libxpg4は、Darwin関連情報のサイトを主催する井上氏がFreeBSDから移植したロケールライブラリです。

◇Darwin関連情報のサイト
 http://www.ab.wakwak.com/~tino/darwin/

次に、Mac OS XにX Window Systemをインストールし、その上で動作させたXEmacsとGVIM(GUIを備えたVIM)の画面を示します。


◇XEmacs
 

◇GVIM
 

どちらも、プログラムのソースコードや設定ファイルの編集には十分すぎる機能をもっています。ただし、残念ながらOS Xの日本語入力システムは使えず、CannaやSKKといった一昔前の入力システムを使用する必要があるため、日本語の入力は快適とは言い難いものがあります(もちろん好みにもよりますが)。筆者は「ATOKが使えないとちょっと...」と感じる柔なタイプな人間のため、原稿の作成などにはあまり使っていません(隣のLinuxマシンにはATOK XをインストールしXEmacsを日常的に使用しています)。

――――Carbon版Emacs 21
さて最近になって、Andrew Choi氏によるEmacsバージョン21のCarbonパッチ(「付録」UNIXの基礎知識参照)が登場しました。OS Xの「ことえり」や「ATOK」が使用可能なため、快適な日本語入力が行えます。ただし、残念ながらインライン変換は行えません。

◇Carbonで動くEmacs
 

ここではCarbon版Emacs 21のインストール方法を紹介しましょう。まだアルファ版ということで、不安定な側面もあるということですが、筆者の環境ではほぼ安定して使用できています。ただし、非同期のサブプロセスには未対応なため、Emacsのウリのひとつである、シェルやメールなどのすべての環境をEmacs内で実現するといったことはできません(この問題を修正するパッチも存在するそうです)。

次にインストール手順を示します。

1.Emacsのサイトより、ソースのtarボール(emacs-21.1.tar.gz)をダウンロードして、適当なディレクトリで展開します。

◇Emacsのサイト
 http://www.gnu.org/directory/emacs.html

% tar xvzf emacs-21.1.tar.gz 〈return〉
emacs-21.1/
emacs-21.1/FTP
emacs-21.1/INSTALL
emacs-21.1/README
emacs-21.1/BUGS
〈以下略〉

これで、emacs-21.1ディレクトリが作成され、ソースが展開されます。

2.Sourceforgetの「Emacs 21.1 for Mac OS X and Classic」のサイトより、Gzip形式で圧縮されたCarbonパッチ(emacs-21.1-2-mac.patch.gz)をダウンロードして、解凍します。

◇「Emacs 21.1 for Mac OS X and Classic」のサイト
 http://mac-emacs.sourceforge.net

% gunzip emacs-21.1-2-mac.patch.gz 〈return〉

3.emacs-21.1ディレクトリに移動し、パッチを当てます

% cd emacs-21.1 〈return〉
% patch -p1 < ../emacs-21.1-2-mac.patch 〈return〉
patching file ChangeLog
patching file Makefile.in
patching file README
patching file configure
patching file configure.in
patching file etc/DEBUG
patching file etc/PROBLEMS
patching file lisp/ChangeLog
〈以下略〉

4configureスクリプトを実行します。このときX Window Systemをインストールしてある場合には「--without-x」オプションを指定してください。

% ./configure --without-x 〈return〉
creating cache ./config.cache
checking host system type... powerpc-apple-darwin5.2
checking for gcc... no
checking for cc... cc
checking whether the C compiler (cc ) works... yes
checking whether the C compiler (cc ) is a cross-compiler... no
checking whether we are using GNU C... yes
checking whether cc accepts -g... yes
checking whether ln -s works... yes
checking how to run the C preprocessor... cc -E -traditional-cpp
〈以下略〉

5.コンパイルします。
% make 〈return〉
cd lib-src; make all \
CC=’cc’ CFLAGS=’-g -O2 ’ CPPFLAGS=’-fpascal-strings -fno-common -DMAC_OSX -I../mac/src ’ \
LDFLAGS=’’ MAKE=’make’
cc -fpascal-strings -fno-common -DMAC_OSX -I../mac/src -DHAVE_CONFIG_H -I. -I../src -I/Users/o2/Download/emacs-21.1/lib-src -I/Users/o2/Download/emacs-21.1/lib-src/../src -fpascal-strings -fno-common -DMAC_OSX -I../mac/src -g -O2 -o test-distrib /Users/o2/Download/emacs-21.1/lib-src/test-distrib.c
〈以下略〉

6.sudoコマンド経由でインストールします。

% sudo make install 〈return〉
Password:←パスワードを入力
cd lib-src; make all \
CC=’cc’ CFLAGS=’-g -O2 ’ CPPFLAGS=’-fpascal-strings -fno-common -DMAC_OSX -I../mac/src ’ \
LDFLAGS=’’ MAKE=’make’
make[1]: Nothing to be done for `all’.
cd src; make all \
〈以下略〉

以上でEmacsのバンドル(Emacs.app)が、emacs-21.1/macディレクトリに作成されます。Applicationsフォルダなどにコピーしておくといいでしょう。
‥‥‥‥‥‥‥この項、続く‥‥‥‥‥‥‥[大津真]‥‥‥‥‥‥‥
関連リンク大津真Web Site