• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

HISTORYH A D26-Oct-2021186.1 KiB4,2743,282

READMEH A D03-May-20224.1 KiB12087

README.SSLH A D03-May-20222.9 KiB5345

README.cookieH A D03-May-20224.1 KiB6349

README.cygwinH A D03-May-20228.7 KiB185138

README.dictH A D03-May-20222.2 KiB6943

README.funcH A D03-May-20229 KiB151150

README.imgH A D03-May-202211.3 KiB286226

README.keymapH A D03-May-20221.5 KiB5947

README.m17nH A D03-May-202226.9 KiB678544

README.mailcapH A D03-May-20222.4 KiB4833

README.menuH A D03-May-20224.1 KiB10779

README.migemoH A D03-May-20221.9 KiB4028

README.mouseH A D03-May-20221.9 KiB6745

README.passwdH A D03-May-2022854 2317

README.pre_formH A D03-May-20221.4 KiB3631

README.siteconfH A D03-May-20222.4 KiB7449

README.tabH A D03-May-20222.4 KiB4436

keymap.defaultH A D03-May-20222.5 KiB145136

keymap.lynxH A D03-May-20222.6 KiB147138

menu.defaultH A D03-May-20221 KiB3633

menu.submenuH A D03-May-20221.2 KiB4540

w3m.1H A D03-May-202212.4 KiB505496

README

1	w3m: WWW wo Miru Tool  version 0.5.3	Jan 15, 2011
2		(C) Copyright by Akinori ITO
3				 Hironori SAKAMOTO
4				 Fumitoshi UKAI
5
61. はじめに
7
8  w3m は,World Wide Web に対応したページャです.あくまでページャですが,
9テキストベース WWW ブラウザとしても使うことができます.
10
11  w3m は,fm というページャをベースとして作られました.fm についての詳細
12は,STORY.html をお読みください.w3m のページャとしての基本的な特徴は,fm
13とほとんど同じです.
14
15  w3m 独自の特徴としては,次のようなものがあります.
16
17  ・WWW 対応なので,HTML の文書を読んでいる時には,その中のリンクを辿った
18    り,画像を見ることができる.
19  ・Internet message 表示のためのモードがある.この時,Content-Type: が
20    text/html の場合は,自動的に HTML の文書として表示する.また,自力で
21    MIME header のデコードをする.
22  ・見ている plain text 文書中に URL 表記があった場合,その部分からリンク
23    をたどることができる.
24
25  現在の問題点は以下のようなものです.
26
27  ・オンラインマニュアルが貧弱.簡単な使い方については,MANUAL.html をお読み
28    ください.
29
30  現在動作が確認されている OS は以下の通りです.
31      SunOS 4.1.x
32      HP-UX 9.x, 10.x
33      Solaris 2.5.x, 2.6, 8, 9
34      Linux 2.0.*/2.2.*/2.4.*/2.6.*
35      FreeBSD 2.2.8, 3.1, 3.2, 4.6
36      NetBSD/macppc, m68k
37      EWS4800 Rel.12.2 Rev.A
38      Digital UNIX: v3.2D, v4.0D
39      IRIX 5.3, IRIX 6.5
40      OS/2 with emx
41      Windows 9x/NT with Cygwin b20.1, 1.1.x, 1.3.x
42      MS-DOS with DJGPP and WATT32 packet driver
43      MacOS X Server
44      MacOS X 10.1, 10.2, 10.3, 10.4
45
462. インストール
47
48インストールをするには,次のようにします.
49
50  - GC library (6.1より新しいもの?)をインストールしておきます。
51    GC library は https://www.hboehm.info/gc から入手できます。
52
53    GC library 6.1を使っている場合は gc.hPREFIX/include54    インストールしておく必要があります。
55	 # cp gc-6.1/include/gc.h PREFIX/include
56
57  - configure を実行する.
58    % ./configure
59
60  - make を実行
61    % make
62
63  - make install を実行
64    # make install
65
66以上でインストールは終わりです.
67
68機種ごとの注意点:
69
70HP-UX
71	HP の C コンパイラ(gccでなく)でコンパイルする場合,
72	configure の
73
74		Input your favorite C-compiler.
75		(Default: cc)
76
77	に,cc -Aa -D_HPUX_SOURCE と答えてください.cc
78	だけだとコンパイルが通りません.gcc なら普通に
79	通りますが,バージョン古めの場合は -g を付けな
80	いでください.
81
82OS/2
83	emx を使うことで w3m をコンパイルすることができます.
84	まず最初に
85
86	  cd gc
87	  make -f EMX_MAKEFILE
88
89	を実行して GC ライブラリをコンパイルしておいてから,w3m
90	本体をコンパイルします.なお,カラー表示が変になるらしい
91	ので,モノクロ用にコンパイルした方が良いでしょう.
92
93Windows
94	Windows で w3m を動かすためには,Windows 上の UNIX互換環境
95	である Cygwin(開発環境付き)が必要です.
96	詳細は README.cygwin を参照してください.
97
98
993. 著作権
100
101w3m の著作権は,伊藤彰則に属しています.
102(C) Copyright 1994-2002 by Akinori Ito
103(C) Copyright 2002-2011 by Akinori Ito, Hironori Sakamoto, Fumitoshi Ukai
104
1054. 配布条件
106
107このソフトウェアによって利用者または第三者が何らかの被害を受けた
108場合,作者はその責任を一切負いません.この事を承諾する限りにおい
109て,このソフトウェアは,誰でも作者に断りなく利用・改変・配布でき
110ます.
111
1125. 作者
113
114	伊藤 彰則
115	東北大学大学院工学研究科
116	aito@fw.ipsj.or.jp
117
118This package is maintained for Debian <https://www.debian.org>,
119forked from the original version <https://sourceforge.net/projects/w3m/>.
120

README.SSL

1SSL サポートについて
2
3                                                         (2000/11/07)  岡部克也
4                                                        okabek@guitar.ocn.ne.jp
5                                                         (2001/12/27)  鵜飼文敏
6                                                              ukai@debian.or.jp
7
8 ・ OpenSSL ライブラリを通じて, SSL をサポートしています.
9    あらかじめインストールしておいてください.
10
11 ・ OpenSSL ライブラリがインストールされていれば configure スクリプト実行時に自
12    動的に検出されて利用可能となります.
13    もしうまく動かないときは, config.h をチェックしてみてください. SSL を利用す
14    るためには, config.h で, USE_SSL マクロが定義されている必要があります.
15    さらに, SSL 認証サポートを利用する場合は, USE_SSL_VERIFY マクロもチェックし
16    てみてください.
17    コンパイルでエラーが出る場合は, リンカフラグに `-lssl -lcrypto', コンパイラ
18    フラグに '-I(SSLeay/OpenSSL のヘッダがあるディレクトリ)' があるか確認してく
19    ださい.
20
21    SSL サポートが有効になっているかどうかは, Option Setting Panel に「SSLの設
22    定」が含まれているかどうかで確認できます.
23
24 ・ SSL に関して以下の設定が可能になってます:
25
26    ssl_forbid_method
27        使わないSSLメソッドのリスト(2: SSLv2, 3: SSLv3, t: TLSv1.0,
28        5: TLSv1.1, 6: TLSv1.2, 7: TLSv1.3)
29        (デフォルトは2, 3, t, 5).
30    ssl_min_version
31        最小のSSLバージョン, OpenSSL 1.1以上で有効(all, TLSv1.0, TLSv1.1,
32        TLSv1.2, TLSv1.3のいずれか) (デフォルトは未設定).
33    ssl_cipher
34        TLSv1.2以下用のSSL暗号(例: DEFAULT:@SECLEVEL=2) (デフォルトは
35        OpenSSL 1.1以上なら未設定, それ以外ならDEFAULT:!LOW:!RC4:!EXP).
36    ssl_verify_server ON/OFF
37        SSLのサーバ認証を行う(デフォルトはON).
38    ssl_cert_file ファイル名
39        SSLのクライアント用PEM形式証明書ファイル(デフォルトは未設定).
40    ssl_key_file ファイル名
41        SSLのクライアント用PEM形式秘密鍵ファイル(デフォルトは未設定).
42    ssl_ca_path ディレクトリ名
43        SSLの認証局のPEM形式証明書群のあるディレクトリへのパス
44        (デフォルトは未設定).
45    ssl_ca_file ファイル名
46        SSLの認証局のPEM形式証明書群のファイル(デフォルトは未設定,
47        configure時に自動検出可).
48    ssl_ca_default ON/OFF
49        SSLの認証局のPEM形式証明書群のために標準の場所を使う(デフォルトはON).
50
51 ・ EGD (Entropy Gathering Daemon) が利用できる環境でこれを使いたい場合は,
52    USE_EGD マクロをチェックしてみてください.
53

README.cookie

1クッキーサポートについて
2
3                                                         (2000/11/07)  岡部克也
4                                                        okabek@guitar.ocn.ne.jp
5
6 ・ version 0 (参照: http://www.netscape.com/newsref/std/cookie_spec.html) と,
7    version 1 (参照: http://www.ics.uci.edu/pub/ietf/http/rfc2109.txt,
8    http://www.ics.uci.edu/pub/ietf/http/draft-ietf-http-state-man-mec-12.txt)
9    のクッキーをサポートしています.
10
11 ・ クッキーのサポートは configure スクリプトの実行時に自動的に選択されます。
12    もしうまく動かないときは, config.h をチェックしてみてください. クッキーを利
13    用するためには, config.h で USE_COOKIE マクロが定義されている必要がありま
14    す.
15    なお、もしクッキーをサポートしたくない場合は --disable-cookie オプションを
16    付けて configure スクリプトを実行して下さい。
17
18 ・ Option Setting Panel (通常 `o' キーにバインドされている), または起動オプシ
19    ョン (-cookie, -no-cookie) で使用するか否かを選択できます.
20
21 ・ Option Setting Panel でクッキーを受け付けないようにする事もできます.
22    この場合, 以後のサーバから送られてくる全てのクッキーはリジェクトされますが,
23    既に受け取っているクッキーについては継続して使用されます.
24
25 ・ C-k でクッキー一覧が表示できます. この画面で, クッキー毎に使用するか否かを
26    選択できます.
27
28 ・ 2000/10/24 の版から, Option Setting Panel でクッキーを受け付ける (または受
29    け付けない) ドメイン (のリスト) を設定できるようになりました. 以下のフォー
30    マットで指定します:
31
32      domain-list = domains
33                  | ""
34      domains     = domain
35                  | domain + "," + domains
36      domain      = "." + domain-name      ; ドメイン名とマッチ
37                  | host-domain-name       ; HDN とマッチ
38                  | ".local"               ; . を含まない全ての HDN にマッチ
39                  | "."                    ; 全ての HDN にマッチ
40
41                              (HDN: host domain name)
42
43    例として, 特定のドメイン (.xxx.or.jp) のクッキーのみを受け付けたい場合は,
44
45    ┌────────────────────────────────────┐
46    │クッキーの設定                                                          │
47    │                                                                        │
48    │クッキーを使用する                              (*)ON  ( )OFF           │
49    │クッキーを受け付ける                            (*)ON  ( )OFF           │
50    │問題のあるクッキーでも受け付ける                [discard]               │
51    │クッキーを受け付けないドメイン                  [.                   ]  │
52    │クッキーを受け付けるドメイン                    [.xxx.or.jp          ]  │
53    │                                                [OK]                    │
54    └────────────────────────────────────┘
55
56    のように設定します.
57
58 ・ ドメインに含まれる "." の数が 2 よりも小さいときは不正なクッキーと
59    見なされます (RFC 2109 4.3.2 参照) が
60    cookie_avoid_wrong_number_of_dots で指定されたドメインはこの制限を
61    受けなくなります。Option Setting Panel の "[wrong number of dots]
62    を無視するドメイン" で設定できます。
63

README.cygwin

1cygwin で w3m を使う
2                                                     (2003/02/17) 渡邉勝之
3						        knabe@sannet.ne.jp
4
5Windows で w3m を動かすためには,Windows 上の UNIX互換環境である Cygwin が
6必要です.
7Cygwin に関する情報は http://cygwin.com/ を参照してください.
8
9
10* ビルド
11
12w3m-0.2 以降から cygwin 向けの修正パッチが取り込まれたため,cygwin-1.1.4
13以降の環境であれば特に問題なくビルドできます.Net Release 前の B18, B19,
14B20あたりでもビルドできるはずですが,確認はされていません.
15 (*) Cygwin B20.1 の環境では
16     LOCAL_LIBRARIES に -luser32 をつける必要があります。
17
18なお,termcap ないし ncurses パッケージは最新のものを使ってください.特
19に termcap を使う場合,古いパッケージは /etc/termcap の cygwin のエント
20リにバグがあり,表示がおかしくなります.この問題は termcap-20001020-1 で
21修正されているため,これ以降のバージョンを使用してください.
22
23ビルドする際には, 必ず ./configure してから make してください.以下で説
24明するマクロが定義されなくなるため,正常に動作しなくなります.また,正常
25にビルドできない,正常に動作しない場合には,バグ報告をする前に以下の点を
26チェックしてください.
27
28  o make veryclean してから再度 ./configure && make してみる.
29  o gcc, binutils が正常にインストールされているかを確認する.
30      cygwin の setup.exe に問題があり,パッケージファイルのダウンロード
31      に失敗しても,エラーの報告をしないで正常終了してしまうことがあるよ
32      うです.その場合には再度 setup をやりなおしてください.
33
34また Win95/98/ME では,環境変数 CYGWIN に 'ntsec' もしくは 'ntea' が含ま
35れていると,シェルスクリプトに実行属性がつかなくなるため,configure に失
36敗するようです.w3m に限らず,他にも問題が発生するという報告があるため,
37Win95/98/ME で Cygwin を使用する場合には,最初に cygwin1.dll をロードす
38る際の環境変数 CYGWIN から ntsec, ntea の記述を取り除いてください.
39
40
41* マクロ
42
43config.h には,Cygwin 環境向けに以下のマクロを定義してあります.
44
45o USE_BINMODE_STREAM
46  -dump, -dump_{head,source,both,extra} 時の stdout への出力をバイナリ
47  モードで行います.cygwin-1.3.11 以降では不要になっているはずですが,
48  安全側に振っておくために残しています.
49  Cygwin, EMX 環境で共通です.
50
51o SUPPORT_DOS_DRIVE_PREFIX
52  'C:', 'C:/', 'file://C:/', 'file://C|/' などのドライブレターを含むパ
53  スを認識し,ファイル名として扱う機能を有効にします.
54  Cygwin, EMX 環境で共通です.
55
56o SUPPORT_NETBIOS_SHARE
57  '//NETBIOSHOST/SHARE/PATH', 'file://NETBIOSHOST/SHARE/PATH' 形式の
58  NETBIOS 共有資源へのアクセスを ftp: スキーマではなく file: スキーマ
59  として扱う機能を有効にします.
60  Cygwin 環境に特有です.
61
62o SUPPORT_WIN9X_CONSOLE_MBCS
63  Win9X 系の DOS プロンプトで,検索およびフォームへの一行エディタ入力
64  時に日本語 IME 経由の入力をサポートします.
65  ただし,Win9X 系の DOS プロンプトの実装および Cygwin の tty レイヤー
66  の問題により,ローカルコンソールで TERM=cygwin かつ環境変数 CYGWIN
67  に 'tty' が含まれない場合のみ IME からの入力を許可しています.
68  なお,NT 系ではこのマクロを無効にしても動作は変更されず,ローカルコ
69  ンソールであれば IME による日本語入力が可能です.
70  LANG=JA 指定時の Cygwin 環境に特有です.
71
72
73* Native Application との連携
74
75Cygwin 環境でビルドした w3m から Win32 Native アプリケーションを起動する
76場合,パスの記述形式の違いによって,ファイルが見つからないなどのエラーが
77発生します.
78
79o ローカルCGI
80
81Cygwin 環境でビルドすると,$LIB (通常は /usr/local/lib/w3m/cgi-bin) 以下
82にインストールされるローカル CGI は cygwin の /usr/bin/perl を使うように
83設定されます.これに対し,Native アプリケーションの ActivePerl などを使
84用する場合,以下のようなラッパースクリプトを用意し,$LIB 以下の各スクリ
85プトを修正してください.
86
87------ /usr/local/bin/winperl ------
88#!/bin/sh
89# wrapper script for Win32 Native Perl
90PERL=/cygdrive/c/Perl/bin/perl.exe
91case $1 in
92  -*)
93    ;;
94  *)
95    SCRIPT=`cygpath -w $1`
96    shift
97    ;;
98esac
99exec "$PERL" "$SCRIPT" $@
100------------------------------------
101※PERL= には Cygwin 環境の内部から見た Native Perl のパスを記述してくだ
102  さい.cygpath ユーティリティは cygwin パッケージに入っています.
103
104なお,ディレクトリリストだけであれば,オプション設定で「ディレクトリリス
105トに外部コマンドを使う」を NO にすれば,ローカル CGI を使わずにディレク
106トリのブラウズを行います.
107
108o エディタ
109
110w3m はテキストエリアの内容編集などに外部エディタを使用しますが,外部エデ
111ィタに Win32 Native アプリケーションを使う場合,以下のスクリプトを外部エ
112ディタに指定してください.
113
114------ /usr/local/lib/w3m/winedit ------
115#!/bin/sh
116EDITOR='/cygdrive/c/Program Files/sakura/sakura.exe'
117FILE=`cygpath -a -w $1`
118exec "$EDITOR" "$FILE"
119----------------------------------------
120※EDITOR= には Cygwin 環境の内側から見た Native アプリケーションのパスを
121  記述してください.
122
123なお,NT 系で inetd をサービスとして動かしていて,localhost に telnet で
124接続している場合には,「デスクトップとの対話をサービスに許可」を ON にし
125ておかなければ window が表示されません.
126
127
128* 既知のバグ
129
130以下は,Cygwin 環境で w3m を動かした場合の問題点です.
131
132o -dump, -dump-source 時に LF -> CR+LF の変換が行われることがある.
133
134  コンパイル時にマクロ USE_BINMODE_STREAM が define されていない可能性が
135  あります.
136  きちんと configure したうえでコンパイルしなおすか,環境変数 CYGWIN に
137  binmode を設定してください.
138
139o Win9X 系の DOS プロンプトで IME 経由の入力ができない.
140
141  環境変数 CYGWIN に 'tty' が含まれているときには,Cygwin の tty レイヤ
142  の問題を回避するために IME 経由の入力を禁止しています.環境変数 CYGWIN
143  から 'tty' を削除してください.
144
145o Win9X 系の DOS プロンプトで IME が ON になっているとカーソルが効かない.
146
147  Win9X の DOS プロンプトと Cygwin の tty レイヤーの実装の問題です.
148  代わりに C-f, C-b, C-p, C-n を使ってください.
149
150o NT 系のコマンドプロンプトで画面制御がおかしくなる.
151
152  「レイアウト」タブで画面バッファのサイズとウィンドウのサイズを違う値に
153  してバックスクロールができるように設定していると,画面制御がおかしくな
154  ることがあるようです.
155
156o DOS プロンプト,コマンドプロンプトでマウスが使えない.
157
158  DOS プロンプト「編集オプション」/コマンドプロンプトの「オプション」で
159  「簡易編集モード」が ON になっていると,マウスイベントが w3m に渡され
160  ません.OFF に設定してください.
161
162o DOS プロンプト,コマンドプロンプトでマウスボタンに対する反応がおかしい.
163
164  cygwin-1.3.15 までの環境では,マウスの右と中央ボタンのエスケープシー
165  ケンスが入れ替わっていました.これは cygwin-1.3.16-1 で修正されていま
166  すが,w3m 側のバージョン判定が完全ではないため,使用する環境でビルド
167  するようにしてください.
168
169
170* その他
171
172Cygwin 環境では,DOS プロンプト/コマンドプロンプトを使うよりも,inetd を
173あげて,ローカルに TeraTerm, PuTTY などの telnet クライアント経由でログ
174インする,ないしは rxvt, cygterm を使用するほうが快適です.
175
176o rxvt:
177    rxvt on Cygwin
178      http://hp.vector.co.jp/authors/VA021953/rxvt/
179    compiled package
180      http://matsu-www.is.titech.ac.jp/~sohda/cygwin/dist/
181o cygterm:
182    CygTerm - Yet another Cygwin console
183      http://www.dd.iij4u.or.jp/~nsym/cygwin/cygterm/
184
185

README.dict

1w3m用英和辞典検索機能について
2
31. はじめに
4
5'webster' コマンドなどのように辞書を引くためのコマンドをお持ちの
6場合には,w3m の中からそれを使うことができます.この機能は,
7るびきちさん(rubikitch@ruby-lang.org)によるものをもとに
8Tushar Samant (scribble at pobox.com)が修正をくわえました。
9
102. インストール
11
12この機能を使うためには,コンパイルオプションを手で書きかえて
13コンパイルしなおす必要があります.configure を実行して config.h
14が生成された後,config.h を編集して
15
16#undef USE_DICT
17
1819
20#define USE_DICT
21
22に変更し,w3m をコンパイルしなおしてください.
23w3m/0.3+cvs-1.373以降は、defaultでUSE_DICTがdefineされます。
24
25それから,文字列をうけとってその結果をかえすCGIプログラムを
26インストールします。
27
28つぎのような方法があります
29
30 * もし 'webster'というコマンドがあればいかのような内容の'w3mdict'という
31   スクリプトをつくります。
32
33      #!/bin/sh
34
35      echo Content-type: text/plain
36      echo
37      webster $QUERY_STRING
38
39    これを lcoal CGIとしてインストールします (w3mマニュアルの local CGI
40    のセクションをみてください) そして w3mのオプションページで
41    辞書設定を設定してください。
42
43 * もし文字列をGoogleで検索する機能がつかいたい場合、
44   以下のような local CGIスクリプトがつかえます。
45
46      #!/bin/sh
47
48      google_q='http://google.com/search?btnG=Google&q'
49
50      cat <<_END_
51      Content-type: text/plain
52      W3m-control: GOTO $google_q=$QUERY_STRING
53      W3m-control: DELETE_PREVBUF
54
55      _END_
56
57    これのパスを辞書引きコマンドのURLとして設定してください。
58
593. 使いかた
60
61次の2つのコマンドが使えるようになります.
62
63ESC w    単語を入力し,それを辞書で引いて表示します.
64
65ESC W    バッファ内の現在カーソルがある単語を辞書で引き,表示します.
66
67これらのキーを変更するには、~/.w3m/keymapのDICT_WORDおよびDICT_WORD_AT
68の行を変更してください。
69

README.func

1ABORT		確認せずにw3mを終了します
2ACCESSKEY	Accesskey メニューを立ち上げます
3ADD_BOOKMARK	現在見ているページをブックマークに追加します
4ALARM		アラームを設定します
5BACK		一つ前のバッファを表示します
6BEGIN		文書のいちばん上の行に移動します
7BOOKMARK	ブックマークを読み込みます
8CENTER_H	カーソルのある位置を行の中央に移動します
9CENTER_V	カーソルのある行を画面の中央に移動します
10CHARSET         現在表示されている文書の文字コードを変更します
11CLOSE_TAB	現在のタブを閉じます
12CLOSE_TAB_MOUSE	マウスカーソルの位置のタブを閉じます(マウス操作用)
13COMMAND		w3mのコマンドを実行します
14COOKIE		クッキー一覧を表示します
15CURSOR_TOP	カーソルを画面のいちばん上の行に移動します
16CURSOR_MIDDLE	カーソルを画面の中央の行に移動します
17CURSOR_BOTTOM	カーソルを画面のいちばん下の行に移動します
18DEFAULT_CHARSET デフォルトの文書の文字コードを変更します
19DEFINE_KEY	キー入力とコマンドの対応を定義します
20DELETE_PREVBUF 前のバッファを消去します(主に local-CGI 用)
21DICT_WORD	入力した単語を辞書コマンドで調べます
22DICT_WORD_AT	カーソル位置の単語を辞書コマンドで調べます
23DISPLAY_IMAGE	画像の読込/表示を再開します
24DOWN		画面を1行下にスクロールします
25DOWNLOAD	文書のソースをファイルに保存します
26DOWNLOAD_LIST	ダウンロード状況の一覧を表示します
27EDIT		ソースファイルをエディタで編集します
28EDIT_SCREEN	バッファの表示内容をエディタで編集します
29END		文書のいちばん下の行に移動します
30EXEC_SHELL	シェルコマンドを実行します
31EXIT		確認せずにw3mを終了します
32EXTERN		外部ブラウザを使って表示します
33EXTERN_LINK	現在のリンク先を,外部ブラウザを使って表示します
34FRAME		<FRAME>タグの指す文書を1つの文書に変換して表示します
35GOTO		URLを指定して開きます
36GOTO_HOME	ホームページへ戻ります(環境変数HTTP_HOMEまたはWWW_HOMEで指定)
37GOTO_LINE	画面下で行番号を入力し,そこで指定した行に移動します
38GOTO_LINK	リンクが指す先の文書を読みこみます
39GOTO_RELATIVE	相対URLを指定して開きます
40HELP		ヘルプファイルを表示します
41HISTORY                URL履歴を表示します
42INFO		現在の文書に関する情報を表示します
43INTERRUPT	文書の読み込みを中断します
44ISEARCH		ファイルの末尾にむかってインクリメンタルサーチします
45ISEARCH_BACK	ファイルの先頭にむかってインクリメンタルサーチします
46LEFT		画面全体を1文字左にずらします
47LINE_BEGIN	行頭に移動します
48LINE_END	行末に移動します
49LINE_INFO	ページ中での現在位置を表示します
50LINK_BEGIN     最初のリンクに移動します
51LINK_END       最後のリンクに移動します
52LINK_MENU	Link 要素一覧のメニューを立ち上げます
53LIST		リンクと画像の一覧を表示します
54LIST_MENU	リンク先一覧のメニューを立ち上げ、リンク先の文書を読みこみます
55LOAD		ローカルファイルを指定して開きます
56MAIN_MENU	メニューを立ち上げます
57MARK		マークを設定/解除します
58MARK_MID	Message-ID風の文字列を,news:のリンクにします
59MARK_URL	URL風の文字列をリンクにします
60MARK_WORD	カーソルのある語をリンクにします
61MENU		メニューを立ち上げます
62MENU_MOUSE	マウスカーソルの位置でメニューを立ち上げます(マウス操作用)
63MOUSE_TOGGLE    マウスの有効/無効をトグルする
64MOVE_DOWN      カーソルを下に移動します(改ページ時には半ページスクロール)
65MOVE_DOWN1     カーソルを下に移動します(改ページ時には1行スクロール)
66MOVE_LEFT      カーソルを左に移動します(左端の場合には半画面分シフト)
67MOVE_LEFT1     カーソルを左に移動します(左端の場合には1文字分シフト)
68MOVE_LIST_MENU	リンク先一覧のメニューを立ち上げ、カーソルを移動します
69MOVE_MOUSE	カーソルをマウスカーソルの位置に移動します(マウス操作用)
70MOVE_RIGHT     カーソルを右に移動します(右端の場合には半画面分シフト)
71MOVE_RIGHT1    カーソルを右に移動します(右端の場合には1文字分シフト)
72MOVE_UP                カーソルを上に移動します(改ページ時には半ページスクロール)
73MOVE_UP1       カーソルを上に移動します(改ページ時には1行スクロール)
74MSGS        エラーメッセージの一覧の表示
75NEW_TAB		新しいタブを開きます
76NEXT		次のバッファを表示します
77NEXT_DOWN      カーソルの下側にあるリンクに移動します
78NEXT_HALF_PAGE	半ページ下にスクロールします
79NEXT_LEFT      カーソルの左側にあるリンクに移動します
80NEXT_LEFT_UP   カーソルの左側(無ければ前の行以前)にあるリンクに移動します
81NEXT_LINK	次のリンクに移動します
82NEXT_MARK	一つ後のマークに移動します
83NEXT_PAGE	次のページを表示します
84NEXT_RIGHT     カーソルの右側にあるリンクに移動します
85NEXT_RIGHT_DOWN        カーソルの右側(無ければ次行以降)にあるリンクに移動します
86NEXT_TAB	次のタブに移動します
87NEXT_UP                カーソルの上側にあるリンクに移動します
88NEXT_VISITED    次の訪れたことのあるリンクに移動します
89NEXT_WORD	次の単語に移動します
90NOTHING		何もしません
91NULL		何もしません
92OPTIONS		オプション設定パネルを表示します
93PEEK		現在の文書のURLを表示します
94PEEK_IMG	現在カーソルがあるリンクを含む画像そのもののURLを表示します
95PEEK_LINK      リンクが指す先のURLを表示します
96PIPE_BUF       バッファの内容をパイプに渡します
97PIPE_SHELL	コマンドを実行し,結果を読みこみながら表示します
98PREV		前のバッファを表示します
99PREV_HALF_PAGE	半ページ上にスクロールします
100PREV_LINK	前のリンクに移動します
101PREV_MARK	一つ前のマークに移動します
102PREV_PAGE	前のページを表示します
103PREV_TAB	前のタブに移動します
104PREV_VISITED    前の訪れたことのあるリンクに移動します
105PREV_WORD	前の単語に移動します
106PRINT		バッファの表示内容をファイルに保存します
107QUIT		w3mを終了します
108READ_SHELL	コマンドを実行し,結果を全部読んでから表示します
109REDO		Undo を取り消します
110REDRAW		再描画します
111REG_MARK	正規表現で指定された文字列を全てマークします
112REINIT		設定ファイルを再読込します。
113RELOAD		バッファを再度読み込みます
114RESHAPE		再レンダリングする
115RIGHT		画面全体を1文字右にずらします
116SAVE		文書のソースをファイルに保存します
117SAVE_IMAGE	リンクが指す画像をファイルに保存します
118SAVE_LINK	リンクが指す先の文書をファイルに保存します
119SAVE_SCREEN	バッファの表示内容をファイルに保存します
120SEARCH		ファイル末尾に向かって正規表現を検索します
121SEARCH_BACK	ファイルの先頭に向かって正規表現を検索します
122SEARCH_FORE	ファイル末尾に向かって正規表現を検索します
123SEARCH_NEXT	次を検索します
124SEARCH_PREV	前を検索します
125SELECT		バッファ選択モードに入ります
126SELECT_MENU    バッファ選択メニューを立ち上げます
127SETENV        環境変数を設定します
128SET_OPTION     オプションを設定します
129SHELL		シェルコマンドを実行します
130SHIFT_LEFT	画面全体を左にずらします
131SHIFT_RIGHT	画面全体を右にずらします
132SOURCE		HTMLのソースを表示します
133STOP_IMAGE	画像の読込/表示を停止します
134SUBMIT		フォームにサブミットします
135SUSPEND		サスペンド
136TAB_GOTO	URLを指定して新しいタブで開きます
137TAB_GOTO_RELATIVE	相対URLを指定して新しいタブで開きます
138TAB_LEFT	現在のタブを左に移動します
139TAB_LINK	リンクが指す先の文書を新しいタブで開きます
140TAB_MENU	タブ選択メニューを立ち上げます
141TAB_MOUSE	マウスカーソルの位置のタブに移動します(マウス操作用)
142TAB_RIGHT	現在のタブを右に移動します
143UNDO		最後のカーソル移動を取り消します
144UP		画面を1行上にスクロールします
145VERSION                w3m のバージョンを表示します
146VIEW		HTMLのソースを表示します
147VIEW_BOOKMARK	ブックマークを読み込みます
148VIEW_IMAGE	リンクに対応する画像を表示します
149WHEREIS		ファイル末尾に向かって正規表現を検索します
150WRAP_TOGGLE     折り返し検索モードを切り換えます
151

README.img

1w3m でインライン画像を表示
2
3                                                         (2002/02/04)  坂本浩則
4                                                        hsaka@mth.biglobe.ne.jp
5                                                         (2002/10/16)  伊東宏之
6                                                             ZXB01226@nifty.com
7
8はじめに
9
10  w3m でインライン画像を表示する拡張です。
11
12機能
13
14  ・X11 上の端末(xterm,kterm,rxvt,...)、 Linux の framebuffer 上または
15    Windows 端末上に画像(GIF,PNG,JPEG 等)を表示します。
16  ・img タグで指定されたインライン画像を表示できます。
17    width,height 属性に応じて必要な領域を確保してレンダリングします。
18    align 属性に対応しています。
19  ・Content-type: image/* な画像ファイルを直接表示できます。
20  ・map タグに対応しています。
21    area タグの shape, coords 属性を認識し、メニュー表示から選択できます。
22  ・img タグの ismap 属性に対応しています。
23    座標値を ?<x>,<y> として URL に追加して送ります。
24  ・input タグの type=image 属性で指定されたインライン画像を表示できます。
25    座標値を <name>.x=<x>&<name>.y=<y> として送ります。
26  ・非同期に画像を読み込みます。
27  ・画像をキャッシュできます。
28  ・GdkPixbuf を利用した場合 GIF animation を表示できます。
29
30キー操作
31
32  DISPLAY_IMAGE
33      画像の読込/表示を再開します。
34  STOP_IMAGE
35      そのバッファの画像の読込/表示を停止します。
36  SET_OPTION  display_image=toggle
37      画像の読込/表示を切替えます。
38
39  デフォルトのキーマップはありませんので、~/.w3m/keymap に
40      keymap  X    DISPLAY_IMAGE
41      keymap  C-c  STOP_IMAGE
42      keymap  t    SET_OPTION  display_image=toggle
43  の様に記述して使用してください。
44
45コマンドラインオプション
46
47  -ppc <pixel>
48      一文字あたりの幅(pixel 値)を指定します。デフォルトは自動設定。
49      正しく設定されない場合は端末の font の大きさに必ず合わせてください。
50  -ppl <pixel>
51      一行あたりの幅(pixel 値)を指定します。デフォルトは自動設定。
52      正しく設定されない場合は端末の font の大きさに必ず合わせてください。
53
54オプションパネル
55
56  pixel_per_char
57      一文字あたりの幅(pixel 値)を指定します。デフォルトは自動設定。
58      正しく設定されない場合は端末の font の大きさに必ず合わせてください。
59  pixel_per_line
60      一行あたりの幅(pixel 値)を指定します。デフォルトは自動設定。
61      正しく設定されない場合は端末の font の大きさに必ず合わせてください。
62  display_image
63      インライン画像を表示します。デフォルトは ON。
64  auto_image
65      インライン画像を自動で読み込みます。デフォルトは ON。
66      OFF の場合は、コマンド DISPLAY_IMAGE で読み込みを開始します。
67  max_load_image
68      画像を読み込む時の最大プロセス数。デフォルトは 4。1〜8 まで設定可能。
69  ext_image_viewer
70      コマンド VIEW_IMAGE('I')の場合や Content-type: image/* である
71      画像ファイルを外部ビューワで表示します。デフォルトは ON。
72      OFF の場合は、インライン画像として直接表示します。
73  image_scale
74      画像のスケールを指定します。デフォルトは 100(%)。
75      小さい font と共に使う場合には値を小さくすると有用。
76  imgdisplay
77      インライン画像を表示するためのコマンド。デフォルトは w3mimgdisplay。
78      下記の "w3mimgdisplay の設定" を参考にしてオプション設定してください。
79
80必要なもの
81
82  ・X11 使用時
83    * GdkPixbuf (0.16 以上推奨)
84
85    または
86
87    * Imlib-1.9.8以上 (1.9.10 以上推奨)
88      ftp://ftp.gnome.org/pub/GNOME/sources/imlib/1.9/
89    * libungif-4.1.0b1 以上
90      ftp://prtr-13.ucsc.edu/pub/libungif/
91      http://prtr-13.ucsc.edu/~badger/software/libungif/
92
93    以下は Imlib のインストールに必要
94    * libjpeg
95      ftp://ftp.uu.net/graphics/jpeg/
96    * libpng
97      http://www.libpng.org/pub/png/libpng.html
98      http://libpng.sourceforge.net/
99    * libtiff
100      http://www.libtiff.org/
101    * zlib-1.1.4
102      http://www.gzip.org/zlib/
103    * netpbm
104      http://netpbm.sourceforge.net/
105
106  ・Linux framebuffer 使用時
107    * Linux の 15,16,24,32bpp PACKED-PIXELS TRUE-COLOR/DIRECT-COLOR,
108      8bpp PACKED-PIXELS PSEUDO-COLOR framebuffer を利用できる環境
109    * GdkPixbuf (0.16 以上推奨) または Imlib2 (1.0.6 以上推奨)
110
111w3mimgdisplay の設定
112
113  w3mimgdisplay は以下のオプションを受け付けますので端末に合わせて
114  オプション設定パネルで(または -o オプションで)設定してください。
115
116  -x <offset_x>
117      端末上に画像を表示する X 方向の原点。X11 で利用する場合デフォルト
118      は 2 ですが、xterm や kterm ではスクロールバーの幅を計算して加え
119      ようとします。(正しく出来ないかもしれません。)
120      Eterm では 5 にすべきかもしれません。
121      Linux framebuffer で利用する場合デフォルトは 0 です。
122  -y <offset_y>
123      端末上に画像を表示する Y 方向の原点。デフォルトは、X11 では 2、
124      Linux framebuffer では 0。
125      Eterm では 5 にすべきかもしれません。
126  -bg <background>
127      端末の背景色。デフォルトは、X11 では自動設定、Linux framebuffer
128      では #000000 (黒)。
129      #RRGGBB で指定する場合は # をエスケープして設定してください。
130  -anim <n>
131      アニメーションで表示する最大フレーム数を指定。0 の時は制限なし。
132      負の時は最後からのフレーム数と見なします。デフォルトは 100。
133  -margin <n>
134      画像をクリアする領域のマージンを指定します。スクロールしたとき画
135      面にゴミが残ってしまう場合に指定してみてください。
136      デフォルトは 0。
137
138  例)
139    w3m -o 'imgdisplay=w3mimgdisplay -x 5 -bg "#cccccc"'
140
141その他
142  ・GIF animation は  w3m からの再描画要求に応じてフレームを書き換える
143    だけなので勝手に動いてはくれません。絵を動かすためには 'h', 'l' 等
144    の適当なキーを連打してください。
145  ・framebuffer 描画関係には、下記 URI のコードを利用しました。
146    http://www.sainet.or.jp/~yamasaki/download/fb-sample.tar.gz
147  ・Windows では標準コンソール、Cygwin rxvt、PuTTYで動作確認しています。
148
149
150更新記録
151
1522002/02/04
153 * ドキュメント改訂
154
1552002/02/01	w3m-0.2.5+cvs-1.287
156 * 本家の CVS へマージ。
157
1582002/01/31	w3m-0.2.4-img-2.2
159 * w3m-0.2.4+cvs-1.278 ベース。
160
1612002/01/29	w3m-0.2.4-img-2.1
162 * w3m-0.2.4+cvs-1.268 ベース。
163
1642002/01/28	w3m-0.2.4-img-2.0
165 * w3m-0.2.4+cvs-1.265 ベース。
166 * pixel_per_char, pixel_per_line を自動設定するようにした。
167 * 端末の背景色を自動設定するようにした。
168 * 画像処理関係のソースを image.c に分離。
169
1702002/01/08	w3m-0.2.4-img-1.18
171 * w3m-0.2.4 ベース。
172
1732001/12/29	w3m-0.2.3.2-img-1.17
174 * w3m-0.2.3.2+cvs-1.196 ベース。
175
1762001/12/25	w3m-0.2.3.2-img-1.16.1
177 * [w3m-dev 02698] Thanks > かずひこ@kondara.org さん
178
1792001/12/22	w3m-0.2.3.2-img-1.16
180 * w3m-0.2.3.2 ベース。
181
1822001/12/20	w3m-0.2.3.1-img-1.15
183 * w3m-0.2.3.1 ベース。
184 * Content-Transfer-Encoding で送られて来た画像を表示可能にした。
185
1862001/11/29
187 * ChangLog 1.71 時点の CVS ソースに対してマージ開始
188
1892001/11/17	w3m-0.2.2-img-1.14
190 * w3m-0.2.2 ベース。
191
1922001/11/14	w3m-0.2.1-inu-1.6-img-1.13
193 * w3m-0.2.1-inu-1.6 ベース。
194
1952001/11/05	w3m-0.2.1-inu-1.5-img-1.12
196 * w3m-0.2.1-inu-1.5 ベース。
197 * <area><map> が使えなくなっていたバグの修正。
198 * kterm 上で xwnmo を使った場合に対応。
199
2002001/10/03	w3m-0.2.1-inu-1.4-img-1.11
201 * w3m-0.2.1-inu-1.4 ベース。
202 * 標準入力から読み込む時に落ちるバグの修正。
203 * configure の修正。Thanks > 深川さん。
204
2052001/08/01	w3m-0.2.1-img-1.10
206 * 画像の位置の微調整。
207 * スケールのバグ修正。
208
2092001/07/31	w3m-0.2.1-img-1.9
210 * initImgdisplay() の修正。Thanks > David.
211
2122001/07/29	w3m-0.2.1-img-1.8
213 * configure の修正。Thanks > 坂根さん。
214
2152001/07/28	w3m-0.2.1-img-1.7
216 * configure, XMakefile が patch に入って無かった。
217 * 画像を表示しない場合の処理をオリジナルに近づけた。
218 * [w3m-dev 02121] に対応。
219
2202001/07/27	w3m-0.2.1-img-1.6
221 * README.img を doc-jp へ移動。doc/README.img を作成。
222 * インライン画像対応部分を USE_IMAGE マクロで分離。
223 * configure でインライン画像対応を選択できる様にした。
224 * configure で Imlib をチェックする様にした。
225
2262001/07/26	w3m-0.2.1-img-1.5
227 * w3mimgdisplay は必要になるまで立ち上げない様にした。
228 * w3mimgdisplay が落ちた時に、w3mimgdisplay を再立ち上げできる様にした。
229 * <img align=middle の場合の計算間違いの修正。
230 * [w3m-dev 02118] に対応。
231 * funcname.tab が間違っていたので修正。
232
2332001/07/25	w3m-0.2.1-img-1.4
234 * w3mimgdisplay を環境変数 WINDOWID を見る様に改良。
235   また、text window の推量部分も改良。
236 * image タグを img タグと同じものとして追加。
237 * [w3m-dev 02090], [w3m-dev 02097] に対応。
238
2392001/07/14	w3m-0.2.1-img-1.3
240 * ext_image_viewer が OFF の場合は画像を直接フレーム表示可能にした。
241 * Option Panel が SEGV するバグの修正。
242
2432001/07/13	w3m-0.2.1-img-1.2
244 * 画像のスケールを指定出来る様にした。
245 * SIGUSR1 のブロックに関する修正。
246
2472001/07/12	w3m-0.2.1-img-1.1
248 * キー入力中以外は SIGUSR1, SIGWINCH をブロックする様にした。
249 * バグ修正。
250
2512001/07/11	w3m-0.2.1-img-1.0
252 * MGL 版の画像読み込みを採用。
253
2542001/07/10	w3m-0.2.1-img-0.5
255 * 描画の高速化。w3mimgdisplay で不要な XSync() を止めた。
256   不要な drawImage() を止めた。
257
2582001/07/08	w3m-0.2.1-img-0.4
259 * w3mimgdisplay での Window の取得や offset_x のデフォルト値の改良。
260 * <img align=middle の場合の計算間違いの修正。
261 * <img align=left|center|right では <div>〜</div> を使う様にしてみた。
262 * w3mimgdisplay では SIGINT を無視する様にした。
263 * w3mimgsize もオプション設定できる様にした。
264
2652001/07/07	w3m-0.2.1-img-0.3
266 * kterm に限らず、X11 上の端末では画像を描画できる様にした。
267
2682001/07/06	w3m-0.2.1-img-0.2
269 * README.img を作成。
270 * kterm-6.2.0-img-0.2.patchw3m-0.2.1-img-0.2.patch に含める様にした。
271 * コードの整理、安全側への修正
272
2732001/07/04	w3m-0.2.1-img-0.1
274 * バージョン管理開始。
275 * Imlib 対応版。
276
2772001/06/30
278 * XPM 版でほぼ実装完了。
279
2802001/06/19
281 * MGL 版に刺激を受けて img への対応のテストを開始。
282
283-----------------------------------
284坂本 浩則 <hsaka@mth.biglobe.ne.jp>
285 http://www2u.biglobe.ne.jp/~hsaka/
286

README.keymap

1
2w3m のキーバインドについて
3                                                   (1999/06/30)  坂本 浩則
4                                                   hsaka@mth.biglobe.ne.jp
5
6  ~/.w3m/keymap にキーバインドを定義できます。
7  指定方法は、
8
9    keymap  キー  コマンド  [引数]
10
11  です。
12  例は keymap.defaultkeymap.lynx を見てください。
13  設定できるコマンドは README.func を見てください。
14
15  複数文字からなるエスケープシーケンスは、
16    Escape 文字
17    Escape [ 文字, Escape O 文字
18    Escape [ 数字 ~, EScape [ 数字 数字 ~
19  のみ設定可能です。
20
21  特殊文字は、
22
23    Ctrl     : C-, ^
24    Escape   : ESC-, M-, \e, ^[
25    Space    : SPC, ' '
26    Tab      : TAB, \t, ^i, ^I
27    Delete   : DEL, ^?
28    BackSpace: \b, ^h, ^H
29    NewLine  : \n, ^j, ^J
30    Return   : \r, ^m, ^M
31    Bell     : \a, ^g, ^G
32    Up       : UP, ^[[A
33    Down     : DOWN, ^[[B
34    Right    : RIGHT, ^[[C
35    Left     : LEFT, ^[[D
36    ^        : \^
37
38  として表すことができます。
39  また、端末によっては、
40
41    Insert  : ^[[2~
42    PageUp  : ^[[5~
43    PageDown: ^[[6~
44    F1      : ^[[11~
45    F2      : ^[[12~
46    F3      : ^[[13~
47    F4      : ^[[14~
48    F5      : ^[[15~
49    F6      : ^[[17~
50    F7      : ^[[18~
51    F8      : ^[[19~
52    F9      : ^[[20~
53    F10     : ^[[21~
54    Help    : ^[[28~
55
56  なども使用可能かもしれません。
57  (各キーのコードは Ctrl-V + キー で確認できます。)
58
59

README.m17n

1
2国際化/マルチリンガル化 w3m
3                                                              2003/03/08
4                                                              坂本 浩則
5
6はじめに
7
8  w3m を国際化/マルチリンガル化しました。w3m-0.4.1 に対する拡張版を
9  以下に置いてあります。
10
11    http://www2u.biglobe.ne.jp/~hsaka/w3m/index-ja.html#m17n
12                                          patch/w3m-0.4.1-m17n-20030308.tar.gz
13                                          patch/README.m17n-ja
14
15  まだ開発版であり、(私が日本語しか解さないため)十分なテストはできて
16  いませんが興味ある方はお試しください。
17
18  現在のところ以下の機能があります。
19
20扱える文字コード
21
22  ・日本語
23      EUC-JP           - US_ASCII, JIS X 0208, JIS X 0201, JIS X 0212
24      (EUC-JISX0213)     (JIS X 0213)
25      ISO-2022-JP      - US_ASCII, JIS X 0208, JIS X 0201, JIS X 0212, etc.
26      ISO-2022-JP-2    - US_ASCII, JIS X 0208, JIS X 0201, JIS X 0212,
27                         GB 2312, KS X 1001, ISO 8859-1, ISO 8859-7, etc.
28      ISO-2022-JP-3    - US_ASCII, JIS X 0208, JIS X 0201, JIS X 0213, etc
29      Shift_JIS(CP932) - US_ASCII, JIS X 0208, JIS X 0201, CP932 の拡張文字
30      Shift_JISX0213   - US_ASCII, JIS X 0208, JIS X 0201, JIS X 0213
31  ・中国語(簡体字)
32      EUC-CN(GB2312) - US_ASCII, GB 2312
33      ISO-2022-CN    - US_ASCII, GB 2312, CNS-11643-1,..7, etc.
34      GBK(CP936)     - US_ASCII, GB 2312, GBK
35      GB18030        - US_ASCII, GB 2312, GBK, GB18030, Unicode
36      HZ-GB-2312     - US_ASCII, GB 2312
37  ・中国語(台湾、繁体字)
38      EUC-TW        - US_ASCII, CNS 11643-1,..16
39      ISO-2022-CN   - US_ASCII, CNS-11643-1,..7, GB 2312, etc.
40      Big5(CP950)   - Big5
41      HKSCS         - Big5, HKSCS
42  ・韓国語
43      EUC-KR        - US_ASCII, KS X 1001 Wansung
44      ISO-2022-KR   - US_ASCII, KS X 1001 Wansung, etc.
45      Johab         - US_ASCII, KS X 1001 Johab
46      UHC(CP949)    - US_ASCII, KS X 1001 Wansung, UHC
47  ・ベトナム語
48      TCVN-5712 VN-1, VISCII 1.1, VPS, CP1258
49  ・タイ語
50      TIS-620 (ISO-8859-11), CP874
51  ・その他
52      US_ASCII, ISO-8859-1 〜 10, 13 〜 15,
53      KOI8-R, KOI8-U, NeXT, CP437, CP737, CP775, CP850, CP852, CP855, CP856,
54      CP857, CP860, CP861, CP862, CP863, CP864, CP865, CP866, CP869, CP1006,
55      CP1250, CP1251, CP1252, CP1253, CP1254, CP1255, CP1256, CP1257
56  ・Unicode (UCS-4)
57      UTF-8, UTF-7
58
59  注意)
60    * JIS X 0201 のローマ字部分と GB 1988(中国語ASCII) は US_ASCII として
61      扱います。これは、ISO-2022(7bit) で表されていると HTML のタグ部分が
62      扱えなくなるからです。その他の US_ASCII の variant はそのままです。
63    * JIS C 6226(旧JIS) は JIS X 0208 として扱います。
64    * HZ-GB-2312 の '~\n' は対応していません。
65
66表示
67
68  多言語表示させるためには現在のところ以下の方法があります。
69
70  (1) kterm + ISO-2022-JP/CN/KR
71
72    * kterm は kterm-6.2.0 に対して、
73        http://www.st.rim.or.jp/~hanataka/kterm-6.2.0.ext02.patch.gz
74      の patch をあてると、JIS X 0213, CNS 11643 等が使用可能になります。
75
76    * kterm に対して -fl オプションまたは ~/.Xdefaults 等で fontList を
77      設定します
78
79        -fl "*--16-*-jisx0213.2000-*,\
80             *--16-*-jisx0212.1990-0,\
81             *--16-*-ksc5601.1987-0,\
82             *--16-*-gb2312.1980-0,\
83             *--16-*-cns11643.1992-*,\
84             *--16-*-iso8859-*"
85
86      JIS 以外のフォントは X11 (XFree86) や Mule の配布物に幾つかありますし、
87      Linux や FreeBSD の package からも使えます。
88      JIS X 0213 のフォントは、
89        http://www.mars.sphere.ne.jp/imamura/jisx0213.html
90      にあるものが使えます。
91
92    * w3m-m17n のオプション設定で表示コードを ISO-2022-JP (もしくは
93      ISO-2022-JP-2, KR, CN) にし、後述の strict_iso2022
94      (厳密な ISO-2022-JP/KR/CN を使う) を OFF にします。
95
96  (2) xterm + UTF-8
97
98    * xterm は XFree86 の最新版を使います。xterm-140 以降を推奨します。
99        http://www.clark.net/pub/dickey/xterm/xterm.html
100
101    * Unicode のフォントは
102        http://www.cl.cam.ac.uk/~mgk25/ucs-fonts.html
103        http://openlab.ring.gr.jp/efont/
104      などにあります。
105
106    * xterm を -u8 -wc オプション付きで使用します。
107      フォントは、
108        -fn "*-medium-*--13-*-iso10646-1" \
109        -fb "*-bold-*--13-*-iso10646-1" \
110        -fw "*-medium-*-ja-13-*-iso10646-1"
111      の様に指定します。
112
113    * w3m-m17n のオプション設定で表示コードを UTF-8 にします。
114      後述の pre_conv (文書の読み込み時に文字コードを変換する) を
115      ON にしておく方が良いです。そうしておかない場合、
116      ISO 2022 系の多バイト文字集合(JIS)の一部を表示する場合、
117      レンダリングが崩れる可能性があります。
118
119  (3) mlterm + ISO-2022-JP/KR/CN or UTF-8
120
121    * Homepage
122        http://mlterm.sourceforge.net/
123
124    * エンコーディングを ISO-2022-JP/KR/CN または UTF-8 にします。
125
126  本当の多言語表示をさせるのは以上の方法だけですが、
127  EUC-JP の場合、中国語や ISO-8859-* を疑似的に表示させることもできます。
128
129    * kterm や日本語対応端末のフォントを JIS X 0213 にします。
130      # しなくてもいいのですが、かなり表現能力が落ちます。
131
132    * w3m-m17n のオプション設定で表示コードを EUC-JP にします。
133      後述の pre_conv, use_gb12345_map, use_jisx0213 を ON にします。
134      EUC-JP の SS3 (JIS X 0212) を解する端末の場合は、
135      use_jisx0212 も ON にします。
136
137  また、w3m-m17n は表示コードを切替えることも可能です。
138  端末がフォントを切替えられるならば文書の言語に従って表示コードと
139  フォントを切替えて使用することも可能です。
140
141コマンドラインオプション
142
143   -I <優先文書コード>
144   -O <表示/出力コード>
145
146      基本的に MIME での charset としますが、以下の略号も受け付けます。
147
148        j(p):      ISO-2022-JP
149        j(p)2:     ISO-2022-JP-2
150        j(p)3:     ISO-2022-JP-3
151        cn:        ISO-2022-CN
152        kr:        ISO-2022-KR
153        e(j):      EUC-JP
154        ec,g(b):   EUC-CN(GB2312)
155        et:        EUC-TW
156        ek:        EUC-KR
157        s(jis):    Shift-JIS
158        sjisx0213: Shift-JISX0213
159        gbk:       GBK
160        gb18030:   GB18030
161        h(z):      HZ-GB-2312
162        b(ig5):    Big5
163        hk(scs):   HKSCS
164        jo(hab):   Johab
165        uhc:       UHC
166        l?:        ISO-8859-?
167        t(is):     TIS-620(ISO-8859-11)
168        tc(vn):    TCVN-5712 VN-1
169        v(iscii):  VISCII 1.1
170        vp(s):     VPS
171        ko(i8r):   KOI8-R
172        koi8u:     KOI8-U
173        n(ext):    NeXT
174        cp???:     CP???
175        w12??:     CP12??
176        u(tf8):    UTF-8
177        u(tf)7:    UTF-7
178
179オプションパネル
180
181   display_charset
182       表示用文字コード
183   document_charset
184       文書の標準の文字コード
185   auto_detect
186       文書の読み込み時に文字コードの自動判定を行う(デフォルト ON)
187   system_charset
188       システムの文字コード。設定ファイルやファイル名に使用する。
189   follow_locale
190       Locale(環境変数 LANG) に従って、システムの文字コードを設定する。
191       (デフォルト ON)
192   ext_halfdump
193       表示用文字コードで halfdump の出力を行う
194   search_conv
195       検索文字列を文書の文字コードに変換する(デフォルト ON)
196   use_wide
197       複数カラムの文字を使う(デフォルト ON)
198   use_combining
199       結合文字を使う(デフォルト ON)
200   use_language_tag
201       Unicode の言語タグを使う(デフォルト ON)
202   ucs_conv
203       Unicode を介したコード変換(デフォルト ON)
204   pre_conv
205       文書の読み込み時に文字コードを変換する(デフォルト OFF)
206   fix_width
207       文字幅の変わる変換をしない(デフォルト ON)
208       OFF にするとレンダリングが崩れる可能性がある。
209   use_gb12345_map
210       GB 12345 の Unicode マップを GB 2312 用に使う(デフォルト OFF)
211       ON にすると EUC-CN, HZ を EUC-JP や EUC-TW で出力する場合に有用。
212   use_jisx0201
213       ISO-2022-JP で JIS X 0201 Roman を使う(デフォルト OFF)
214   use_jisc6226
215       ISO-2022-JP で JIS C 6226:1978 (旧JIS) を使う(デフォルト OFF)
216   use_jisx0201k
217       JIS X 0201 Katakana を使う(デフォルト OFF)
218       OFF にすると通常は JIS X 0208 に変換される。
219   use_jisx0212
220       JIS X 0212:1990 (補助漢字) を使う(デフォルト OFF)
221   use_jisx0213
222       JIS X 0213:2000 (2000JIS) を使う(デフォルト OFF)
223       ON の場合、EUC-JP は EUC-JISX0213 相当。
224       OFF の場合、Shift_JISX0213 は純粋な Shift_JIS になる。
225   strict_iso2022
226       厳密な ISO-2022-JP/KR/CN を使う(デフォルト ON)
227       OFF にすると ISO 2022 系の文字集合は全て表示/出力する。
228   east_asian_width
229       ある種のUnicode文字を全角にする(デフォルト OFF)
230       ON にすると East Asian Ambiguous 文字を全角とみなす。
231   gb18030_as_ucs
232       GB18030 の 4バイト文字を Unicode として扱う(デフォルト OFF)
233   simple_preserve_space
234       単純な空白の保存。
235       ON にすると日本語などでも文字間の空白が削除されない。
236
237   alt_entity
238       エンティティを ASCII の代替表現で表す(デフォルト ON)
239       OFF にすると ISO 8859-1 として扱う。
240   graphic_char
241       テーブルやメニューの枠に DEC 特殊文字文字を使う(デフォルト OFF)
242       OFF の場合 CJK の文字コード、UTF-8 では罫線を使う。
243
244コード変換
245
246  ・各コード間で特別の変換を用意しているものは、
247    * EUC-JP <-> ISO-2022-JP <-> Shift-JIS
248    * EUC-CN <-> ISO-2022-CN <-> HZ-GB-2312
249    * EUC-TW <-> ISO-2022-CN
250    * EUC-KR <-> ISO-2022-KR <-> Johab (記号、Hanja のみ)
251    のみです。それ以外は Unicode を介した変換となります。
252
253文書のコードの切替え
254
255   '=' で文書の情報を表示させると文書のコードを選択できる様になっています。
256
257   また、keymap として
258     keymap C CHARSET
259     keymap M-c DEFAULT_CHARSET
260   の様に設定しておくと、C で現在の文書のコードを、M-c で標準の文書の
261   コードを変更できます。
262
263一行エディタ
264
265   8bit 文字の場合は、表示コードが 8bit コードの場合はそのコードで、
266   表示コードが 7bit コード(ISO-2022) の場合は、対応する EUC で
267   扱います。HZ での入力は対応していません。
268
269   ISO-2022(7bit) で入力する場合は、ISO-2022-JP 型 (G0 のみ使う)
270   しか使えません。
271   理由は、G1 〜 G3 を使うために必要な SI(\017, ^O), SO(\016, ^N)
272   SS3(ESC O, ^[O) が他に割り当てられているためです。
273
274正規表現
275
276   対応しています。[あ-ん] なども使用可能です。
277
278URL やファイルの文字コード
279
280   文書内の URL は文書の文字コード、local ファイルの文字コードは SystemCharset
281   であつかわれます。ただし、通常 % でエンコードして扱われます。
282   アクセス時は HTTP, GOPHER の場合はエンコードしたまま、その他の場合は、
283   自力で %?? をデコードして(SystemCharset に戻してから)アクセスします。
284
285   * コマンドライン引数では、デフォルトでは
286     scheme: がある場合ば URL (#label や ?query, % でのクォートを解釈)
287     scheme: がない場合は全てファイル名 (#label も解釈しない)
288     としています。
289     オプション argv_is_url=1 で全て URL 扱いにすることもできます。
290   * LOAD('V') では全てファイル名として解釈します。
291   * GOTO('U') はコマンドラインと全く同じ扱いにしています。
292     current の URL も NULL にしています。
293
294既知のバグ(というか問題のある仕様)
295
296 * 日本語 L10N はしてますが、I18N(NLS) 関連は未対応です。
297 * 結合文字が文字列の先頭にきた場合、レンダリングが崩れる(かもしれない)。
298 * JIS X 0213 は、まだ使用例が少ないため入力時に関しては、JIS X 0208 や
299   JIS X 0212 のエスケープシーケンスが使われていても読み込む様にしている。
300   また、JIS X 0213 で包摂基準の変わった文字でも JIS X 0208 とみなす。
301 * ISO 2022 での C0, C1 集合への指示は無視されます。
302   C0 は常に ACSII のコントロール文字、C1 は未定義文字となります。
303 * JIS X 0208:1990 の ESC & @ は無視されます。
304
305-----------------------------------
306TODO
307
308 * NLS 対応
309   # NLS ライブラリ(gettext, catgets) を使うか、自前で処理するか?
310   # 落ち着いてからでも良いと思う。
311 * #undef USE_M17N, #define LANG EN, #undef USE_UNICODE のチェック
312   # 時々やらないとまずいかな。やっぱり。
313
314-----------------------------------
315更新記録
316
3172003/03/08	w3m-0.4.1-m17n-20030308
318 * w3m-0.4.1 ベース
319
3202003/02/24	w3m-0.4-m17n-20030224
321 * w3m-0.4 ベース
322
3232003/02/11	w3m-0.4rc1-m17n-20030211
324 * w3m-0.4rc1 ベース
325
3262003/02/07	w3m-0.3.2.2-m17n-20030207
327 * w3m-0.3.2.2+cvs-1.742 ベース
328
3292003/02/01	w3m-0.3.2.2-m17n-20030201
330 * w3m-0.3.2.2+cvs-1.734 ベース
331
3322003/01/31	w3m-0.3.2.2-m17n-20030131
333 * w3m-0.3.2.2+cvs-1.732 ベース
334
3352003/01/23	w3m-0.3.2.2-m17n-20030123
336 * w3m-0.3.2.2+cvs-1.705 ベース
337
3382003/01/22	w3m-0.3.2.2-m17n-20030122
339 * w3m-0.3.2.2+cvs-1.699 ベース
340
3412003/01/01	w3m-0.3.2.2-m17n-20030101
342 * w3m-0.3.2.2+cvs-1.655 ベース
343
3442002/12/22	w3m-0.3.2.2-m17n-20021222
345 * w3m-0.3.2.2+cvs-1.640 ベース
346
3472002/12/19	w3m-0.3.2.2-m17n-20021219
348 * w3m-0.3.2.2+cvs-1.635 ベース
349
3502002/12/07	w3m-0.3.2.2-m17n-20021207
351 * w3m-0.3.2.2+cvs-1.599 ベース
352 * int != long な環境での問題を修正
353
3542002/11/27	w3m-0.3.2.1-m17n-20021127
355 * w3m-0.3.2.1+cvs-1.562 ベース
356
3572002/11/20	w3m-0.3.2-m17n-20021120
358 * w3m-0.3.2+cvs-1.538 ベース
359
3602002/11/18
361 * 文字コードの自動判別に UTF-7 を追加。
362
3632002/11/16	w3m-0.3.2-m17n-20021116
364 * w3m-0.3.2+cvs-1.526 ベース
365
3662002/11/13	w3m-0.3.2-m17n-20021113
367 * w3m-0.3.2+cvs-1.506 ベース
368
3692002/11/12	w3m-0.3.2-m17n-20021112
370 * w3m-0.3.2+cvs-1.498 ベース
371
3722002/11/09	w3m-0.3.2-m17n-20021109
373 * w3m-0.3.2+cvs-1.490 ベース
374
3752002/11/07	w3m-0.3.2-m17n-20021107
376 * w3m-0.3.2 ベース
377 * [w3m-dev 03371] は適用
378
3792002/10/22	w3m-0.3.1-m17n-20021022
380 * w3m-0.3.1+cvs-1.444 ベース
381
3822002/07/17	w3m-0.3.1-m17n-20020717
383 * w3m-0.3.1 ベース
384
3852002/05/29	w3m-0.3-m17n-20020529
386 * w3m-0.3+cvs-1.379 ベース
387
3882002/03/16	w3m-0.3-m17n-20020316
389 * w3m-0.3+cvs-1.353 ベース
390
3912002/03/11	w3m-0.3-m17n-20020311
392 * w3m-0.3+cvs-1.342 ベース
393 * バグ修正
394
3952002/02/16	w3m-0.2.5-m17n-20020216
396 * w3m-0.2.5+cvs-1.319 ベース
397 * use_wide オプションを追加
398
3992002/02/05	w3m-0.2.5-m17n-20020205
400 * w3m-0.2.5+cvs-1.302 ベース
401
4022002/02/02	w3m-0.2.5-m17n-20020202
403 * w3m-0.2.5+cvs-1.291 ベース
404
4052002/01/31	w3m-0.2.4-m17n-20020131
406 * w3m-0.2.4+cvs-1.278 ベース
407
4082002/01/29	w3m-0.2.4-m17n-20020129
409 * w3m-0.2.4+cvs-1.268 ベース
410 * バグ修正
411
4122002/01/28	w3m-0.2.4-m17n-20020128
413 * w3m-0.2.4+cvs-1.265 ベース
414
4152002/01/08	w3m-0.2.4-m17n-20020108
416 * w3m-0.2.4 ベース
417
4182002/01/07
419 * 一部の wc_conv,wc_Str_conv を wc_conv_strict,wc_Str_conv_strict で
420   置き換え。
421
4222001/12/31
423 * HKSCS の Unicode 変換表を追加
424 * Big5 の Unicode 変換表を修正
425 * Big5 と CNS11643 の変換を廃止(Unicode ベースへ)
426 * HKSCS の扱いを修正
427
4282001/12/30	w3m-0.2.3.2-m17n-20011230
429 * w3m-0.2.3.2+cvs-1.196 ベース
430
4312001/12/22	w3m-0.2.3.2-m17n-20011222
432 * w3m-0.2.3.2 ベース
433 * [w3m-dev-en 00660] INET6 のときコンパイルできない
434 * [w3m-dev-en 00663] WC_N_??? の2重定義の修正
435
4362001/12/21	w3m-0.2.3.1-m17n-20011221
437 * w3m-0.2.3.1 ベース
438
4392001/12/19
440 * HKSCS を追加。Unicode の変換表は未だ。
441 * KOI8-U を追加。
442
4432001/12/18	w3m-0.2.2-m17n+cvs-1.137
444 * ISO 8859-16 の Unciode 変換表を追加
445 * JIS X 0208(0213) の 0x7425,0x7426 を JIS X 0213 扱いに
446 * バグ修正
447
4482001/12/17	w3m-0.2.2-m17n+cvs-1.131
449
4502001/12/15	w3m-0.2.2-m17n+cvs-1.124
451 * sourceforge.net の CVS をベース
452 * UTF-7 に対応。
453 * -o ext_halfdump を追加。
454 * =?iso-8859-1?q? の様な小文字での MIME の指定に対応。
455 * ISO 2022 の ESC % を読み飛ばす様にした。
456 * ks_c_5601-1987 (ksc) を EUC-KR と認識する様にした。
457 * locale が zh_TW, zh_HK の時のデフォルトの文字コードを Big5 へ。
458 * 結合文字の直前で改行されることがあるバグの修正。
459 * resize すると文字化けすることがある問題の修正。
460 * UTF-8 判定部のバグ修正。
461
4622001/04/12	w3m-(0.2.1)-m17n-0.19
463 * JISX0212, JISX0213 の"チルダ"の Unicode への変換を FULLWIDTH TILDE
464   に修正。
465 * MICRO SIGN を JISX0208 の"ギリシャ小文字ミュー"へ変換する様にした。
466 * [w3m-dev 01892], [w3m-dev 01894], [w3m-dev 01898], [w3m-dev 01902]
467   に対応。
468
4692001/03/31
470 * <_SYMBOL> の実装の修正。
471 * -dump の時でも pre_conv のデフォルトは OFF。
472
4732001/03/29
474 * TCVN 5712 の結合文字に対応。
475 * [w3m-dev 01873], [w3m-dev-en 00411] に対応。
476
4772001/03/28
478 * configure で suffix 無しを指定可能にした。(thanks to naddy!)
479 * #define USE_SSL で #undef USE_SSL_VERIFY の場合に rc.c がコンパイル
480   できないバグの修正。(thanks to naddy!)
481 * [w3m-dev 01859] に対応。
482 * Shift-JIS で 0xA0 がエラーとならないバグ修正。
483 * <_SYMBOL> の実装の変更。[w3m-dev 01852] に対応。
484
4852001/03/24	w3m-(0.2.1)-m17n-0.18
486 * w3m-0.2.1 ベース
487 * [w3m-dev 01703], [w3m-dev 01814], [w3m-dev 01823] に対応。
488 * ISO-2022-JP-3 を ISO-2022-JP と分離。ISO-2022-JP では絶対に
489   JIS X 0212 や JIS X 0213 を送らない様にした。
490 * 自動判別の改良。
491
4922001/03/23
493 * w3m-0.2.0 ベース
494
4952001/02/21
496 * CHARSET, DEFAULT_CHARSET 関数を追加。
497 * frame の時の文字コード判定を改良。
498
4992001/03/20
500 * FULL WIDTH variant (ASCII 以外)からの変換を行う様にした。
501
5022001/03/18	w3m-(0.1.11-pre-hsaka24)-m17n-0.17
503 * [w3m-dev 01779] w3m-0.1.11-pre-hsaka24 への対応。
504 * JIS X 0213 を JIS X 0212 より優先するようにした。
505
5062001/03/14	w3m-(0.1.11-pre-kokb23)-m17n-0.16
507 * JIS X 0213 と Unicode Extention B との変換を追加。
508 * JIS X 0213 と Unicode 変換の修正。
509 * UHC をハングルと判定するように修正。
510 * pre_conv = ON の場合は、search_conv を無視する。
511
5122001/03/09	w3m-(0.1.11-pre-kokb23)-m17n-0.15
513 * wc_wchar_t を改良(主に Unicode 用)。
514 * Unicode の扱いの幾つかのバグ修正。
515 * GBK, GB18030 で出力する場合は use_gb12345_map は無効にした。
516 * -dump の時は常に pre_conv = ON。
517 * -dump や -halfdump の時は余計な処理はしない様にした。
518 * system の文字コードを環境変数 LC_CTYPE -> LANG -> LC_ALL の順で設定
519   する様にした。
520 * [w3m-dev 01724], [w3m-dev 01726], [w3m-dev 01752], [w3m-dev 01753],
521   [w3m-dev 01754] に対応。
522
5232001/03/06	w3m-(0.1.11-pre-kokb23)-m17n-0.14
524 * Language tag (UTR#7) に対応してみた。
525 * GB18030, Johab と Unicode 変換部のバグ修正。
526 * Unicode の full width の結合文字(ひらがなの濁音など)を precompose できて
527   いなかったバグの修正。(w3m-m17n-0.10 で直したはずが直っていなかった)
528
5292001/03/04	w3m-(0.1.11-pre-kokb23)-m17n-0.13
530 * GBK(CP936), GB18030, UHC(CP949) に対応。
531 * GB2312, GB12345 の Unicode のマッピングテーブルを CP936, GB18030 と
532   互換にした。(コード: 0xA1A4, 0xA1AA)
533 * Unicode の 0xFFFE, 0xFFFF をそのまま通す様にした。(GB18030 との互換性)
534 * Unicode の NBSP が 0x80 になっていたバグ修正。
535
5362001/03/03	w3m-(0.1.11-pre-kokb23)-m17n-0.12
537 * CP932 に対応。Shift_JIS は CP932 を意味するものとし、Shift_JISX0213 は
538   明示しないかぎり判別しない。
539 * JIS X 0213 対応にかなりバグがあったので修正。ただし厳密に JIS X 0213 に
540   従ってはいない。
541 * JIS X 0208 → Unicode のマッピングテーブルを CP932 のものに置き換え。
542   "\", "~", "∥", "-", "¢", "£", "¬"
543   Unicode → JIS X 0208 は両方。0x00A5 (YEN SIGN) も "¥" へ変換。
544 * Unicode への変換時のエラー処理のバグの修正。
545 * CP1258 での出力時ののバグ修正。
546 * 標準入力からのデータを vwSrc で HTML 表示する時の一時ファイルの
547 * configure の typo 修正。(下津さん thanks!)
548 * HTML 中の属性値の URL の最初と最後の空白文字は削除するようにした。
549   (下津さん thanks!)
550
5512001/02/15	w3m-(0.1.11-pre-kokb23)-m17n-0.11
552 * Strdelete のバグが非常にまずいので、とりあえず公開。
553
5542001/01/29
555 * Refresh で相対パスの場合に動作していなかったのを修正。
556   # そもそも goURL() を使うのがまずいんじゃ...
557
5582001/01/23
559 * Strdelete の処理を元に戻した。(坂根さん thanks!)
560
5612001/01/19	w3m-(0.1.11-pre-kokb23)-m17n-0.10
562 * Unicode の full width の結合文字(ひらがなの濁音など)を precompose できて
563   いなかったバグの修正。
564 * [w3m-dev 01650], [w3m-dev 01651], [w3m-dev 01560] に対応。
565
5662001/01/17	w3m-(0.1.11-pre-kokb23)-m17n-0.9
567 * [w3m-dev 01617], [w3m-dev 01621], [w3m-dev 01624], [w3m-dev 01625],
568   [w3m-dev 01635], [w3m-dev 01643], [w3m-dev 01647] に対応。
569
5702001/01/16	w3m-(0.1.11-pre-kokb23)-m17n-0.8 (置き換え)
571 * typo 修正(坂根さん thanks!)
572
5732001/01/14	w3m-(0.1.11-pre-kokb23)-m17n-0.8
574 * JIS X 0213-2 にバグがあるがとりあえず公開する。
575
5762000/12/29
577 * [w3m-dev 01594] に対応。(やまてさん thanks!)
578 * [w3m-dev 01602] に対応。
579
5802000/12/27
581 * UCS-2/4 の扱いを改良。Unicode 以外の 31個の 16bit文字セット、
582   7個の 32bit文字セットが使用可能。
583   # 使う事あるのか? → GB18030 で使うことになりそう
584   PCSW(Shift_JIS,Big5,等) の扱いについても改良を考案中。
585 * checkType() で s->length > size の場合の処理にバグがあったものを修正。
586   # 全然、直って無かった。(やまてさん thanks!)
587 * Big5 の Level1 と Level2 を分ける位置が間違っていた。
588   # 一年近く昔からのバグ。なぜ気づかなかったのだろう。
589
5902000/12/25	w3m-(0.1.11-pre-kokb23)-m17n-0.7
591 * UCS-2/4 の扱いを他の 16/32bit コードが使える様に改良するため、
592   とりあえず、w3m-m17n-0.7 としてまとめる。
593 * [w3m-dev 01564] に対応。(やまてさん thanks!)
594
5952000/12/24
596 * Johab に対応。自前の Unicode 変換テーブルを持ちたくなかったため、
597   特殊な変換になってしまい汎用性に欠けるようになってしまった。
598 * wtf_gr_ces が KS X 1001 だった場合にハングルが "わかち書き" されない
599   バグの修正。
600 * UCS の中でハングルと判定するコードポイントを増やした。
601 * file 名中に '+' を含む file にアクセスできなくなっていたバグの修正。
602
6032000/12/23
604 * checkType() で s->length > size の場合の処理にバグがあったものを修正。
605 * UTF-8 の解析で現れるべきではないシーケンス(サロゲート等)のチェックを
606   行う様にした。
607 * WC_CCS_SET と WC_CCS_TYPE を混同していたバグの修正(良く動いてたなぁ)
608 * Big5 の表現をそのままのコード(WC_CCS_BIG5)と CS94 型のコード
609   (WC_CCS_BIG5_1, WC_CCS_BIG5_2)の両方を使える様にした。
610
6112000/12/22
612 * [w3m-dev 01555], [w3m-dev 01556] に対応。
613
6142000/12/21	w3m-(0.1.11-pre-kokb23)-m17n-0.6
615 * ISO 2022 の SS2, SS3 に関する修正が適用されていなかったので再修正。
616 * [w3m-dev 01531], [w3m-dev 01534] に対応。
617 * textarea を編集した後、読み込むときに auto detect を ON にした。
618   DisplayCharset が 7bit コード(特に ISO-2022-JP)の場合に対応。
619 * form 中での PC_UNKNOWN の処理を追加。
620 * form 中での PC_CTRL の幅が 2 になっていたものを修正。
621 * form 中での結合文字(width=0)に対処。
622 * DEL の wtf_width_map が 2 になっていたバグの修正。
623 * table 中に <hr> があるとレンダリングが崩れるバグの修正。(やまてさん thanks!)
624 * pager モードから HTML view する場合は buf->document_charset で
625   saveBuffer する様にした。
626 * entity の扱いの整理。
627 * DocumentCharset が UTF-8 の場合の auto detect で ISO-8859-1 を判別する
628   ことを止めた。ISO-2022 のみ判別する。
629 * wc_ces と wc_ccs の typo を修正
630 * sourcefile を load する場合は常に file_to_url() する様にした。
631
6322000/12/20	w3m-(0.1.11-pre-kokb23)-m17n-0.5
633 * entity の扱いの改良。conv_entity を直接呼ぶコードに対応。
634 * ANSI color escape sequence 対応。
635
6362000/12/19
637 * ページャモードで \b の解析時のバグ修正。(坂根さん thanks!)
638 * <ol><li> の後の空白文字が削除されないバグ修正。
639 * Str.c 内の strncpy を bcopy へ。
640 * 型のチェック(特に unsigned char と char)。(坂根さん thanks!)
641 * マクロの引数を () で囲んでいなかったものの修正。
642 * libwc/Makefile で ranlib をそのまま使っていたのをマクロに。
643
6442000/12/18
645 * -I オプションが指定されている場合、コマンドラインのファイルまたは
646   URL の読み込みに関してはヘッダや <META> の Content-Type での
647   charset の指定を適用しない様に変更。
648 * <META> での charset の指定がクリアされていないバグの修正。
649
6502000/12/17	w3m-(0.1.11-pre-kokb23)-m17n-0.4
651 * [w3m-dev 01515], [w3m-dev 01516] に対応。
652 * INTSPACE の処理に関するコード整理。
653 * テーブルの枠などの symbol に関するバグ修正。
654 * 表示する時、ごく稀にゴミがでる問題の修正。
655
6562000/12/16	w3m-(0.1.11-pre-kokb23)-m17n-0.3
657 * w3m-0.1.11-pre-kokb23 対応。
658
6592000/12/16	w3m-(0.1.11-pre-kokb22)-m17n-0.2
660 * テーブルの枠が検索でおかしなマッチをする問題を修正。
661   合わせて <UL> の記号等も同じ処理に改良。
662 * #ifdef __EMX__ の場合に CodePage から DisplayCharset 等を設定する様
663   にしてみた。(動作は未確認)
664
6652000/12/15
666 * ISO 2022 の SS2, SS3 に関する修正。
667 * SHOW_PARAMS に関する修正。
668 * loadHTMLString で作成したバッファにも文字コードを適宜設定。
669
6702000/12/15	w3m-(0.1.11-pre-kokb22)-m17n-0.1
671 * 最初の alpha リリース
672 * configure に対応。
673
674-----------------------------------
675坂本 浩則 <hsaka@mth.biglobe.ne.jp>
676 http://www2u.biglobe.ne.jp/~hsaka/
677
678

README.mailcap

1mailcap サポートについて
2
3                                                         (2000/11/07)  岡部克也
4                                                        okabek@guitar.ocn.ne.jp
5
6 ・ 2000/10/6 の版から, mailcap のフィールド test, nametemplate, needsterminal,
7    copiousoutput, edit (参照: RFC 1524) を見るようになりました.
8    また 2000/10/26 の版からは, mailcap と mime.types ファイルの場所が Option
9    Setting Panel で変更できるようになりました.
10
11 ・ mailcap 中の %s は外部コマンドに渡すパス名, %t は content-type で置換されま
12    す.
13
14 ・ もし mailcap エントリに test=command フィールドが存在する場合 command の実
15    行結果が真であるときのみ, 外部コマンドが実行されます. 例えば
16
17    image/gif; xv '%s'; test=test "$DISPLAY"
18
19    のように書けば, DISPLAY 環境変数がセットされているときのみ xv が実行されま
20    す.
21
22 ・ もし mailcap エントリに copiousoutput フィールドが存在する場合, 外部コマン
23    ドの標準出力はバッファに読み込まれます.
24    例:
25
26    application/x-troff-man;/usr/bin/nroff -mandoc;copiousoutput
27
28    LESSOPEN コマンドでできる事は, 大部分これで置き換える事ができます. そのため
29    LESSOPEN の利用はオプション扱いになりました.
30
31    w3m の拡張フィールドとして, x-htmloutput があります. copiousoutput と同様に
32    コマンドの実行結果がバッファに読み込まれますが, HTML としてレンダリングする
33    所が異なります. この機能を使う場合は, w3m 用の mailcap ファイルを別に用意す
34    るか, 他のブラウザ用に x-htmloutput を含まないエントリを前に置いておくと良
35    いかもしれません.
36    (2001/08/01) 坂本
37     htmloutput → x-htmloutput
38
39 ・ nametemplate= は外部コマンドに渡すファイル名の拡張子を指定します.
40    テンポラリファイルを作るとき, 通常元の URL の拡張子がファイル名に付けられま
41    すが, nametemplate= フィールドによって変更する事ができます.
42    例:
43
44    application/x-dvi;xdvi '%s';test=test -n "$DISPLAY";nametemplate=%s.dvi
45
46 ・ needsterminal, edit については RFC 1524 を見てください.
47
48

README.menu

1
2w3m のメニューについて
3                                                   (2002/11/27)  坂本 浩則
4                                                   hsaka@mth.biglobe.ne.jp
5
6[1] キー操作
7
8  ・一般的なもの
9
10    HELP, INS キー             : メニューの立ち上げ
11    HELP, INS キー, C-c,       : メニューの消去
12    RET(C-m, C-j), SPC, →キー : 選択
13    BS(C-h), DEL(C-?), ←キー  : 戻る
14    C-n, j, ↓キー             : 下の項目へ
15    C-p, k, ↑キー             : 上の項目へ
16    J                          : 項目を上にスクロール
17    K                          : 項目を下にスクロール
18    C-a                        : 先頭の項目へ
19    C-e                        : 最後の項目へ
20    C-f, C-v                   : 次ページの項目へ
21    C-b, M-v                   : 前ページの項目へ
22    C-s, /                     : 項目を下に向かって検索
23    C-r, ?                     : 項目を上に向かって検索
24    n                          : 次の項目を検索
25    N                          : 前の項目を検索
26    C-z                        : サスペンド
27
28    # INS は通常 ^[[2~ ですが ^[[L(コンソール), ^[[E(PocketBSD) にも
29      バインドしてあります。
30
31    MenuKeymap, MenuEscKeymap, MenuEscBKeymap, MenuEscDKeymap (menu.c)
32    で定義
33
34  ・個別のメニュー用
35
36    MenuItem 構造体 (menu.h) の char *keys に設定(複数可能)
37    上記のキー操作に上書きされます。
38
39[2] マウス
40
41    ボタン3 : メニューの立ち上げ
42
43   立ち上げ後
44
45    ボタン1/3 (項目)         : 選択
46        ″      (枠,MENU_NOP)  : 何もしない
47        ″      (枠外)         : 戻る(メニューの消去)
48        ″      ( : )          : 次ページまたは前ページの項目へ
49                                 (長いメニューの場合)
50        ″      (ドラッグ)     : スクロール
51
52[3] メニューのカスタマイズ
53
54   ~/.w3m/menu にメニューを定義できます。
55   メニューは、
56
57     menu MENU_ID
58      項目
59        :
60     end
61
62   として設定します。各項目には、
63
64     func  LABEL FUNCTION KEYS [DATA]	コマンド実行
65     popup LABEL MENU_ID  KEYS		サブメニュー立ち上げ
66     nop   LABEL			何もしない(セパレータやタイトル)
67
68   を設定可能です。
69   例は menu.defaultmenu.submenu を見てください。
70   設定できるコマンド(FUNCTION)は README.func を見てください。
71   MENU_ID として "Main" はメインメニューに、"Select" はバッファ選択
72   メニューに、"SelectTab" はタブ選択メニューに予約されています。
73   KEYS はバインドするキーで複数指定可能です。
74   DATA が設定されていればコマンド(FUNCTION)の引数として使われます。
75
76[4] 開発について
77
78   メニュールーチンの例は mainMenu(), optionMenu() を見れば分かると思います。
79   このルーチンと以下の MenuItem 構造体を定義すれば、ほとんどのメニューは、
80   設定できると思います。
81
82   MenuItem 構造体 (menu.h)
83
84    struct {
85        int  type;		/* タイプ */
86        char *label;		/* ラベル */
87        int  *variable;		/* VALUE_MENU の場合に設定する変数 */
88        int  value;		/* VALUE_MENU の場合に設定する値 */
89        void (*func)();		/* 選択された時に実行する関数 */
90        struct _Menu *popup;	/* サブメニュー */
91        char *keys;		/* バインドするキー(複数可能) */
92    } MenuItem;
93
94   タイプ type は以下のものが使用できます。
95
96     MENU_NOP   (1) : なにもしない。選択もできない。
97                      (タイトルやセパレータ用)
98     MENU_FUNC  (2) : 関数を実行
99     MENU_VALUE (4) : 変数(*variable)に値(value)を設定
100     MENU_POPUP (8) : サブメニューを立ち上げる
101
102     MENU_FUNC と MENU_VALUE は (MENU_FUNC | MENU_VALUE) と
103     設定することで両方の動作をします。(変数設定が先です)
104
105   設定例は、MainMenuItem (menu.c) や new_option_menu() を見てください。
106
107

README.migemo

1w3m で Migemo (ローマ字検索)を行う
2
3                                                         (2002/02/23)  日台健一
4                                                                   hidai@nmn.jp
5
6 ・ Migemo を用いることでローマ字のインクリメンタル検索を行うことができます.
7    あらかじめ Migemo がインストールされている必要があります.
8    http://migemo.namazu.org/
9
10 ・ configure スクリプト実行時に --with-migemo オプションを付けることで利用可
11    能となります.
12
13 ・ オプションパネルにて以下の設定をします. 辞書のパスは適切に書き換えて下さい.
14
15    Migemo を使用する ... ON
16    Migemo コマンド ..... migemo -t egrep /usr/local/share/migemo/migemo-dict
17
18 ・ 正しく設定されていれば、通常の検索においてローマ字検索ができるはずです.
19    ローマ字検索が行われていないようであれば、次の項目を確認して下さい.
20
21 ・ うまく動かないときは、以下のように migemo コマンドの動作確認をして下さい.
22    入力したローマ字に対して、それを展開した正規表現が出力されれば成功です.
23    (コマンドは、オプションパネルの「Migemo コマンド」に設定したもの)
24
25    % migemo -t egrep /usr/local/share/migemo/migemo-dict
26    migemo
27    migemo|migemo|みげも|ミゲモ
28    romaji
29    romaji|romaji|ろまじ|ロ(ーマ字|マジ)
30
31 ・ デフォルトでは、/ ? が通常の検索、C-s C-r がインクリメンタル検索にバインド
32    されています. / ? でインクリメンタル検索を行うには、~/.w3m/keymap に以下の
33    設定をします.
34
35    keymap  /  ISEARCH
36    keymap  ?  ISEARCH_BACK
37
38 ・ Migemo に付属の migemo-server を使用する必要はありません. w3m は migemo コ
39    マンドを直接実行 (popen(3)) します.
40

README.mouse

1~/.w3m/mouse の形式は、
2
3menu メニューの文字列(デフォルトなし)
4lastline 最下行の文字列(デフォルト『≪↑↓』)
5button  番号  位置 関数  [引数]
6
7
8番号: 1…左ボタン
9      2…中ボタン
10      3…右ボタン
11
12位置:  menu <x1> <x2>      … メニュー上でクリック
13       lastline <x1> <x2>  … 最下行でクリック
14       default             … 他の設定が無い時のデフォルト
15       anchor              … アンカー上でクリック
16       active              … アクティブなアンカー上でクリック
17       tab                 … タブ上でクリック
18
19<x1> : 左端のカラム位置
20<x2> : 右端のカラム位
21
22です。
23互換性のために <位置> での menu は省略可能です。
24
25デフォルトの設定(func.c 内)は、
26
27button	1 default	MOVE_MOUSE
28button	2 default	BACK
29button	3 default	MENU_MOUSE
30
31button	1 active	GOTO_LINK
32
33button	1 tab		TAB_MOUSE
34button	2 tab		CLOSE_TAB_MOUSE
35
36lastline	"≪↑↓"
37button	1 lastline 0 1	BACK
38button	1 lastline 2 3	PREV_PAGE
39button	1 lastline 4 5	NEXT_PAGE
40
41と同等です。(これまでと同じはず)
42
43・例えば、
44
45  button  1 anchor	COMMAND		"MOVE_MOUSE; GOTO_LINK"
46
47  と設定するとアクティブでないアンカー上でも左クリックしただけで、
48  リンク先に飛びます。(GUI ブラウザと同じ様な動作)
49
50・~/.w3m/menu で
51
52  menu Active
53   func   "リンクを表示       (a)"        GOTO_LINK       "a"
54   func   "新しいタブで表示   (t)"        TAB_LINK        "t"
55   func   "リンクを保存       (d)"        SAVE_LINK       "d"
56   func   "外部ブラウザで表示 (m)"        EXTERN_LINK     "m"
57  end
58
59  の様に設定しておいて、~/.w3m/mouse で
60
61  button  3 anchor	MENU_MOUSE	Active
62
63  と設定すると、アンカー上で右クリックしするとアンカー用の
64  メニューが開きます。
65
66こんな感じで使ってみてください。
67

README.passwd

1HTTP 認証のあるページや認証のある proxy に対して、
2ユーザ名とパスワードを設定しておくことが出来ます。
3
4passwd_file で指定したファイルに次のように書いておけばそれを見ます。
5
6machine ホスト名
7port ポート番号
8path ローカルパート
9realm realmの文字列
10login ユーザ名
11passwd パスワード
12proxy
13
14machineではじまって次のmachineまで。
15netrcぎみですが簡単にするために一行づつ。
16port, path, realm は省略可能
17
18proxy と書いた場合は proxy のパスワードとみなします。
19
20passwd_file が他のユーザーから読める場合警告が出ますが、OS の制限などで
21ファイルのパーミッションを変えられない場合はこの警告を
22disable_secret_security_check の設定で無効にできます。
23

README.pre_form

1pre_form: 特定のサイトを開いた時に、form を予め設定する機能です。
2
3良く使う掲示板とかでは便利と思いますが、安全性が犠牲になるかも
4しれません。特に submit は気をつけて使って下さい。
5
6デフォルトの設定ファイルは ~/.w3m/pre_form です。
7設定フォーマットは、
8
9url       <url>|/<re-url>/
10form      [<name>] <action>
11text      <name>  <value>
12file      <name>  <value>
13password  <name>  <value>
14checkbox  <name>  <value>  [<checked>]
15radio     <name>  <value>
16section   <name>  <value>
17submit   [<name> [<value>]]
18image    [<name> [<value>]]
19textarea  <name>
20<value>
21   :
22/textarea
23
24です。
25<action> が設定してある時は、一致する action 属性を持つ form のみ
26設定します。
27text, file, password, select, textarea は一致する name 属性を持つ
28input, select または textarea 要素の value 属性を設定します。
29checkbox, radio は name 属性と value 属性が一致する input 要素を
30check します。
31<checked> が 0、no または off の場合は checkbox の check を外します。
32submit, image の場合、<name> が設定してある時は、一致する name 属性
33(と value 属性)を持つ input 要素を submit します。<name> を設定して
34いない場合は、最後の input type=submit 要素を submit します。
35<name> や <value> は、シェルの様に \,'〜',"〜" でクォート可能です。
36

README.siteconf

1siteconf: サイト別カスタマイズ
2
3siteconf は、 URL のパターンと、それに紐付けられた設定から成ります。
4siteconf を使うと、サイト毎に文字コードを指定して "decode_url"
5の出力を改善したり、 Google のリダイレクタを迂回して性能や
6プライバシーを向上させたりすることができます。
7
8デフォルトでは siteconf は ~/.w3m/siteconf から読み込まれます。
9
10===== 構文 =====
11
12url <url>|/<re-url>/|m@<re-url>@i [exact]
13substitute_url "<destination-url>"
14url_charset <charset>
15no_referer_from on|off
16no_referer_to on|off
17user_agent "string"
18
19後ろの方に書かれたものが優先されます。
20
21===== 例 =====
22
23url m!^https?://([a-z]+\.)?twitter\.com/!
24substitute_url "https://nitter.net/"
25
26twitter.com を代替サイトに転送します。
27
28url "http://your.bookmark.net/"
29no_referer_from on
30
31your.bookmark.net から張ったリンクを辿る際に、 HTTP referer を
32送らないようにします。
33
34url "http://www.google.com/url?" exact
35substitute_url "file:///cgi-bin/your-redirector.cgi?"
36
37Google のリダイレクタを local CGI に転送します。
38
39url /^http:\/\/[a-z]*\.wikipedia\.org\//
40url_charset utf-8
41
42同時に "decode_url" オプションをオンにすると、 Wikipedia への
43リンクを UTF-8 としてデコードして表示します。
44
45url m@^https?://(.*\.)google\.com/@
46user_agent "Lynx/2.8.8dev.3 libwww-FM/2.14 SSL-MM/1.4.1"
47
48Google に Lynx であると告げます。(これによりテキストブラウザ向けページが
49返ります)
50
51url m!^https?://([a-z]+\.)?twitter\.com/!
52user_agent "Googlebot/2.1"
53
54Twitter に Googlebot であると告げます。(これによりJavaScriptが無効の
55ブラウザが拒否されずにページが返ります)
56
57===== 正規表現について =====
58
59次の正規表現はいずれも同じ意味を表します。
60
61/http:\/\/www\.example\.com\//
62m/http:\/\/www\.example\.com\//
63m@http://www\.example\.com/@
64m!http://www\.example\.com/!
65
66最後に 'i' 修飾子を付けると、大文字小文字を区別せずに照合を行います。
67例えば、 m@^http://www\.example\.com/abc/@i は以下のいずれとも一致します。
68
69http://www.example.com/abc/
70http://www.example.com/Abc/
71http://www.example.com/ABC/
72
73ただし、ホスト名の部分は常に小文字に変換してから比較します。
74

README.tab

1w3m をタブブラウザ化
2
3キー操作は定義していませんので、以下の関数を適当なキーに設定して
4お使い下さい。
5
6  NEW_TAB      新しいタブを開いて、現在のページの複製を作ります
7  TAB_LINK     リンクが指す先の文書を新しいタブで開きます
8               数(N) + TAB_LINK だと、N 番目のタブで開きます
9  TAB_GOTO     URLを指定して新しいタブで開きます
10               数(N) + TAB_GOTO だと、N 番目のタブで開きます
11  TAB_GOTO_RELATIVE
12               相対URLを指定して新しいタブで開きます
13               数(N) + TAB_GOTO_RELATIVE だと、N 番目のタブで開きます
14  CLOSE_TAB    現在のタブを閉じます
15               数(N) + CLOSE_TAB だと、N 番目のタブを閉じます
16  NEXT_TAB     次のタブに移動します
17               数(N) + NEXT_TAB だと、N だけ次のタブに移動します
18  PREV_TAB     前のタブに移動します
19               数(N) + PREV_TAB だと、N だけ前のタブに移動します
20  TAB_RIGHT    現在のタブを右に移動します
21               数(N) + TAB_RIGHT だと、現在のタブを N だけ右に移動します
22  TAB_LEFT     現在のタブを左に移動します
23               数(N) + TAB_LEFT だと、現在のタブを N だけ左に移動します
24  TAB_MENU     タブ選択メニューを立ち上げます
25               タブ選択メニューの操作はバッファ選択メニューと同様です。
26
27また、マウスでの操作も出来ます。
28
29  左ボタン … タブ上でクリックすると、そのタブに移動します
30              タブから別のタブまでドラッグすると、タブを移動します。
31              リンクからタブまでドラッグすると、そのタブでリンクを開きます
32              右上隅の「x」をクリックすると、現在のタブを閉じます
33  中ボタン … タブ上でクリックすると、タブを閉じます
34  右ボタン … 特になし(= メニューを開く)
35
36オプションとして、
37
38  open_tab_blank … target が _blank か _new の場合は新しいタブで開く
39                    デフォルトは OFF
40  close_tab_back … 戻る時にバッファが最後ならタブを閉じる
41                    デフォルトは OFF (= Can't go back...)
42
43を追加しています。
44