From: Araki K. <j00...@ip...> - 2002-01-04 07:42:23
|
荒木です:-) まず、昨日から、たくさんレポートをあげていただいていますが、今のところ、 ISCII 対応だけで手一杯ですので、それ以外につきましては、ISCII が一段落す るまで、すべて後回しにさせてください。申し訳ありません _o_ で、本題のISCII 対応パッチです。 http://www.geocities.co.jp/SiliconValley-Cupertino/6461/mlterm-2.2.0-pre20020102-pre20020104.patch.gz http://www.geocities.co.jp/SiliconValley-Cupertino/6461/mlterm-2.2.0-pre20020104.tar.gz mlterm-2.2.0-pre20020102-pre20020104.patch.gz は、cvs current へのパッチになります。 パッチあてるのが面倒な方は、mlterm-2.2.0-pre20020104.tar.gz をどうぞ。 実は、昨日、目途がたちましたといってから、かなり何度も設計を練りなおしてお りまして、遅くなってしまいました。 とりあえず、手元では、iitm-term とほぼ同じように 表示/入力/コマンドライン編 集できるところまで確認しましたので、まだまだ仮実装段階でいろいろとバグが残 っているとは思いますが、ちょこっとあそんでみてください。 スクリーンショット http://www.geocities.co.jp/SiliconValley-Cupertino/6461/mlterm.png http://www.geocities.co.jp/SiliconValley-Cupertino/6461/iitm-term.png なんとか、 1. 既存のデータ構造を生かし、ISCII 対応のためだけの無駄なメモリ消費量を排除 する。 2. adhoc な対応コードはできるだけ減らし、見通しがこれ以上悪くならないように する。 3. iitm-term のように毎回全部再描画しなおすような真似はせず、overhead を実用 レベルにまで抑える。 の 3 点は達成できていると思います。 # 2 はかなり怪しいですが、3 についてはいい線いってると思います。 # iitm-term の描画速度では、遅すぎて、とうてい実用にはなりませんが、mlterm # は 十分実用レベルです。Bidi の overhead とほぼ同じ程度ですんでいます。 さて、設定方法ですが、基本的には、http://www.tenet.res.in/Donlab/Indlinux/ の iitm-term と同じです。 上記サイトのドキュメントをよくよんでください。 まず、上記サイトから、 libind.tar.gz truetype.tar.gz を download してください。 libind.tar.gz は、 ./configure make make install でインストールできます。 ただし、これでは、src/indian.h がインストールされませんので、/usr/local/include など適当なディレクトリに手でcopyしてください。 さらに、OS のパッケージなどを使って、xfstt をインストールします。 わたしは、NetBSD precompiled package を使って、 pkg_add xfstt-1.1.tgz しましたが、まぁ、この辺は適当に。 truetype.tar.gz は、展開したのち、フォントを xfstt からみえるディレクトリ に置いてください。 わたしの場合、/usr/X11R6/lib/X11/fonts/TrueType に置きました。 その上で、 xfstt --sync xfstt --daemon xset fp+ unix/:7101 としてください。 この段階で、iitm-term でも ISCII が使えるようになりますので、まずは、そ ちらで ISCII 表示してみるとよいかもしれません。 iitm-term も、上記のサイトにありますので、ダウンロードして、 ./configure make make install としたうえで、 iitm-term と、端末を起動すれば、たとえば、 cat src/test.iscii で、ISCII の glyph が表示されると思います。 F2 で、ISCII の様々な言語を動的に切替られるようです。 一方、mlterm では、まず、 ./configure --enable-ind とした上で、make することで ISCII 対応になります。 ビルドしおわったら、まずは、LIBIND_PATH 環境変数を以下のように設定するの を忘れないでください。 $ export LIBIND_PATH=/usr/local/libind その上で、 $ mlterm -km iscii -w 16 -V -X=false -m のようにして起動すれば、ISCII が表示できるようになります。 ちなみに、手元では、-X=false にしないと、起動直後に hang up しましたので 一応このようにしておいたほうがよいと思います。 それから、ISCII のグリフをレンダリングするの際に、結合文字処理機構を流用 しますので、-m オプションも忘れずにつけてください。 mlterm は、現在のところ、iitm-term のように ISCII 表示に使用するフォント を動的に切替ることはできませんが、 -C Tamil のように、-C オプションに、使用したいフォント名を指定することで、そのフォ ントが使えるようになります。 # /etc/libind.conf に、言語一覧が載っています。 mlterm 同士なら、copy&paste も可能です。 XCT には、"ESC / % 1 \x80 \x8b iscii-dev \x02" シーケンスを使っています。 Unicode との mapping は未実装です。 また、Emacs との copy&paste もテストしていません。 文字入力の際には、Alt_R キー押下することで、ISCII の入力モードになります。 そのうえで、F1 キーを押下することで、入力方法(キーマッピング?) をかえられ ます。この辺は、iitm-term と同じです。 いまのところはこんな感じです。 では -- kiken j00...@ip... |