Files
w3m/doc-jp/README.cygwin
2011-05-04 16:05:14 +09:00

185 lines
6.7 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

cygwin で w3m を使う
(2003/02/17) 渡邉勝之
knabe@sannet.ne.jp
Windows で w3m を動かすためにはWindows 上の UNIX互換環境である Cygwin が
必要です.
Cygwin に関する情報は http://cygwin.com/ を参照してください.
* ビルド
w3m-0.2 以降から cygwin 向けの修正パッチが取り込まれたためcygwin-1.1.4
以降の環境であれば特に問題なくビルドできますNet Release 前の B18, B19,
B20あたりでもビルドできるはずですが確認はされていません
(*) Cygwin B20.1 の環境では
LOCAL_LIBRARIES に -luser32 をつける必要があります。
なおtermcap ないし ncurses パッケージは最新のものを使ってください.特
に termcap を使う場合,古いパッケージは /etc/termcap の cygwin のエント
リにバグがあり,表示がおかしくなります.この問題は termcap-20001020-1 で
修正されているため,これ以降のバージョンを使用してください.
ビルドする際には, 必ず ./configure してから make してください.以下で説
明するマクロが定義されなくなるため,正常に動作しなくなります.また,正常
にビルドできない,正常に動作しない場合には,バグ報告をする前に以下の点を
チェックしてください.
o make veryclean してから再度 ./configure && make してみる.
o gcc, binutils が正常にインストールされているかを確認する.
cygwin の setup.exe に問題があり,パッケージファイルのダウンロード
に失敗しても,エラーの報告をしないで正常終了してしまうことがあるよ
うです.その場合には再度 setup をやりなおしてください.
また Win95/98/ME では,環境変数 CYGWIN に 'ntsec' もしくは 'ntea' が含ま
れているとシェルスクリプトに実行属性がつかなくなるためconfigure に失
敗するようですw3m に限らず,他にも問題が発生するという報告があるため,
Win95/98/ME で Cygwin を使用する場合には,最初に cygwin1.dll をロードす
る際の環境変数 CYGWIN から ntsec, ntea の記述を取り除いてください.
* マクロ
config.h にはCygwin 環境向けに以下のマクロを定義してあります.
o USE_BINMODE_STREAM
-dump, -dump_{head,source,both,extra} 時の stdout への出力をバイナリ
モードで行いますcygwin-1.3.11 以降では不要になっているはずですが,
安全側に振っておくために残しています.
Cygwin, EMX 環境で共通です.
o SUPPORT_DOS_DRIVE_PREFIX
'C:', 'C:/', 'file://C:/', 'file://C|/' などのドライブレターを含むパ
スを認識し,ファイル名として扱う機能を有効にします.
Cygwin, EMX 環境で共通です.
o SUPPORT_NETBIOS_SHARE
'//NETBIOSHOST/SHARE/PATH', 'file://NETBIOSHOST/SHARE/PATH' 形式の
NETBIOS 共有資源へのアクセスを ftp: スキーマではなく file: スキーマ
として扱う機能を有効にします.
Cygwin 環境に特有です.
o SUPPORT_WIN9X_CONSOLE_MBCS
Win9X 系の DOS プロンプトで,検索およびフォームへの一行エディタ入力
時に日本語 IME 経由の入力をサポートします.
ただしWin9X 系の DOS プロンプトの実装および Cygwin の tty レイヤー
の問題により,ローカルコンソールで TERM=cygwin かつ環境変数 CYGWIN
に 'tty' が含まれない場合のみ IME からの入力を許可しています.
なおNT 系ではこのマクロを無効にしても動作は変更されず,ローカルコ
ンソールであれば IME による日本語入力が可能です.
LANG=JA 指定時の Cygwin 環境に特有です.
* Native Application との連携
Cygwin 環境でビルドした w3m から Win32 Native アプリケーションを起動する
場合,パスの記述形式の違いによって,ファイルが見つからないなどのエラーが
発生します.
o ローカルCGI
Cygwin 環境でビルドすると,$LIB (通常は /usr/local/lib/w3m/cgi-bin) 以下
にインストールされるローカル CGI は cygwin の /usr/bin/perl を使うように
設定されますこれに対しNative アプリケーションの ActivePerl などを使
用する場合,以下のようなラッパースクリプトを用意し,$LIB 以下の各スクリ
プトを修正してください.
------ /usr/local/bin/winperl ------
#!/bin/sh
# wrapper script for Win32 Native Perl
PERL=/cygdrive/c/Perl/bin/perl.exe
case $1 in
-*)
;;
*)
SCRIPT=`cygpath -w $1`
shift
;;
esac
exec "$PERL" "$SCRIPT" $@
------------------------------------
※PERL= には Cygwin 環境の内部から見た Native Perl のパスを記述してくだ
さいcygpath ユーティリティは cygwin パッケージに入っています.
なお,ディレクトリリストだけであれば,オプション設定で「ディレクトリリス
トに外部コマンドを使う」を NO にすれば,ローカル CGI を使わずにディレク
トリのブラウズを行います.
o エディタ
w3m はテキストエリアの内容編集などに外部エディタを使用しますが,外部エデ
ィタに Win32 Native アプリケーションを使う場合,以下のスクリプトを外部エ
ディタに指定してください.
------ /usr/local/lib/w3m/winedit ------
#!/bin/sh
EDITOR='/cygdrive/c/Program Files/sakura/sakura.exe'
FILE=`cygpath -a -w $1`
exec "$EDITOR" "$FILE"
----------------------------------------
※EDITOR= には Cygwin 環境の内側から見た Native アプリケーションのパスを
記述してください.
なおNT 系で inetd をサービスとして動かしていてlocalhost に telnet で
接続している場合には,「デスクトップとの対話をサービスに許可」を ON にし
ておかなければ window が表示されません.
* 既知のバグ
以下はCygwin 環境で w3m を動かした場合の問題点です.
o -dump, -dump-source 時に LF -> CR+LF の変換が行われることがある.
コンパイル時にマクロ USE_BINMODE_STREAM が define されていない可能性が
あります.
きちんと configure したうえでコンパイルしなおすか,環境変数 CYGWIN に
binmode を設定してください.
o Win9X 系の DOS プロンプトで IME 経由の入力ができない.
環境変数 CYGWIN に 'tty' が含まれているときにはCygwin の tty レイヤ
の問題を回避するために IME 経由の入力を禁止しています.環境変数 CYGWIN
から 'tty' を削除してください.
o Win9X 系の DOS プロンプトで IME が ON になっているとカーソルが効かない.
Win9X の DOS プロンプトと Cygwin の tty レイヤーの実装の問題です.
代わりに C-f, C-b, C-p, C-n を使ってください.
o NT 系のコマンドプロンプトで画面制御がおかしくなる.
「レイアウト」タブで画面バッファのサイズとウィンドウのサイズを違う値に
してバックスクロールができるように設定していると,画面制御がおかしくな
ることがあるようです.
o DOS プロンプト,コマンドプロンプトでマウスが使えない.
DOS プロンプト「編集オプション」/コマンドプロンプトの「オプション」で
「簡易編集モード」が ON になっていると,マウスイベントが w3m に渡され
ませんOFF に設定してください.
o DOS プロンプト,コマンドプロンプトでマウスボタンに対する反応がおかしい.
cygwin-1.3.15 までの環境では,マウスの右と中央ボタンのエスケープシー
ケンスが入れ替わっていました.これは cygwin-1.3.16-1 で修正されていま
すがw3m 側のバージョン判定が完全ではないため,使用する環境でビルド
するようにしてください.
* その他
Cygwin 環境ではDOS プロンプト/コマンドプロンプトを使うよりもinetd を
あげて,ローカルに TeraTerm, PuTTY などの telnet クライアント経由でログ
インする,ないしは rxvt, cygterm を使用するほうが快適です.
o rxvt:
rxvt on Cygwin
http://hp.vector.co.jp/authors/VA021953/rxvt/
compiled package
http://matsu-www.is.titech.ac.jp/~sohda/cygwin/dist/
o cygterm:
CygTerm - Yet another Cygwin console
http://www.dd.iij4u.or.jp/~nsym/cygwin/cygterm/