rxvt on Cygwin

僭越ながらバージョンj05を名乗らせていただきます

Sohdaさんがまとめたrxvt-2.7.2-10-j01-p2をベースに、W11ライブラリ部分のXlocale周りを(適当に)実装し、rxvt本体部分からの独立性を高めました。eucjモードがだいぶ実用的になります。

それとは別に、sjis/eucj両モード対応の半角カナパッチを作りました。こちらはrxvtのバージョンが2.7.2に近ければ一般のX環境で動くと思います。

詳細

パッチ関係図

(わざわざこんなにパッチを切り分けてどうするのか。パズル状態。)

rxvt-2.7.2-10
本来のサイトはこちらだが、最新版はCygwin本家から配布されている。

↓パッチをお求めの方は左から集めるか右から落とすかまず決めてください↓

rxvt-2.7.2-6j01
jkimuraさん作2.7.2用パッチ。参考:genzooさんの2.6.2用日本語化パッチ

rxvt-2.7.2-10-j01-p2
SohdaさんがDOS窓が開かないようにするなどのパッチを作成。含む行間パッチ。

rxvt-2.7.2-10-j01-j05.patch
Xlocale仮実装、EUCモードでCopy&Paste対応。含む半角カナパッチ。

rxvt-2.7.2-10-j+20020718.diff
fontname処理、-pixmap修正など。

(下2つ順不同)

rxvt-2.7.2-lsp.patch
rxvt-2.7.2-10-j01-p2から行間パッチ切り出し。汎用。参考:2.6.3用行間パッチ

rxvt-2.7.2-rk.patch
半角カナ表示、Copy&Pasteパッチ。汎用。参考:sjis用半角カナパッチ

rxvt-2.7.2-10-j05+.patch
残り。つまりrxvt for Cygwin最新日本語化パッチ。含むrxvt-2.7.2-10-j+20020718.diff。

(順不同、どの順番でも当たります)

rxvt-2.7.2-10-j05.1.patch
j05->j05.1修正差分。単純なバグ。IME入力コード変換。

rxvt-2.7.2-10-j05.2.patch
j05.1->j05.2修正差分。Xlocale手直し。非Cygwinコマンド実行時DOS窓が出たりする問題を修正。

左右どちらかのパッチを全部当てたソースコードはこちら。
rxvt-2.7.2-10-j05.2+-src.tar.bz2

rxvt-2.7.2-10やrxvt-2.7.2-6j01の中の一部のファイルに、改行コードがCRLFになっているものがあります。私は先にすべてのファイルをLFに直してからdiffをとっていますので、パッチを当てるときは注意してください。

configureにW11を読ませてXlocaleが実装されていることを認識させる関係で、config.shでは1つ上のディレクトリにW11というsymbolic-linkを作るようになっています。手作業で./configureする場合はconfig.shの記述を参考にするか./configure後config.hを書き換えるなどしてください。 Cygwin DLLのi18nが進めば#define NO_XLOCALEでコンパイルしてもうまく動くはずです。(ごめんなさい、試してません。)

ファイルの一覧はこちら。
src/

使用上の注意

rxvt本体の実装を見ると、selection (Copy&Paste)は-kmオプション等ではなくrxvt起動時のlocale設定に従ってコード変換が行われます。私のパッチはその点について本来の動作にあわせてありますので、eucjで日本語をCopy&Pasteしたい場合は事前にLANG環境変数等を設定する必要があります。autoexec.batに書くなど各自で対策してください。

msminchoとmsgothicは例外として、日本語フォントを指定するときは-fn 'ぱうフォント'-16-jisx0201 -fm 'ぱうフォント'-16-jisx0208などと書体の種類をそれっぽく書いてください。

制限

未だIMEからの入力はそのままsjisで渡されます。emacsenならC-x C-k iで入力コードを切り替えれば日本語入力できますが、そうすると今度はselectionが文字化けしてしまいます。
(あと私の環境ではjedを使う場合は.jedrcで"SLang_code = SJIS;"と指定する必要がありました)
IMEを使う人は今しばらくsjisで使ったほうが幸せかも知れません。

bash(readline全般?)でeucjで半角カナを使うと行送りがおかしくなるのは仕様です。ktermでもなるし。
jedで文字化けさせるとrxvtがstackdumpで落ちる場合があるのですが調査中。もっと基本的にバグってました。修正後は今のところ特有の現象は確認してません。

TODO

移植中パッチ

rxvt系列はなぜか半角カナパッチって見当たらないんですが探し方が悪いのでしょうか。つーか最近は*-src.rpmとか読めない人は置いてきぼりなのかも?
rxvt-2.7.8-rk.patch

リンク

Cygwin使っている人いますか? part5
Google 検索: rxvt
[ RXVT.ORG ]
SourceForge.net: Project Info - rxvt
Using Cygwin. - コンパイルしてみたもの
xc/lib/X11/
SourceForge.net: Project Info - libW11
Google 検索: AllocConsole
2002-3 Winners Field Diary


「ロストアワー」に戻る
Copyright © 2000-2002 Yamanobe Kiichiro.
yamky@cocoa.freemail.ne.jp