2003.11.12新規公開。2002.11.23の随感の内容を大幅に加筆し、最新の情報にした。
Cygwinに含まれているrxvtは、そのままでは日本語が通らない。いくつかのWebページでパッチが公開されているが、configureの引数の説明が誤っているものもあり、穴に嵌ることがある。
まずパッチを入手する。
上記のパッチは、rxvt on Cygwinのものを最新版に対応させたもの。
パッチを当てたら、configureを走らせる。例えば次のようにする。--x-includes --x-libraries は必須。
$ ./configure --prefix=/usr/local --x-includes="../W11 -IW11" \ --x-libraries="../W11/lib -mwindows ../W11/wrap/rxvt_res.o -Wl,--subsystem,console" \ --with-xpm-includes="../W11" --with-xpm-library="../W11/lib" --enable-menubar \ --enable-transparency --enable-xpm-background --enable-languages --enable-next-scroll
リンカに渡す--subsystemの引数はconsoleでなければならないことに注意。Webページによっては、windowsとしているものがあるが、それではエクスプローラから直接起動したときにフリーズしてしまう(コマンドプロンプトからなら起動できるので気づきにくいかも)。
configureのオプションとして--with-encodingを指定してもいい。省略するとsjisとみなされる。文字コードは、rxvtの起動時にも指定できる。
-Wlオプションは、リンカldに渡される。日本語のldのマニュアルは、例えば次のページにある。
--subsystem windowsはWinMain()関数を用意する場合、consoleはmain()関数から開始する場合に用いる。
ところで、-mwindowsオプションは、cc1に渡される。その他のオプションは、次のようになっている。-mwindows -Wl,--subsystem,consoleは、Windowsアプリケーションにもかかわらずコンソールを表示する。
-mwin32 Set Windows defines -mno-win32 Don't set Windows defines -mwindows Create GUI application -mno-cygwin Use the Mingw32 interface -mcygwin Use the Cygwin interface
あとは、make && make install すればいい。
スタートメニューから起動できるように、ショートカットを作成する。-kmオプションで文字コードを指定する。また、bashなどを起動する。
D:\cygwin\usr\local\bin\rxvt.exe -km sjis -e /bin/bash --login -i
あるいは、別マシンにログインする場合は、次のようにする。
D:\cygwin\usr\local\bin\rxvt.exe -km eucj -e /bin/ssh -l ユーザ名 ホスト名