Emacs 21 Unicode 環境 since Sept. 10 2005 |
||||
|
||||
概要 |
FreeBSD Emacs 21 における Unicode 環境構築についてのメモである.Emacs における Unicode 処理系である Mule-UCS の組み込み,Unicode 多言語フォントの調整を行う.X11(X Window System)は Xorg-6.x を前提としている. 2005.9 現在,FreeBSD 5.4-RELEASE ports の Emacs バージョンは 21.3 / Mule 5.0 (SAKAKI 賢木)である. |
||||||||||||||||||||||||||||||||||||||||
Emacs 21
|
FreeBSD ports から Emacs 21 本体,Leim(多言語インプットメソッド),Mule-UCS(Unicode パッケージ)を組み込む.日本語インプットメソッド,仮名漢字変換サーバ等の日本語環境の設定については,インターネット・リソースが数多く存在するので,ここでは割愛する.
インストールはいずれも ports になっており簡単である.それぞれ # cd /usr/ports/editor/emacs # make install # cd ../leim21 # make install # cd ../../converters/mule-ucs # make install # rehash |
||||||||||||||||||||||||||||||||||||||||
多言語フォントの
|
Emacs 多言語編集のために多言語フォントをセットアップする.まず Emacs 標準の多言語フォント intlfonts (1.2.1) を ports からインストールする.X11 フォントの項でも述べているがここでも手順をしるす.さらに,Xorg misc-bitmaps,日本語の追加フォントも同時にインストールしておく. % setenv XFONTDIR /usr/X11R6/lib/X11/fonts [ 作業のため X11 フォント・ディレクトリを環境変数にセット ] % su -m # cd /usr/ports/x11-fonts/intlfonts # make install # cd ../xorg-fonts-miscbitmaps # make install # cd /../../japanese/alias-fonts # make install # xset fp+ $XFONTDIR/misc # xset fp rehash 次に電子書体オープンラボが配布している /efont/ Unicode フォントをインストールする.これによって intlfonts には含まれていない教会スラヴ語など Cyrillic U+0400-04FF 範囲のキリル・フォントや,古典ギリシア語複式アクセント付き文字も定義する Greek Extended U+1F00-1FFF 範囲のギリシア語フォントなどを利用することができる. /efont/ は BDF フォントをダウンロードして使うこともできるが,ここではソースから,ノーマル,ボールド,イタリック,ボールド・イタリックの書体で PCF フォントを生成する方法を示す.このために Bdfresize,Mkbold,Mkitalic の各フォント・ユーティリティを事前にインストールしておく.これらのツールは FreeBSD ports から導入が可能である. # cd /usr/ports/x11-fonts/bdfresize # make install # cd ../mkbold-mkitalic # make install # rehash /efont/ ソースをダウンロードし,インストールする手順を以下に示す. % mkdir -p ~/tmp/fonts % cd ~/tmp/fonts % wget -nH --cut-dirs=3 \ http://openlab.ring.gr.jp/efont/dist/unicode-bdf/\ efont-unicode-bdf-0.4.2-src.tar.bz2 % tar jxvf efont-unicode-bdf-0.4.2-src.tar.bz2 % cd efont-unicode-bdf-0.4.2-src % ./configure % make % su -m # mkdir $XFONTDIR/efont # cp -p *.pcf.gz $XFONTDIR/efont # mkfontdir $XFONTDIR/efont # xset fp+ $XFONTDIR/efont # xset fp rehash |
||||||||||||||||||||||||||||||||||||||||
フォント環境設定 |
以上でフォントが使える状態になったが,次回以降のシステム起動後も使用可能とするために,X11 設定ファイル /etc/X11/xorg.conf の Files セクションに misc,efont のフォントパスを追加しておく. Section "Files" RgbPath "/usr/X11R6/lib/X11/rgb" ModulePath "/usr/X11R6/lib/modules" FontPath "/usr/X11R6/lib/X11/fonts/local/" FontPath "/usr/X11R6/lib/X11/fonts/misc/" FontPath "/usr/X11R6/lib/X11/fonts/efont/" ...... EndSection また,Emacs の初期フォントとして /efont/ を使うよう,以下の設定情報を $HOME/.Xdefaults に追記する.14 ドット・フォントの例である. Emacs.Font: fontset-14 ! -- 14 dot -- ! medium-r-normal Emacs.Fontset-0: -*-fixed-medium-r-normal--14-*-*-*-*-*-fontset-14,\ ascii:-*-fixed-medium-r-normal--14-*-iso8859-1,\ japanese-jisx0213-1:-*-fixed-medium-r-normal--14-*-jisx0213.2000-1,\ japanese-jisx0213-2:-*-fixed-medium-r-normal--14-*-jisx0213.2000-2,\ japanese-jisx0208:-*-fixed-medium-r-normal--14-*-jisx0208*,\ katakana-jisx0201:-*-fixed-medium-r-normal--14-*-jisx0201*,\ mule-unicode-e000-ffff:-*-fixed-medium-r-normal-ja-13-*-iso10646*,\ mule-unicode-0100-24ff:-*-fixed-medium-r-normal--13-*-iso10646* ! bold-r-normal Emacs.Fontset-1: -*-fixed-bold-r-normal--14-*-*-*-*-*-fontset-14,\ ascii:-*-fixed-bold-r-normal--14-*-iso8859-1,\ japanese-jisx0213-1:-*-fixed-bold-r-normal--14-*-jisx0213.2000-1,\ japanese-jisx0213-2:-*-fixed-bold-r-normal--14-*-jisx0213.2000-2,\ japanese-jisx0208:-*-fixed-bold-r-normal--14-*-jisx0208*,\ katakana-jisx0201:-*-fixed-bold-r-normal--14-*-jisx0201*,\ mule-unicode-e000-ffff:-*-fixed-medium-r-normal-ja-13-*-iso10646*,\ mule-unicode-0100-24ff:-*-fixed-bold-r-normal--13-*-iso10646* ! medium-i-normal Emacs.Fontset-2: -*-fixed-medium-i-normal--14-*-*-*-*-*-fontset-14,\ ascii:-*-fixed-bold-r-normal--14-*-iso8859-1,\ japanese-jisx0213-1:-*-fixed-medium-i-normal--14-*-jisx0213.2000-1,\ japanese-jisx0213-2:-*-fixed-medium-i-normal--14-*-jisx0213.2000-2,\ japanese-jisx0208:-shinonome-mincho-medium-i-normal--14-*-jisx0208*,\ katakana-jisx0201:-*-fixed-bold-r-normal--14-*-jisx0201*,\ mule-unicode-e000-ffff:-*-fixed-medium-r-normal-ja-13-*-iso10646*,\ mule-unicode-0100-24ff:-*-fixed-medium-r-normal--13-*-iso10646* ! bold-i-normal Emacs.Fontset-3: -*-fixed-bold-i-normal--14-*-*-*-*-*-fontset-14,\ ascii:-*-fixed-bold-i-normal--14-*-iso8859-1,\ japanese-jisx0213-1:-*-fixed-medium-i-normal--14-*-jisx0213.2000-1,\ japanese-jisx0213-2:-*-fixed-medium-i-normal--14-*-jisx0213.2000-2,\ japanese-jisx0208:-shinonome-mincho-bold-i-normal--14-*-jisx0208*,\ katakana-jisx0201:-*-fixed-bold-r-normal--14-*-jisx0201*,\ mule-unicode-e000-ffff:-*-fixed-medium-r-normal-ja-13-*-iso10646*,\ mule-unicode-0100-24ff:-*-fixed-bold-r-normal--13-*-iso10646* 格納したら,X11 リソース・データベースに反映する. % xrdb -merge ~/.Xdefaults |
||||||||||||||||||||||||||||||||||||||||
Mule-UCS の
|
Emacs 初期設定ファイル .emacs に以下のような内容を記述する. ;; ;; Unicode Mule-UCS 設定 ;; (setq un-define-safe-charsets-for-coding-systems '(ascii latin-iso8859-1 latin-iso8859-2 latin-iso8859-3 latin-iso8859-4 cyrillic-iso8859-5 greek-iso8859-7 hebrew-iso8859-8 latin-iso8859-9 ipa thai-tis620 ethiopic indian-is13194 vietnamese-viscii-lower vietnamese-viscii-upper mule-unicode-0100-24ff japanese-jisx0208 japanese-jisx0213-1 japanese-jisx0213-2 japanese-jisx0212 korean-ksc5601 chinese-big5-1 chinese-big5-2 chinese-gb2312 chinese-cns11643-1 chinese-cns11643-2 chinese-cns11643-3 chinese-cns11643-4 chinese-cns11643-5 chinese-cns11643-6 chinese-cns11643-7 chinese-sisheng mule-unicode-2500-33ff mule-unicode-e000-ffff latin-jisx0201 katakana-jisx0201 )) (require 'un-define) (require 'un-tools) (require 'jisx0213) (un-define-change-charset-order '(ascii latin-iso8859-1 latin-iso8859-2 latin-iso8859-3 latin-iso8859-4 cyrillic-iso8859-5 greek-iso8859-7 hebrew-iso8859-8 latin-iso8859-9 ipa thai-tis620 ethiopic indian-is13194 vietnamese-viscii-lower vietnamese-viscii-upper mule-unicode-0100-24ff japanese-jisx0208 japanese-jisx0213-1 japanese-jisx0213-2 japanese-jisx0212 korean-ksc5601 chinese-big5-1 chinese-big5-2 chinese-gb2312 chinese-cns11643-1 chinese-cns11643-2 chinese-cns11643-3 chinese-cns11643-4 chinese-cns11643-5 chinese-cns11643-6 chinese-cns11643-7 chinese-sisheng mule-unicode-2500-33ff mule-unicode-e000-ffff latin-jisx0201 katakana-jisx0201 )) 以上で Emacs 21 Unicode 環境はほぼ完了である.仮想端末から emacs & を投入して,Emacs を起動する. |
||||||||||||||||||||||||||||||||||||||||
インプット
|
Emacs 21 では Leim 多言語インプットメソッドを切替えて数多くの言語を入力することが可能である.教会スラヴ語などのスラヴ語一般と,古典・現代ギリシア語のために,私なりに作成したインプットメソッドも追加して利用できる.「Emacs スラヴ語/古典ギリシア語汎用インプットメソッド」を参照していただきたい. インプットメソッドの切替えはC-x C-m C-\ もしくは M-x set-input-method を投入し,Select input method (default ...): プロンプトに対し,インプットメソッド名を応答することで行う.
キリル文字入力用を中心に,インプットメソッド名の主なものを以下に示す.
Mule-UCS は Unicode のコードポイントで文字を入力するインタフェースを備えている.M-x insert-ucs-character を投入して UCS codepoint: プロンプトに対し ?\xコードポイント(十六進四桁) を入力すると,当該コードポイントの Unicode 文字がカーソル位置に挿入される.例えば,?\x9dd7 とすると CJK 統合漢字「鷗」が入力できる.Unicode 漢字コードポイントは『JIS漢字字典』(芝野耕司著,日本規格協会)等で参照することができる. |
||||||||||||||||||||||||||||||||||||||||
更新履歴 |
|