![]() |
Meadowインストールと設定 |
JDEはEmacs19.34以上で動作しますが、できれば20.1以上がいいようです。日本語環境が使えるEmacsとしてはMuleが有名ですが、MuleはEmacsバージョン19.2がベースであり、JDE環境のサポート外です。そこで、Windows上でEmacs20相当で、日本語環境が使えるMeadowを使用します。
| Meadow 1.99α6が出ています。2003年2月20日 Meadow 1.15が出ています。2002年10月5日 |
Meadowは、tar+gzip形式で圧縮されています(一部バージョンアップは差分のみ)。Cygwinを先にインストールしておくと、tar+gzip形式を扱うコマンド(tar, gzip)が利用できます。Cygwinは必ず必要なわけではありませんが、本サイトではCygwinがあることを前提に設定を進めていきます。
| バージョン | ファイル名 | 対応するEmacsバージョン | 備考 |
|---|---|---|---|
| 1.99α6 | Meadow-IKADUCHI-1_99a6-dev.tar.bz2 (Meadow1.99探索行ページを参照) |
emacs 21.1 | ソースのみ配布 |
| setup.exe | バイナリ配布 | ||
| 1.15 netinstall | setup.exe | emacs 20.7.1 | ソース及びバイナリ配布 |
| 1.15 | Meadow-1.15-i386.tar.gz |
2003年1月現在、正式リリースはVer.1.15です。ソースから自力でコンパイルすることができるならば、Ver.1.99αを試してみてもよいでしょう。2003年5月現在、Ver.1.99α用のネットインストール用setup.exeも公開されています。1.15を入れるには、従来通りバイナリ・アーカイブファイルを入手してインストールを実施するか、ネットインストール用setup.exeを入手して、必要なパッケージをネットワークインストールするか、2つの方法があります。後者はCygwinのネットインストールとほぼ同じような仕組みです。
Meadowはtar+gzip形式で圧縮されているので、Cygwinのtarコマンド(GNUtar)等で展開します。展開するディレクトリにはスペースや漢字等が含まれているとよろしくないので、Windowsアプリケーション類を入れるC:\Program Filesではなく、別にディレクトリを設けます。、以降の説明では、E:ドライブに作ったディレクトリE:\win32appの下[*1]へインストールすることとしています。
torutk$ cd /win32app win32app$ tar xvfz Meadow-1.15-i386.tar.gz
すると、E:\win32app\Meadowというディレクトリの下にファイルが展開されます。詳しくは、展開された中にあるINSTALL.Meadow.jaファイルを参照してください。(漢字コードがJISコードなので、Netscape等のブラウザで見るとよいでしょう)
[*1] Cygwin上でE:\win32appを/win32appにマウントするようにしています。マウントしていない場合は、cd /cygdrive/e/win32app のようにドライブ名を/cygdrive/[ドライブレター]と指定します(Cygwin1.1)。
DOS窓を開いて、E:\win32app\Meadow\1.15をカレントディレクトリとします。そのディレクトリにあるinstall.exeを実行します。Cygwinのbash窓では、install.exeが正常に動作しないようです。実行すると、ホームディレクトリを聞いてくるので、自分のホームディレクトリを入力します。環境変数HOMEに自分のホームディレクトリが設定されていれば、そのディレクトリがデフォルトになります。
E:\home\torutk>cd \win32app\Meadow\1.15 E:\win32app\Meadow\1.15>install Meadowが.emacsファイルを読み込むディレクトリを指定してください。 何も設定しない場合は、Meadowは以下のディレクトリに存在する.emacs ファイルを読み込みます。 [E:\home\torutk] (HOME directory) E:\home\torutk
なお、環境変数HOMEが設定されていないと、最後の行は[E:\win32app\Meadow\1.15]とカレントディレクトリが表示され、(HOME directory)という表記は出てきません。
上記でよければEnterを押して続行します。変更したいときはそのディレクトリ名を入力します。Enterを押すと、処理が進み、最後にプログラムグループとアイコンを作成して終了します。完了すると、OSに応じて次のどちらかの実行ファイルが生成されます。
| インストールしたOS | 生成される実行ファイル |
|---|---|
| WindowsNT | MeadowNT.exe |
| Windows95/98 | Meadow95.exe |
Meadow1.15から新たに加わったインストール方法です。詳しくは、こせきさんのWebサイトの「Meadow Netinstall」項をご覧下さい。
1. setup.exe起動画面

2. インストール方法選択画面
ネットからダウンロードしてインストールまで実施するなら[Install from the Internet]を選択します。今はダウンロードだけ行い、別途インストールするなら、まず[Download from the Internet]を実施し、別途[Install from Local Directory]を実施します。

3. ダウンロードしたパッケージファイルの置き場所を指定
Internetからインストールなりダウンロードなりを実施するときは、ダウンロードしたファイルを置く場所を指定する必要があります。どこでも構いません。

4. インストールディレクトリの指定
Meadowを実際にインストールするディレクトリを指定します。

5. ダウンロードに際してProxyの設定
InternetからInstallかDownloadを実施するときは、Internetへの接続方法を指定する必要があります。Proxyを経由してHTTP/FTP通信を行っている場合、3番目のUse HTTP/FTP Proxyをチェックし、Proxyサーバ名と使用しているポートを入力します。もし、マシン上にInternet Explorerが設定されていれば、その設定を引っ張って使用するように指定することもできます。

6. ダウンロード先のサイトを選択
各パッケージをどこからダウンロードするか指定します。最寄のサイトを指定するとよいでしょう。最寄のサイトを調べるには、tracertコマンド等が使えます。

7. インストールするパッケージとそのバージョンの指定
Current欄には、現在インストールされているバージョンがあれば表示されます。新規ならば何も表示されません。Newには、この操作でインストールするバージョンが表示されます。この欄をクリックすれば、インストールしない設定や、表示されているバージョンと別のバージョンを指定したりすることができます。

8. インストールの進捗状況表示

9. setup完了とinstall.exe実行
Meadowはダウンロードして展開しただけでは実行できる状態にはなりません。install.exeを実行する必要があります。今ここでinstall.exeを実行させたければ、[Run install.exe Now?]にチェックを入れます。ここで実行しないで後でコマンドラインでinstall.exeを実行してもよいです。

10. install時に.emacsファイルを置くホームディレクトリ指定
9.でinstall.exeを実行するように指定したら、以下のようにコマンドプロンプトが表れ、メッセージが表示されます。

11. インストールの完了

Meadow1.15をインストールすると、次の表のようなディレクトリ構成になります。後に追加するelisp(Meadow/Emacsの拡張パッケージ)は、site-lispの下に展開します。
| ディレクトリ | 内容 | ||
|---|---|---|---|
| E:\win32app\Meadow | 1.15 | Meadowの本体 | |
| site-lisp | subdirs.el | loadpath設定 | |
| pkginfo | ネットインストールで使用 | ||
| setup | |||
Meadow 1.15には、dot.emacs.jaという設定ファイルのテンプレートが添付されています。そこで、これをもとに必要な設定を追記していきます。
Meadow/Emacsでは、環境設定は各ユーザのホームディレクトリにおく.emacsファイルに行います。Meadow1.10からは、.emacsでloadpathを記述しなくてもrequireでsite-lisp以下にあるディレクトリからEmacs lispファイルを探して取り込むことができます。
torutk$ cd /win32app/Meadow Meadow$ cp dot.emacs.ja ~/.emacs
次に、.emacsファイルを編集していきます。
;;;; -*- mode: lisp-interaction; syntax: elisp; coding: iso-2022-7bit -*- ;;;; ;;;; Copyright (C) 2001 The Meadow Team ;; Author: Koichiro Ohba <koichiro@meadowy.org> ;; Kyotaro HORIGUCHI <horiguti@meadowy.org> ;; Hideyuki SHIRAI <shirai@meadowy.org> ;; KOSEKI Yoshinori <kose@meadowy.org> ;; and The Meadow Team. ;; ;;; Mule-UCS の設定 ;; ;; ftp://ftp.m17n.org/pub/mule/Mule-UCS/ ;; ;; (set-language-environment) の前に設定します ;; (require 'un-define) ;; (require 'jisx0213) ;;; 日本語環境設定 (set-language-environment "Japanese") |
ここはテンプレート通りです。 |
;;; IMEの設定
(mw32-ime-initialize)
(setq default-input-method "MW32-IME")
(setq-default mw32-ime-mode-line-state-indicator "[--]")
(setq mw32-ime-mode-line-state-indicator-list '("[--]" "[あ]" "[--]"))
(add-hook 'mw32-ime-on-hook
(function (lambda () (set-cursor-height 2))))
(add-hook 'mw32-ime-off-hook
(function (lambda () (set-cursor-height 4))))
|
ここもテンプレート通りです。漢字変換入力にIMEを使う設定です。IMEをインライン使用することができます。 |
;; ;;; カーソルの設定 ;; ;; (set-cursor-type 'box) ; Meadow-1.10互換 (SKK等で色が変る設定) ;; ;; (set-cursor-type 'hairline-caret) ; 縦棒キャレット ;;; マウスカーソルを消す設定 (setq w32-hide-mouse-on-key t) (setq w32-hide-mouse-timeout 5000) |
ここもテンプレート通りです。 |
;;; font-lockの設定
(if window-system
(progn
(setq font-lock-support-mode 'lazy-lock-mode)
(global-font-lock-mode t)))
|
ここもテンプレート通りです。 |
;;; TrueType フォント設定 (load "fontset-meadow.el") |
TrueTypeフォント設定とBDFフォント設定はごっそり削除します。フォントは別ファイルで定するのでloadで読み込ませています。[注記1] |
;; 初期フレームの設定
(setq default-frame-alist
(append (list '(foreground-color . "black")
'(background-color . "AntiqueWhite")
'(background-color . "gray")
'(border-color . "black")
'(mouse-color . "white")
'(cursor-color . "black")
'(ime-font . "Gothic-13") ; TrueType のみ
'(font . "Terminal-fontset"); TrueType
'(width . 81)
'(height . 48)
'(top . 10)
'(left . 480))
default-frame-alist))
|
テンプレートを修正しています。色や幅、高さ、位置は好みで調整します。 フォントは別途設定した中から好みのものを選択します。フォントセットを定義したファイルを読み込み。小さ目のTerminalフォントを使用する。 文字(前景色)は黒(black)、背景色はやや黄色がかった白(AntiqueWhite)に設定。指定できる色と名前の一覧は、M-x list-colors-displayを実行すると見れる。 (Editメニュー→Text Properties→Display Colorsでも可) 幅81文字、高さ48文字のウィンドウサイズとする。起動時に開くウィンドウの位置は画面左上から(480, 10)の位置とする。 |
;; ;;; shell の設定
;; ;;; Cygwin の bash を使う場合
(setq explicit-shell-file-name "bash")
(setq shell-file-name "sh")
(setq shell-command-switch "-c")
;;; argument-editing の設定
(require 'mw32script)
(mw32script-init)
;;; shell coding-system の設定
(add-hook 'shell-mode-hook
(lambda ()
(set-buffer-process-coding-system 'undecided-dos 'sjis-unix)))
|
shellにCygwinのbashを使用する場合の記述です。テンプレートのコメントを削除します。また、Cygwin環境で改行コードに^Mが含まれないようにshell-modeにおいてcoding-systemを設定しています。[注記2] |
(setq dabbrev-case-fold-search nil) |
動的略語展開で大文字小文字を区別 |
(cd "~/") |
起動時のデフォルトディレクトリをホームに。 |
fontの設定方法は下記URLを参考にしています。
http://home4.highway.ne.jp/ikahani/mfuse/meadow.html
UNIX USER誌1999.9特集記事の解説によると、explicit-shell-file-nameで対話的に使うシェル・モードを設定、shell-file-nameで外部コマンドを呼び出す基となるシェルコマンドを設定、shell-command-optionで外部コマンドを呼び出す際のオプションを指定します。
シェルモード上で起動するコマンドの入出力文字の符号方式をset-buffer-process-coding-systemで設定します。
カレントドライブ以外のファイル名補完を行うためにshell-file-name-charsによる設定を行います。
mw32scriptはMeadow固有の拡張モジュールです。
fontset-meadow.elをsite-lisp下のfontディレクトリに置いています。Shiftキーを押しながらマウスを左クリックすると、ここで設定しているフォントセットをポップアップメニューから選択し画面に反映させることができます。
| E:\win32app\Meadow | site-lisp | font | フォント設定用elispを入れる。 fontset-meadow.el |
2001.1.28 fontset-meadow.el修正。Terminal-13でheightを13から14に増やした。
デフォルトのフォントでは文字が大きすぎるのでterminal-font.elをsite-lisp下のfontディレクトリに置き、小さなフォントを使う設定にします。fontの設定方法はどうもよく分からないので、既存のfont設定(入手場所は不明になってますが)をいじって使っています。
| E:\win32app\Meadow | site-lisp | font | フォント設定用elispを入れる。 terminal-font.el |
PCのキー配列は多くが[A]の左横に[Caps Lock]キーがあります。UNIXではここに[Ctrl]キーがあります。[Ctrl]キーを多用するEmacs系エディタにとって、PCの[Ctrl]キーの位置は使いづらいものです。そこで、[Caps Lock]キーを[Ctrl]キーに置き換えると便利になります。どうせCapsキーなんてほとんど使わないでしょう。
方法は、WindowsNT環境向上のページに書きました。
Emacsでは、その機能を拡張するのに、lispで書かれたファイル(elispパッケージ)を使用します。
| E:\win32app\Meadow | site-lisp | skk |
この場合、skk以下にあるEmacs Lispファイルが機能拡張を実施します。
あるディレクトリ以下に置かれたLispパッケージをEmacsが読み込まないようにする設定は、そのディレクトリ内に'.nosearch'というファイルを作成する。
apelは以下のディレクトリに展開されます。
| E:\win32app\Meadow | 1.15 | site-lisp | emu |
| site-lisp | apel |
Meadow 1.15pre1用のapel-10.3を、こせきさんのMeadowページの公開logから入手します。
torutk$ cd /win32app win32app$ tar xvfz apel-10.3-for-Meadow1.15-1.tar.gz
apel-10.4を入手します。
http://cvs.m17n.org/elisp/APEL/
作業用の空きディレクトリにおいて、tarでアーカイブを解凍します。
インストールには、Cygwinのmakeコマンドを使う方法と、apelが提供するインストール用Windowsバッチファイルを使う方法と2種類あります。
1.Cygwinのmakeコマンドを使う方法(UNIXと同じ方法)
デフォルトのMakefileがあるので、これを次のように修正します。(Meadow1.10での場合)
EMACS=e:/win32app/Meadow/1.10/bin/MeadowNT.exe
LISPDIR=e:/win32app/Meadow/site-lisp
VERSION_SPECIFIC_LISPDIR=e:/win32app/Meadow/1.10/site-lisp
そして、make installを実行します。
または、makeコマンド実行時にコマンドラインで上記を指定します。
$ make install EMACS=/win32app/Meadow/1.13b1/bin/MeadowNT.exe LISPDIR=/win32app/Meadow/site-lisp VERSION_SPECIFIC_LISPDIR=e:/win32app/Meadow/1.13b1/site-lisp
2.makeit.batを使う方法(Windows独自)
デフォルトのmakeit.batがあるので、これを次のように修正します。(Meadow1.10での場合)
set MEADOWVER=1.10
set PREFIX=e:\win32app\meadow
set EMACS=%PREFIX%\%MEADOWVER%\bin\meadowNT.exe
set LISPDIR=%PREFIX%\site-lisp
set VLISPDIR=%PREFIX%\%MEADOWVER%\site-lisp
まず、バイトコンパイルを実行します。この時点ではMeadowのディレクトリへのコピーは行われません。
E:\work\apel-10.4> makeit elc :
つぎに、インストールによってコピーされるファイルとコピー先の確認を実行します。
E:\work\apel-10.4> makeit what-where :
確認が良であれば、実際にインストールを実行します。
E:\work\apel-10.4> makeit install :
先ほど削除した2つのディレクトリに新しいapelがインストールされます。
かな漢字変換の1つ。全角/半角の切り替えが楽なので、ソースコード編集に向いています。また、漢字変換中でもEmacsの各コマンドを実行できるのが便利です。IME等のFEPでは、いったんモードを半角に戻さないとEmacsのコマンドが実行できません。
SKK Openlabのホームページから、SKK 10.xを入手します。(xはリビジョン番号で2001年1月現在62aです)
http://openlab.ring.gr.jp/skk/index-j.html
作業用の空きディレクトリにおいて、tarでアーカイブを解凍します。
make.batを次のように修正します。
set EMACS=e:\win32app\Meadow\1.13b1\bin\MeadowNT.exe
set PREFIX=e:\win32app\Meadow\1.13b1
set LISPDIR=e:\win32app\Meadow\site-lisp
そして、make.batを実行します。
辞書ファイルを配置します。
e:\win32app\lib\skkディレクトリを作成し、ここにSKK-JISYO.Lを保存します。
注1)SKK10.62aのmake.batを実行すると、チュートリアルファイル(SKK.tutとSKK.tut.E)がPREFIX\share\skkの下に配置されます。
.emacsに、skk-10.62a/READMEs/README.winに書かれている.emacsに追加する内容を記述します。辞書ファイルの設定行は上記の場所を指定します。
(setq skk-large-jisyo "e:/win32app/lib/skk/SKK-JISYO.L")
また、チュートリアルファイルの場所を指定します。
(setq skk-tut-file "e:/win32app/Meadow/1.13b1/share/skk/SKK.tut")
make.batでinfoファイルがMeadowのinfoディレクトリにコピーされますが、Meadowのメニューから開くためには、e:/win32app/Meadow/1.13b1/info/dirファイルに追記します。
SKK: (skk). Simple Kana Kanji converter Ver.10.62a.
;;;
;;; SKKの設定
;;;
(autoload 'skk-mode "skk" nil t)
(global-set-key "\C-x\C-j" 'skk-mode)
(global-set-key "\C-xj" 'skk-auto-fill-mode)
(global-set-key "\C-xt" 'skk-tutorial)
(add-hook 'isearch-mode-hook
(function (lambda ()
(and (boundp 'skk-mode) skk-mode
(skk-isearch-mode-setup) ))))
(add-hook 'isearch-mode-hook 'skk-isearch-mode-setup)
(add-hook 'isearch-mode-end-hook 'skk-isearch-mode-cleanup)
(setq skk-large-jisyo "e:/win32app/lib/skk/SKK-JISYO.L")
(setq skk-tut-file "e:/win32app/lib/skk/SKK.tut")
|
SKKのREADME.winjにある通り、.emacsに追加する。 |
skk-10系の開発はストップし、skk-11系に移っているようなので、skk-11系を入れてみます。11系はDaredevilという開発コード名(?)が付けられているようです。
SKK Openlabのホームページから、Daredevil SKK 11.xを入手します。(xはリビジョン番号で2002年2月現在6.0です)。なお、11.6.0でバージョンは止まっているようです。それ以降のリリースパッケージはバージョン番号ではなく日付で管理されているようです。(例:ddskk-20030504.tar.gz)。
http://openlab.ring.gr.jp/skk/index-j.html
作業用の空きディレクトリにおいて、tarでアーカイブを解凍します。
また、辞書ファイルをdicディレクトリの中にコピーしておきます(例えばSKK-JISYO.L)。
SKK-CFGを次のように修正します。
;;; Meadow 1.14 用の設定例:
(setq APEL_SPECIFIC_LISPDIR "e:/win32app/Meadow/site-lisp/apel")
(setq LISPDIR "e:/win32app/Meadow/site-lisp")
(setq VERSION_SPECIFIC_LISPDIR "e:/win32app/Meadow/1.15/site-lisp")
(setq EMU_PREFIX "emu")
(setq SKK_DATADIR "e:/win32app/lib/skk")
(setq SKK_INFODIR "e:/win32app/Meadow/1.15/info")
(setq SKK_LISPDIR "e:/win32app/Meadow/site-lisp/skk")
その後、make EMACS=/win32app/Meadow/1.15/bin/MeadowNT.exe install を実行します。
アーカイブの展開と辞書ファイルのコピーまでは上記と一緒です。
makeit.batを次のように修正します。
set PREFIX=d:\win32app\Meadow2
set EMACS=%PREFIX%\1.99a6\bin\Meadow.exe
set LISPDIR=%PREFIX%\site-lisp
rem set VERSION_SPECIFIC_LISPDIR=%PREFIX%\1.99a6\site-lisp
set DEFAULT_MAKE_ARG=
まず、バイトコンパイルを実行します。この時点ではMeadowのディレクトリへのコピーは行われません。
E:\work\ddskk-20030504> makeit elc :
つぎに、インストールによってコピーされるファイルとコピー先の確認を実行します。
E:\work\ddskk-20030504> makeit what-where :
確認が良であれば、実際にインストールを実行します。
E:\work\ddskk-20030504> makeit install :
このインストールの際に、なぜかskk-setup.elとleim-list.elの2ファイルがコピーされません。そこで手作業でコピーします。
E:\work\ddskk-20030504> copy skk-setup.el d:\win32app\Meadow2\1.99a6\site-lisp\skk : E:\work\ddskk-20030504> copy leim-list.el d:\win32app\Meadow2\1.99a6\site-lisp\skk
;;; ;;; SKKの設定 ;;; ;(setq skk-large-jisyo "e:/win32app/lib/skk/SKK-JISYO.L") |
ロードパス以下にddskkがインストールされていれば、特に.emacsに設定は不要です。辞書ファイルをインストール時にdicへ置いていない場合、左記のコメントを外してパスを指定するとよいかと思います。なお、キーアサインは下記が有効です。 C-x C-j skk-mode C-xj skk-auto-fill-mode C-xt skk-tutorial |
MuleでUnicodeを直接扱えます。Mule-UCSはMeadow1.13b1以降のバージョンが必要となります。
Meadow 1.15pre1用のMule-UCS-0.84を、こせきさんのMeadowページの公開logから入手します。
torutk$ cd /win32app win32app$ tar xvfz Mule-UCS-0.84-for-Meadow1.14-1.tar.gz
ftp://ftp.etl.go.jp/pub/mule/Mule-UCS/Mule-UCS-0.83.tar.gz
E:\win32app\Meadow\site-lispの下にMule-UCS-0.83を展開します。
MeadowNT.exe -q -no-site-file -batch -l mucs-comp.elを実行し、バイトコンパイルします。
参考:「Windows98/2000上でのMeadowの動かし方」高橋誠さんのページにMule-UCSの設定があります。
http://homepage1.nifty.com/hobbit/html/meadow.html
このページにあるJISコードとの変換をInternet Explorerのマッピングに修正する情報をパッチ形式にしました。
適用方法は、Mule-UCS-0.83を展開後、
$ cd Mule-UCS-0.83
$ patch -p1 < Mule-UCS-0.83-ujisx.patch
;; ;;; Mule-UCS の設定 ;; ;; ftp://ftp.m17n.org/pub/mule/Mule-UCS/ ;; ;; (set-language-environment) の前に設定します (require 'un-define) (require 'jisx0213) |
テンプレートからMule-UCS設定のコメントを削除して有効にする。 |
C-x C-q で、read-onlyモードとwritableモードが入れ替わります。
[注]2001.1.27, IRIE Tetsuyaさんに指摘いただいた誤りを修正しました。Thanks!
C-x C-r でファイルを開く。
1. ce-scroll.el
ce-scroll.el というelispがあります。
http://www.tky.3web.ne.jp/~applause/emacs-lisp/
これをsite-lisp下に置きます。.emacsには、
(load "ce-scroll.el")
と1行追加します。site-lispの下のディレクトリ(サブディレクトリも含む)は自動的に検索対象になるので、フルパスを指定しなくてもOKです。
ce-scroll.elの中では(define-key global-map
...)でC-nやC-pを置き換えてます。今回は長文を編集するモード(text-mode)だけ有効になるように、(define-key
text-mode-map ...)と修正しました。
2. physical-line.el
http://www.taiyaki.org/elisp/physical-line/
Fake Faceページで紹介されているcygwin32-mount.elを使います。
http://www02.so-net.ne.jp/~riue/fakeface/d200011.html
site-lisp以下のディレクトリにcygwin32-mount.elを保存し、.emacsに
(require 'cygwin32-mount)
と記述します。