Windows Meadow 3.00
since Apr. 21 2007


 

概要

 

Meadow は 2007.4 現在 3.00-dev (以降 Meadow3) が開発最新版である.Meadow3 は Emacs 22.0.9x を追従するものである.本稿は,Meadow3 で多言語テキストを読み書きするための環境構築についてのメモである.Meadow3 のインストール,Unicode フォント及びインプットメソッドの追加・設定について述べる.筆者は Windows XP Professional SP2 で試験している.

スラヴ語/古典ギリシア語汎用インプットメソッドを Meadow3 に導入する方法についても触れる.これは,Unicode フォントを利用して,スラヴ語(ロシア語,ウクライナ語,マケドニア語,教会スラヴ語など Unicode Cyrillic 0400-04FF で記述できるキリル言語)及びギリシア語(モノトニック・現代とポリトニック・古典ギリシア語: Unicode Greek and Coptic 0370-03FF; Greek Extended 1F00-1FFF)を,それぞれ単一のインプットメソッドで入力可能とする Leim 用 Emacs Lisp プログラムである.

Utf82TeX を Meadow3 から利用する設定,例についても言及する.これは Unicode TeX 文書を pTeX で扱える形式に変換するためのソフトウェアである.

Meadow3 全般については公式サイト Meadow - Trac を参照.

Meadow 3.00
インストール

 

Meadow ダウンロードサイトからインストーラ setup-ja.exe をダウンロードする.

インストーラはいくつかの導入形態をサポートしているが,ここではネットワークインストールを行うこととする.「パッケージ保管フォルダ(以下説明では "C:\tmp" とする)」,「Meadow インストール先フォルダ("C:\meadow")」及び「ホームディレクトリ("C:\home")」を決めておく.

  1. setup-ja.exe をエクスプローラからダブルクリックするなどして実行する.インストーラが起動する.
  2. "次へ(N)>" をクリックすると,"ダウンロード元の選択" を聞いてくる.
  3. "インタフェースからインストールする(I)" を選択して,次("次へ(N)>" をクリックする).
  4. "インストール先ディレクトリの選択" に Meadow インストール先フォルダ C:\meadow を指定して次.
  5. "ローカルパッケージディレクトリの選択" にパッケージを保管するフォルダ C:\tmp を指定して次.
  6. "ダイレクトに接続する(D)" を選択して次.
  7. "ダウンロードサイトの選択" に対し適当な URL を選び次.
  8. "パッケージの選択" 画面(図1)で,Meadow3 本体,ImageMagick のほか次のパッケージを追加で選択する.

    • mule-fonts
    • apel

    図1 パッケージ選択画面(*)
    (*) 図版をクリックすると拡大する.以降も同じ.
  9. パッケージ選択を行い "次へ(N)>" をクリックするとダウンロードとインストールフォルダへの展開が始まる.
  10. 終了すると install.exe の実行を問い合わせる画面となる.チェックをつけて "完了".
  11. コマンドプロンプト画面の問い合わせに,ホームディレクトリ名 C:\home を応答する.Windows の環境変数 HOME(Windows XP ではコントロールパネルの「システム」を開き「詳細」タブ「環境変数」をクリックして編集する)にも登録しておく.
  12. 組込みが完了したら,デスクトップに Meadow3 起動のためのショートカットアイコンが作成されたはずである.このショートカットのプロパティの「作業フォルダ」にホームディレクトリを設定しておく.これでショートカットをダブルクリックすると,作業フォルダをカレントとして Meadow3 が起動する.

    図2 Meadow3 起動画面

mule-fonts
フォント

 

mule-fonts パッケージが選択・インストールされていると,多言語表示のための BDF フォントを利用できる.これは多言語フォントが一式揃うという便利なパッケージである.Emacs 多言語標準フォントである intlfonts のほか,JIS X 0213 日本語フォント,/efont/ Unicode フォント,CDAC,AkrutiFreeFonts のインド系フォントが含まれている.

mule-fonts パッケージ付属の auto-autoloads.el がお膳立てしてくれるので,設定は極めて簡易である..emacs 初期設定ファイルで, default-frame-alist に '(font . "mule-fonts16") を追加するだけでよい.

;; 初期フレームの設定
(setq default-frame-alist
      (append (list '(foreground-color . "black")
            '(background-color . "LemonChiffon")
            '(background-color . "gray")
            '(border-color . "black")
            '(mouse-color . "white")
            '(cursor-color . "black")
            '(font . "mule-fonts16")
            '(width . 80)
            '(height . 40)
            '(top . 10)
            '(left . 10))
          default-frame-alist))
	

Meadow2 では MuleUCS パッケージのインストールと設定,各種 BDF の面倒な設定を行わないと Unicode 多言語フォントが使えなかったが,Meadow3 では Unicode が標準でサポートされ,設定はこのように簡単になった.

Meadow3 を起動し,"Ctrl + h h" を投入すると「こんにちは」多言語デモが閲覧できる(図3).すべての言語がきちんと表示されるはずである.


図3 「こんにちは」デモ画面

キリル文字,ギリシア文字も,教会スラヴ語などの特殊な字母,複式アクセントも含め Unicode の文字が表示できる(図4).グリフが一部不足しているが,実用に耐えるレベルである.


図4 キリル文字,ギリシア文字

Unicode 文字入力

 

Meadow3 では標準で日本語仮名漢字変換が利用できるほか,ucs-insert 関数によって Unicode コードポイントで文字を入力することができる.M-x ucs-insert RET とすると,Unicode (hex): と問い合わせがくる.これに対し,例えば 9dd7 RET と応答するとカーソル位置に Unicode U+9DD7 の文字「鷗」が挿入される.


図5 ucs-insert 関数

describe-char 関数によって文字のコードやフォントセットの情報を得ることができる.


図6 describe-char 関数

.emacs に以下のようなコードを書いておくと, C-c C-i, C-c C-d というショートカットにより,それぞれ ucs-​insert, describe-​char を呼び出すことができるようになる.もちろん,ショートカットのキー割当ては利用者の裁量で決めることができる.

;;; UCS コードポイントで文字を挿入
(global-set-key "\C-c\C-i" 'ucs-insert)
;;; カーソルの文字の情報を表示 
(global-set-key "\C-c\C-d" 'describe-char)
	

スラヴ語,ギリシア語汎用インプットメソッド

 

Meadow3 標準の Leim パッケージで提供されるインプットメソッドは多言語の入力を支援する.フランス語,ドイツ語などの西欧語には latin-1-postfix, ポーランド語,チェコ語などの東欧ラテン文字言語には latin-2-postfix などのインプットメソッドが選択できる.そのほかさまざまな言語のためのメソッドが添付されている.C-x C-m C-\ インプットメソッド名 RET とすると当該インプットメソッドに切替えることができる.

しかしながらキリル言語,ギリシア語の入力は,標準ではそれぞれ ISO 8859-5 及び ISO 8859-7 のコード範囲に限定される.このため筆者は,Unicode 環境に即した教会スラヴ語,古典ギリシア語の入力を可能とするスラヴ語,ギリシア語汎用インプットメソッドを公開している.これは本来 UNIX Emacs 向けに書いたものだが,Meadow3 でも利用可能である.

ここでは Meadow3 での導入について簡単に述べる.利用方法の詳細は『Emacs スラヴ語/古典ギリシア語汎用インプットメソッド』を参照.

次のリンクから slavonic.elgreek-polytonic.el とをダウンロードし,C:\meadow\leim\quail フォルダにコピーする.


図7 quail フォルダ

次に,新たに追加した slavonic.el と greek-polytonic.el を Quail インプットメソッドリストに登録する.このためには,Meadow を起動し,次のコマンドを順次投入する."M-x" は "Altキー + xキー" を,"C-x" は "Ctrlキー + xキー" を, "RET" はリターンキーをそれぞれタイプすることを示す.

M-x load-library RET
quail RET
M-x quail-update-leim-list-file RET
c:/meadow/leim RET
	

インプットメソッドの組込みはこれで完了である.Meadow3 を再起動して入力できるか試してみる.

C-x C-m C-\ slavonic RET でスラヴ語インプットメソッドが起動する.モード行に [--]-СЛ とインディケータが表示される.通常の英数入力とスラヴ語入力との切替は C-\ で行う.キリル文字を入力している例を図8に示す.


図8 slavonic 入力画面例

入力画面例にある o ["'-_u|~] の [ ] 内の記号は o に続いて入力する後置符である.slavonic.el は単一のメソッドで多くのキリル文字入力を可能とするため基本文字と後置符との組合わせ方式を採っている.文字に下線が表示されている間は未確定の状態にあり,後置符を入力すると定義された文字が表示され,確定する.後置符のない文字でよければ C-g や矢印キーで中止する.後置符がカンマのような記号もあり,慣れないと意図しない文字が表示され鬱陶しいかも知れない.ロシア語しか入力しないという場合は,Meadow Leim 標準のインプットメソッドのほうがこのような繁雑さがなく便利である.

C-x C-m C-\ greek-polytonic RET で古典ギリシア語インプットメソッドが起動する.モード行に [--]-ΠΓ とインディケータが表示される.

Utf82TeX

 

Unicode によって多言語テキストを入力・表示できるようになった.Unicode で直接多言語文字をタイプして pTeX 文書作成を支援するため,筆者は Utf82TeX を公開している.Meadow3 では Utf82TeX の付属 Emacs Lisp も動作する.Meadow3 で文書を作成しつつ,pTeX が受け付ける形式に多言語テキストを変換することができる.

Utf82TeX の機能,インストールについては『UTF-8 による TeX 文書の作成』を参照.所定の場所にファイルを格納したら,.emacs 初期設定ファイルに以下を追加する.パスは Utf82TeX のインストールパスに応じて指定する.

;; utf82tex.el のロード
(require 'utf82tex)

;; Utf82TeX のインストールパス
(setq utf82tex-path "c:/usr/local/bin/utf82tex.exe")

;; Utf82TeX rcfile の絶対パス
(setq utf82tex-rc   "c:/usr/local/etc/utf82tex/utf82texrc")

;; Utf82TeX による変換後のバッファ・エンコーディング
;;   Emacs で利用できるコーディングシステムのシンボルを記述する.
;;   Emacs の TeX モードでエンコーディングを設定していると指定が
;;   有効にならない場合がある.
(setq utf82tex-out-encoding 'utf-8)
	

utf82tex.el によって Meadow3 上から変換操作を行う様子を図9(前),図10(後)に示す.


図9  変換前

図10 変換後

Windows XP では,タイ語の単語境界マーキングソフトウェア swath が動作しない.Windows 2000 では可能である.このため,これを外部プログラムとして利用する Utf82TeX は Windows XP 上ではタイ語変換を行うことができない.Windows XP 上で swath を動作させるためには Cygwin, GNU C/C++, GNU make をインストールして Cygwin 環境で UNIX 版 swath をコンパイルする必要がある.これについては「Windows XP上のswath」を参照されたい.

.emacs 付記
2009.8.14

 

2009.8.14 現在,Meadow 3 の開発版は 3.01-dev である.この版では,標準設定のままでは,M-w でキル(コピー)した編集多言語テキストをヤンク(ペースト)すると文字化けする.この対策は,set-selection-coding-system 関数でコーディングシステムを .emacs に定義しておく.Meadow と他のアプリケーション(IE など)との間で多言語テキストをコピー/ペーストをすることを考慮すれば,コーディングシステムは 'utf-16le-dos に設定するのがよい.通常作成するテキストを UTF-8 DOS 形式とし,クリップボードテキストを Unicode (UTF-16 little endian 形式) で連絡したい場合,以下のとおりである.

;; 言語設定:日本語
(set-language-environment "Japanese")
(set-terminal-coding-system 'utf-8-dos)
(set-default-coding-systems 'utf-8-dos)
(set-buffer-file-coding-system 'utf-8-dos)
;; クリップボード文字コード設定 (文字化け対策)
(set-selection-coding-system 'utf-16le-dos)
	

更新履歴

 

Apr. 21, 2007 新規作成
June 3, 2007 Windows XP 上の swath 追記
Aug. 14, 2009 キル/ヤンク文字化け対策追記