長文になることをお許しください。 jfbterm for FreeBSD 0.5.0 をリリースしました。
http://www.ac.auone-net.jp/~baba/jfbterm/ 今までのバージョンは jfbterm が FreeBSD でも動いたというレベルでしたが、 今回は全面的にコードを書き換えました。 最初は問題のあるところだけ直すつもりだったんですが・・・ 結果的にオリジナルの jfbterm とは、かなり違うものになり、 完成度もあがったと思います。 本バージョンより、マウスによるコピーペーストが使えるようになっています。 また、FreeBSD 6.3-RELEASE 以上なら特別な設定を行わずに実行できますので、 気に入ったら試してみてください。設定をいじるだけでも楽しめると思います。 以前のバージョンの設定ファイルを使用し続ける場合は、video.mode を 新しい書式に書き換える必要がありますので、ご注意ください。 "for FreeBSD" ですが、NetBSD/OpenBSD/Linux のコードが入っています。 これらの OS で、"jfbterm for FreeBSD" を動かしたい人は http://www.ac.auone-net.jp/~baba/jfbterm/memo5.txt をご覧ください。 ■ 主な修正点 ・設定ファイルのサンプルに記述されているコードセットが、 nl_langinfo(3) が返す値になっていなかった問題を修正しました。 ・8bpp のとき 256 カラー表示を行うと色が正しくなかった問題を 修正しました。 ・スクロールバックを行うと画面下部にゴミが残る問題を修正しました。 ・8bpp のとき仮想端末を切り替えるとパレットがおかしくなる問題を 修正しました。(※) ・257行または257桁以上の環境で正常に表示できない問題を修正しました。(※) ・OTHER-CODING-SYSTEM と UTF-8 で行の折り返しが正しく行われない問題を 修正しました。(※) ・UCS-2BE に変換できないエンコーディング名をエスケープシーケンスを通じて 渡されると OTHER-CODING-SYSTEM への切り替えで無限ループになる問題を 修正しました。(※) ・端末ケーパビリティにカーソルの表示・非表示の記述があるのに、 カーソルが消えない問題を修正しました。(※) ・Linux において、仮想端末を切り替えた状態で kill されると画面のモード が戻らない問題を修正しました。(※) ・Linux において、utmp を正しく記録できない問題を修正しました。(※) ※は、オリジナルの jfbterm に存在していた問題です。他にもかなりの量の バグを修正しました。 ■ 以前のバージョンからの機能拡張と変更 特に記述がない場合、FreeBSD/NetBSD/OpenBSD/Linux の全てが対象です。 ・余計なメッセージを表示しないようにしたので、オプション -q, --quiet を 廃止しました。 ・プロセスが setuid/setgid されているとき、オプション -f, --config を 使用して、設定ファイルのパスを変更出来ないようにしました。 ・フレームバッファのモジュールがロードされていないとき、自動的にロード するようにしました。 - この機能は FreeBSD 6.3-RELEASE 以上だけで使用できます。 ・フレームバッファのメモリをライトコンバインに設定することが できるようにしました。 - CPU が MTRR か同等の機能を持っている場合、描画速度が劇的に向上します。 - Linux/NetBSD/OpenBSD では開始アドレスとサイズを記述する必要があります。 FreeBSD では設定ファイルで MTRR を有効にするだけです。 ・画面モードの設定手順が複雑だったので、簡単に指定できるようにしました。 - 設定ファイルの video.mode に <width>x<height>x<depth> と記述 できるようになりました。 - この機能は FreeBSD と OpenBSD だけで使用できます。 ・環境変数 $FRAMEBUFFER を自動で設定するようになりました。 ・ANSI カラーを設定することが可能になりました。 ・スクリーンセーバーの種類と起動するまでの時間を設定できるようになりました。 ・ベルの種類、持続時間および、ピッチを指定できるようになりました。 - 可視ベルも選択できますが、描画速度が遅い環境ではお勧めしません。 ・カーソルの種類、点滅間隔、色および、高さを指定できるようになりました。 ・キーリピート間隔を設定できるようになりました。 ・マウスによるコピーペーストをサポートしました。 - マウスプロトコルの解析は KON2 から移植しました。 - マウスカーソルの種類、点滅間隔、色および、高さを通常のカーソルとは 別に指定できます。 - FreeBSD の場合は moused(8) を起動すると sysmouse(4) を使用できます。 - NetBSD/OpenBSD の場合は wsmouse(4) に対応してあります。 ・文字に任意の色の影をつけることが可能になりました。 - 影をつけると背景に画像を表示している場合でも文字が見やすくなります。 ・M+ bitmap fonts を使用するためのサンプルを設定ファイルに記述しました。 - 「半角カナ」も表示できます。 ・設定ファイルの color.gamma を廃止しました。 -- Yusuke.Baba <[メールアドレス保護]>