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