aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.cvsignore25
-rw-r--r--.gitignore41
-rwxr-xr-xBonus/2ch.cgi6
-rw-r--r--Bonus/README80
-rw-r--r--Bonus/README.eng2
-rwxr-xr-xBonus/goodict.cgi34
-rw-r--r--COPYING11
-rw-r--r--ChangeLog10026
-rw-r--r--ChangeLog.19322
-rw-r--r--Makefile.in10
-rw-r--r--NEWS118
-rw-r--r--README9
-rw-r--r--Str.c40
-rw-r--r--Str.h16
-rw-r--r--acinclude.m449
-rw-r--r--alloc.h39
-rw-r--r--anchor.c46
-rw-r--r--buffer.c9
-rwxr-xr-xconfig.guess1639
-rw-r--r--config.h.dist7
-rw-r--r--config.h.in12
-rwxr-xr-xconfig.sub716
-rwxr-xr-xconfigure1423
-rw-r--r--configure.ac11
-rw-r--r--cookie.c50
-rw-r--r--display.c46
-rw-r--r--doc-de/FAQ.html691
-rw-r--r--doc-de/MANUAL.html2353
-rw-r--r--doc-de/README.func150
-rw-r--r--doc-de/w3m.1334
-rw-r--r--doc-jp/FAQ.html272
-rw-r--r--doc-jp/HISTORY4544
-rw-r--r--doc-jp/MANUAL.html743
-rw-r--r--doc-jp/README119
-rw-r--r--doc-jp/README.SSL108
-rw-r--r--doc-jp/README.cookie84
-rw-r--r--doc-jp/README.cygwin210
-rw-r--r--doc-jp/README.dict60
-rw-r--r--doc-jp/README.func295
-rw-r--r--doc-jp/README.img304
-rw-r--r--doc-jp/README.keymap36
-rw-r--r--doc-jp/README.m17n702
-rw-r--r--doc-jp/README.mailcap58
-rw-r--r--doc-jp/README.menu150
-rw-r--r--doc-jp/README.migemo42
-rw-r--r--doc-jp/README.mouse64
-rw-r--r--doc-jp/README.passwd32
-rw-r--r--doc-jp/README.pre_form34
-rw-r--r--doc-jp/README.siteconf73
-rw-r--r--doc-jp/README.tab70
-rw-r--r--doc-jp/STORY.html294
-rw-r--r--doc-jp/keymap.default1
-rw-r--r--doc-jp/keymap.lynx2
-rw-r--r--doc-jp/menu.default44
-rw-r--r--doc-jp/menu.submenu46
-rw-r--r--doc-jp/w3m.1423
-rw-r--r--doc/FAQ.html1040
-rw-r--r--doc/HISTORY12
-rw-r--r--doc/MANUAL.html2902
-rw-r--r--doc/README11
-rw-r--r--doc/README.cookie18
-rw-r--r--doc/README.dict10
-rw-r--r--doc/README.func257
-rw-r--r--doc/README.img20
-rw-r--r--doc/README.m17n2
-rw-r--r--doc/README.pre_form24
-rw-r--r--doc/README.siteconf73
-rw-r--r--doc/README.sixel27
-rw-r--r--doc/README.tab2
-rw-r--r--doc/keymap.default1
-rw-r--r--doc/keymap.lynx2
-rw-r--r--doc/menu.submenu2
-rw-r--r--doc/w3m.1421
-rw-r--r--entity.c16
-rw-r--r--entity.tab2
-rw-r--r--etc.c31
-rw-r--r--file.c811
-rw-r--r--fm.h67
-rw-r--r--form.c61
-rw-r--r--frame.c13
-rw-r--r--ftp.c8
-rw-r--r--func.c88
-rwxr-xr-xgitlog2changelog111
-rw-r--r--history.c9
-rw-r--r--html.c60
-rw-r--r--html.h47
-rw-r--r--image.c232
-rw-r--r--indep.c125
-rw-r--r--indep.h33
-rw-r--r--istream.c248
-rw-r--r--istream.h17
-rw-r--r--keybind.c4
-rw-r--r--keybind_lynx.c2
-rw-r--r--libwc/.cvsignore1
-rw-r--r--libwc/ambwidth_map.awk32
-rw-r--r--libwc/charset.c3
-rw-r--r--libwc/gb18030.c1
-rw-r--r--libwc/iso2022.c23
-rw-r--r--libwc/johab.c6
-rw-r--r--libwc/map/big5_ucs.map4
-rw-r--r--libwc/map/cns11643_ucs.map8
-rw-r--r--libwc/map/gb12345_ucs.map4
-rw-r--r--libwc/map/gb2312_ucs.map4
-rw-r--r--libwc/map/gbk_ucs.map4
-rw-r--r--libwc/map/hkscs_ucs.map4
-rw-r--r--libwc/map/jisx0208x0212x0213_ucs.map8
-rw-r--r--libwc/map/ksx1001_ucs.map4
-rw-r--r--libwc/map/sjis_ext_ucs.map4
-rw-r--r--libwc/map/ucs_ambwidth.map109
-rw-r--r--libwc/map/uhc_ucs.map4
-rw-r--r--libwc/status.c3
-rw-r--r--libwc/ucs.c8
-rw-r--r--libwc/ucs.map100
-rw-r--r--libwc/wtf.c67
-rw-r--r--libwc/wtf.h3
-rw-r--r--linein.c16
-rw-r--r--local.c37
-rw-r--r--mailcap.c2
-rw-r--r--main.c646
-rw-r--r--map.c29
-rw-r--r--matrix.c8
-rw-r--r--menu.c85
-rw-r--r--mimehead.c61
-rw-r--r--news.c6
-rw-r--r--parsetagx.c2
-rw-r--r--po/.cvsignore6
-rw-r--r--po/LINGUAS2
-rw-r--r--po/Makefile.in.in6
-rw-r--r--po/Makevars4
-rw-r--r--po/POTFILES.in3
-rw-r--r--po/de.po944
-rw-r--r--po/ja.po490
-rw-r--r--po/w3m.pot482
-rw-r--r--po/zh_CN.po924
-rw-r--r--po/zh_TW.po930
-rw-r--r--proto.h54
-rw-r--r--rc.c293
-rw-r--r--regex.c4
-rw-r--r--scripts/.cvsignore9
-rw-r--r--scripts/Makefile.in6
-rw-r--r--scripts/bm2menu/README16
-rw-r--r--scripts/multipart/.cvsignore2
-rw-r--r--scripts/multipart/README28
-rwxr-xr-xscripts/w3mdict.cgi56
-rw-r--r--scripts/w3mhelp-funcdesc.de.pl.in66
-rw-r--r--scripts/w3mhelp-funcdesc.en.pl.in46
-rw-r--r--scripts/w3mhelp-funcdesc.ja.pl.in98
-rw-r--r--scripts/w3mhelp.cgi.in69
-rw-r--r--scripts/w3mman/.cvsignore5
-rw-r--r--scripts/w3mman/Makefile.in18
-rw-r--r--scripts/w3mman/README34
-rw-r--r--scripts/w3mman/w3mman.1.in46
-rw-r--r--scripts/w3mman/w3mman.de.1.in71
-rw-r--r--scripts/w3mman/w3mman.in22
-rw-r--r--scripts/w3mman/w3mman2html.cgi.in35
-rw-r--r--symbol.c4
-rw-r--r--table.c60
-rw-r--r--table.h2
-rw-r--r--tagtable.tab7
-rw-r--r--terms.c283
-rw-r--r--tests/a1.expected2
-rw-r--r--tests/a1.html1
-rw-r--r--tests/a2.expected1
-rw-r--r--tests/a2.html3
-rw-r--r--tests/name_entity_1.expected2
-rw-r--r--tests/name_entity_1.html2
-rw-r--r--tests/name_entity_1.opts2
-rw-r--r--tests/name_entity_2.expected1
-rw-r--r--tests/name_entity_2.html1
-rw-r--r--tests/q1.expected1
-rw-r--r--tests/q1.html2
-rw-r--r--tests/q1.opts2
-rw-r--r--tests/q2.expected1
-rw-r--r--tests/q2.html3
-rw-r--r--tests/q3.expected1
-rw-r--r--tests/q3.html3
-rw-r--r--tests/q3.opts4
-rw-r--r--tests/q4.expected1
-rw-r--r--tests/q4.html3
-rw-r--r--tests/q4.opts2
-rw-r--r--tests/q5.expected1
-rw-r--r--tests/q5.html3
-rw-r--r--tests/q6.expected1
-rw-r--r--tests/q6.html3
-rw-r--r--tests/q6.opts1
-rw-r--r--tests/run_tests31
-rw-r--r--url.c305
-rw-r--r--version.c.in2
-rw-r--r--w3m-doc/README.html75
-rw-r--r--w3m-doc/community.html.in48
-rw-r--r--w3m-doc/configuration.html.in182
-rw-r--r--w3m-doc/contain.wd14
-rw-r--r--w3m-doc/copyright.html.in45
-rw-r--r--w3m-doc/define.wd9
-rw-r--r--w3m-doc/detail.html.in32
-rw-r--r--w3m-doc/development.html.in77
-rw-r--r--w3m-doc/faq.html.in45
-rw-r--r--w3m-doc/function.html.in71
-rw-r--r--w3m-doc/index.html.in113
-rw-r--r--w3m-doc/install.html.in389
-rwxr-xr-xw3m-doc/mkdocs57
-rw-r--r--w3m-doc/operation.html.in50
-rw-r--r--w3m-doc/outline.html.in352
-rw-r--r--w3m-doc/prologue.html.in99
-rw-r--r--w3m-doc/sample/README41
-rw-r--r--w3m-doc/sample/define.wd4
-rw-r--r--w3m-doc/sample/html.wd18
-rwxr-xr-xw3m-doc/sample/keymap.cgi268
-rw-r--r--w3m-doc/sample/s.wd8
-rw-r--r--w3m-doc/sample/sample.html6
-rw-r--r--w3m-doc/sample/sample.wd11
-rwxr-xr-xw3m-doc/sample/w3mdoc.pl102
-rwxr-xr-xw3m-doc/w3mdoc.pl102
-rw-r--r--w3mbookmark.c8
-rw-r--r--w3mhelp-lynx_en.html.in22
-rw-r--r--w3mhelp-lynx_ja.html.in204
-rw-r--r--w3mhelp-w3m_en.html.in22
-rw-r--r--w3mhelp-w3m_ja.html.in210
-rw-r--r--w3mhelperpanel.c1
-rw-r--r--w3mimg/.cvsignore1
-rw-r--r--w3mimg/Makefile.in4
-rw-r--r--w3mimg/fb/.cvsignore1
-rw-r--r--w3mimg/fb/fb.c431
-rw-r--r--w3mimg/fb/fb.h4
-rw-r--r--w3mimg/fb/fb_gdkpixbuf.c2
-rw-r--r--w3mimg/fb/fb_imlib2.c1
-rw-r--r--w3mimg/fb/fb_w3mimg.c9
-rw-r--r--w3mimg/fb/readme.txt98
-rw-r--r--w3mimg/win/.cvsignore1
-rw-r--r--w3mimg/x11/.cvsignore1
-rw-r--r--w3mimg/x11/x11_w3mimg.c92
-rw-r--r--w3mimgdisplay.c4
232 files changed, 33137 insertions, 19937 deletions
diff --git a/.cvsignore b/.cvsignore
deleted file mode 100644
index 8f22a68..0000000
--- a/.cvsignore
+++ /dev/null
@@ -1,25 +0,0 @@
-XXMakefile
-Makefile
-config.cache
-config.log
-config.status
-config.h
-config.param
-funcname.tab
-funcname.c
-funcname1.h
-funcname2.h
-functable.c
-tagtable.c
-inflate
-mktable
-w3m
-w3mbookmark
-w3mhelperpanel
-w3mimgdisplay
-version.c
-w3mhelp-lynx_en.html
-w3mhelp-lynx_ja.html
-w3mhelp-w3m_en.html
-w3mhelp-w3m_ja.html
-posubst
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..9bf7ac3
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,41 @@
+*.a
+*.o
+Makefile
+/config.cache
+/config.log
+/config.status
+/config.h
+/config.param
+/entity.h
+/funcname.tab
+/funcname.c
+/funcname1.h
+/funcname2.h
+/functable.c
+/tagtable.c
+/inflate
+/mktable
+/w3m
+/w3mbookmark
+/w3mhelperpanel
+/w3mimgdisplay
+/version.c
+/w3mhelp-lynx_*.html
+/w3mhelp-w3m_*.html
+/posubst
+/po/stamp-po
+/po/POTFILES
+/po/*.gmo
+/po/Makefile.in
+/po/remove-potcdate.sed
+/scripts/dirlist.cgi
+/scripts/w3mhelp.cgi
+/scripts/w3mmail.cgi
+/scripts/w3mhelp-funcdesc.*.pl
+/scripts/w3mhelp-funcname.pl
+/scripts/w3mhelp-funcdesc-stamp
+/scripts/xface2xpm
+/scripts/multipart/multipart.cgi
+/scripts/w3mman/w3mman
+/scripts/w3mman/w3mman2html.cgi
+/scripts/w3mman/w3mman*.1
diff --git a/Bonus/2ch.cgi b/Bonus/2ch.cgi
index 998c202..c52ad8d 100755
--- a/Bonus/2ch.cgi
+++ b/Bonus/2ch.cgi
@@ -63,7 +63,7 @@ for (0 .. ($lines - 1) / 100) {
}
$head .= "<a href=\"$cgi/l50\">�ŐV50</a>\n";
print <<EOF;
-Content-Type: text/html
+Content-Type: text/html; charset=Shift_JIS
EOF
$i = 1;
@@ -128,7 +128,7 @@ sub subback {
$cmd = "mkdir -p $dir; $WGET -O $tmp $dat >/dev/null 2>&1";
system $cmd;
print <<EOF;
-Content-Type: text/html
+Content-Type: text/html; charset=Shift_JIS
EOF
@ARGV = ($tmp);
@@ -153,7 +153,7 @@ sub post {
my $host = $1;
my $sock = IO::Socket::INET->new("$host:80") or die;
# retrieve posting cookie; this may not work
- print "Content-Type: text/html\n\n";
+ print "Content-Type: text/html; charset=Shift_JIS\n\n";
print $sock
"HEAD /test/bbs.cgi HTTP/1.1\n",
"Host: $host\n",
diff --git a/Bonus/README b/Bonus/README
index af019ce..7e7452c 100644
--- a/Bonus/README
+++ b/Bonus/README
@@ -1,30 +1,30 @@
2ch.cgi
[w3m-dev 03635] 2ch.cgi
- 2ch �� dat ��ľ�ɤߤ��� local CGI �Ǥ���
+ 2ch の dat を直読みする local CGI です。
- w3m file:/cgi-bin/2ch.cgi?http://pc.2ch.net/test/read.cgi/unix/1035755937/
+ w3m file:/cgi-bin/2ch.cgi?http://toro.2ch.sc/test/read.cgi/unix/1185784998/
- wget �κ�ʬž��(-c)��Ȥ��ޤ���
- �ɤ�� dat �� ~/.w3m2ch/ �ʲ�����¸���ޤ���
- �񤭹��ߤϤǤ��ޤ���
+ wget の差分転送(-c)を使います。
+ 読んだ dat は ~/.w3m2ch/ 以下に保存します。
+ 書き込みはできません。
smb.cgi
[w3m-dev 03634] smb.cgi
- SMB �˥����������� local CGI �Ǥ���
- nmblookup,smbclient ��Ȥ��Τ� sabma �����󥹥ȡ��뤵��Ƥ���
- ɬ�פ�����ޤ���
- �ѥ���ɤϡ�
- 1) ~/.w3m/smb �˥ѥ���ɤ����ꤵ��Ƥ��ꡢ
- smbclient �� -A ���ץ�����Ȥ���ʤ�
- smbclient -A ~/.w3m/smb �Ȥ����Ϥ��ޤ���
- 2) �Ķ��ѿ� PASSWD_FILE (�ѥ���ɤΤߤΥե�����)������
- ����Ƥ�����ϡ��Ķ��ѿ� PASSWD_FILE ��Ȥ��ޤ���
- 3) ~/.w3m/smb �˥ѥ���ɤ����ꤵ��Ƥ���С�
- �Ķ��ѿ� PASSWD_FD ��Ȥä�ɸ�����Ϸ�ͳ���Ϥ��ޤ���
- �ɤ���ˤ��衢���ޤ��ɤ����ǤϤʤ��Τ� SMB(CIFS)�ץ��ȥ����
- �����Ǥ��˾��
+ SMB にアクセスする local CGI です。
+ nmblookup,smbclient を使うので sabma がインストールされている
+ 必要があります。
+ パスワードは、
+ 1) ~/.w3m/smb にパスワードが設定されており、
+ smbclient の -A オプションを使えるなら
+ smbclient -A ~/.w3m/smb として渡します。
+ 2) 環境変数 PASSWD_FILE (パスワードのみのファイル)が設定
+ されている場合は、環境変数 PASSWD_FILE を使います。
+ 3) ~/.w3m/smb にパスワードが設定されていれば、
+ 環境変数 PASSWD_FD を使って標準入力経由で渡します。
+ どちらにせよ、あまり良い事ではないので SMB(CIFS)プロトコルを
+ 喋る版を希望。
google.cgi
@@ -32,49 +32,49 @@ google.cgi
html2latex
- HTML��ʸ���LaTeX ���Ѵ����ޤ���Ruby������ץȤǤ����Դ����Ǥ���
- �������٤���ˤ�Ω�Ĥ��⤷��ޤ���
+ HTMLの文書をLaTeX に変換します.Rubyスクリプトです.不完全です.
+ ある程度の役には立つかもしれません.
- ����ˡ
+ 使用法
html2latex file.html > file.tex
- �������֤��Ƥ�����ͳ
+ ここに置いてある理由
- makeref �Τ�������ʼ��Ǥ� :-)
+ makeref のための部品取りです :-)
makeref
- HTML��ʸ����ɤߡ����󥫡����ֹ�򿶤�ޤ����ֹ�򿶤ä�ʸ���
- ɸ����Ϥ˽񤭽Ф����Ǹ�ˤ��ΰ�������Ϥ��ޤ���Ruby ������ץȤǤ���
+ HTMLの文書を読み,アンカーに番号を振ります.番号を振った文書を
+ 標準出力に書き出し,最後にその一覧を出力します.Ruby スクリプトです.
- ����ˡ
+ 使用法
makeref [-url base_url] [file]
- -url: ʸ���URL����ꤷ�ޤ�����󥯤ΰ�����Ф��Ȥ��ˡ�����URL��
- �䴰���뤿��˻Ȥ��ޤ���
+ -url: 文書のURLを指定します.リンクの一覧を出すときに,そのURLを
+ 補完するために使います.
- �Х�
+ バグ
- HTML�ε��ҥߥ�( &lt; �ǤϤʤ� < ��Ȥ���&... �κǸ�� ; ���դ��ʤ�
- ��)������ȡ��Ỵ�ʷ�̤ˤʤ뤳�Ȥ�����ޤ���
+ HTMLの記述ミス( &lt; ではなく < を使う,&... の最後に ; を付けない
+ 等)があると,悲惨な結果になることがあります.
- Ⱦ�ѥ���(JIS X-0201����)���б����Ƥ��ޤ���
+ 半角カナ(JIS X-0201カナ)に対応していません.
htmldump
- URL ����HTMLʸ����ɤߡ����󥫡����ֹ�򿶤ä���������ɸ����Ϥ�
- �񤭽Ф��ޤ���
+ URL からHTML文書を読み,アンカーに番号を振って整形し,標準出力に
+ 書き出します.
- ����ˡ
+ 使用法
dumphtml [URL]
- URL ���ά����ȡ�$WWW_HOME �����Ƥ��ɤߤޤ���
+ URL を省略すると,$WWW_HOME の内容を読みます.
- �Х�
+ バグ
- URL �λؤ�ʸ��HTML�Ǥʤ��ä���硤���襤�����ʤ��Ȥˤʤ�ޤ���
- makeref ��ȤäƤ���Τǡ�makeref �����ޤ������Ǥ��ʤ�ʸ���ɽ��
- ���Ѥˤʤ�ޤ���
+ URL の指す文書がHTMLでなかった場合,かわいそうなことになります.
+ makeref を使っているので,makeref がうまく処理できない文書の表示
+ は変になります.
diff --git a/Bonus/README.eng b/Bonus/README.eng
index 2f7507d..f7b1b1c 100644
--- a/Bonus/README.eng
+++ b/Bonus/README.eng
@@ -3,7 +3,7 @@
[w3m-dev 03635] 2ch.cgi
localcgi to read 2ch dat directly
- w3m file:/cgi-bin/2ch.cgi?http://pc.2ch.net/test/read.cgi/unix/1035755937/
+ w3m file:/cgi-bin/2ch.cgi?http://toro.2ch.sc/test/read.cgi/unix/1185784998/
It uses wget -c.
`dat' files are recorded under ~/w3m2ch/.
diff --git a/Bonus/goodict.cgi b/Bonus/goodict.cgi
index 8f443c1..5fb6581 100755
--- a/Bonus/goodict.cgi
+++ b/Bonus/goodict.cgi
@@ -1,14 +1,20 @@
#!/usr/bin/perl
# ~/.w3m/urimethodmap
-# e: file:/cgi-bin/goodict.cgi?%s
-# w: file:/cgi-bin/goodict.cgi?%s
-# j: file:/cgi-bin/goodict.cgi?%s
+# e: file:/cgi-bin/goodict.cgi?%s Englich-Japanese
+# w: file:/cgi-bin/goodict.cgi?%s Japanese-English
+# j: file:/cgi-bin/goodict.cgi?%s Japanese
+# a: file:/cgi-bin/goodict.cgi?%s All
+#
+# e:0:word start with word
+# e:1:word perfect match
+# e:2:word end with word
+# e:3:word search body text
+# e:6:word search title
+# e:word perfect match
-use NKF;
-#$mode = 0; # substring
-$mode = 1; # perfect match
-#$mode = 3; # search body text
+use Encode;
+use Encode::Guess qw/euc-jp utf8/;
$url = "http://dictionary.goo.ne.jp";
$_ = $ENV{"QUERY_STRING"};
if (/^e:/) {
@@ -17,14 +23,22 @@ if (/^e:/) {
$kind = 'je';
} elsif (/^j:/) {
$kind = 'jn';
+} elsif (/^a:/) {
+ $kind = 'all'
+}
+s@^[ewja]:@@ && s@^//@@ && s@/$@@;
+if (/^([01236]):/) {
+ $mode=$1;
+ s/^[01236]://;
+}else{
+ $mode="1";
}
-s@^[ewjs]:@@ && s@^//@@ && s@/$@@;
if ($_) {
s/\+/ /g;
s/%([\da-f][\da-f])/pack('C', hex($1))/egi;
- $_ = nkf("-e", $_);
+ $_ = encode("utf8", decode("Guess", $_));
s/[\000-\040\+:#?&%<>"\177-\377]/sprintf('%%%02X', unpack('C', $&))/eg;
- $url .= "/search.php?MT=$_&kind=$kind&mode=$mode";
+ $url .= "/srch/$kind/$_/m$mode"."u/";
} else {
$input = "w3m-control: GOTO_LINK";
}
diff --git a/COPYING b/COPYING
new file mode 100644
index 0000000..3708100
--- /dev/null
+++ b/COPYING
@@ -0,0 +1,11 @@
+(C) Copyright 1994-2002 by Akinori Ito
+(C) Copyright 2002-2011 by Akinori Ito, Hironori Sakamoto, Fumitoshi Ukai
+
+Use, modification and redistribution of this software is hereby granted,
+provided that this entire copyright notice is included on any copies of
+this software and applications and derivations thereof.
+
+This software is provided on an "as is" basis, without warranty of any
+kind, either expressed or implied, as to any matter including, but not
+limited to warranty of fitness of purpose, or merchantability, or
+results obtained from use of this software.
diff --git a/ChangeLog b/ChangeLog
index 88358ef..663fbc1 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,9322 +1,2068 @@
-2012-05-22 Tatsuya Kinoshita <tats@vega.ocn.ne.jp>
+2021-01-02 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev 04451] w3m/entity.h should be removed when `make clean'
- * Makefile.in: add entity.h to "make clean" target.
+ * NEWS: Update NEWS for 0.5.3+git20210102.
-2012-05-22 Tatsuya Kinoshita <tats@vega.ocn.ne.jp>
+2020-12-19 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev 04452] Re: w3m on macosx 10.6.6
- * doc/w3m.1, doc/STORY.html, doc-jp/STORY.html:
- delete words about formerly included Boehm GC library.
+ * doc-jp/README.siteconf, doc/README.siteconf:
+ Add examples of siteconf, set user_agent to Googlebot for Twitter.
-2012-05-22 Enu <theme.of.n@gmail.com>
+2020-12-18 Tatsuya Kinoshita <tats@debian.org>
- * file.c, HTML.c: parse META CHARSET.
+ * po/zh_TW.po: Update PO-Revision-Date for zh_TW.
-2011-01-17 Dai Sato <satodai@w3m.jp>
+2020-12-18 Ambrose Li <ambrose.li@gmail.com>
- * correction: ChangeLog of 2011-01-15 (0.5.2 -> 0.5.3)
+ * file.c: q_level was never initialized, causing random test failures.
+ This should fix that.
+ Origin: https://github.com/tats/w3m/pull/159
-2011-01-15 Dai Sato <satodai@w3m.jp>
+ * po/zh_TW.po: Translate new string.
+ Origin: https://github.com/tats/w3m/pull/158
- * w3m 0.5.3
- * version.c.in: update
- * doc/README: version 0.5.3, release date, maintainer
- * doc-jp/README: ditto
- * po/w3m.pot, ja.po: ditto
- * NEWS: update
- * configure.ac: version 0.5.3
- * configure: regenerated
+2020-12-17 Tatsuya Kinoshita <tats@debian.org>
-2011-01-05 SAKAI Kiyotaka <kiyotaka.sakai@ntt-at.co.jp>
+ * doc-jp/README.siteconf, doc/README.siteconf:
+ Update examples of siteconf, forward twitter.com to nitter.net.
+ Because mobile.twitter.com without JavaScript is unusable anymore.
- * [w3m-dev 04445] Re: Update documents (README.cookie)
- * doc-jp/README.cookie: refer to RFC 2109.
- * doc/README.cookie: diito.
+2020-12-16 Tatsuya Kinoshita <tats@debian.org>
-2011-01-05 SAKAI Kiyotaka <kiyotaka.sakai@ntt-at.co.jp>
+ * url.c: Use the default ciphers for OpenSSL 1.1 and later.
+ cf. https://bugs.launchpad.net/ubuntu/+source/w3m/+bug/1325674
+ https://src.fedoraproject.org/rpms/w3m/blob/36f14df378762a3a03a6a724583ca5b0ff618ed5/f/Fix-the-cipher-list-string-to-ensure-that-it-contain.patch
+ https://fedoraproject.org/wiki/Packaging:CryptoPolicies
- * [w3m-dev 04444] Re: error when 'make install'
- * w3mimg/win/.cvsignore: added.
+2020-12-09 bptato <nincsnevem662@gmail.com>
-2011-01-04 SAKAI Kiyotaka <kiyotaka.sakai@ntt-at.co.jp>
+ Small Gopher fixes/improvements
+ Origin: https://github.com/tats/w3m/pull/157
- * [w3m-dev 04441] error when 'make install'
- * update followig files. ABOUT-NLS Makefile.in acinclude.m4
- aclocal.m4 config.rpath configure configure.ac entity.h install-sh
- po/ChangeLog po/Makefile.in.in po/Rules-quot po/boldquot.sed
- po/en@boldquot.header po/en@quot.header po/insert-header.sin
- po/quot.sed po/remove-potcdate.sin
+ * file.c: Fix Gopher binaries causing w3m to be stuck in download mode;
+ try to guess Gopher image type and fallback to png.
-2010-12-28 Ito Hiroyuki <ZXB01226@nifty.com>
-
- * [w3m-dev 04440] Update documents (README.cookie)
- * doc/README.cookie: added.
- * doc-jp/README.cookie: add document about cookie_avoid_wrong_number_of_dots.
-
-2010-12-24 Ito Hiroyuki <ZXB01226@nifty.com>
+ * file.c, url.c: Add support for Gopher items 5 and I.
- * [w3m-dev 04439] Update documents (README.m17n)
- * doc-jp/README.m17n: add documents for options "east_asian_width", "gb18030_as_ucs" and "simple_preserve_space".
- * doc/README.m17n: ditto.
-
-2010-12-24 AIDA Shinra <shinra@j10n.org>
-
- * [w3m-dev 04437] Re: Windows版w3mimg、他
- * w3mimg/win/win_w3mimg.cpp: remove unused ifdefs.
- (load, animate): support "-anim" option.
- (show): support "image_scale".
-
-2010-12-20 AIDA Shinra <shinra@j10n.org>
+2020-11-24 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev 04425] Re: Windows版w3mimg、他
- * w3mimgdisplay: supports Windows console (http://www.j10n.org/files/w3m-cvs-1.1040-misc.patch).
- * image.c: ditto.
- * configure.ac: ditto.
- * config.h.in: ditto.
- * acinclude.m4: ditto.
- * Makefile.in: ditto.
- * w3mimg/w3mimg.h: ditto.
- * w3mimg/w3mimg.c: ditto.
- * w3mimg/Makefile.in: ditto.
- * doc/README.img: ditto.
- * doc-jp/README.img: ditto.
- * w3mimgdisplay.c (main): call "w_op->close(w_op)" before exit.
- * w3mimg/win/win_w3mimg.cpp: added.
- * w3mimg/win/Makefile.in: added.
+ * po/POTFILES.in, po/de.po, po/ja.po, po/w3m.pot, po/zh_CN.po:
+ * po/zh_TW.po: Update PO.
-2010-12-20 Ito Hiroyuki <ZXB01226@nifty.com>
+ * configure: Update configure by autoconf 2.69.
- * doc/README.img: add documents about some options.
- * doc-jp/README.img: ditto.
+ * config.h.dist, config.h.in, configure, configure.ac:
+ Define X_DISPLAY_MISSING when configure --without-x for Imlib2.
+ cf. https://github.com/NixOS/nixpkgs/commit/3cad8fba2958981307f94b865c2b970b95e10789
-2010-12-15 AIDA Shinra <shinra@j10n.org>
+2020-11-22 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev 04424] Windows版w3mimg、他
- * scripts/w3mman/Makefile.in (DESTDIR): removed.
- * scripts/multipart/Makefile.in (DESTDIR): removed.
- * scripts/Makefile.in (DESTDIR): removed.
- * url.c (add_index_file): can specify multiple files as an index file for directories.
- * mktable.c (defhashfunc): fi indent of output.
- * ftp.c (ftp_login): support IPv6.
- * file.c (is_text_type): check if the type is "application/xhtml".
- * Makefile.in (DESTDIR): removed.
- (GC_LIBS): added.
- (EXT_LIBS): use "GC_LIBS".
- (entity.h): depend on entity.tab and mktable$(EXT).
- (indep.o): depend on entity.h
- (mktable$(EXT)): depend on Str.o, hash.o and myctype.o instead of $(ALIB).
+ * gitlog2changelog: Update example to use UTC for gitlog2changelog.
-2010-12-15 Kazuhiko <kazuhiko@fdiary.net>
+ * acinclude.m4, config.h.dist, config.h.in, configure, configure.ac:
+ Drop HAVE_SYS_ERRLIST.
- * [w3m-dev 04419] AC_W3M_EXTLIBS does not check /lib64
- * acinclude.m4 (AC_W3M_EXTLIBS): search /lib64 and /usr/lib64.
+2020-11-22 Parag A Nemade <pnemade@fedoraproject.org>
-2010-12-11 theme.of.n@gmail.com
-
- * [w3m-dev 04421] Patch to prevent sending `Referer: ' header from HTTPS to HTTP
- * url.c (otherinfo): Don't send Referer: if https:// -> http://
-
-2010-10-11 d+w3m@vdr.jp
-
- * [w3m-dev 04414] Re: "normal" bugs from bugs.debian.org
- * doc/w3m.1: add documents about some options.
- * doc/FAQ.html: fix typo.
-
-2010-08-24 Karsten Schoelzel <kuser@gmx.de>
-
- * [w3m-dev 04393] [patch] locale-related character management
- * http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=313365
- * libwc/map/ucs_isalpha.map: added
- * libwc/map/ucs_islower.map: added
- * libwc/map/ucs_isupper.map: added
- * libwc/map/mk_ucs_case_map.pl: added
- * libwc/map/ucs_case.map: added
- * libwc/map/mk_ucs_isdigit_map.pl: added
- * libwc/map/ucs_isdigit.map: added
- * libwc/ucs.c (wc_any_to_ucs): ceck if cc.ccs == WC_CCS_US_ASCII
- (wc_is_ucs_alpha, wc_is_ucs_digit, wc_is_ucs_alnum)
- (wc_is_ucs_lower, wc_is_ucs_upper, wc_ucs_toupper)
- (wc_ucs_tolower, wc_ucs_totitle): added
- * regex.c (match_longchar, match_range_longchar): use wc_any_to_ucs(), wc_ucs_tolower(), wc_ucs_toupper() and wc_ucs_totitle()
- * main.c (nextChar, prevChar, getChar, is_wordchar): added
- (movLW): use prevChar() and is_wordchar()
- (movRW): use nextChar() and is_wordchar()
- (getCurWord): remove 4th parameter
- (getCurWord): use prevChar(), nextChar() and is_wordchar()
-
-2010-08-20 Karsten Schoelzel <kuser@gmx.de>
-
- * [w3m-dev 04401] Re: mailto with options handling
- * rc.c: Introduce option mailto_options
- * main.c (handleMailto): added
- (followA, cmd_loadURL): use handleMailto()
- * fm.h (MAILTO_OPTIONS_USE_W3MMAILER, MAILTO_OPTIONS_IGNORE)
- (MAILTO_OPTIONS_USE_MAILTO_URL): added
-
-2010-08-20 Ito Hiroyuki <ZXB01226@nifty.com>
-
- * [w3m-dev 04402] Re: "normal" bugs from bugs.debian.org
- * terms.c (reset_exit_with_value, reset_error_exit): added
- (reset_exit): use reset_exit_with_value()
- (ttymode_set, ttymode_reset, set_cc, getTCstr)
- (sleep_till_anykey): use reset_error_exit() instead of reset_exit()
-
-2010-08-14 "Adam C. Emerson" <azure@azureprime.com>
-
- * [w3m-dev 04390]
- * http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=573789
- * html.c: All elements have the id attribute.
-
-2010-08-12 Peter J. R. Moulder
-
- * [w3m-dev 04384]
- * http://sourceforge.net/tracker/index.php?func=detail&aid=2987194&group_id=39518&atid=425441
- * html.c: some tags have ALST_NOP attribute
- * tagtable.tab: add <span> and </span>
- * html.h (HTML_SPAN, HTML_N_SPAN): added
-
-2010-08-11 SAKAI Kiyotaka <kiyotaka.sakai@ntt-at.co.jp>
+ * config.h.in:
+ Fix compilation error "too few arguments to function 'longjmp'".
+ Origin: https://src.fedoraproject.org/rpms/w3m/c/e7a12fa28cfbfbb0115ec74994092c1d3b8351d8?branch=master
+ Bug-MacPorts: https://trac.macports.org/ticket/61356
- * [w3m-dev 04381] Re: check socklen_t
- * ftp.c: fix condition (#ifndef HAVE_SOCKLEN_T)
+2020-11-22 Parag Nemade <pnemade@redhat.com>
-2010-08-10 Ito Hiroyuki <ZXB01226@nifty.com>
+ * etc.c, main.c: Fix FTBFS due to redefinition of sys_errlist.
+ Origin: https://src.fedoraproject.org/rpms/w3m/c/99f30870caac12a3949b6736aa70b7233f4414d5?branch=master
+ Bug-Fedora: https://bugzilla.redhat.com/show_bug.cgi?id=1038009
+ Bug-MacPorts: https://trac.macports.org/ticket/61356
- * [w3m-dev 04379] check socklen_t
- * configure.ac: check socklen_t
- * ftp.c (ftp_login, ftp_pasv): use socklen_t instead of int
+2020-11-15 Tatsuya Kinoshita <tats@debian.org>
-2010-08-09 Ito Hiroyuki <ZXB01226@nifty.com>
+ * gitlog2changelog:
+ Include gitlog2changelog to easily generate ChangeLog.
- * [w3m-dev 04374] Re: "important" bugs from bugs.debian.org
- * table.c (feed_table_tag): don't show message when rowspan is greater than ATTR_ROWSPAN_MAX
- * [w3m-dev 04376] Re: "important" bugs from bugs.debian.org
- * table.c (feed_table_tag): fix indent
+ * Makefile.in: Use xz instead of gzip for the dist target.
-2010-08-08 Steven Harms <ZXB01226@nifty.com>
+2020-11-12 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev 04371] Re: "important" bugs from bugs.debian.org
- * https://bugs.launchpad.net/ubuntu/+source/w3m/+bug/131993
- * table.c (ATTR_ROWSPAN_MAX): added
- (feed_table_tag): maximum value of rowspan is ATTR_ROWSPAN_MAX
+ * Makefile.in: Update the dist target to use git archive.
-2010-08-08 d+w3m@vdr.jp
+ * Bonus/README, Bonus/README.eng: Update examples for 2ch.cgi.
- * [w3m-dev 04360] Re: "important" bugs from bugs.debian.org
- * main.c (main): use DEFAULT_COLS
- (main): the maximum value of the -cols option is MAXIMUM_COLS
- * backend.c (backend): use DEFAULT_COLS
- * fm.h (MAXIMUM_COLS, DEFAULT_COLS): added
+ * Bonus/2ch.cgi: Add charset=Shift_JIS to 2ch.cgi.
-2010-08-04 Ito Hiroyuki <ZXB01226@nifty.com>
+2020-11-11 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev 04369] Re: w3m's bugs from bugs.debian.org
- * terms.c (graph_ok): fix condition (UseGraphicChar != GRAPHIC_CHAR_DEC)
- * symbol.c (get_symbol): fix condition (UseGraphicChar != GRAPHIC_CHAR_ASCII)
- * rc.c (params1): type of graphic_char option is PI_SEL_C
- * main.c (main): use GRAPHIC_CHAR_ASCII and GRAPHIC_CHAR_DEC instead of FALSE and TRUE
- * fm.h (GRAPHIC_CHAR_ASCII, GRAPHIC_CHAR_DEC, GRAPHIC_CHAR_CHARSET): added
+ * file.c, proto.h:
+ Fix compilation errors when USE_GOPHER and not USE_M17N.
-2010-08-03 d+w3m@vdr.jp
+2020-11-11 bptato <nincsnevem662@gmail.com>
- * [w3m-dev 04363] Re: w3m's bugs from bugs.debian.org
- * doc/w3m.1: revert option -S
- * doc-jp/w3m.1: revert option -S, -e, -j and -s
- * main.c: remove codes for Debian
+ Support Gopher search and binary files.
+ Origin: https://github.com/tats/w3m/pull/154
-2010-08-03 Ito Hiroyuki <ZXB01226@nifty.com>
+ * url.c: Remove useless loop.
- * [w3m-dev 04343]
- * file.c (loadGeneralFile): register user name and password for proxy authentication.
- * url.c (HTTPrequest): unused variable seen_proxy_auth was removed
- * fm.h: global variables proxy_auth_cookie and pauth are removed
- * main.c (main): remove option -pauth
- * doc/MANUAL.html: ditto
- * doc-jp/MANUAL.html: ditto
- * doc-jp/w3m.1: ditto
- * doc/w3m.1: ditto
- * doc/README.passwd: added
- * doc-jp/README.passwd: added
+ * file.c: Remove unnecessary file_unquote call.
-2010-07-31 Tatsuya Kinoshita <tats@vega.ocn.ne.jp>
+ * url.c: Remove unnecessary variable assignment.
- * [w3m-dev 04350] Re: w3m's bugs from bugs.debian.org
- * file.c (process_img): Revert the change of using ATTR_TITLE if ATTR_ALT is empty.
+ * file.c, proto.h, url.c:
+ Support Gopher items search (7) and binary file (9).
-2010-07-30 Ito Hiroyuki <ZXB01226@nifty.com>
+2020-10-24 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev 04348] Re: "important" bugs from bugs.debian.org
- * file.c (TEXTAREA_ATTR_COL_MAX, TEXTAREA_ATTR_ROWS_MAX): added.
- (process_textarea): check cur_textarea_size > TEXTAREA_ATTR_COL_MAX and cur_textarea_rows > TEXTAREA_ATTR_ROWS_MAX
+ * acinclude.m4, configure: Enable Gopher support by default.
-2010-07-30 Ito Hiroyuki <ZXB01226@nifty.com>
+2020-10-24 bptato <nincsnevem662@gmail.com>
- * [w3m-dev 04345] Re: "important" bugs from bugs.debian.org
- * file.c (HR_ATTR_WIDTH_MAX): added.
- (process_hr): check w > HR_ATTR_WIDTH_MAX
+ Fix broken Gopher support.
+ Origin: https://github.com/tats/w3m/pull/152
+ Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=742455
-2010-07-26 d+w3m@vdr.jp
+ * file.c, url.c:
+ Moved back filetype indicator to the beginning of file names.
- * [w3m-dev 04237] [patch] cookie avoid [wrong number of dots]
- * rc.c: Introduce option cookie_avoid_wrong_number_of_dots.
- * fm.h: add global variables cookie_avoid_wrong_number_of_dots and Cookie_avoid_wrong_number_of_dots_domains.
- * cookie.c (check_avoid_wrong_number_of_dots_domain): added.
- (add_cookie): use check_avoid_wrong_number_of_dots_domain().
+ * file.c: Improved gopher directory display.
-2010-07-26 Ito Hiroyuki <ZXB01226@nifty.com>
+ * file.c, url.c: Improved gopher support.
- * acinclude.m4: define AC_W3M_SSL_DIGEST_AUTH
+2020-09-28 Tatsuya Kinoshita <tats@debian.org>
-2010-07-25 AIDA Shinra <shinra@j10n.org>
+ * scripts/w3mman/w3mman.in: Accept section "l" for w3mman.
- * [w3m-dev 04049] Ctrl-C safe resolver
- * fm.h (GRAPHIC_CHAR_ASCII, GRAPHIC_CHAR_CHARSET, GRAPHIC_CHAR_ALL): removed.
- * fm.h: UseGraphicChar is initialized as FALSE.
- * main.c (sig_chld): use TRUE and FALSE instead of GRAPHIC_CHAR_ALL and GRAPHIC_CHAR_ASCII.
- * merge ambiguous width patch ( http://www.j10n.org/files/w3m-cvs-1.914-ambwidth.patch ).
+2020-09-25 Tatsuya Kinoshita <tats@debian.org>
-2010-07-24 Ito Hiroyuki <ZXB01226@nifty.com>
+ * scripts/w3mman/w3mman.in:
+ Assume a local file if the argument contains slash for w3mman.
- * [w3m-dev 04326] suppress compile warnings
- * file.c (digest_hex): type of the parameter s is "unsigned char *".
- (AuthDigestCred): use unsigned char.
- (ex_efct): type of the function is "static int".
+2020-09-25 Dustin Boyd <memreflect@pm.me>
-2010-07-20 Sascha Silbe <sascha-debian-bugs-w3m-1@silbe.org>
+ * scripts/w3mman/w3mman2html.cgi.in: Remove -l flag in CGI script.
+ Origin: https://bugs.freebsd.org/bugzilla/attachment.cgi?id=217947&action=diff
+ Bug-FreeBSD: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=249305
- * http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=523159#5
- * url.c (openSSLHandle): add support for TLS SNI (Server Name Indication)
+2020-09-15 Tatsuya Kinoshita <tats@debian.org>
-2010-07-19 Karsten Schoelzel <kuser@gmx.de>
+ * .cvsignore, libwc/.cvsignore, po/.cvsignore, scripts/.cvsignore:
+ * scripts/multipart/.cvsignore, scripts/w3mman/.cvsignore:
+ * w3mimg/.cvsignore, w3mimg/fb/.cvsignore, w3mimg/win/.cvsignore:
+ * w3mimg/x11/.cvsignore: Remove .cvsignore.
- * http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=329862#20
- * table.c (feed_table_tag): check displayLinkNumber.
- * proto.h: add getLinkNumberStr().
- * main.c (do_dump): check displayLinkNumber.
- * fm.h: add global variable displayLinkNumber.
- * file.c (getLinkNumberStr): added.
- (process_input, process_select, HTMLtagproc1): check displayLinkNumber.
+ * .gitignore: Add .gitignore.
-2010-07-19 Karsten Schoelzel <kuser@gmx.de>
+2020-09-15 Bruno Haible <bruno@clisp.org>
- * http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=329863#8
- * rc.c: Introduce option pseudo_inlines.
- * fm.h: add global variable pseudoInlines.
- * file.c (process_img): check q.
+ * url.c: Add support for file://hostname/... URLs.
+ Origin: https://github.com/tats/w3m/files/3488813/file-hostname-support.diff.gz
+ Bug-Debian: https://github.com/tats/w3m/issues/120
-2010-07-19 "Trent W. Buck" <twb@cybersource.com.au>
+2020-09-06 Tatsuya Kinoshita <tats@debian.org>
- * http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=537706#10
- * rc.c (interpret_rc): check line->length before call Strchop().
+ * README, doc-jp/README, doc/README: Mention forked version.
-2010-07-19 Karsten Schoelzel <kuser@gmx.de>
+ * configure, configure.ac, doc-jp/README, doc/README, po/Makevars:
+ * po/de.po, po/ja.po, po/w3m.pot, po/zh_CN.po, po/zh_TW.po:
+ Drop bug report address.
- * http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=366284#5
- * rc.c (init_rc): check config_file is NULL or not.
- (panel_set_option): check config_file instead of no_rc_dir.
+ * ChangeLog: Move old ChangeLog entries to ChangeLog.1.
+ * ChangeLog.1: New file.
-2010-07-19 Karsten Schoelzel <kuser@gmx.de>
+2020-09-02 bptato <nincsnevem662@gmail.com>
- * http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=261174#10
- * terms.c (graph_ok): check UseGraphicChar is GRAPHIC_CHAR_ALL or not.
- * symbol.c (get_symbol): check UseGraphicChar.
- * rc.c (graphic_char_str): added.
- * main.c (sig_chld): use GRAPHIC_CHAR_ASCII and GRAPHIC_CHAR_ALL.
- * fm.h (GRAPHIC_CHAR_ASCII, GRAPHIC_CHAR_CHARSET, GRAPHIC_CHAR_ALL): added.
- * fm.h: UseGraphicChar is initialized as GRAPHIC_CHAR_ASCII.
+ New option space_autocomplete.
-2010-07-19 Karsten Schoelzel <kuser@gmx.de>
+ * linein.c:
+ Add closing bracket I somehow forgot about in the previous commit.
+ Origin: https://github.com/tats/w3m/pull/150
- * http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=185006#22
- * main.c (sig_chld): save exit code to d->err.
- (addDownloadList): initialize d->running and d->err.
- (DownloadListBuffer): check d->err.
+ * fm.h, linein.c, rc.c: Space is now entered in URL fields instead of
+ triggering file completion, old behavior can be toggled via options.
+ Origin: https://github.com/tats/w3m/pull/149
- * fm.h (_DownloadList): add running and err.
+2020-09-01 Tatsuya Kinoshita <tats@debian.org>
- * file.c (save2tmp): check returned value of Strfputs().
- (doFileSave): exit code is depend on the returned value of save2tmp().
+ * scripts/w3mhelp-funcdesc.ja.pl.in:
+ Fix broken Japanese help page, convert to UTF-8.
-2010-07-19 d+w3m@vdr.jp
+ * doc-jp/README.func: Add CURSOR_* commands to Japanese README.func.
- * [w3m-dev 04238] [patch] simple preserve space
- * rc.c: Introduce option simple_preserve_space.
- * fm.h: add global variable SimplePreserveSpace.
- * file.c (HTMLlineproc0): check SimplePreserveSpace.
+2020-08-31 bptato <nincsnevem662@gmail.com>
-2010-07-18 Karsten Schoelzel <kuser@gmx.de>
+ New commands CURSOR_TOP, CURSOR_MIDDLE and CURSOR_BOTTOM.
+ Origin: https://github.com/tats/w3m/pull/148
- http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=242599#21
- * file.c (is_html_type): added.
- (examineFile, loadGeneralFile, _saveBuffer)
- (openGeneralPagerBuffer, reloadBuffer): use is_html_type() instead
- of strcasecmp().
- (loadGeneralFile): set f.guess_tupe
- * display.c (displayBuffer): use is_html_type() instead of strcasecmp().
- * buffer.c (reshapeBuffer): use is_html_type() instead of strcasecmp().
- * backend.c (internal_get): use is_html_type() instead of strcasecmp().
- * main.c (vwSrc, reload, dispI, stopI): use is_html_type() instead of strcasecmp().
- * proto.h: add is_html_type()
- * url.c: add "xhtml" to DefaultGuess.
+ * main.c: Removed an unnecessary variable declaration.
-2010-07-18 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+ * scripts/w3mhelp.cgi.in: Added the other two commands to w3mhelp.
- * [w3m-dev 04286] Re: break textform when buffer back
- * form.c (form_update_line): set line->size
+ * doc-de/README.func, doc/README.func, main.c, proto.h:
+ * scripts/w3mhelp.cgi.in:
+ New commands for moving to the top, middle and bottom of buffer.
-2010-07-18 d+w3m@vdr.jp
+2020-08-31 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev 04319] Re: w3m's bugs from bugs.debian.org
- * doc/w3m.1: fix typo.
- * doc-jp/w3m.1: update
+ * w3m-doc/README.html, w3m-doc/community.html.in:
+ * w3m-doc/configuration.html.in, w3m-doc/contain.wd:
+ * w3m-doc/copyright.html.in, w3m-doc/define.wd, w3m-doc/detail.html.in:
+ * w3m-doc/development.html.in, w3m-doc/faq.html.in:
+ * w3m-doc/function.html.in, w3m-doc/index.html.in:
+ * w3m-doc/install.html.in, w3m-doc/mkdocs, w3m-doc/operation.html.in:
+ * w3m-doc/outline.html.in, w3m-doc/prologue.html.in:
+ * w3m-doc/sample/README, w3m-doc/sample/define.wd:
+ * w3m-doc/sample/html.wd, w3m-doc/sample/keymap.cgi:
+ * w3m-doc/sample/s.wd, w3m-doc/sample/sample.html:
+ * w3m-doc/sample/sample.wd, w3m-doc/sample/w3mdoc.pl:
+ * w3m-doc/w3mdoc.pl: Drop obsolete w3m-doc.
-2010-07-18 Petr Salinger <Petr.Salinger@seznam.cz>
- * http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=493486
- * terms.c: fix version check logic for FreeBSD
+2020-08-29 Ambrose Li <ambrose.li@gmail.com>
-2010-07-18 Colin Watson <cjwatson@ubuntu.com>
- * http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=325699
- * scripts/w3mman/w3mman2html.cgi.in (Content-Type): "MAN_KEEP_FORMATTING=1"
+ * file.c, html.c, html.h, tagtable.tab:
+ Rudimentary support for the section tag
+ Origin: https://github.com/tats/w3m/pull/147
-2010-07-18 Ludwig Nussel <ludwig.nussel@...e.de>
- * http://www.openwall.com/lists/oss-security/2010/06/14/4
- * istream.c (ssl_check_cert_ident): replace \0 to make full string
- visible to user (CVE-2010-2074).
+ * file.c:
+ Somehow the wrong quotes were used. This should fix the failing tests.
+ Origin: https://github.com/tats/w3m/pull/139/commits/b9488ffe60963349bf622a7548e3b9dccc6e0728
-2007-06-07 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+ * po/zh_TW.po: Missed the spurious (_S).
+ Origin: https://github.com/tats/w3m/pull/145/commits/5d7fb3719e1308d56e5505ab67160b6d8fae34b0
- * [w3m-dev 04279] charset
- * libwc/ces.h, libwc/charset.c: set charset to Shift_JIS, when locale
- is japanese, jp_JP.PCK, ja_JP.IBM-932, ja_JP.IBM-943, or windows-31j.
+2020-08-24 Ambrose Li <ambrose.li@gmail.com>
-2007-06-07 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+ * etc.c, file.c, fm.h, html.c, html.h, tests/a1.expected:
+ * tests/a1.html, tests/a2.expected, tests/a2.html, tests/run_tests:
+ Make w3m's handling of the a element HTML5 compatible (when the stream
+ is HTML5).
+ In HTML5 anchors should not be closed when encountering divs, for
+ example, but should be closed when encountering buttons, for example.
+ This also fixes a bug in the tokenizing FSM in etc.c that prevented
+ the !doctype element from being recognized; the fix is necessary
+ because HTML5 detection dependson checking the !doctype element.
+ Origin: https://github.com/tats/w3m/pull/146
+ Bug: https://sourceforge.net/p/w3m/patches/74/
+ Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=290460
+ Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=847875
- * [w3m-dev 04278] Re: segfault on CentOS4.5/libgc6.8
- * term.c: add handling xterm-incompatible terminals without gpm.
+ * po/zh_TW.po: Corrections to traditional Chinese translation,
+ including corrections of a number of serious errors.
+ Origin: https://github.com/tats/w3m/pull/145
-2007-06-04 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+2020-08-23 Ambrose Li <ambrose.li@gmail.com>
- * [w3m-dev 04271] vi_prec_num
- * main.c: make number prefixes working when vi_prec_num=0.
+ * entity.c, file.c, fm.h, tests/name_entity_1.expected:
+ * tests/name_entity_1.html, tests/name_entity_1.opts:
+ * tests/name_entity_2.expected, tests/name_entity_2.html:
+ * tests/q1.expected, tests/q1.html, tests/q1.opts, tests/q2.expected:
+ * tests/q2.html, tests/q3.expected, tests/q3.html, tests/q3.opts:
+ * tests/q4.expected, tests/q4.html, tests/q4.opts, tests/q5.expected:
+ * tests/q5.html, tests/q6.expected, tests/q6.html, tests/q6.opts:
+ * tests/run_tests: Changes the behaviour of the q tag (when m17n and
+ Unicode are configured) to use "smart" quotes if the display charset
+ can handle them. Falls back to old behaviour (ASCII quotes with
+ left/right quote semantics for 6/0 and 2/6) if display charset is
+ us-ascii. Also changes the behaviour of conv_entity() to convert
+ left/right quotes and some dashes because named entities are needed
+ for the new code for the q tag.
+ Origin: https://github.com/tats/w3m/pull/139
-2007-05-31 Dai Sato <satodai@w3m.jp>
+2020-08-23 Tatsuya Kinoshita <tats@debian.org>
- * w3m 0.5.2
- * version.c.in: update
- * doc/README: version 0.5.2, release date, maintainer
- * doc-jp/README: ditto
- * po/w3m.pot, ja.po: ditto
- * NEWS: update
- * configure.ac: version 0.5.2
- * configure: regenerated
+ * html.c: Add TFLG_END to "/sup", "/sub" and "/figure" for TagMAP.
-2007-05-31 Tsutomu OKADA
+2020-08-21 Ambrose Li <ambrose.li@gmail.com>
- * [20070530101431@w3mbbs] Re: road to 0.5.2
- * ftp.c: fix typo.
- * main.c, mktable.c, w3mbookmark.c, w3mhelperpanel.c: add GC_INIT().
+ * file.c, html.c, html.h, tagtable.tab:
+ Rudimentary support for figure, figcaption.
+ Origin: https://github.com/tats/w3m/pull/136
-2007-05-30 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+2020-08-02 David Spickett <david.spickett@linaro.org>
- * [w3m-dev 04266] Bug fix when tab browsing
- * fm.h, main.c: fix for tab browsing.
+ * scripts/w3mhelp.cgi.in:
+ Show keyboard shortcuts in a consistent order in help.
+ Origin: https://github.com/tats/w3m/pull/134
+ Bug-Debian: https://github.com/tats/w3m/issues/133
-2007-05-30 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+2020-07-11 Bjarni Ingi Gislason <bjarniig@rhi.hi.is>
- * [w3m-dev 04265] compile error when #undef USE_BG_COLOR
- * terms.c: add #ifdef __CYGWIN__.
+ * doc/w3m.1: Fix some source formatting in the manual.
+ - Begin a sentence on a new line.
+ - Split long lines (> 80).
+ - Fix warnings from "mandoc -Tlint".
+ - Remove space at end of lines.
+ - Change a HYPHEN-MINUS (code 0x55, 2D) to a dash (minus) if it matches
+ " -[:alpha:]" or \[aq]-[:alpha:] (for options).
+ - Use the macros .MT/.ME for e-mail addresses.
+ Origin: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=963801#5
-2007-05-30 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+2020-05-07 Shun Sakai <sorairolake@protonmail.ch>
- * [w3m-dev 04264] Re: road to 0.5.2
- * po/makefile.in.in, scripts/*/Makefile.in: add datarootdir.
+ * Bonus/README, doc-jp/FAQ.html, doc-jp/HISTORY, doc-jp/MANUAL.html:
+ * doc-jp/README, doc-jp/README.SSL, doc-jp/README.cookie:
+ * doc-jp/README.cygwin, doc-jp/README.dict, doc-jp/README.func:
+ * doc-jp/README.img, doc-jp/README.keymap, doc-jp/README.m17n:
+ * doc-jp/README.mailcap, doc-jp/README.menu, doc-jp/README.migemo:
+ * doc-jp/README.mouse, doc-jp/README.passwd, doc-jp/README.pre_form:
+ * doc-jp/README.siteconf, doc-jp/README.tab, doc-jp/STORY.html:
+ * doc-jp/menu.default, doc-jp/menu.submenu, doc-jp/w3m.1:
+ * scripts/bm2menu/README, scripts/multipart/README:
+ * scripts/w3mman/README, w3m-doc/README.html:
+ * w3m-doc/community.html.in, w3m-doc/configuration.html.in:
+ * w3m-doc/copyright.html.in, w3m-doc/detail.html.in:
+ * w3m-doc/development.html.in, w3m-doc/faq.html.in:
+ * w3m-doc/function.html.in, w3m-doc/index.html.in:
+ * w3m-doc/install.html.in, w3m-doc/operation.html.in:
+ * w3m-doc/outline.html.in, w3m-doc/prologue.html.in:
+ * w3m-doc/sample/README, w3m-doc/sample/define.wd, w3m-doc/sample/s.wd:
+ * w3m-doc/sample/sample.html, w3m-doc/sample/sample.wd:
+ * w3mhelp-lynx_ja.html.in, w3mhelp-w3m_ja.html.in:
+ * w3mimg/fb/readme.txt:
+ Change the encoding of the Japanese docs to UTF-8.
-2007-05-29 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+ * COPYING: Add COPYING file.
- * [w3m-dev 04262] FreeBSD sysmouse (Re: road to 0.5.2)
- * configure.ac: unbreak sysmouse support, pointed out by
- Travis Poppe <tlp@lickwid.net>.
- * configure: regenerated.
+2020-05-02 Tatsuya Kinoshita <tats@debian.org>
-2007-05-29 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+ * NEWS: Update NEWS for 0.5.3+git20200502.
- * [w3m-dev 04260] Warning (Re: road to 0.5.2)
- * main.c, display.c: delete unused macros, change void to static void.
+2020-03-27 Roland Illig <rillig@NetBSD.org>
-2007-05-29 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+ * main.c: Fix -Wchar-subscripts.
+ Origin: http://cvsweb.netbsd.org/bsdweb.cgi/~checkout~/pkgsrc/www/w3m/patches/patch-main.c?rev=1.1&content-type=text/plain
+ Bug: https://sourceforge.net/p/w3m/patches/76/
- * [w3m-dev 04259] long long (Re: road to 0.5.2)
- * Makefile.in, aclocal.m4: move 'gc' from $LIBS to $LIBGC.
- * configure: regenerated.
+2020-03-16 Tatsuya Kinoshita <tats@debian.org>
-2007-05-29 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+ * doc-de/MANUAL.html, doc/MANUAL.html: Update documents for GOTO_HOME.
- * [w3m-dev 04256] Re: road to 0.5.2
- * scripts/Makefile.in, scripts/w3mhelp.cgi.in: add datarootdir.
+ * doc-de/README.func, doc-jp/README.func, doc-jp/keymap.default:
+ * doc/README.func, doc/keymap.default, scripts/w3mhelp.cgi.in:
+ Add GOTO_HOME to the help page.
-2007-05-28 Hideyuki SHIRAI <shirai@meadowy.org>
+2020-03-11 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev 04251] Re: road to 0.5.2
- * po/w3m.pot: pot-update.
+ * doc-jp/README.SSL, po/de.po, po/ja.po, po/w3m.pot, po/zh_CN.po:
+ * po/zh_TW.po, rc.c: Update documents for ssl_forbid_method.
-2007-05-27 Hiroyuki Ito <ZXB01226@nifty.com>
+ * url.c: Extend ssl_forbid_method for TLSv1.2 and TLSv1.3.
- * [w3m-dev 04252] Re: road to 0.5.2
- * Makefile.in: add datarootdir for Autoconf 2.60 and later.
+2020-01-13 We're Yet <58348703+butwerenotthereyet@users.noreply.github.com>
-2007-05-23 NOKUBI Takatsugu <knok@daionet.gr.jp>
+ * keybind.c, main.c, proto.h: Add command to go home.
+ Origin: https://github.com/tats/w3m/pull/124
- * [w3m-dev 04155] w3m mingw patch
- * config.h, configure.ac, etc.c, file.c, ftp.c, indep.c, istream.c,
- local.c, main.c, rc.c, terms.c, url.c: fix for minpw, except for
- deleting nsl and dl from configure.ac.
- * configure: regenerated.
+2019-11-10 Kyle J. McKay <mackyle@gmail.com>
-2007-05-23 Hiroyuki Ito <ZXB01226@nifty.com>
+ * entity.tab, indep.c, indep.h: Support &apos; entity.
+ Origin: https://github.com/tats/w3m/pull/122
+ Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=927409
- * [w3m-dev 04233], [w3m-dev 04236] Re: <del>, <s>, <ins>, and so on
- * file.c, fm.h, po/ja.po, po/w3m.pot, rc.c, table.c:
- expand display_ins_del to select a type of fontify.
+2019-07-02 Tatsuya Kinoshita <tats@debian.org>
-2007-05-23 Hiroyuki Ito <ZXB01226@nifty.com>
+ * doc-jp/README.siteconf: Update doc-jp for user_agent in siteconf.
- * [w3m-dev 04242] Re: Compile error when --without-ssl
- * aclocal.m4, configure.ac: add checking ssl before digest_auth.
- * configure: regenerated.
+2019-07-01 Azure <azure@fox.blue>
-2007-05-23 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+ * doc/README.siteconf, fm.h, rc.c, url.c:
+ Allow setting User Agent in Siteconf.
+ Origin: https://github.com/tats/w3m/pull/119
- * [w3m-dev 04240] nl_langinfo() requires setlocale()
- * fm.h, main.c, menu.c, rc.c: add "#ifdef"s.
- * libwc/charset.c: add setlocale() for nl_langinfo().
+2019-04-21 Laurent Arnoud <laurent@spkdev.net>
-2007-05-23 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+ * fm.h, main.c, url.c: Allow to override User-Agent with -header.
+ Origin: https://github.com/tats/w3m/pull/113
- * [w3m-dev 03923] <pre> in <table>
- * file.c, table.c: avoid extra blanks in pre in table.
+2019-01-05 Tatsuya Kinoshita <tats@debian.org>
-2007-05-23 tamo
+ * NEWS: Update NEWS.
- * [20070121110209@w3mbbs] unnecessary decoding in linein.c
- * linein.c: decoding URLs in correct condition.
+ * config.guess, config.sub:
+ Update config.* with autotools-dev 20180224.1.
-2007-05-23 Tsutomu OKADA
+2019-01-05 Akinori Hattori <hattya@gentoo.org>
- * [20061228000713@w3mbbs] avoid warning for file.c
- * html.h: change char to unsigned char for HTML_DL_COMPACT(133).
+ * w3mimg/fb/fb_imlib2.c: Fix dependency for Imlib2.
+ Bug-Gentoo: https://bugs.gentoo.org/605930
+ Origin: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=97d6e3e6839898829e8cce211b97a7fa77f5d06e
-2007-05-23 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+2018-12-22 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev 04213] update Unicode characters' width
- * libwc/ucs.c, libwc/ucs.h, libwc/map/ucs_wide.map:
- catch-up to EastAsianWidth-5.0.0.txt.
+ * scripts/w3mman/w3mman.1.in, scripts/w3mman/w3mman.in:
+ Fix square brackets.
-2007-04-19 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+2018-12-21 Nemo Inis <nemoinis@hotmail.com>
- * [w3m-dev 04212] quote URL of local dir
- * local.c: quote URLs with non-ASCII local directory names.
+ * scripts/w3mman/w3mman.1.in, scripts/w3mman/w3mman.in:
+ * scripts/w3mman/w3mman2html.cgi.in:
+ w3mman support for section number during keyword search.
+ Origin: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=916968#5
-2007-04-19 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+2018-10-26 Ben Wong <bugs.debian.org@wongs.net>
- * [w3m-dev 04211] input type=image
- * file.c, html.[ch]: avoid conflicts between input_alt and img_alt.
- fix calculation of labeled line numbers when fold_line=1.
+ * buffer.c, display.c:
+ Fix that the MarkAllPages option works as originally intended.
+ Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=911929
-2007-04-19 Hiroyuki Ito <ZXB01226@nifty.com>
+2018-10-26 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev 04197] Re: italic text
- * fm.h: display <em> and <i> elements with underline.
+ * istream.c, url.c: Indentation fix.
-2006-12-27 Fumitoshi UKAI <ukai@debian.or.jp>
+2018-10-24 Mark Wright <gienah@gentoo.org>
- * [SECURITY] fix format string vulnerability
- * file.c (inputAnswer) fix format string bug
+ * istream.c, url.c: Do not use deprecated features with openssl-1.1.
+ Bug-Gentoo: https://bugs.gentoo.org/592510
+ Bug-Debian: https://github.com/tats/w3m/pull/103
-2006-12-07 Hiroyuki Ito <ZXB01226@nifty.com>
+2018-05-20 Andrew Santosa <santosa_1999@yahoo.com>
- * [w3m-dev 04185] Re: italic text
- * file.c, fm.h, html.c, html.h, tagtable.tab:
- display <em> and <i> elements with bold letters.
+ * po/Makefile.in.in: Added check for : command not producing .gmo file.
+ Bug-Debian: https://github.com/tats/w3m/pull/99
-2006-12-07 Hideyuki SHIRAI <shirai@meadowy.org>
+2018-03-24 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev 04184] automatic uncompression in downloading
- * rc.c: Add `AutoUncompress'.
- (params3): Ditto.
- * fm.h: Add `AutoUncompress'.
- * file.c (loadGeneralFile): Check `AutoUncompress' when uncompress
- data.
- (HTMLlineproc2body): Ditto.
- * po/w3m.pot: Add new message for `AutoUncompress'.
- * po/ja.po: ditto.
+ * table.c: Respect simple_preserve_space for table cells.
+ Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=893902
-2006-12-10 Hiroyuki Ito <ZXB01226@nifty.com>
+2018-03-23 Mike <barbeque@users.noreply.github.com>
- * [w3m-dev 04159] Re: Is this mailing list still alive?
- * cookie.c: accept invalid "set-cookies" headers
- when "domainName == .hostName".
+ Update grammar & spelling in some English READMEs.
+ Origin: https://github.com/tats/w3m/pull/97
-2006-12-10 noz
+ * doc/README.img: Update README.img.
+ * doc/README.dict: Update README.dict.
+ * doc/README.pre_form: Update README.pre_form.
+ * doc/README.cookie: Update README.cookie.
+ * doc/README.cookie: Update README.cookie.
- * [20051124052846@w3mbbs] LiveHTTPHeaders
- * file.c, fm.h, main.c, url.c: add -reqlog option which makes
- ~/.w3m/request.log like LiveHTTPHeaders of FireFox.
+2018-03-04 Jia Zhouyang <jiazhouyang@nudt.edu.cn>
-2006-08-07 Fumitoshi UKAI <ukai@debian.or.jp>
+ Fix crashes when some external APIs fail.
+ Origin: https://github.com/tats/w3m/pull/96
- * mailcap.c (acceptableMimeTypes): change default accept: line
- w3m should prefer text/html to other text/*.
- reported as Debian Bug#374296
+ * url.c: Add error handling code for fopen.
+ Check the return code of fopen, and return when it fails.
+ * file.c: Add error handling code for fopen.
+ Check the return value of fopen, and add proper error handling code.
+ * local.c: Add error handling for chdir.
+ When chdir fails, print error message and exit.
-2006-06-12 Dai Sato <satodai@w3m.jp>
+2018-01-25 Tatsuya Kinoshita <tats@debian.org>
- * another fix for [w3m-dev-en 01067] Some more patches
- * file.c (loadBuffer): avoid decoding when dump_extra option is specified.
+ * ChangeLog, NEWS: Add CVE IDs.
+ cf. https://security-tracker.debian.org/tracker/source-package/w3m
-2006-06-10 Dai Sato <satodai@w3m.jp>
+2018-01-21 Tatsuya Kinoshita <tats@debian.org>
- * fix for [w3m-dev-en 01067] Some more patches
- * file.c (loadGeneralFile): avoid decoding when dump_extra option is specified.
+ * NEWS: Update NEWS.
-2006-06-10 Dai Sato <satodai@w3m.jp>
+ * scripts/Makefile.in: Do not remove w3mdict.cgi when "make distclean".
- * [w3m-dev 03992] Change to display progress status when dump_extra option is specified
- * file.c (loadHTMLstream): Show progress status when dump_extra option is specified.
+ * config.h.dist, config.h.in, configure, configure.ac, main.c, rc.c:
+ Make temporary directory safely when ~/.w3m is unwritable.
+ Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=888097
+ [CVE-2018-6198]
-2006-06-07 Dai Sato <satodai@w3m.jp>
+ * rc.c: Suppress error messages when ~/.w3m is unwritable.
+ Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=871425
- * [w3m-dev 04129] handling newlines in form values
- * parsetagx.c: don't delete newlines in hidden values.
+2018-01-20 Tatsuya Kinoshita <tats@debian.org>
-2006-05-29 Dai Sato <satodai@w3m.jp>
+ * config.guess, config.sub:
+ Update config.* with autotools-dev 20171216.1.
- * [w3m-dev-en 01067] Some more patches
- * file.c, html.h, url.c: decode content-encoding in all situations.
+ * table.c: Prevent negative indent value in feed_table_block_tag().
+ Bug-Debian: https://github.com/tats/w3m/issues/88 [CVE-2018-6196]
-2006-05-29 Dai Sato <satodai@w3m.jp>
+2018-01-06 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev-en 01067] Some more patches
- * main.c: delete calls to GC from wrap_GC_warn_proc to avoid deadlocks.
+ * doc-jp/README.SSL: Doc fix for ssl_forbid_method.
-2006-05-29 Dai Sato <satodai@w3m.jp>
+ * po/de.po, po/ja.po, po/w3m.pot, po/zh_CN.po, po/zh_TW.po, rc.c:
+ * url.c: Fix multi-character character constant for ssl_forbid_method.
- * [w3m-dev-en 01067] Some more patches
- * main.c: fix unsafe usages of SIGWINCH handler.
+2018-01-06 se <se@example.com>
-2006-05-29 Dai Sato <satodai@w3m.jp>
+ * po/de.po, po/ja.po, po/w3m.pot, po/zh_CN.po, po/zh_TW.po, rc.c:
+ * url.c: Extend ssl_forbid_method to disable TLSv1.1.
+ Origin: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=874218#5
- * [w3m-dev-en 01067] Some more patches
- * keybind(_lynx).c, doc(-jp)/keymap.default: add SHIFT-TAB as a default binding for PREV_LINK.
+2018-01-06 Tatsuya Kinoshita <tats@debian.org>
-2006-04-08 Dai Sato <satodai@w3m.jp>
+ * w3mimg/fb/fb_w3mimg.c: Accept TERM=fbterm.
+ cf. https://bushowhige.blogspot.jp/2015/01/fbterm-w3m-img.html
+ Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=590668
- * [w3m-dev 04154] Unclosed textarea in table
- * table.c: close textarea when table related tags found.
+2017-12-27 Tatsuya Kinoshita <tats@debian.org>
-2006-04-08 Dai Sato <satodai@w3m.jp>
+ * form.c: Prevent invalid columnPos() call in formUpdateBuffer().
+ Bug-Debian: https://github.com/tats/w3m/issues/89 [CVE-2018-6197]
- * [w3m-dev 04153] NEXT_LINK error
- * anchor.c, filc.c, fm.h: check A tag in HTMLlineproc2body().
+ * main.c: Typo fix in fusage().
+ Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=878106
-2006-04-08 Dai Sato <satodai@w3m.jp>
+ * doc-jp/README.tab, doc/README.tab, main.c: English fix.
+ cf. [emacs-w3m:12706], http://emacs-w3m.namazu.org/ml/msg12598.html
- * [w3m-dev 04152] [PATCH] Add more explanation for the usage of the option setting panel.
- * doc(-jp)/FAQ.html, doc-jp/MANUAL.html: add explanations for .w3m/config and -o option.
+2017-12-24 HIGUCHI Daisuke (VDR dai) <dai@debian.org>
-2006-04-08 Dai Sato <satodai@w3m.jp>
+ * scripts/w3mman/w3mman.1.in, terms.c: Fix spelling error.
- * [w3m-dev 04150] vi-prec_num
- * main.c: fix vi_prec_num switching.
+2017-08-27 Kyle J. McKay <mackyle@gmail.com>
-2006-04-08 Dai Sato <satodai@w3m.jp>
+ Correct <base ...> parsing and do not turn a form's GET into POST.
+ Bug-Debian: https://github.com/tats/w3m/pull/93
- * [w3m-dev 04146] disable HAVE_LANGINFO_CODESET on cygwin
- * configure.ac: avoid AM_LANGINFO_CODESET check for Cygwin.
+ * form.c:
+ form.c: do not gratuitously turn GET into POST.
+ When encountering a <form ...> tag that contains these values:
+ method="get" enctype="multipart/form-data"
+ Do not transform the method into POST to accomodate enctype.
+ Instead behave in the compatible way that all other browsers
+ behave in this instance and ignore the enctype parameter
+ (treating it as the default application/x-www-form-urlencoded)
+ and perform a "GET" just as the method parameter requests.
+ This behavior produces far more compatible results than
+ gratuitously changing the "get" into a "post" which can
+ result in unexpected "405 Method Not Allowed" errors.
+ Signed-off-by: Kyle J. McKay <mackyle@gmail.com>
-2006-04-07 Dai Sato <satodai@w3m.jp>
+ * file.c:
+ file.c: compute correct base URL when not absolute.
+ When a server makes use of the PATH_INFO feature in a CGI,
+ the returned pages may often have a <base href="..." /> tag
+ specifying the URL of the CGI itself as the base.
+ However, to avoid hard-coding the scheme and host into such
+ a base href, the href value will often omit the scheme, host
+ and port.
+ Make sure that when parsing any such base href value that
+ any omitted components are taken from the current URL rather
+ than taken as being from a bare, absolute file:/// URL.
+ Signed-off-by: Kyle J. McKay <mackyle@gmail.com>
- * [w3m-dev-en 01060] Some patches
- * file.c, fm.h, rc.c: Introduce option show_cookie and set it TRUE by default. If set to FALSE received cookies will not be shown.
- * This fixes Debian bug #253547: w3m: Too slow receiving cookies.
+2017-01-02 Tatsuya Kinoshita <tats@debian.org>
-2006-04-07 Dai Sato <satodai@w3m.jp>
+ * NEWS: Update NEWS.
- * [w3m-dev-en 01060] Some patches
- * parsetagx.c: Replace '\n' (newline) with ' ' (space) in attributes of html tags instead of ignoring them.
- * Fixes Debian bug #326167: w3m: new lines in hidden form fields are stripped
+2016-12-24 Tatsuya Kinoshita <tats@debian.org>
-2006-04-07 Dai Sato <satodai@w3m.jp>
+ * libwc/wtf.c:
+ Prevent overflow beyond the end of string in wtf_parse1().
+ Bug-Debian: https://github.com/tats/w3m/issues/68
- * [w3m-dev-en 01060] Some patches
- * scripts/w3mman/w3mman*.in: Add w3mman -l <file> command line argument for viewing of local man files.
- * Fixes Debian bug #138805: w3mman -l doesn't work.
+ * libwc/wtf.c:
+ Revert "Prevent overflow beyond the end of string in wtf_parse1()".
+ This reverts commit 998b6f91d4b02e8bf90b7744dfabc8cccdf9d4f9.
+ Bug-Debian: https://github.com/tats/w3m/issues/86
+ cf. http://emacs-w3m.namazu.org/ml/msg12505.html
-2006-04-07 Dai Sato <satodai@w3m.jp>
+ * form.c:
+ Preserve one byte for end of string character in form_update_line().
+ Bug-Debian: https://github.com/tats/w3m/issues/68#issuecomment-266214643
- * [w3m-dev-en 01060] Some patches
- * libwc/detect.c: Use the hint instead of US_ASCII in wc_auto_detect.
- * Fixes Debian bug #291735: w3m shouldn't "simplify" page's charset
+ * form.c:
+ Prevent invalid form_update_line() call in formUpdateBuffer().
+ Bug-Debian: https://github.com/tats/w3m/issues/82
-2006-04-07 Dai Sato <satodai@w3m.jp>
+2016-12-20 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev-en 01060] Some patches
- * Str.h, table.c: Use Strnew_charp() instead of the wrong Strnew().
- * Fixes SF bug #895351 Strnew called with argument in table.c.
+ * form.c:
+ Revert "Preserve one byte for end of string character in form_update_line()".
+ This reverts commit a4152aaaea5cb51c9018880a1295e498c38889bf.
-2006-02-10 Dai Sato <satodai@w3m.jp>
+2016-12-18 Tatsuya Kinoshita <tats@debian.org>
- * http://dog.w3m.jp/bbs/spool/until200602.html#20060210153135@keijiwan
- * url.c: replace pclose passed to localcgi_post/get() with fclose in openURL()
+ * file.c: Prevent heap-use-after-free read in HTMLlineproc0().
+ Bug-Debian: https://github.com/tats/w3m/issues/81
-2006-02-09 Dai Sato <satodai@w3m.jp>
+ * file.c: Prevent infinite loop in feed_textarea().
+ Bug-Debian: https://github.com/tats/w3m/issues/85
- * http://vimrc.hp.infoseek.co.jp/w3m-pclose.html
- * file.c: replace pclose with fclose in the end of uncompress_stream()
+ * form.c:
+ Revert "Prevent overflow beyond the end of string in form_update_line()".
+ This reverts commit 9ccaa1dd0dac6f9b35a649ae9901c225421500f6.
-2005-02-27 Fumitoshi UKAI <ukai@debian.or.jp>
+ * form.c:
+ Revert "Prevent overflow beyond the end of string in form_update_line()".
+ This reverts commit e0efc127ff20cbeb931847af1c9b353056340fbd.
- * configure.ac: rename from configure.in. this is for autoconf2.50
+2016-12-15 Tatsuya Kinoshita <tats@debian.org>
-2005-02-27 NOMIYA Masaru <nomiya@ttmy.ne.jp>
+ * libwc/wtf.c:
+ Prevent overflow beyond the end of string for wtf to wcs macros.
+ Bug-Debian: https://github.com/tats/w3m/issues/77
- * [w3m-dev 04143] Patch for OS/2
- * config.h.in: ifdef HAVE_SETPGRP
- * configure.in: define USE_BINMODE_STREAM for *os2-emx*
- * islang.c: ULONG -> unsigned long
- * main.c: ULONG -> unsigned long
+ * libwc/wtf.c:
+ Revert "Prevent overflow beyond the end of string for wtf to wcs macros".
+ This reverts commit b4d27ba5ccffaa38e968c2bf3a8eeb9cd43928ff.
-2005-02-15 Fumitoshi UKAI <ukai@debian.or.jp>
+ * file.c, libwc/wtf.c, libwc/wtf.h:
+ Prevent overflow beyond the end of string in caller of get_mclen().
+ Bug-Debian: https://github.com/tats/w3m/issues/59
+ Bug-Debian: https://github.com/tats/w3m/issues/73
+ Bug-Debian: https://github.com/tats/w3m/issues/74
+ Bug-Debian: https://github.com/tats/w3m/issues/75
+ Bug-Debian: https://github.com/tats/w3m/issues/76
+ Bug-Debian: https://github.com/tats/w3m/issues/78
+ Bug-Debian: https://github.com/tats/w3m/issues/79
+ Bug-Debian: https://github.com/tats/w3m/issues/80
+ Bug-Debian: https://github.com/tats/w3m/issues/83
+ Bug-Debian: https://github.com/tats/w3m/issues/84
- * [w3m-dev-en 01045] From newbie: problem with w3m-0.5.1 installation
- * acinclude.m4 (AC_W3M_SSL): define USE_SSL after ssl library found
+ * file.c:
+ Revert "Prevent overflow beyond the end of string in proc_mchar()".
+ This reverts commit 512ed467d12615f5ef40d0d28272e5662d8438ea.
-2005-01-19 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
+ * table.c:
+ Revert "Prevent overflow beyond the end of string in visible_length()".
+ This reverts commit a932f78a6d8c105036ffeedf01215c1f6a0e0b71.
- * [w3m-dev 04133] mouse_end() should preced reset_tty()?
- * terms.c (reset_exit): mouse_end() should precede reset_tty()
+ * table.c:
+ Revert "Prevent overflow beyond the end of string in skip_space()".
+ This reverts commit e757b43bcf8c439c167f62b6d3317ee9518cabbf.
-2005-01-05 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
+ * table.c:
+ Revert "Prevent overflow beyond the end of string in visible_length_plain()".
+ This reverts commit f763b8ebf5441cb44d2c0234565fadd5eb1c87a5.
- * [w3m-dev 04130] [w3m-dev 04131] [w3m-dev 04132] Multiple challeges in *-Authenticate header
- * file.c (skip_auth_token): added
- (extract_auth_val): ',' is end of token
- (extract_auth_param): use skip_auth_token
- (AuthDigestCred): parse qop and calc cnonce correctly
- (findAuthentication): use skip_auth_token
+ * form.c:
+ Revert "Prevent overflow beyond the end of string in textfieldrep()".
+ This reverts commit 77d8d8d6576d8afc0f6b2e09bb88c7ca9dba58bb.
-2004-11-09 Fumitoshi UKAI <ukai@debian.or.jp>
+ * file.c:
+ Revert "Prevent overflow beyond the end of string in proc_mchar()".
+ This reverts commit e79d0ec2a00369a6af24007a1f2bb5e876e2c847.
- * w3mimg/fb/fb_gdkpixbuf.c (fb_image_load):
- fix unused variable `i'
- * w3mimg/x11/x11_w3mimg.c (x11_load_image):
- ditto
+2016-12-13 Tatsuya Kinoshita <tats@debian.org>
-2004-11-09 Hiroyuki Ito <ZXB01226@nifty.com>
+ * file.c: Prevent overflow beyond the end of string in proc_mchar().
+ Bug-Debian: https://github.com/tats/w3m/issues/80
+ cf. https://github.com/tats/w3m/issues/59
- * [w3m-dev 04128] Re: w3mimgdisplay
- * acinclude.m4 (AC_W3M_IMAGE): check not yes
- * aclocal.m4, configure: regen
- * w3mimg/fb/fb_gdkpixbuf.c (fb_image_load):
- fb_image_fill in case GDK_PIXBUF_FRAME_DISPOSE
- * w3mimg/x11/x11_w3mimg.c (get_animation_size):
- return n
- (x11_load_image):
- fill in case GDK_PIXBUF_FRAME_DISPOSE
+ * form.c: Prevent overflow beyond the end of string in textfieldrep().
+ Bug-Debian: https://github.com/tats/w3m/issues/79
-2004-11-05 Hiroyuki Ito <ZXB01226@nifty.com>
+ * form.c:
+ Preserve one byte for end of string character in form_update_line().
+ Bug-Debian: https://github.com/tats/w3m/issues/82
+ cf. https://github.com/tats/w3m/issues/68#issuecomment-266214643
- * [w3m-dev 04117] Re: start attribute and value attribute on ordered lists
- * file.c (HTMLtagproc1): allow negative value for start attr
+2016-12-10 Tatsuya Kinoshita <tats@debian.org>
-2004-10-14 Fumitoshi UKAI <ukai@debian.or.jp>
+ * libwc/wtf.c: Prevent overflow beyond the end of string in wtf_len().
+ cf. https://github.com/tats/w3m/issues/57
- * Bug#276246: w3m's locale parsing should at least see '@euro' modifier
- * config.h (HAVE_LANGINFO_CODESET): added
- * configure.in (AM_LANGINFO_CODESET): added
- * libwc/charset.c: #include <langinfo.h>
- (wc_charset_to_ces): use nl_langinfo(CODESET)
+ * etc.c: Prevent negative array index for realColumn in calcPosition().
+ Bug-Debian: https://github.com/tats/w3m/issues/69
-2004-09-30 Hiroyuki Ito <ZXB01226@nifty.com>
+ * libwc/wtf.c:
+ Prevent overflow beyond the end of string in wtf_parse1().
+ Bug-Debian: https://github.com/tats/w3m/issues/68
- * [w3m-dev 04108] PIPE_BUF
- * main.c (pipeBuf): set buf->currentURL.file to prevent
- segfault by "PIPE_BUF cat;VIEW SOURCE;"
+ * Str.c: Prevent heap-buffer-overflow in Strnew_size().
+ Bug-Debian: https://github.com/tats/w3m/issues/72
-2004-08-31 SAKAI Kiyotaka <ksakai@kso.netwk.ntt-at.co.jp>
+ * table.c:
+ Prevent overflow beyond the end of string in visible_length_plain().
+ Bug-Debian: https://github.com/tats/w3m/issues/76
- * [w3m-dev 04104] w3mmail.cgi
- * scripts/w3mmail.cgi.in: strip ^M
+ * libwc/wtf.c:
+ Prevent overflow beyond the end of string for wtf to wcs macros.
+ Bug-Debian: https://github.com/tats/w3m/issues/77
-2004-08-17 Hiroyuki Ito <ZXB01226@nifty.com>
+ * form.c:
+ Prevent overflow beyond the end of string in form_update_line().
+ Bug-Debian: https://github.com/tats/w3m/issues/78
- * [w3m-dev 04099] Re: w3m-img gtk2
- * w3mimg/fb/fb_gdkpixbuf.c (fb_image_load): fix resize bug
+2016-12-08 Tatsuya Kinoshita <tats@debian.org>
-2004-08-06 Hiroyuki Ito <ZXB01226@nifty.com>
+ * form.c:
+ Prevent overflow beyond the end of string in form_update_line().
+ Bug-Debian: https://github.com/tats/w3m/issues/75
- * [w3m-dev 04097] Re: w3m-img gtk2
- * w3mimg/fb/fb_gdkpixbuf.c (draw): no need bg
- (get_animation_size): use GTimeVal
- (fb_image_load): use GTimeVal
- fix for animation
- * w3mimg/x11/x11_w3mimg.c (get_animation_size): use GTimeVal
- (x11_load_image): use GTimeVal
- fix for animation
+ * table.c: Prevent overflow beyond the end of string in skip_space().
+ Bug-Debian: https://github.com/tats/w3m/issues/74
-2004-08-05 Fumitoshi UKAI <ukai@debian.or.jp>
+ * table.c:
+ Prevent overflow beyond the end of string in visible_length().
+ Bug-Debian: https://github.com/tats/w3m/issues/73
- * [w3m-dev 04096] w3m-img gtk2
- * acinclude.m4 (AC_W3M_IMAGE): add USE_GTK2
- add --with-imagelib=gtk2
- * aclocal.m4 config.guess config.sub configure: regen
- * config.h.in: add USE_GTK2
- * w3mimg/fb/fb_gdkpixbuf.c: support USE_GTK2
- * w3mimg/fb/fb_img.h: add fb_image_init()
- * w3mimg/fb/fb_imlib2.h: fb_image_init() stub
- * w3mimg/fb/fb_w3mimg.c: call fb_image_init()
- * w3mimg/x11/x11_w3mimg.c: support USE_GTK2
+ * libwc/wtf.c:
+ Prevent overflow beyond the end of string in wtf_strwidth().
+ Bug-Debian: https://github.com/tats/w3m/issues/57
-2004-08-03 WATANABE Katsuyuki <knabe@sannet.ne.jp>
+ * libwc/wtf.c:
+ Revert "Prevent overflow beyond the end of string in wtf_strwidth()".
+ This reverts commit d345c0950dfdef065b7377ecad0e4bc1d2601bf8.
- * [w3m-dev 04095] build fix when configure with --enable-messagel10n
- * main.c (main): locale and textdomain initialization if ENABLE_NLS
- * menu.c (initMenu): use _() instead of gettext()
- * rc.c (show_params): use _() instead of gettext()
+2016-12-07 Tatsuya Kinoshita <tats@debian.org>
-2004-07-18 WATANABE Katsuyuki <knabe@sannet.ne.jp>
+ * file.c: Prevent heap-use-after-free in HTMLlineproc0().
+ Bug-Debian: https://github.com/tats/w3m/issues/65
- * [w3m-dev 04094] Re: option panel: gettextize select list
- * rc.c (load_option_panel): don't gettext&wc_conv colorstr
- several times
+ * file.c: Prevent negative values for offset and pos in push_link().
+ Bug-Debian: https://github.com/tats/w3m/issues/64
-2004-07-16 WATANABE Katsuyuki <knabe@sannet.ne.jp>
+ * file.c: Prevent overflow beyond the end of string in proc_mchar().
+ Bug-Debian: https://github.com/tats/w3m/issues/59
- * [w3m-dev 04093] bookmark charset
- * add global variable: BookmarkCharset.
- * main.c:adBmark(): remove condition LANG = JA.
- * main.c: buffername encode by BookmarkCharset when add bookmark.
- * main.c: BookmarkCharset pass to w3mbookmark.
- * w3mbookmark.c: ditto.
-
-2004-07-16 WATANABE Katsuyuki <knabe@sannet.ne.jp>
-
- * [w3m-dev 04092] remove __CYGWIN__ && LANG == JA
- * remove condition LANG == JA && __CYGWIN__
- * cygwin_mouse_btn_swapped enabled when before 1.5.x
-
-2004-07-16 WATANABE Katsuyuki <knabe@sannet.ne.jp>
-
- * [w3m-dev 04091] option panel: gettextize select list
- * rc.c: gettextize option select list.
- * rc.c: add gettextize message.
- * po/w3m.pot: ditto.
- * po/ja.po: ditto.
-
-2004-07-14 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * Debian Bug#259053
- * doc/FAQ.html, doc-jp/FAQ.html: ~/.mailcap -> ~/.w3m/mailcap
-
-2004-05-11 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * based on [w3m-dev 04079]
- SAKAI Kiyotaka <ksakai@kso.netwk.ntt-at.co.jp>
- * Makefile.in: (libwc/libwc.a): always make in libwc subdir
- (w3mimg/w3mimg.a): always make in w3mimg subdir
-
-2004-05-03 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev-en 01007]
- * libwc/Makefile.in (CFLAGS): need @CPPFLAGS@
-
-2004-05-03 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * version.c.in: cvs version
-
-2004-04-29 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * w3m 0.5.1
- * version.c.in: update
- * doc/README: version 0.5, release date, maintainer
- * doc-jp/README: ditto
- * NEWS: update
- * configure.in: version 0.5.1
- * po/w3m.pot, ja.po: update-po
-
-2004-04-27 SAKAI Kiyotaka <ksakai@kso.netwk.ntt-at.co.jp>
-
- * [w3m-dev 04068] install-sh problem
- [w3m-dev 04069] install-sh problem 2
- * Makefile.in (MAKE_ARGS): delete INSTALL
- * install-sh: replace with X Consortium install-sh (from automake)
-
-2004-04-27 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 04073] Re: run configure in another directory
- * Makefile.in (CFLAGS): include dir here
- (DEFS): delete include dirs
- (libwc/libwc.a): pass OPTS only
- (w3mimg/w3mimg.a): pass OPTS only
- * libwc/Makefile.in (CFLAGS): fixed
- * w3mimg/Makefile.in (CFLAGS): added
- (fb x11): pass OPTS only
- * w3mimg/fb/Makefile.in (CFLAGS): added
- * w3mimg/x11/Makefile.in (CFLAGS): added
-
-2004-04-23 SAKAI Kiyotaka <ksakai@kso.netwk.ntt-at.co.jp>
-
- * [w3m-dev 04066] --disable-color
- * rc.c (load_option_panel): #ifdef USE_COLOR
-
-2004-04-22 Masao Uebayashi <uebayasi@pultek.co.jp>
-
- * fix build error for --enable-m17n --disable-unicode
- * libwc/detect.c (wc_create_detect_map): #ifdef USE_UNICODE
-
-2004-04-17 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 04064] authentication
- closes: Bug#:244029: w3m: HTTP basic authentication annoyance
- * fm.h (auth_cookie): deleted
- * proto.h (find_auth_cookie): deleted
- (add_auth_cookie): deleted
- (add_auth_user_passwd): added
- (invalidate_auth_user_passwd): added
- * etc.c (auth_pass): add bad flag
- delete file
- (dir_under): deleted
- (add_auth_pass_entry): add override flag
- no need to check file
- (find_auth_pass_entry): delete file
- check bad flag
- check uname
- (find_auth_user_passwd): find by pu->user
- (add_auth_user_passwd): added
- (invalidate_auth_user_passwd): added
- (parsePasswd): add no override
- ignore file
- (find_auth): deleted
- (find_auth_cookie): deleted
- (dump_auth_cookie): deleted
- (add_auth_cookie): deleted
- * file.c (getAuthCookie): add *uname, *pwd
- rewrite
- (loadGeneralFile): delete ss, add uname, pwd
- use add_auth_user_passwd instead of add_auth_cookie
- * url.c (HTTPrequest): don't authorization here
- it should be done in getAuthCookie in loadGeneralFile
- through extra_header
- * ftp.c (openFTPStream): add uname
- use find_auth_user_passwd instead of find_auth_cookie
- use add_auth_user_passwd instead of add_auth_cookie
-
-2004-04-10 SAKAI Kiyotaka <ksakai@kso.netwk.ntt-at.co.jp>
-
- * [w3m-dev 04063] about Makefile
- * Makefile.in (DEFS): use CGIBIN_DIR instead of LIB_DIR
- (MAKE_ARGS): ditto
- (distclean): rm -f
- * config.h.dist: use CGIBIN_DIR instead of LIB_DIR
- * indep.c (w3m_lib_dir): ditto
- * scripts/Makefile.in: ditto
- * scripts/multipart/Makefile.in: ditto
- * w3mimg/Makefile.in (clearn): remove w3mimg.a
-
-2004-04-05 AIDA Shinra <shinra@j10n.org>
-
- * [w3m-dev 04049] w3m-cvs-1.914-misc.patch
- * Makefile.in (funcname.tab): dont modify when target is unchanged.
- (CFLAGS): need $(CPPFLAGS)?
- * config.h.in: add HAVE_STDINT_H, HAVE_INTTYPES_H
- * configure.in: s/AC_CANONICAL_SYSTEM/AC_CANONICAL_HOST/
- don't use AC_CYGWIN
- don't use $CYGWIN, use $host_os *cygwin*
- AC_DEFINE in AC_CHECK_HEADER (float.h, sys/select.h)
- add stdint.h, inttypes.h
- * etc.c (find_auth_pass_entry): host is case insensitive
- * libwc/wc_types.h: use stdint.h or inttypes.h
- * main.c (MAIN); need GC_init()
-
-2004-04-01 Fumitoshi UKAI <ukai@debian.or.jp>
-
- Debian Bug#241192 w3m ipv6 FQDN resolution failure
- * etc.c (FQDN): need to set ai_flags AI_CANONNAME, since we need
- ai_canonname here.
+ * libwc/wtf.c:
+ Prevent overflow beyond the end of string in wtf_strwidth().
+ Bug-Debian: https://github.com/tats/w3m/issues/57
-2004-03-31 AIDA Shinra <shinra@j10n.org>
+2016-12-05 Yixun Lan <dlan@gentoo.org>
- * [w3m-dev 04050] SSL verify
- * url.c (openSSLHandle): don't load verify locations if
- both ssl_ca_file and ssl_ca_path is NULL.
-
-2004-03-24 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * fix search problem on different charset page than display charset
- * proto.h (conv_search_string): added
- * search.c (migemostr): use conv_search_string
- (conv_search_string): added
- * main.c (srchcore): use conv_search_string
- (reMark): ditto
- * menu.c (menu_search_forward): ditto
- (menu_search_backward): ditto
- (menu_search_next_previous): ditto
+ * html.h: Explictily include <time.h> to avoid build err.
+ While disable ssl, we will got a undefine time_t err.
+ Bug-Gentoo: https://bugs.gentoo.org/show_bug.cgi?id=601498
+ Origin: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8ee43ba4e036db70fff258f3edb2f0335385e93f
-2004-03-23 Fumitoshi UKAI <ukai@debian.or.jp>
+2016-12-05 Tatsuya Kinoshita <tats@debian.org>
- * rc.c: cleanup LANG == JA
+ * table.c:
+ Prevent array index out of bounds for tridvalue in feed_table_tag().
+ Bug-Debian: https://github.com/tats/w3m/issues/71
-2004-03-23 Fumitoshi UKAI <ukai@debian.or.jp>
+ * table.c: Prevent negative array index in set_integered_width().
+ Bug-Debian: https://github.com/tats/w3m/issues/70
- * main.c (main): DisplayCharset also follow locale
+ * table.c:
+ Prevent array index out of bounds for tabattr in feed_table_tag().
+ Bug-Debian: https://github.com/tats/w3m/issues/60
-2004-03-23 Fumitoshi UKAI <ukai@debian.or.jp>
+ * file.c: Prevent negative array index in process_textarea().
+ Bug-Debian: https://github.com/tats/w3m/issues/58
- * scripts/w3mhelp.cgi.in: use charset parramter
- * scripts/w3mhelp-funcdesc.en.pl.in: add charset
- * scripts/w3mhelp-funcdesc.ja.pl.in: ditto
+ * file.c:
+ Prevent negative array index for marks in HTMLlineproc2body().
+ Bug-Debian: https://github.com/tats/w3m/issues/61
-2004-03-22 Fumitoshi UKAI <ukai@debian.or.jp>
+ * file.c:
+ Prevent negative value of row for pushTable() in HTMLlineproc0().
+ Bug-Debian: https://github.com/tats/w3m/issues/67
- * main.c (main): don't use SystemCharset for default of
- DisplayChaset, DocumentCharset
+ * file.c: Prevent negative array index in getMetaRefreshParam().
+ Bug-Debian: https://github.com/tats/w3m/issues/63
-2004-03-22 Fumitoshi UKAI <ukai@debian.or.jp>
+ * anchor.c:
+ Prevent negative array index for marks in shiftAnchorPosition().
+ Bug-Debian: https://github.com/tats/w3m/issues/62
- * w3m 0.5
- * version.c.in: update
- * doc/README: version 0.5, release date, maintainer
- * doc-jp/README: ditto
- * NEWS: update
+2016-11-27 Kuang-che Wu <kcwu@google.com>
-2004-03-22 Fumitoshi UKAI <ukai@debian.or.jp>
+ * file.c: Fix uninitialized variable in process_img(). fix #44.
+ Bug-Debian: https://github.com/tats/w3m/issues/44
+ Origin: https://github.com/tats/w3m/pull/50/commits/41a607b06e4475101de59e5c623b9e5f76594a21
- * main.c (main): DisplayCharset and DocumentCharset also follow
- locale configuration
- * Makefile.in (distclean): distclean libwc
- * libwc/Makefile.in: add distclean
- * scripts/multipart/Makefile.in: add distclean
- * scripts/w3mman/Makefile.in: add distclean
- * scripts/Makefile.in: add distclean
+ * menu.c: Fix menu buffer-overflow.
+ Origin: https://github.com/tats/w3m/pull/49/commits/7e1c05dd90cf42a308e854881ea3813aed000d2e
-2004-03-22 Fumitoshi UKAI <ukai@debian.or.jp>
+2016-11-27 Tatsuya Kinoshita <tats@debian.org>
- * w3mimg/Makefile.in (distclean): rm -f w3mimg.a
+ * ChangeLog, NEWS: Add CVE IDs.
+ cf. https://security-tracker.debian.org/tracker/source-package/w3m
+ http://www.openwall.com/lists/oss-security/2016/11/24/1
-2004-03-22 Akihiro Sagawa <sagawa@sohgoh.net>
+2016-11-20 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev 04046]
- * configure.in (AC_W3M_IPv6): should check it after ext libs
+ * NEWS: Update NEWS.
-2004-03-22 Akihiro Sagawa <sagawa@sohgoh.net>
+2016-11-19 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev 04045]
- * Makefile.in (DEFUNS): need $(top_srcdir)
+ * NEWS: Update NEWS.
-2004-03-21 Fumitoshi UKAI <ukai@debian.or.jp>
+2016-11-18 Tatsuya Kinoshita <tats@debian.org>
- * Makefile.in (install-po): fix for broken sh.
- reported in [w3m-dev 04043] Re: w3m 0.5
+ * ChangeLog, NEWS: Add CVE IDs.
+ cf. https://security-tracker.debian.org/tracker/source-package/w3m
+ http://www.openwall.com/lists/oss-security/2016/11/18/3
-2004-03-13 Fumitoshi UKAI <ukai@debian.or.jp>
+ * libwc/ucs.map: Fix type mismatch for pcsw_ucs_map_size.
+ cf. https://github.com/tats/w3m/issues/43
- * [w3m-dev 04041] spell-miss in configure
- * acinclude.m4 (AC_W3M_M17N): fix help-string
- suggested by sakane@d4.bsd.nes.nec.co.jp (Yoshinobu Sakane)
+ * libwc/ucs.c, libwc/ucs.map:
+ Prevent global-buffer-overflow in wc_any_to_ucs().
+ Bug-Debian: https://github.com/tats/w3m/issues/43 [CVE-2016-9632]
-2004-02-06 MANTANI Nobutaka <nobutaka@nobutaka.com>
+2016-11-17 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev 04038] --disable-m17n problem in form.c
- * form.c (form_update_line): fix for disable-m17n
+ * url.c: Prevent global-buffer-overflow in parseURL().
+ Bug-Debian: https://github.com/tats/w3m/issues/41 [CVE-2016-9630]
-2004-01-10 ABE Yuji <cbo46560@pop12.odn.ne.jp>
+ * file.c: Prevent deref null pointer in HTMLlineproc0().
+ Bug-Debian: https://github.com/tats/w3m/issues/42 [CVE-2016-9631]
- * [w3m-dev 04030] PUSH_TAG macro
- * table.c (PUSH_TAG): fixed problem in --disable-m17n
+2016-11-15 Tatsuya Kinoshita <tats@debian.org>
-2003-12-09 WATANABE Katsuyuki <knabe@sannet.ne.jp>
+ * table.c: Prevent deref null pointer in renderCoTable().
+ Bug-Debian: https://github.com/tats/w3m/issues/20#issuecomment-260649537
- * [w3m-dev 04025] mismatch message in ja.po
- * po/ja.po: fix wrong messages
+ * file.c, proto.h, table.c:
+ Prevent infinite recursion with nested table and textarea.
+ Bug-Debian: https://github.com/tats/w3m/issues/20#issuecomment-260590257
+ [CVE-2016-9439]
-2003-12-09 WATANABE Katsuyuki <knabe@sannet.ne.jp>
+ * table.c:
+ Revert "Prevent infinite recursion with nested table and textarea".
+ This reverts commit f393faf55975a94217df479e1bd06ee4403c6958.
- * [w3m-dev 04024] fix: drive letter
- * url.c (parseURL2): fix for SUPPORT_DOS_DRIVE_PREFIX
+ * anchor.c: Prevent deref null pointer in shiftAnchorPosition().
+ Bug-Debian: https://github.com/tats/w3m/issues/40 [CVE-2016-9629]
-2003-12-09 YONETANI Tomokazu <qhwt@myrealbox.com>
+2016-11-14 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev 04022] $^
- * Makefile.in (DEFUNS): added
- funcname.tab: don't use $^
- * w3mimg/Makefile.in (w3mimg.a): don't use $^
+ * file.c: Prevent null pointer deref due to bad form id.
+ Bug-Debian: https://github.com/tats/w3m/issues/39 [CVE-2016-9628]
-2003-12-09 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
+ * display.c, file.c, fm.h, symbol.c:
+ Prevent array index out of bounds for symbol.
+ Bug-Debian: https://github.com/tats/w3m/issues/38 [CVE-2016-9627]
- * [w3m-dev 04021] Deeply nested table
- * file.c (completeHTMLstream): check obuf->table_level
+2016-11-13 Tatsuya Kinoshita <tats@debian.org>
-2003-10-26 Fumitoshi UKAI <ukai@debian.or.jp>
+ * file.c:
+ Prevent null pointer dereference in HTMLlineproc2body for textarea_int.
+ Bug-Debian: https://github.com/tats/w3m/issues/32#issuecomment-260170163
- * Bug#217509: segfaults if TERM is not set
- * terms.c (check_cygwin_console): check TERM==NULL
- (set_tty): check TERM==NULL
+2016-11-12 Tatsuya Kinoshita <tats@debian.org>
-2003-10-23 ABE Yuji <cbo46560@pop12.odn.ne.jp>
+ * NEWS: Update NEWS.
- * [w3m-dev 04011] accessing to an `https' URI with a fragment via a proxy
- * url.c (HTTPrequestURI): drop fragment
- (openURL): don't clear pu->label
+ * table.c: Prevent infinite recursion with nested table and textarea.
+ Bug-Debian: https://github.com/tats/w3m/issues/20
-2003-10-23 ABE Yuji <cbo46560@pop12.odn.ne.jp>
+2016-11-09 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev 04010] support for deprecated __ss_family
- * acinclude.m4 (AC_W3M_IPv6): check __ss_family
- * config.h.in: add HAVE_OLD_SS_FAMILY
- * ftp.c (ftp_pasv): ifdef HAVE_OLD_SS_FAMILY
+ * table.c: Check indent_level to prevent infinite recursion.
+ Bug-Debian: https://github.com/tats/w3m/issues/37 [CVE-2016-9626]
-2003-10-23 ABE Yuji <cbo46560@pop12.odn.ne.jp>
+2016-11-07 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev 04009] ./configure --disable-image problem
- * file.c (loadHTMLstream): if defined(USE_M17N)
+ * file.c: Prevent infinite recursion in HTMLlineproc0.
+ Bug-Debian: https://github.com/tats/w3m/issues/36 [CVE-2016-9625]
-2003-10-22 Fumitoshi UKAI <ukai@debian.or.jp>
+ * NEWS, w3m-doc/install.html.in:
+ Update documents for included w3mdict.cgi.
- * [w3m-dev 04006] checking GC_version for libgc
- reported by SAKAI Kiyotaka <ksakai@kso.netwk.ntt-at.co.jp>
- * acinclude.m4 (AC_W3M_GC): check GC_init instead of GC_version
+2016-11-07 ITOH Yasufumi <itohy@NetBSD.org>
-2003-10-21 SAKAI Kiyotaka <ksakai@kso.netwk.ntt-at.co.jp>
+ * main.c: Fix suspend (^Z) behavior.
+ Suspend the job w3m belongs to, not w3m only.
+ Signed-off-by: Thomas Klausner <wiz@NetBSD.org>
+ Bug-Debian: https://github.com/tats/w3m/pull/34
+ Origin: http://cvsweb.netbsd.org/bsdweb.cgi/pkgsrc/www/w3m/patches/patch-ab?rev=1.4&content-type=text/x-cvsweb-markup
- * [w3m-dev 03996] HELP_DIR and funcname.tab
- * configure.in (HELP_DIR): don't eval
- * scripts/w3mhelp.cgi: subst @prefix@ for $helpdir
+2016-11-07 Tatsuya Kinoshita <tats@debian.org>
-2003-10-21 Fumitoshi UKAI <ukai@debian.or.jp>
+ * form.c: Prevent dereference near-null pointer in formUpdateBuffer.
+ Bug-Debian: https://github.com/tats/w3m/issues/35 [CVE-2016-9624]
- * #include <openssl/...>
- suggested by ABE Yuji <cbo46560@pop12.odn.ne.jp>
- [w3m-dev 03998] problem about pkg-config check for OpenSSL
- * html.h: #include <openssl/...>
- * istream.c: ditto
- * istream.h: ditto
- * url.c: ditto
+ * file.c: Prevent crash after allocate string of negative size.
+ Bug-Debian: https://github.com/tats/w3m/issues/33 [CVE-2016-9623]
-2003-10-20 ABE Yuji <cbo46560@pop12.odn.ne.jp>
-
- * [w3m-dev 04002] Re: function and w3m-control
- * url.c (getURLScheme): accept numeric in scheme
+ * file.c: Prevent memory exhausted due to repeat appending "</table>".
+ Bug-Debian: https://github.com/tats/w3m/issues/23 [CVE-2016-9633]
-2003-10-18 Fumitoshi UKAI <ukai@debian.or.jp>
+ * file.c: Prevent null pointer dereference in HTMLlineproc2body.
+ Bug-Debian: https://github.com/tats/w3m/issues/32 [CVE-2016-9622]
- * [w3m-dev 03996] HELP_DIR and funcname.tab
- reported by SAKAI Kiyotaka <ksakai@kso.netwk.ntt-at.co.jp>
- * configure.in: don't use posix shell syntax $(..)
- * funcname.tab: deleted
+2016-10-31 Tatsuya Kinoshita <tats@debian.org>
-2003-10-11 Fumitoshi UKAI <ukai@debian.or.jp>
+ * table.c, table.h, textlist.h:
+ Revert "Treat table height as int instead of short".
+ This reverts commit 0c9aebb26a16ad3acc69b2e87ffd216d43879cb6.
+ Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=842623
- * scripts/Makefile.in (w3mhelp-funcname.pl): depends ../funcname.tab
- * Makefile.in (IMGOBJS): deleted
- (indep.o): depends on fm.h funcname1.h
- (IMGDISPLAY): depends on w3mimg/w3mimg.a
- (w3mimg/w3mimg.a): renamed from w3mimg
- * acinclude.m4 (AC_W3M_IMAGE): modify IMBOBJS
- * w3mimg/Makefile.in (AR): added
- (RANLIB): added
- (IMGOBJS): added
- (w3mimg.a): added
-
-2003-10-11 qhwt@myrealbox.com
-
- * [w3m-dev 03990] Re: post-m17n merge problem?
- * Makefile.in (MAN1): need $(top_srcdir)
- (MAN1_JA): ditto
- (LOBJS): depends on fm.h funcname1.h
- (INFLATE): depends on $(ALIB)
- (libwc/libwc.a): renamed from libwc
- (IMGDISPLAY): depends on $(IMGOBJS) instead of w3mimg
- depends on $(ALIB)
- (w3mimgdisplay.o): depends on w3mimg/w3mimg.h
- * acinclude.m4 (AC_W3M_M17N): WCTARGET is libwc/libwc.a
- * configure.in (HELP_DIR): expand ${prefix}
-
-2003-10-08 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03985] Re: support for 307 Temporary Redirect
- * file.c (loadGeneralFile): support 307 Temporary Redirect
-
-2003-10-06 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * fix build error --disbable-m17n
- * config.h.in: undef USE_M17N, USE_UNICODE
- * etc.c (url_unquote_conv): USE_M17N
- * file.c (convertLine): USE_M17N
- (loadHTMLStream): fix ifdef USE_IMAGE->USE_M17N
- (loadBuffer): fix USE_M17N
- (getNextPage): fix USE_M17N
- * fm.h (USE_M17N): don't define USE_M17N in case LANG == JA
- (this should be done by configure)
- (wc_ces): dummy typedef
- (wc_Str_conv): fix non-m17n macro args
- (wc_Str_conv_strict): ditto
- * ftp.c (loadFTPDir): fix undefined USE_M17N
- * mimehead.c (decodeWord): ditto
- (decodeMIME): ditto
- * news.c (loadNewsgroup): ditto
- * proto.h (convertLine): ditto
- (loadGopherDir): ditto
- (loadFTPDir): ditto
- (loadNewsgroup): ditto
- (decodeWord): ditto
- (decodeMIME): ditto
- (url_unquote_conv): ditto
- * terms.c (SETCH): ditto
-
-2003-10-06 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * --with-imagelib request on [w3m-dev 03981]
- from Mamoru KOMACHI <usata@sodan.ecc.u-tokyo.ac.jp>
- * acinclude.m4 (AC_W3M_IMAGE): add --with-imagelib
-
-2003-10-06 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * fix problem reported on [w3m-dev 03981]
- from Mamoru KOMACHI <usata@sodan.ecc.u-tokyo.ac.jp>
- * configure.in: add AC_SUBST(HELP_DIR)
- * Makefile.in (HELP_DIR): use AC_SUBT(HELP_DIR)
- * scripts/Makefile.in: add PACKAGE, VERSION, DOMAIN
- use PACKAGE instead of package:
- CGIBIN_DIR,AUXBIN_DIR,CONF_DIR
- add HELP_DIR
- add SUBDIRS
- (install unstall): do $(SUBDIRS)
- * scripts/multipart/Makefile.in: add PACKAGE,VERSION,DOMAIN
- use PACKAGE instead of package:
- CGIBIN_DIR,AUXBIN_DIR,CONF_DIR
- add HELP_DIR
- * scripts/w3mman/Makefile.in: add PACKAGE,VERSION,DOMAIN
- use PACKAGE instead of package:
- CGIBIN_DIR,AUXBIN_DIR,CONF_DIR
- add HELP_DIR
- add BIN_DIR, MAN1_DIR
- LIB_TARGETS->CGIBIN_TARGETS
- fix INSTALL_MAN
- * scripts/w3mman/w3mman.1.in:
- change @LIB_DIR@ to @libexecdir@/@PACKAGE@/cgi-bin/
-
-2003-10-01 Akira TAGOH <at@gclab.org>
-
- * acinclude.m4 (AC_W3M_SSL): use PKG_CHECK_MODULES
-
-2003-09-29 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * Makefile.in (distclean): remove posubst
- * Makefile.in (functable.c): fix cannot open file `b' for reading
-
-2003-09-27 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * funcname.tab: generated from DEFUN
- * main.c menu.c: use DEFUN
- * conv.c ucs_eucjp.h ucs_latin1.h: deleted
-
-2003-09-26 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * add posubst, compile-time message l10n
- * Makefile.in: @POSUBST@
- * acinclude.m4(AC_W3M_M17N): add POSUBST, POLANG
- --enable-messagel10n
- * configure.in (W3M_LANG): subst
- (AM_GET_GNUTEXT): if messagel10n enabled, don't use NLS
- (AC_OUTOUT): add posubst, chmod +x
- * menu.c: remove if LANG == JA messages
- * rc.c: ditto
-
-2003-09-26 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * remove ./intl
- * configure.in: external fo AM_GNU_GETTEXT
- * Makefile.in: remove intl, INTLTARGET
-
-2003-09-25 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * fix [w3m-dev 03975] Re: gettextize
- * Makefile.in: add INTLTARGET, NLSTARGET
- cleanup
- * configure.in: INTLTARGET=intl,NLSTARGET=po if USE_NLS
-
-2003-09-25 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * gettextize
- * Makefile.in: updated
- * menu.c: gettextize
- * rc.c: gettextize
- * intl/.cvsignore: added
- * po/.cvsignore: added
- * po/Makevars: added
- * po/Makevars.template: removed
- * po/POTFILES.in: updated
- * po/w3m.pot: created
- * po/ja.po: created
-
-2003-09-24 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * based on [w3m-dev 03970]
- SAKAI Kiyotaka <ksakai@kso.netwk.ntt-at.co.jp>
- * acinclude.m4 (AC_W3M_IMAGE): add IMGTARGETS
- * w3mimg/Makefile.in (all): use @IMGTARGETS@
-
-2003-09-24 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * gettextize initial modifications
- * configure.in Makefile.in aclocal.m4 config.h.in:
- update to support NLS
- * ABOUT-NLS: added
- * config.rpath: added
- * mkinstalldirs: added
- * intl/: added
- * po/: added
- * fm.h: NLS support
- * main.c (main): add gettext trigger
-
-2003-09-23 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * more autoconfisicate
-
-2003-09-23 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * merge m17n patch (w3m-0.4.1-m17n-20030308.patch.gz)
- * add libwc
-
-2003-09-23 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * version.c.in: cvs version
-
-2003-09-23 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * w3m 0.4.2
- * version.c.in: update
- * doc/README: version 0.4.2, release date
- * doc-jp/README: ditto
- * NEWS: update
-
-2003-09-23 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 03967] Re: IPv4/IPv6 only option patch
- * NEWS: options: -4, -6
- * fm.h (DNS_ORDER_INET_ONLY): added
- (DNS_ORDER_INET6_ONLY): added
- (ai_family_order_table): [3]->[7]
- * main.c (fusage): add -4/-6
- (main): -4/-6 mapped to dns_order=4/dns_order=6
- * rc.c (dnsorders): add DNS_ORDER_INET_ONLY, DNS_ORDER_INET6_ONLY
- * url.c (dnsorders): add 3-6
-
-2003-09-16 Hiroyuki Ito <hito@crl.go.jp>
-
- * [w3m-dev 03960]
- * acinclude.m4 (AC_W3M_CHECK_VER): fix version check logic
-
-2003-08-30 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 03958] w3mimgdisplay on jfbterm
- * w3mimg/fb/fb_w3mimg.c (w3mimg_fbopen): check TERM=jfbterm
-
-2003-08-29 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03957] Location: from local-CGI
- * file.c (loadGeneralFile): don't parse header for local file
- redirected by Location: from local-CGI
+2016-10-30 Tatsuya Kinoshita <tats@debian.org>
-2003-08-12 TSUCHIYA Masatoshi <tsuchiya@pine.kuee.kyoto-u.ac.jp>
+ * NEWS: Update NEWS.
- * [w3m-dev 03950] rel attribute of anchor tag
- * html.c (ALST_A): add ATTR_REL
- (MAXA_A): +1
-
-2003-07-27 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03945] Re: application/xhtml+xml support
- * Makefile.in (ETC_DIR): added
- (CONF_DIR): added
- (DEFS): add CONF_DIR
- (MAKE_ARGS): add CONF_DIR
- * config.h.in (SYS_MAILCAP): use CONF_DIR
- (SYS_URIMETHODMAP): use CONF_DIR
- * func.c (sys_current_keymap_file): added
- (interpret_keymap): added
- (initKeymap): use interpret_keymap
- (interpret_mouse_action): added
- (initMouseAction): use interpret_mouse_action
- * indep.c (w3m_conf_dir): added
- * indep.h (w3m_conf_dir): added
- * menu.c (interpret_menu): added
- (initMenu): use interpret_menu
- * proto.h (confFile): added
- * rc.c (init_rc): read config file by interpret_rc
- (confFile): added
-
-2003-07-23 Takahashi Youichirou <nikuq@hk.airnet.ne.jp>
-
- * [w3m-dev 03942] Save history
- * history.c (saveHistory): check tmpfile write error
-
-2003-07-23 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03941] fix character encoding for 'v'
- * main.c (vwSrc): use document_code as DisplayCode
-
-2003-07-23 Yoshinobu Sakane <sakane@d4.bsd.nes.nec.co.jp>
-
- * [w3m-dev 03939] next/prev visited link
- * funcname.tab (NEXT_VISITED): added
- (PREV_VISITED): added
- * main.c (_nextA): added
- (_prevA): added
- (nextVA): added
- (prevVA): added
- * proto.h (nextVA): added
- (prevVA): added
- * doc/README.func (NEXT_VISITED): added
- (PREV_VISITED): added
- * doc-jp/README.func (NEXT_VISITED): added
- (PREV_VISITED): added
- * NEWS: func: NEXT_VISITED, PREV_VISITED
-
+ * fm.h: Set use_dictcommand to 1 by default.
-2003-07-14 Hiroyuki Ito <hito@crl.go.jp>
+ * scripts/Makefile.in: Add w3mdict.cgi to LIB_TARGETS.
- * [w3m-dev 03938] clear region margin
- * w3mimgdisplay.c (clearMargin): added
- (GetOption): add -margin
- (ClearImage): clear margin
- * w3mi,g/w3mimg.h (w3mimg_op): clear_margin
- * w3mimg/fb/fb.c (fb_clear): x,y must be >= 0
- * w3mimg/x11/x11_w3mimg.c (x11_clear): x,y must be >= 0
-
-2003-07-14 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03937] <center> in <table>
- * table.c (feed_table_tag): fix <center>,</center>,<div>,</div>,
- <p>,<br>,<nobr>,</nobr>,<wbr>
- check_rowcol() for <img>
-
-2003-07-10 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * w3mimg/fb/fb_img.h (get_image_size): add missing prototypes
- * w3mimg/fb/fb.c (fb_clear): unused variable `j'
-
-2003-07-09 Hiroyuki Ito <hito@crl.go.jp>
-
- * [w3m-dev 03935] Re: clear image
- * w3mimg/fb/fb.c (fb_get_packed_color): added
- (fb_image_pset): use fb_get_packed_color
- (fb_image_fill): use fb_get_packed_color
- (fb_clear): use tmp to store pixels
+ * config.h.dist: Typo fix for USE_DICT.
-2003-07-09 ABE Yuji <cbo46560@pop12.odn.ne.jp>
+2016-10-30 Boruch Baum <boruch-baum@gmx.com>
- * [w3m-dev 03934] Re: clear image
- * w3mimg/x11/x11_w3mimg.c (x11_clear): s/FALSE/False/
-
-2003-07-09 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03931] Re: clear image
- * w3mimgdisplay.c (ClearImage): offset
- * w3mimg/fb/fb.c (fb_clear): memcpy by pixel_size
-
-2003-07-08 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03929] clear image
- * image.c (syncImage): added
- (drawImage): rewrite using syncImage()
- (clearImage): use clear image command (6)
- * w3mimgdisplay.c: change protocol
- 2 => terminate drawing
- 6 => clear image
- (main): '2' calls TermImage()
- '6' calls ClearImage()
- TermImage() when exit
- (TermImage): renamed from ClearImage
- (ClearImage): rewritten to call w_op->clear()
- * w3mimg.h/w3mimg.h (w3mimg_op): add clear()
- * w3mimg/fb/fb.c (fb_clear): added
- * w3mimg/fb/fb.h (fb_clear): added
- * w3mimg/fb/fb_img.c (fb_image_clear): added
- * w3mimg/fb/fb_w3mimg.c (w3mfb_clear): added
- (w3mimg_fbopen): initialize wop->clear
- * w3mimg/x11/x11_w3mimg.c (x11_clear): added
- (w3mimg_x11open): initialize wop->clear
+ * scripts/w3mdict.cgi: Add w3mdict.cgi to use a dictd dictionary query.
+ Bug-Debian: https://github.com/tats/w3m/issues/30
-2003-07-08 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+2016-10-09 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev 03927] deflate
- * file.c (compression_decoder): .deflate for application/x-deflate's
- extension
+ * form.c:
+ Fix incorrect dereference in formUpdateBuffer when MENU_SELECT.
+ cf. https://github.com/tats/w3m/commit/ec9eb22e008a69ea9dc21fdca4b9b836679965ee
+ https://github.com/tats/w3m/issues/28
-2003-06-19 Fumitoshi UKAI <ukai@debian.or.jp>
+2016-10-08 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev 03916] Re: charset attribute of anchor tag
- requested by TSUCHIYA Masatoshi <tsuchiya@pine.kuee.kyoto-u.ac.jp>
- for emacs-w3m
- * html.c (ALST_A): add ATTR_CHARSET
- (MAXA_A): +1
+ * table.c, table.h, textlist.h:
+ Treat table height as int instead of short.
+ Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=838952
-2003-06-18 ABE Yuji <cbo46560@pop12.odn.ne.jp>
+ * form.c: Prevent global-buffer-overflow write in formUpdateBuffer.
+ Bug-Debian: https://github.com/tats/w3m/issues/29 [CVE-2016-9429] [CVE-2016-9621]
- * [w3m-dev 03914] a fragment in the Referer URI
- * url.c (otherinfo): strip URI fragment
+ * form.c: Fix null pointer dereference in formUpdateBuffer.
+ Bug-Debian: https://github.com/tats/w3m/issues/28 [CVE-2016-9443]
-2003-06-13 Hiroyuki Ito <hito@crl.go.jp>
+2016-08-30 Kuang-che Wu <kcwu@google.com>
- * [w3m-dev 03913] fix gif animation support
- * w3mimg/fb/fb_gdkpixbuf.c (fb_image_load): fix gif animation
- * w3mimg/x11/x11_w3mimg.c (x11_load_image): ditto
+ * Str.c: Fix potential heap buffer corruption due to Strgrow.
+ Origin: https://github.com/tats/w3m/pull/27 [CVE-2016-9442]
-2003-05-15 Akinori Ito <aito@fw.ipsj.or.jp>
+2016-08-29 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev 03902] Re: table rendering
- * table.c (check_relative_width): check n_leftcell
- check w <= r
+ * anchor.c:
+ Prevent segfault due to buffer overflows in addMultirowsForm.
+ Bug-Debian: https://github.com/tats/w3m/issues/21 [CVE-2016-9425]
+ Bug-Debian: https://github.com/tats/w3m/issues/26 [CVE-2016-9428]
-2003-05-14 ABE Yuji <cbo46560@pop12.odn.ne.jp>
+ * form.c: Prevent segfault for formUpdateBuffer.
+ Bug-Debian: https://github.com/tats/w3m/issues/13#issuecomment-242981906
- * [w3m-dev 03901] body with status-code 401
- * file.c (loadGeneralFile): show page when 401, 407
+2016-08-24 Tatsuya Kinoshita <tats@debian.org>
-2003-05-14 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+ * table.c: Prevent segfault with malformed table_alt.
+ Bug-Debian: https://github.com/tats/w3m/issues/24 [CVE-2016-9441]
- * [w3m-dev 03900] Re: table rendering
- * table.c (check_relative_width): j loop starts from 0
+ * form.c: Prevent segfault for formUpdateBuffer.
+ Bug-Debian: https://github.com/tats/w3m/issues/22 [CVE-2016-9440]
-2003-05-14 SAKAI Kiyotaka <ksakai@kso.netwk.ntt-at.co.jp>
+ * table.c: Truncate max_width for renderTable.
+ Bug-Debian: https://github.com/tats/w3m/issues/25 [CVE-2016-9426]
- * [w3m-dev 03899] minor fixes
- * acinclude.m4: fix s/SSLCFLAGS/SSL_CFLAGS/
- * doc/README: update, fix typo
- * doc-jp/FAQ.html: update, fix URL
- * doc-jp/README: update
- * doc-jp/README.SSL: update
- * doc-jp/README.cookie: update
- * doc-jp/README.img: update URL
- * doc-jp/README.migemo: update
- * doc-jp/STORY.html: fix URL
+2016-08-20 Tatsuya Kinoshita <tats@debian.org>
-2003-05-14 Akinori Ito <aito@fw.ipsj.or.jp>
+ * file.c, parsetagx.c: Fix uninitialised values for <i> and <dd>.
+ Bug-Debian: https://github.com/tats/w3m/issues/16
+ [CVE-2016-9435] [CVE-2016-9436]
- * [w3m-dev 03898] Re: table rendering
- * table.c (check_relative_width): added
- (set_table_matrix): use check_relative_width
+ * file.c, parsetagx.c:
+ Revert "Fix uninitialised values for <i> and <dd>".
+ This reverts commit 0fba2f1a6eb6861206ad120a02af2643938082cd.
+ cf. https://github.com/tats/w3m/commit/0fba2f1a6eb6861206ad120a02af2643938082cd#commitcomment-18703355
-2003-05-13 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+2016-08-19 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev 03896] html_quote in textarea in frame
- * frame.c (createFrameFile): fix html_quote in textarea in frame
+ * file.c, parsetagx.c: Fix uninitialised values for <i> and <dd>.
+ Bug-Debian: https://github.com/tats/w3m/issues/16
-2003-05-13 Hironori SAKAMOTO <h-saka@lsi.nec.co.jp>
+2016-08-18 Kuang-che Wu <kcwu@google.com>
- * [w3m-dev 03895] type=image support of pre_form
- * form.c (loadPreFOrm): add image
- (preFormUpdateBuffer): add FORM_INPUT_IMAGE
- * doc/README.pre_form: update
- * doc-jp/README.pre_form: ditto
+ * table.c: Fix table rowspan and colspan.
+ Origin: https://github.com/tats/w3m/pull/19
+ Bug-Debian: https://github.com/tats/w3m/issues/8 [CVE-2016-9422]
-2003-05-11 Fumitoshi UKAI <ukai@debian.or.jp>
+2016-08-18 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev 03891] Re: urimethodmap and relative URL
- * url.c (parseURL2): copy scheme part into pu->file when SCM_UNKNOWN
+ * file.c: Prevent segfault with malformed input_alt.
+ Bug-Debian: https://github.com/tats/w3m/issues/18 [CVE-2016-9438]
-2003-05-07 Hiroyuki Ito <hito@crl.go.jp>
+ * file.c: Prevent segfault with incorrect button type.
+ Bug-Debian: https://github.com/tats/w3m/issues/17 [CVE-2016-9437]
- * [w3m-dev 03889] Progress bar in Download List Panel
- * main.c (DownloadListBuffer): calculation in double
+2016-08-17 Tatsuya Kinoshita <tats@debian.org>
-2003-05-07 SAKAI Kiyotaka <ksakai@kso.netwk.ntt-at.co.jp>
+ * file.c: Prevent segfault with incorrect form_int fid.
+ Bug-Debian: https://github.com/tats/w3m/issues/15 [CVE-2016-9434]
- * [w3m-dev 03888] autodetect ssl
- * acinclude.m4 (AC_W3M_SSL): use SSL_*
- * configure.in: move AC_W3M_SSL after AC_W3M_EXTLIBS
+ * libwc/iso2022.c: Prevent segfault when iso2022 parsing.
+ Bug-Debian: https://github.com/tats/w3m/issues/14 [CVE-2016-9433]
-2003-05-03 Hiroyuki Ito <hito@crl.go.jp>
+ * form.c: Prevent segfault for formUpdateBuffer.
+ Bug-Debian: https://github.com/tats/w3m/issues/13 [CVE-2016-9432]
- * [w3m-dev 03887] Re: I-search problem
- * main.c (dispincsrch): don't move cursor if not found.
+ * file.c, form.c:
+ Prevent negative array index for selectnumber and textareanumber.
+ Bug-Debian: https://github.com/tats/w3m/issues/12 [CVE-2016-9424]
-2003-04-27 qhwt@myrealbox.com
+2016-08-16 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev 03886] Re: POSTing patch (Re: User-Agent for Bonus/2ch.cgi)
- * Bonus/2ch.cgi: posting
+ * file.c: Truncate large values of table attributes.
+ Bug-Debian: https://github.com/tats/w3m/issues/11
-2003-04-20 qhwt@myrealbox.com
+2016-08-15 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev 03883] User-Agent for Bonus/2ch.cgi
- * Bonus/2ch.cgi: User-Agent
+ * form.c: Prevent segfault for formUpdateBuffer.
+ Bug-Debian: https://github.com/tats/w3m/issues/9 [CVE-2016-9423]
+ Bug-Debian: https://github.com/tats/w3m/issues/10 [CVE-2016-9431]
-2003-04-19 Fumitoshi UKAI <ukai@debian.or.jp>
+2016-08-09 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev 03882] Re: Bug#189460: w3m: <q> tag is not recognized
- * file.c (HTMLtagproc1): add HTML_Q, HTML_N_Q
- * html.c (TagMAP): add "q", "/q"
- * html.h (HTML_Q): added
- (HTML_N_Q): added
- * tagtable.tab: add q, /q
+ * file.c: Prevent segfault with malformed input type.
+ Bug-Debian: https://github.com/tats/w3m/issues/7 [CVE-2016-9430]
-2003-04-15 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+2016-08-08 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev 03880] Re: convert \ -> / in URL
- * Bonus/backslash_to_slash.cgi: added
+ * Makefile.in, configure, configure.ac, scripts/w3mman/Makefile.in:
+ Install German manpages.
-2003-04-15 Masanori Kobayasi <zap03216@nifty.ne.jp>
+2016-08-08 Markus Hiereth <post@hiereth.de>
- * [w3m-dev 03878] I-search problem
- * linein.c (inputLineHistSearch): don't call incrfunc twice
- * main.c (dispincsrch): fix search loop problem
+ * doc-de/MANUAL.html, doc/MANUAL.html:
+ Update MANUAL.html in English and German.
+ Origin: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=772341#90
-2003-04-14 Fumitoshi UKAI <ukai@debian.or.jp>
+ * doc-de/FAQ.html, doc/FAQ.html: Update FAQ.html in English and German.
+ Origin: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=772341#85
- * [w3m-dev 03875] Re: SSL & compressed stream
- * file.c (loadGeneralFile): check t_buf != NULL
- * url.c (openURL): don't initialize URLFile here
- (init_stream): 0 clear URLFile
+ * scripts/w3mman/w3mman.1.in, scripts/w3mman/w3mman.de.1.in:
+ Update manpage for w3mman in English and German.
+ Origin: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=772341#80
-2003-04-14 Fumitoshi UKAI <ukai@debian.or.jp>
+ * doc-de/w3m.1, doc/w3m.1:
+ Update manpage for w3m in English and German.
+ Origin: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=772341#75
- * [w3m-dev 03873] SSL & compressed stream
- * file.c (loadGeneralFile): always update ssl_certificate
- * url.c (openURL): initialize URLFile
+2016-07-18 Tatsuya Kinoshita <tats@debian.org>
-2003-04-12 NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>
+ * NEWS: Update NEWS.
- * [w3m-dev 03872] goodict.cgi
- * Bonus/goodict.cgi: adapt new goo dict web page
+ * fm.h: Set default_url to 1 by default.
-2003-04-11 Fumitoshi UKAI <ukai@debian.or.jp>
+2016-06-20 Tatsuya Kinoshita <tats@debian.org>
- * configure.in (AUXBIN_TARGETS): don't reset, move to head
+ * doc-de/README.func, scripts/w3mhelp-funcdesc.de.pl.in:
+ Trim trailing spaces.
-2003-04-10 Fumitoshi UKAI <ukai@debian.or.jp>
+2016-06-20 Markus Hiereth <post@hiereth.de>
- * [w3m-dev 03870] Re: configure --help
- * acinclude.m4 (AC_W3M_IMAGE): fix help message
- (AC_W3M_SSL): fix typo
+ * doc-de/README.func, scripts/w3mhelp-funcdesc.de.pl.in:
+ Update German help messages.
+ Origin: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=765682#47
-2003-04-09 Fumitoshi UKAI <ukai@debian.or.jp>
+2016-06-19 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev 03865] Re: configure --help
- * acinclude.m4 (AC_W3M_ANSI_COLOR): depends USE_COLOR
- (AC_W3M_BG_COLOR): depends USE_COLOR
- (AC_W3M_W3MMAILER): depends external_uri_loader
- * fm.h: undef USE_BG_COLOR ifndef USE_COLOR
+ * doc-de/README.func, scripts/w3mhelp-funcdesc.de.pl.in:
+ Convert German help messages to UTF-8.
-2003-04-09 Fumitoshi UKAI <ukai@debian.or.jp>
+ * main.c: Update description of SOURCE and VIEW.
- * [w3m-dev 03864] doc/README
- * doc/README doc-jp/README: update
+2016-06-19 Markus Hiereth <post@hiereth.de>
-2003-04-09 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+ * doc-de/README.func, doc/README.func:
+ Update description of SOURCE and VIEW.
+ Origin: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=765682#37
- * [w3m] local cookie string is too easy to guess.
- * fm.h (Local_cookie): deleted
- * local.c (Local_cookie): static
- (writeLocalCookie): localCookie()
- (setLocalCookie): deleted
- (localCookie): added
- * main.c (main): delete srand48(), setLocalCookie()
- (adBmark): s/Local_cookie/localCookie()/
- * proto.h (setLocalCookie): deleted
- (localCookie): added
- * rc.c (load_option_panel): s/Local_cookie/localCookie()/
+2016-06-19 Tatsuya Kinoshita <tats@debian.org>
-2003-04-08 Fumitoshi UKAI <ukai@debian.or.jp>
+ * NEWS: Update NEWS.
- * [w3m-dev 03858] configure cleanup
- * acinclude.m4 configure.in: update
+ * doc-de/README.func: Update German messages.
-2003-04-08 Fumitoshi UKAI <ukai@debian.or.jp>
+ * doc/README.func, main.c, menu.c: Update English messages.
- * [w3m-dev 03856] <gc.h>
- * backend.c entity.c fm.h hash.c indep.c indep.h matrix.c
- textlist.c: s/"gc.h"/<gc.h>/
+ * doc-jp/README.func, scripts/w3mhelp-funcdesc.ja.pl.in:
+ Update Japanese help messages.
-2003-04-08 ABE Yuji <cbo46560@pop12.odn.ne.jp>
+2016-06-19 Markus Hiereth <post@hiereth.de>
- * [w3m-dev 03849] fix no INET6
- * ftp.c: no need ifdef INET6
+ * doc-de/README.func, scripts/w3mhelp-funcdesc.de.pl.in:
+ Update German help messages.
+ Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=765682
-2003-04-08 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+ * doc/README.func, scripts/w3mhelp-funcdesc.en.pl.in:
+ * scripts/w3mhelp.cgi.in: Update English help messages.
- * [w3m-dev 03846] fix use_history
- * main.c (main): move loadHistory
+2016-05-11 Tatsuya Kinoshita <tats@debian.org>
-2003-04-08 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+ * config.guess, config.sub:
+ Update config.* with autotools-dev 20160430.1.
- * [w3m-dev 03844] w3mhelp.cgi update
- * scripts/w3mhelp-funcdesc.en.pl.in: add %menu_funcdesc
- * scripts/w3mhelp-funcdesc.ja.pl.in: add %menu_funcdesc
- update %title
- * scripts/w3mhelp-funcname.pl.in: add %menu_funcname
- add %menu_keyfunc
- * scripts/w3mhelp.cgi.in: modified for menu
- link to keymap
+2016-04-14 Tatsuya Kinoshita <tats@debian.org>
-2003-04-07 Fumitoshi UKAI <ukai@debian.or.jp>
+ * doc-de/README.func, doc-jp/README.func, doc/README.func:
+ * w3m-doc/sample/keymap.cgi: Cleanup obsolete INIT_MAILCAP.
+ Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=820902
- * [w3m-dev 03843] cleanup macros
- * config.h.dist config.h.in etc.c file.c fm.h ftp.c linein.c
- main.c rc.c:
- delete EMACS_LIKE_LINEEDIT, VI_PREC_NUM, LABEL_TOPLINE,
- NEXTPAGE_TOPLINE, FTPPASS_HOSTNAMEGEN
- use_mark default FALSE
- emacs_like_lineedit default FALSE
- vi_prec_num default FALSE
- add UseHistory, use_history
- * NEWS: rc: use_history
+ * NEWS: Update NEWS.
-2003-04-05 ABE Yuji <cbo46560@pop12.odn.ne.jp>
+2016-04-08 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev 03838] W3M_LIBS splitted from LIBS
- * Makefile.in (W3M_LIBS): added
- * acinclude.m4 (AC_W3M_TERMLIB): use W3M_LIB
- (AC_W3M_SSL): ditto
- * configure.in (W3M_LIBS): added
+ * libwc/johab.c: Fix segfault on bogus text for wc_N_to_johab1.
+ Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=820373
-2003-04-04 Hiroyuki Ito <hito@crl.go.jp>
+2016-04-07 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev 03837] Re: gif animation with no delay_time
- * w3mimg/fb/fb_gdkpixbuf.c (get_animation_size): add delay
- check delay_time
- (get_image_size): no need delay time
- (fb_image_load): check delay
- (draw): no bg
- * w3mimg/fb/fb_w3mimg.c (w3mfb_show_image): delete delay skip loop
- * w3mimg/x11/x11_w3mimg.c (get_animation_size): add delay
- check delay_time
- (x11_load_image): check delay
- (x11_get_image_size): no need delay time
+ * libwc/map/big5_ucs.map, libwc/map/cns11643_ucs.map:
+ * libwc/map/gb12345_ucs.map, libwc/map/gb2312_ucs.map:
+ * libwc/map/gbk_ucs.map, libwc/map/hkscs_ucs.map:
+ * libwc/map/jisx0208x0212x0213_ucs.map, libwc/map/ksx1001_ucs.map:
+ * libwc/map/sjis_ext_ucs.map, libwc/map/uhc_ucs.map, libwc/ucs.c:
+ * libwc/ucs.map: Fix segfault on bogus text for wc_any_to_ucs.
+ Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=820162
-2003-03-28 Dai Sato <satodai@dog.intcul.tohoku.ac.jp>
+2016-04-03 Tatsuya Kinoshita <tats@debian.org>
- * doc(-jp)/keymap.default: ';' is quoted
+ * doc/FAQ.html, doc/MANUAL.html: Update English documents.
-2003-03-28 Dai Sato <satodai@dog.intcul.tohoku.ac.jp>
+2016-04-03 Markus Hiereth <markus.hiereth@freenet.de>
- * Makefile.in: distclean removes core
+ * doc/FAQ.html, doc/MANUAL.html: Update English documents.
+ Origin: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=772341#25
-2003-03-28 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+2016-04-02 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev 03836] CFLAGS for SSL in configure
- * acinclude.m4 (AC_W3M_SSL): add -I$dir/include to CFLAGS
+ * configure, configure.ac, doc-de/README.func, scripts/Makefile.in:
+ * scripts/w3mhelp-funcdesc.de.pl.in, scripts/w3mhelp.cgi.in:
+ Support German translated help messages (translation is in progress).
+ Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=765682
-2003-03-28 ABE Yuji <cbo46560@pop12.odn.ne.jp>
+ * doc-jp/w3m.1, doc/w3m.1: Update manpage footers to w3m 0.5.3.
- * [w3m-dev 03834] Re: gif animation with no delay_time
- * w3mimg/x11/x11_w3mimg.c (x11_load_image): fix delay check
+ * doc-jp/MANUAL.html, doc-jp/w3m.1, w3m-doc/outline.html.in:
+ * w3mhelp-lynx_ja.html.in, w3mhelp-w3m_ja.html.in:
+ Update Japanese documents for extbrowser4..9.
-2003-03-27 ABE Yuji <cbo46560@pop12.odn.ne.jp>
+2016-04-02 Justin B Rye <justin.byam.rye@gmail.com>
- * [w3m-dev 03833] gif animation with no delay_time
- * w3mimg/fb/fb_w3mimg.c (w3mfb_show_image): skip delay<=0
- * w3mimg/x11/x11_w3mimg.c (x11_image): add delay
- (x11_img_new): initialize delay
- (x11_load_image): initialize delay
- (x11_show_image): jump to last image if delay<=0
+ * doc/FAQ.html, doc/MANUAL.html, doc/README.func, doc/menu.submenu:
+ * main.c, menu.c, scripts/w3mhelp-funcdesc.ja.pl.in:
+ * scripts/w3mhelp.cgi.in, w3mhelp-lynx_en.html.in:
+ * w3mhelp-w3m_en.html.in: English fixes.
+ cf. https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=772341#15
+ Origin: https://lists.debian.org/debian-l10n-english/2014/12/msg00002.html
+ Origin: https://lists.debian.org/debian-l10n-english/2014/12/msg00030.html
+ Origin: https://lists.debian.org/debian-l10n-english/2015/02/msg00011.html
-2003-03-27 WATANABE Katsuyuki <knabe@sannet.ne.jp>
+2016-03-30 Leo Famulari <leo@famulari.name>
- * [w3m-dev 03831] fix typo
- * acinclude.m4 (AC_W3M_LANG): SYSTEM_CODE
- * configure.in: fix typo CYGIN
+ * url.c: Disable RC4.
+ Origin: http://git.savannah.gnu.org/cgit/guix.git/commit/?id=62339e2d493bf87a3aabe12e45458581e9705d83
-2003-03-27 Hiroyuki Ito <hito@crl.go.jp>
+2016-03-29 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev 03830] Image size of gif animation
- * w3mimg/fb/fb_gdkpixbuf.c (get_animation_size): added
- (get_image_size): use get_animation_size()
- (fb_image_load): ditto
- * w3mimg/x11/x11_w3mimg.c (get_animation_size): added
- (x11_load_image): use get_animation_size()
- (x11_get_image_size): ditto
+ * url.c: Fix variable is reassigned a value before the old one has
+ been used.
-2003-03-25 Hiroyuki Ito <hito@crl.go.jp>
+ * regex.c: Fix printf format specifier mismatch when REGEX_DEBUG.
- * [w3m-dev 03829] w3mimgdisplay -anim
- * w3mimgdisplay.c (maxAnim): added, default 100
- (main): add --anim option, w_op->max_anim
- * w3mimg/w3mimg.h (w3mimg_op): add max_anim
- * w3mimg/fb/fb_gdkpixbuf.c (fb_image_load): add max_anim
- * w3mimg/fb/fb_img.h (fb_image_load): add max_anim args
- * w3mimg/fb/fb_imlib2.c (fb_image_load): add max_anim args
- * w3mimg/fb/fb_w3mimg.c (w3mfb_load_image): pass max_anim
- * w3mimg/x11/x11_w3mimg.c (x11_load_image): max_anim
+ * w3mimg/fb/fb.c: Fix invalid braces when not Linux or FreeBSD.
-2003-03-24 Daiki Ueno <ueno@unixuser.org>
+ * local.c: Fix uninitialized variable when not HAVE_PUTENV.
- * [w3m-dev 03828] possible typo in nextA
- * main.c (nextA): fix typo?
+ * w3mimgdisplay.c: Fix realloc mistake for DrawImage.
-2003-03-22 Fumitoshi UKAI <ukai@debian.or.jp>
+ * file.c: Fix mistake of unescape spaces for _doFileCopy.
+ cf. [w3m-dev-en 00751], [w3m-dev-en 00752] on 2002-06-09
- * [w3m-dev 03827] Re: checking for GC_version... no
- * configure.in: add dl for extlibs
+ * url.c: Fix style of array index is used before limits check.
+ Bug: https://sourceforge.net/p/w3m/feature-requests/25/
-2003-03-20 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+2016-03-22 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev 03825] re-anchor for fold line
- * anchor.c (reAnchorPos): fix for fold line
+ * menu.c, proto.h: Fix build failure when not USE_MOUSE for sgrmouse.
+ cf. https://twitter.com/naota344/status/711541592167854081
-2003-03-20 Fumitoshi UKAI <ukai@debian.or.jp>
+2016-03-20 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev-en 00910] Re: autoconf: env MAKE not respected
- * Makefile.in (SET_MAKE): added
- (SHELL): added
+ * rc.c: Fix reverse ordered config parameters.
-2003-03-19 Fumitoshi UKAI <ukai@debian.or.jp>
+2016-03-19 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev-en 00908] Re: autoconf: --without-migemo is a nop
- * acinclude.m4 (AC_W3M_MIGEMO): dont define USE_MIGEMO
- when with_migemo=no
+ * doc/FAQ.html: Update FAQ for extbrowser.
-2003-03-14 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+2016-03-14 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev 03823] Re: etc.c: treatment for "%7E" is added to expandName()
- * url.c (parseURL2): file unquote
- * etc.c (expandName): revert previous changes
+ * po/de.po, po/ja.po, po/w3m.pot, po/zh_CN.po, po/zh_TW.po, rc.c:
+ Update PO strings for extbrowser2..9.
-2003-03-14 Fumitoshi UKAI <ukai@debian.or.jp>
+2016-03-13 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev 03822] Re: etc.c: treatment for "%7E" is added to expandName()
- * etc.c (expandName): rewrite with strncasecmp
+ * acinclude.m4, configure:
+ Set firefox instead of mozilla to default browser.
-2003-03-14 Fumitoshi UKAI <ukai@debian.or.jp>
+ * po/Makefile.in.in, po/de.po, po/ja.po, po/w3m.pot, po/zh_CN.po:
+ * po/zh_TW.po: Update PO strings for extbrowser4..9.
- * [w3m-dev 03821] fix for pmake
- * Makefile.in: use $(srcdir)/... instead of $<
+ * doc-jp/MANUAL.html, doc/MANUAL.html, fm.h, main.c, rc.c:
+ Add extbrowser4, extbrowser5, ..., and extbrowser9.
+ e.g.
+ - extbrowser8 url=%s && printf %s "$url" | xsel && printf %s "$url" | xsel -b &
+ - extbrowser9 mpv %s &
+ cf. https://github.com/spcmd/w3m
-2003-03-13 Dai Sato <satodai@dog.intcul.tohoku.ac.jp>
+2016-02-28 Tatsuya Kinoshita <tats@debian.org>
- * etc.c: treatment for "%7E" is added to expandName()
+ * menu.c: Fix SIGFPE for ACCESSKEY.
+ Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=779092
-2003-03-13 Fumitoshi UKAI <ukai@debian.or.jp>
+ * doc/README.func, main.c: Typo fix for ACCESSKEY.
+ cf. https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=779092#5
- * [w3m-dev 03819] support cd build && ../configure
- * Makefile.in: add VPATH
- add MV
- use $(top_srcdir), $<, $@
- * acinclude.m4 (AC_W3M_VERSION): use $srcdir
- * configure.in (AC_W3M_VERSION): move
- * mktable.c (main): basename
+2015-12-20 Franz Thoma <franz.thoma@tngtech.com>
-2003-03-13 Fumitoshi UKAI <ukai@debian.or.jp>
+ * w3mimg/x11/x11_w3mimg.c: Fix semi-transparent artifacts in w3m-img
+ when used with 32-bit color (e.g. urxvt).
+ imlib_render_image_on_drawable_at_size() tended to leave nasty
+ semi-transparent artifacts in 32-bit mode. Apparently, resizing an
+ image in 32-bit mode affects the alpha channel even if there is no
+ transparency in the image. With this patch, resizing is done in
+ 24-bit mode (or whatever depth the original image has) before
+ converting the image to 32-bit and rendering it on the display.
+ Origin: https://gist.github.com/fmthoma/f76a1b44e00d5ca972bb
+ cf. https://github.com/hut/ranger/issues/86#issuecomment-166027119
- * Makefile.in (distclean): added
+2015-12-17 Tatsuya Kinoshita <tats@debian.org>
-2003-03-13 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+ * w3mimg/x11/x11_w3mimg.c:
+ Wrap render_pixbuf_to_pixmap_32() in USE_GTK2.
- * [w3m-dev 03818] fix autoconf
- * Makefile.in (CGIBIN_DIR): added
- (AUXBIN_DIR): added
- (HELP_DIR): added
- (RC_DIR): added
- (MAKE_ARGS): added
- (TARGET): use $(package)
- (MAN1_TARGET): ditto
- (install): use $(*_DIR)
- * acinclude.m4 (AC_W3M_TERMLIB): added
- (AC_W3M_GC): default search prefix /usr /usr/local $HOME
- fix searches
- (AC_W3M_SSL): fix bugs
- * config.h (RC_DIR): remove tailing /
- (SYS_MAILCAP): use ETC_DIR
- (SYS_MIMETYPES): ditto
- (USER_MIMETYPES): homedir
- * configure.in: quote
- (AC_W3M_TERMLIB): use
- * Bonus/oldconfigure.sh: rewrite
-
-2003-03-12 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 03816] --enable-lynx => --enable-keymap=lynx
- * acinclude.m4 (AC_W3M_KEYMAP): --enable-lynx => --enable-keymap=lynx
- * Bonus/oldconfigure.sh: ditto
-
-2003-03-12 Yuji Abe <cbo46560@pop12.odn.ne.jp>
-
- * [w3m-dev 03814] fix autoconf
- * acinclude.m4: quote variables
- * Bonus/oldconfigure.sh: configure using old config.param
-
-2003-03-12 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03812] fix autoconf
- * acinclude.m4 (AC_W3M_IMAGE): default is autodetect x11,fb
-
-2003-03-12 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03810] fix autoconf
- * acinclude.m4 (AC_W3M_EXTLIBS): use $dir
- (AC_W3M_GC): PREFIX is optional
- (AC_W3M_SSL): PREFIX is optional
- with_ssl=yes, check usual dirs
- use $dir
- (AC_W3M_IPv6): use $dir
-
-2003-03-12 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03809] fix autoconf
- * acinclude.m4 (AC_W3M_CHECK_VER): accept version like "1.9.13-2"
-
-2003-03-12 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03808] fix autoconf
- * acinclude.m4 (AC_W3M_GC): --with-gc takes PREFIX
- check include first
- (AC_W3M_CHECK_VER): show checking message
- (AC_W3M_IMAGE): if gdkpixbuf found, don't check imlib*
-
-2003-03-11 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * Makefile.in (MODEL): delete @W3M_TARGET@
- * configure.in: AC_SUBST(W3M_TARGET)
-
-2003-03-11 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * which: deleted
- * makeallmomdel: deleted
-
-2003-03-11 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 03804] fix autoconf
- * acinclude.m4 (AC_W3M_MENU): default enabled
- (AC_W3M_MOUSE): default enabled
- (AC_W3M_COOKIE): default enabled
- (AC_W3M_LANG): can't detect locale here.
- autoconf set LANG=C
- (AC_W3M_DIGEST_AUTH): default enabled
- (AC_W3M_SSL): default enabled
- * configure.in (AC_W3M_DIGEST_AUTH): added
-
-2003-03-11 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 03804] fix autoconf
- * config.h.in (EAMCS_LIKE_LINEEDIT): define
- (VI_PREC_NUM): define
- (USE_MARK): define
- (LABEL_TOPLINE): define
- (NEXTPAGE_TOPLINE): define
- (FTPPASS_HOSTNAMEGEN): define
- (SHOW_PARAMS): define
- (VIEW_UNSEENOBJECTS): define
- (ID_EXT): define
-
-2003-03-11 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 03804] fix autoconf
- * acinclude.m4 (AC_W3M_MODEL): deleted
- (AC_W3M_COLOR): default enable
- (AC_W3M_ANSI_COLOR): default enable
- (AC_W3M_BG_COLOR): default enable
- (AC_W3M_SHOW_PARAMS): deleted
- (AC_W3M_DICT): default enable
- (AC_W3M_HISTORY): default enable
- (AC_W3M_VIEW_UNSEENOBJECTS): deleted
- (AC_W3M_FORMAT_NICE): deleted
- (AC_W3M_ID_EXT): deleted
- (AC_W3M_FTPPASS_HOSTNAMEGEN): deleted
- (AC_W3M_NNTP): default enabled
- (AC_W3M_LANG): autodetect whether japanese is enabled
- (AC_W3M_KANJI_SYMBOLS): default enabled
- (AC_W3M_EMACS_LIKE_LINEEDIT): deleted
- (AC_W3M_VI_PREC_NUM): deleted
- (AC_W3M_MARK): deleted
- (AC_W3M_LABEL_TOPLINE): deleted
- (AC_W3M_NEXTPAGE_TOPLINE): deleted
- (AC_W3M_SSL): fix without ssl
- (AC_W3M_IMAGE): default enabled
- (AC_W3M_XFACE): check uncompface
- (AC_W3M_IPv6): enable_ipv6 if inet6 lib found
- * configure.in (AC_PROG_CPP): added
-
-2003-03-11 Yuji Abe <cbo46560@pop12.odn.ne.jp>
-
- * [w3m-dev 03803] fix autoconf
- * acinclude.m4 (AC_W3M_MIGEMO): add missing test
- needs quote
- (AC_W3M_SSL): delete x
-
-2003-03-11 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03802] fix autoconf
- * acinclude.m4 (AC_W3M_CHECK_VER): warn only
-
-2003-03-11 Yuji Abe <cbo46560@pop12.odn.ne.jp>
-
- * [w3m-dev 03801] fix autoconf
- * acinclude.m4 (AC_W3M_BG_COLOR): fix typo
- (AC_W3M_KANJI_SYMBOLS): check enable_japanese != 'no'
- (AC_W3M_KEYMAP): needs {}
- (AC_W3M_EXTLIBS): don't modify libdir, use extlibdir
- (AC_W3M_SSL): missing x
- (AC_W3M_IMAGE): add AC_DEFINE(USE_IMAGE)
- * config.h.in: s/USE_KANJI_SYMBOLS/KANJI_SYMBOLS/
- add SIZEOF_LONG_LONG
- don't use //, use /* */
- * configure.in: add AC_CHECK_SIZEOF(long long, 0)
-
-2003-03-10 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * autoconfiscate
- * Makefile.in: added
- * acinclude.m4: added
- * aclocal.m4: added (generated from acinclude.m4 by aclocal)
- * configure.in: added
- * config.h.in: added
- * config.guess: added
- * config.sub: added
- * .cvsignore: add Makefile config.cache config.log config.status
- * configure: generated by autoconf
- * gc/: deleted
- * XMakefile: deleted
- * XXMakefile: deleted
- * NEWS: autoconficate
-
-2003-03-10 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * version.c.in: cvs version
-
-2003-03-07 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * w3m 0.4.1
- * version.c.in: update
- * doc/README: version 0.4.1, release date
- * doc-jp/README: ditto
- * NEWS: update
-
-2003-03-06 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03794] displayBuffer() when CurrentTab == NULL.
- * display.c (displayBuffer): check buf
- * linein.c (inputLineHistSearch): check CurrentTab
- (next_dcompl): check CurrentTab
- (_editor): check CurrentTab
- * main.c (resize_screen): check CurrentTab
-
-2003-03-06 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 03793] incremental search fix
- * main.c (dispincsrch): revert sbuf.pos fix
- start from next position in next forward search
- (srch): start from next position in forward saerch
- if not found, restore original position
- (srch_nxtprv): start from next position in next forward search
- * search.c (forwardSearch): search from current position
-
-2003-03-06 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 03792] URL match string
- incremental search fix
- * main.c (chkURLBuffer): allow - at end of URL string
- (dispincsrch): start from current position in case of
- incremental search
- * search.c (forwardSearch): found if same position
- (backwardSearch): ditto
+2015-12-17 Araki Ken <arakiken@users.sf.net>
-2003-03-03 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+ * w3mimg/x11/x11_w3mimg.c:
+ w3mimgdisplay supports 32 bit depth screen. (e.g. gnome-terminal)
+ Origin: https://bitbucket.org/arakiken/w3m/commits/f9c22db8cfd1aaba9bb7301ef9ba51ed88d8bb40
- * [w3m-dev 03788] UFhalfclose
- * file.c (UFhalfclose): closeNews() for SCM_NEWS,NNTP
+2015-12-17 Tatsuya Kinoshita <tats@debian.org>
-2003-02-28 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+ * w3mimg/x11/x11_w3mimg.c:
+ Revert "Fix handling visuals and colormaps incorrectly".
+ This reverts commit e24b4064daf3e022e370788a8c7267db40c37dda.
- * [w3m-dev 03783] pipe to "command1 | command2"
- * Bonus/utf8.cgi: added
+2015-11-19 Tatsuya Kinoshita <tats@debian.org>
-2003-02-27 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+ * fm.h: Accept cookies by default.
- * [w3m-dev 03784] ftp directory support
- * ftp.c (AbortLoading): added
- (KeyAbort): added
- (openFTPStream): remove '~' in realpathname?
- (loadFTPDir): remove '~' in realpathname?
- keyabort
- new ex_ftpdir_name_size_date()
- add symlink information to flist
- (XD_CTOD): deleted
- (EX_COUNT_DIGIT): added
- (ex_ftpdir_name_size_date): add **link
- accept device file
- loose date check for localized server
+ * fm.h: Set argv_is_url to 1 by default.
+ Bug-Arch: https://bugs.archlinux.org/task/47102
-2003-02-27 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+2015-11-18 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev 03783] pipe to "command1 | command2"
- * etc.c (myExtCommand): redirect to subshell
- * main.c (pipeBuf): conv_to_system(cmd)
- shell_quote()
- set buf->filename, buf->buffername
+ * config.guess, config.sub:
+ Update config.* with autotools-dev 20150820.1.
-2003-02-26 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+2015-11-11 Mingye Wang (Arthur2e5) <arthur200126@gmail.com>
- * [w3m-dev 03782] real linenumber for EDIT and EDIT_SCREEN
- * main.c (cur_real_linenumber): added
- (editBf): use cur_real_linenumber instead of CUR_LINENUMBER
- (editScr): ditto
+ * po/LINGUAS, po/zh_CN.po, po/zh_TW.po:
+ Add zh_CN and zh_TW translations.
+ Please note that the zh_TW translation is machine-converted using
+ OpenCC from zh_CN, and needs to be further polished by actual zh_TW
+ speakers.
+ Origin: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=804732#10
-2003-02-26 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+2015-10-24 BwackNinja <BwackNinja@gmail.com>
- * [w3m-dev 03781] Debian Bug report logs - #181897: w3m submits query urls with "extra"
- * main.c (_followForm): remove tailling '?'
+ * w3mimg/x11/x11_w3mimg.c:
+ Fix handling visuals and colormaps incorrectly.
+ cf. https://github.com/hut/ranger/issues/86
+ Origin: https://gist.github.com/BwackNinja/60a344730170f9ce2163
+ Bug-Arch: https://bugs.archlinux.org/task/46836
+ Bug: https://sourceforge.net/p/w3m/patches/72/
-2003-02-25 Hironori SAKAMOTO <h-saka@lsi.nec.co.jp>
+2015-10-10 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev-en 00891] Re: w3m 0.4 has been released!
- * image.c (getCharSize): set W3M_TTY here, before Imgdisplay invoke
- (openImgdisplay): no need setting W3M_TTY here
+ * cookie.c: Remove incomplete special_domain tests.
+ Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=385702
-2003-02-25 Fumitoshi UKAI <ukai@debian.or.jp>
+2015-10-04 Gaetan Bisson <bisson@archlinux.org>
- * version.c.in: cvs version
+ * scripts/w3mhelp.cgi.in: Do not use defined(%hash).
+ Origin: https://projects.archlinux.org/svntogit/packages.git/commit/trunk?h=packages/w3m&id=d9e0a4f0b461c9e2177cd9e64a10581386650503
+ Bug-Arch: https://bugs.archlinux.org/task/45608
-2003-02-24 Fumitoshi UKAI <ukai@debian.or.jp>
+2015-09-06 Tatsuya Kinoshita <tats@debian.org>
- * w3m 0.4
- * version.c.in: update
- * doc/README: version 0.4, release date
- * doc-jp/README: ditto
- * NEWS: update
+ * file.c: Do not use C99-style comments.
-2003-02-24 patakuti@t3.rim.or.jp
+2015-09-06 David Crosby <dave@dafyddcrosby.com>
- * [w3m-dev 03772] Compilation error on Cygwin B20.1
- * terms.c (term_title): use Sprintf() instead of snprintf()
- * doc-jp/README.cygwin doc/README.cygwin: add note about B20.1
+ * file.c: Mitigate issue #16 found by @kcwu.
+ * table.c: Fix stack overflow found by @kcwu.
+ Origin: https://github.com/dafyddcrosby/sw3m
+ Bug-sw3m: https://github.com/dafyddcrosby/sw3m/issues/16
-2003-02-21 WATANABE Katsuyuki <knabe@sannet.ne.jp>
+2015-08-21 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev 03765] Re: README.cygwin
- * doc/README.cygwin: translated
+ * doc-jp/keymap.lynx, doc/keymap.lynx: Fix unknown key.
+ Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/w3m/+bug/265144
+ Bug: https://sourceforge.net/p/w3m/bugs/48/
-2003-02-21 Fumitoshi UKAI <ukai@debian.or.jp>
+2015-08-11 David Crosby <dave@dafyddcrosby.com>
- * doc/README: update
+ Fix resource leaks, dead assignments, divide-by-zero, and so on.
+ Origin: https://github.com/dafyddcrosby/sw3m
-2003-02-21 Dai Sato <satodai@dog.intcul.tohoku.ac.jp>
+ * buffer.c: Check for presence of prevl before using.
- * [w3m-dev 03762] Re: README.cygwin
- * doc/README.cygwin: translated
+ * html.h: Adjust UFclose to remove false positive of CWE-481.
-2003-02-21 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+ * ftp.c: Move sockent for splint.
- * [w3m-dev 03761] eliminate compiler warnings
- * ftp.c (ftp_login): Str tmp
- * table.c (feed_table_tag): p is used ifdef ID_EXT
+ * cookie.c: Use unsigned int for max_count.
-2003-02-21 WATANABE Katsuyuki <knabe@sannet.ne.jp>
+ * libwc/iso2022.c: Add missing comparision that made if always true.
- * [w3m-dev 03760] Re: README.cygwin
- * doc-jp/README: update
+ * Str.c: Use fgetc in while loops, use int instead of char.
-2003-02-19 Fumitoshi UKAI <ukai@debian.or.jp>
+ * mailcap.c: Adjust len to size_t.
- * 0.4 release candidate 3
- * version.c.in: update
+ * history.c: Check return value of rename.
-2003-02-19 Atsushi YOKOYAMA <yoko-a@cmh.fuchu.toshiba.co.jp>
+ * main.c: Adjust while loop.
- * [w3m-dev 03758] Re: SVR4 signal behavior
- * etc.c (reset_signals): use mySignal()
- (setup_child): ditto
- (myExec): ditto
- (mySignal): added, use sigaction if available
- * fm.h (TRAP_ON): use mySignal
- (TRAP_OFF): ditto
- * istream.c (ISclose): ditto
- * main.c (sig_chld): ditto
- (main): ditto
- (do_dump): ditto
- (resize_hook): ditto
- (resize_handler): ditto
- (srchcore): ditto
- (readsh): ditto
- (SigAlarm): ditto
- * proto.h (mySignal): added
- * terms.c (error_dump): use mySignal()
- (set_int): ditto
- (mouse_init): ditto
+ * news.c: Check dup call for errors.
-2003-02-19 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+ * file.c: Remove unused value.
- * [w3m-dev 03753] Fixed multipart.cgi
- * scripts/multipart/multipart.cgi.in: remove w3m-control
- use input hidden
- add form_encode
+ * ftp.c: dup can give a negative value.
-2003-02-18 WATANABE Katsuyuki <knabe@sannet.ne.jp>
+ * main.c: Use int for c.
- * [w3m-dev 03749] README.cygwin
- * doc-jp/README.cygwin: added
- * doc/README: updated
+ * table.c: Initialize new_tabwidth at declaration.
-2003-02-17 Fumitoshi UKAI <ukai@debian.or.jp>
+ * local.c: Remove overflow on readlink.
- * 0.4 release candidate 2
- * version.c.in: update
+ * anchor.c, file.c, istream.c, main.c, menu.c, rc.c, table.c, terms.c:
+ * url.c: Remove dead assignments flagged by Clang static analysis.
-2003-02-13 Fumitoshi UKAI <ukai@debian.or.jp>
+ * w3mbookmark.c:
+ Move fclose to fix dereference after null check (Coverity).
- * [w3m-dev 03742] Re: Bug##180814: w3m: Missing w3mimgdisplay message at startup
- * image.c (getCharSize): stderr redirect to omit /bin/sh error message
+ * file.c: Fix resource leak in AuthDigestCred.
-2003-02-13 Fumitoshi UKAI <ukai@debian.or.jp>
+ * buffer.c: Fix resource leak in readBufferCache.
- * XMakefile (install-core): fix for broken non-POSIX /bin/sh
+ * cookie.c: Fix resource leak in load_cookies.
-2003-02-11 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+ * frame.c: Fix resource leak.
- * [w3m-dev-en 00868] fix mark_all_pages
- * anchor.c (reAnchorAny): next_line process for MarkAllPages
+ * w3mhelperpanel.c: Fix resource leak.
-2003-02-11 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev-en 00867] fix installation problem
- * XMakefile (install-core): test AUXBIN_TARGETS
-
-2003-02-11 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * version.c.in: cvs version
-
-2003-02-11 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * 0.4 release candidate 1
- * version.c.in: update
-
-2003-02-09 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03737] local-CGI POST
- * local.c (localcgi_post): use tmp file
-
-2003-02-08 Hiroyuki Ito <hito@crl.go.jp>
-
- * [w3m-dev 03736] dirlist sort
- * scripts/dirlist.cgi.in (right_dir): use cmp for filename comparison
-
-2003-02-07 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03735] Re: make error of checkType arg
- * etc.c (checkType): delete USE_ANSI_COLOR
- * file.c (addnewline): macro for USE_ANSI_COLOR
- (readHeader): rewrite of USE_ANSI_COLOR
- (HTMLlineproc2body): ditto
- (addnewline2): ditto
- (addnewline): ditto
- (loadBuffer): ditto
- (getNextPage): ditto
- * proto.h (checkType): macro for USE_ANSI_COLOR
-
-2003-02-07 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03733] Re: display decoded URL
- * display.c (make_lastline_link): buf->document_code
-
-2003-02-07 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03732] Re: scroll() is slow ?
- * configure (use_raw_scroll): added
- (config.h) use_raw_scroll
- * config.h.dist (USE_RAW_SCROLL): added
- * display.c (displayBuffer): ifdef USE_RAW_SCROLL
- * proto.h (scroll): ifdef USE_RAW_SCROLL
- (rscroll): ditto
- (need_clrtoeol): if 0
- (terms.c): if 0 need_clrtoeol
- (scroll_raw): ifdef USE_RAW_SCROLL
-
-2003-02-06 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * NEWS: rc: decode_url
-
-2003-02-06 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03730] display decoded URL
- * anchor.c (link_list_panel): support DecodeURL
- * display.c (make_lastline_link): support DecodeURL
- * etc.c (url_unquote_conv): added
- * fm.h (DecodeURL): added
- * history.c (historyBuffer): support DecodeURL
- * indep.c (QUOTE_MAP): added
- (HTML_QUOTE_MAP): added
- (html_quote_char): deleted
- (url_quote): use is_url_quote
- (file_quote): use is_file_quote
- (is_url_safe): deleted
- (Str_form_quote): use is_url_unsafe
- (Str_url_unquote): add safe args
- (is_shell_safe): delete
- (shell_quote): use is_shell_unsafe
- * indep.h (QUOTE_MAP): added
- (HTML_QUOTE_MAP): added
- (HTML_QUOTE_MASK): added
- (SHELL_UNSAFE_MASK): added
- (URL_QUOTE_MASK): added
- (FILE_QUOTE_MASK): added
- (URL_UNSAFE_MASK): added
- (GET_QUOTE_TYPE): added
- (is_html_quote): added
- (is_shell_unsafe): added
- (is_url_quote): added
- (is_file_quote): added
- (is_url_unsafe): added
- (html_quote_char): added
- (html_quote_char): deleted
- (Str_url_unquote): added safe
- (form_unquote): Str_url_unquote changes
- * linein.c (_prev): support DecodeURL
- (_next): ditto
- * main.c (goURL0): support DecodeURL
- (_peekURL): ditto
- (curURL): ditto
- * map.c (follow_map_panel): support DecodeURL
- (append_map_info): ditto
- (append_link_info): ditto
- (append_frame_info): ditto
- (page_info_panel): ditto
- * menu.c (initSelectMenu): delete SCM_LOCAL_CGI
- support DecodeURL
- (initSelTabMenu): delete SCM_LOCAL_CGI
- support DecodeURL
- (link_menu): support DecodeURL
- * parsetagx.c (parse_tag): is_html_quote
- * proto.h (url_unquote_conv): added
- * rc.c (CMT_DECODE_URL): added
- (params1): add decode_url
- * url.c (openURL): Str_url_unquote non safe
-
-2003-02-06 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03729] buf fix of reAnchorNewsheader()
- * anchor.c (reAnchorAny): check l->bpos
- (reAnchorNewsheader): check l->bpos
- strlen(*q)
- lineBuf[l->size]
-
-2003-02-06 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03728] IPv6 hostname
- * url.c (parseURL): rewrite IPv6 address parser
-
-2003-02-04 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03724] Re: view source, edit source
- * buffer.c (reshapeBuffer): initialize buf->width first
- * display.c (displayBuffer): no need to check buf>sourcefile
-
-2003-02-01 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03721] PATH_INFO support of local CGI
- * local.c (CGIFN_DROOT): deleted
- (CGIFN_LIBDIR): added
- (CGIFN_MODE): deleted
- (CGIFN_CONTAIN_SLASH): deleted
- (check_local_cgi): rewrite
- (cgi_filename): rewrite
- (localcgi_post): support PATH_INFO
- * url.c (openURL): rewrite
- * Bonus/smb.cgi: use PATH_INFO
-
-2003-02-01 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03720] mark remains
- * main.c (srchcore): PREC_NUM
-
-2003-01-31 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03719] Re: Too slow when loading big file with fold_line=1
- * file.c (addnewline): check i <l->len
-
-2003-01-31 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03718] Too slow when loading big file with fold_line=1
- * etc.c (nextColumn): added
- (calcPosition): use New_N
- rewrite with nextColumn
- (columnLen): added
- * file.c (addnewline): rewrite with columnLen
- * proto.h (columnLen): added
-
-2003-01-31 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03717] print newline before exec shell command.
- * main.c (execsh): print newline
-
-2003-01-31 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03715] initial currentLine when pager mode.
- * file.c (getNextPage): fix cur
-
-2003-01-31 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03714] -cols 1 -dump -o fold_line=1
- * file.c (addnewline): check i == 0, i == l->len
- * fm.h (_INIT_BUFFER_WIDTH): added
- (INIT_BUFFER_WIDTH): use _INIT_BUFFER_WIDTH
-
-2003-01-31 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03713] search with "$"
- * search.c (forwardSearch): check l->next && l->next->bpos
- (backwardSearch): check l->size, l->next && l->next->bpos
-
-2003-01-31 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03712] buf fix of LINE_INFO
- * main.c (curlno): rewrite
-
-2003-01-30 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03709] Re: view source, edit source
- * display.c (displayBuffer): INIT_BUFFER_WIDTH
- * file.c (_saveBuffer): added
- (saveBuffer): use _saveBuffer
- (saveBufferBody): added
- * main.c (vmSrc): saveBufferBody
- * proto.h (saveBufferBody): added
-
-2003-01-30 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+ * w3mbookmark.c: Fix resource leak and a null return value dereference.
- * [w3m-dev-en 00852] Re: Enhancement: content type detection of files
- * url.c (DefaultGuess): remove upppercases
- (guessContentTypeFromTable): rewrite, strcasecmp
+ * linein.c: Fix a divide-by-zero.
-2003-01-30 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+ * cookie.c: Change total_dot_number to unsigned int.
- * [w3m-dev 03708] Re: Don't stop loading image when moving to next page.
- * config.h.dist (lstat): define ifndef HAVE_LSTAT
- * configure (config.h) ditto
- * display.c (fmTerm): new loadImage
- (save_current_buf): only ifdef USE_BUFINFO
- (displayBuffer): new loadImage
- * etc.c (setup_child): TrapSignal
- * file.c (loadGeneralFile): TRAP_OFF, TRAP_ON
- (loadHTMLstream): ditto
- (loadGopherDir): ditto
- (loadBuffer): ditto
- (loadImageBuffer): ditto
- (getNextPage): ditto
- (save2tmp): ditto
- * fm.h (TrapSignal): added
- (TRAP_ON): added
- (TRAP_OFF): added
- * form.c (HAVE_LSTAT): deleted
- * frame.c (createFrameFile): TRAP_OFF, TRAP_ON
- * image.c (image_buffer): added
- (deleteImage): new loadImage
- (getAllImage): initialize image_buffer
- (loadImage): rewrite
- * main.c (main): new loadImage
- (checkDownloadList): remove ifdef HAVE_LSTAT
- * news.c (loadNwesgroup): TRAP_ON, TRAP_OFF
- * proto.h (loadImage): add buf arg
- * url.c (openSocket): TRAP_ON, TRAP_OFF
- (check_no_proxy): TRAP_ON, TRAP_OFF
-
-2003-01-29 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03707] Don't stop loading image when moving to next page.
- * display.c (save_current_buf): required when defined USE_IMAGE
- (displayBuffer): stop only buffer changed
- * image.c (loadImage): IMG_FLAG_START load from maxLoadImage
-
-2003-01-29 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03706] X-Image-URL: support, bug fix of reshapeBuffer()
- * buffer.c (reshapeBuffer): rewrite
- * file.c (readHeader): rewrite
-
-2003-01-29 NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>
-
- * [w3m-dev 03705] goodict.cgi (was: Re: google.cgi (was: Re: keymap key SEARCH string))
- * Bonus/goodict.cgi: added
-
-2003-01-29 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03700] Re: google.cgi (was: Re: keymap key SEARCH string)
- * main.c (goURL0): check relative or *url == '#'
-
-2003-01-28 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03689] Re: fold patch
- * fm.h (BufferPos): add bpos
- * main.c (save_buffer_position): bpos initialize
- (resetPos): reset bpos
-
-2003-01-26 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03686] Re: fold patch
- * buffer.c (writeBufferCache): rewrite
- (readBufferCache): rewrite
- * etc.c (calcPosition): short -> int realColumn
- * fm.h (Line): short -> int len,width,size,bpos,bwidth
- (BufferPoint): short->int pos
- (Buffer): short->int currentColumn,pos,visualpos
- (BufferPos): short->int currentColumn,pos
- * frame.h (frameset_queue): short->int pos,currentColumn
- * main.c (clear_mark): short->int pos
- (dispincsrch): short->int pos
- (backBf): short->int pos
- (set_buffer_environ): short->int prev_pos
-
-2003-01-25 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03684] Re: fold patch
- * file.c (PSIZE): added
- (HTMLlineproc2body): outc,outp is created by NewAtom_N
- use PSIZE
-
-2003-01-25 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * file.c (getNextPage): no need volatile for code
-
-2003-01-25 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03683] interrupt in getNextPage()
- * file.c (getNextPage): trap SIGINT
-
-2003-01-25 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03682] open null file on tab
- * display.c (displayBuffer): if empty, clear()
-
-2003-01-25 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03681] Re: fold patch
- * buffer.c (reshapeBuffer): buf->pos, sbuf.currentLine fix
- FoldLine
- * display.c (arrangeCursor): buf->pos fix
- (restorePosition): buf->pos fix
-
-2003-01-24 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * NEWS: func: RESHAPE
- rc: fold_line
-
-2003-01-24 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * fix compiler warnings
- * display.c (displayBuffer): fix suggest parentheses around && within ||
-2003-01-24 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03667] fold patch
- * anchor.c (reAnchorPos): rewrite
- (reAnchorWord): delete reseq_anchor()
- (reAnchorAny): use l->size
- delete reseq_anchor()
- * backend.c (internal_get): pass TRUE to saveBuffer
- * buffer.c (newBuffer): delete n->linelen
- (reshapeBuffer): rewrite
- * display.c (displayBuffer): FoldLine
- (redrawLine): l->bpos
- (cursorUp0): added
- (cursorUp): rewrite
- (cursorDown0): added
- (cursowDown): rewrite
- (cursorRight): check l->next
- l->bwidth
- (cursorLeft): l->prev && l->bpos
- l->bwidth
- (arrangeCursor): buf->currentLine->bwidth
- buf->cursorX
- * etc.c (checkType): **oporp
- rewrite
- (calcPosition): realColumn allocated by New_reuse
- * file.c (addnewline): add nlines arg
- (propBuffer): deleted
- (colorBuffer): deleted
- (readHeader): propBuffer
- FOLD_BUFFER_WIDTH
- (HTMLlineproc2body): rewrite
- (addnewline2): added
- (addnewline): rewrite
- (loadBuffer): propBuffer, colorBuffer
- (saveBuffer): cont arg
- (getNextPage): rewrite
- * fm.h (LINELEN): 256
- (FNLEN): deleted
- (Line): add size, bpos, bwidth
- (Buffer): delete linelen
- (INIT_BUFFER_WIDTH): check showLineNum
- (FOLD_BUFFER_WIDTH): added
- (FoldLine): added
- * funcname.tab (RESHAPE): added
- * main.c (do_dump): pass FALSE to saveBuffer
- (nscroll): rewrite
- (clear_mark): l->size
- (shiftvisualpos): rewrite
- (pipeBuf): pass TRUE to saveBuffer
- (linebeg): check line->prev && line->bpos
- (linend): check line->next, line->next->bpos
- (editScr): pass TRUE to saveBuffer
- (svBuf): pass TRUE to saveBuffer
- (vmSrc): pass TRUE to saveBuffer
- (reshape): added
- (curlno): rewrite
- * mimehead.c (LINELEN): deleted
- * proto.h (reshape): added
- (saveBuffer): add cont arg
- (cursorUp0): added
- (cursorDown0): added
- (checkType): change type oprop, ocolor, delete check_color, len
- * rc.c (CMT_FOLD_LINE): added
- (params1): add fold_line
- (sync_with_option): check PagerMax
- * search.c (set_mark): l->size
- (forwardSearch): rewrite
- (backwardSearch): rewrite
- * doc/README.func (RESHAPE): added
- * doc-jp/README.func (RESHAPE): added
- * scripts/w3mhelp.cgi.in (Buffer operation): add reshape
-
-2003-01-24 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * etc.c (next_status): after = is R_ST_VALUE
- R_ST_VALUE > => R_ST_NORMAL
- R_ST_VALUE SP => R_ST_TAG
- (read_token): R_ST_VALUE
- (correct_irrtag): R_ST_VALUE
- * rm.h (R_ST_VALUE): added
- (ST_IS_REAL_TAG): rewrite
- (ST_IS_COMMENT): deleted
- (ST_IS_TAG): deleted
- * parsetagx.c (parse_tag): skip too long tagname
- skip too long attrname
- if attrvalue has quote char, need reconstruct
- if unknown attr, need reconstruct
- * table.c (visible_length): R_ST_VALUE
-
-2003-01-24 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03680] showProgress() on fast system
- * file.c (showProgress): check line len, time
-
-2003-01-24 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03679] Re: cleanup for pipe
- * etc.c (open_pipe_rw): check stdin, stdout
- * file.c (uncompress_stream): rewrite
-
-2003-01-23 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 03678] Re: config.param is clear when configure -help
- * configure: don't override config.param
-
-2003-01-23 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03677] view source, edit source
- * buffer.c (discardBuffer): unlink header source
- * file.c (loadFile): delete skip header
- * fm.h (BP_SOURCE): deleted
- (SkipHeader): deleted
- * main (editBf): cleanup
- (vmSrc): cleanup
-
-2003-01-23 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03676] cleanup for pipe
- * etc.c (open_pipe_rw): added
- * file.c (uncompress_stream): rewrite using open_pipe_rw
- * image.c (openImgdisplay): rewrite using open_pipe_rw
- * local.c (localcgi_popen_rw): deleted
- (localcgi_post): rewrite using open_pipe_rw
- * proto.h (open_pipe_rw): added
- * search.c (migemor): initialized to NULL
- (migemow): initialized to NULL
- (migemo_pid): initialized to 0
- (open_migemo): rewrite using open_pipe_rw
-
-2003-01-23 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03675] x-face
- * file.c (xface2xpm): use getImage()
- (readHeader): check same file
- (loadImageBuffer): rewrite
- (lessopen_stream): shell_quote()
-
-2003-01-23 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03674] -dump problem
- * file.c (loadGeneralFile): return NULL when dump
- * main.c (dump_source): deleted
- (dump_head): deleted
- (dupm_extra): deleted
- (do_dump): added
- (main): singal when dump
-
-2003-01-23 Yoshinobu Sakane <sakane@d4.bsd.nes.nec.co.jp>
-
- * [w3m-dev 03671] Re: config.param is clear when configure -help
- * configure: test -f config.param
-
-2003-01-22 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03665] imlib2 support (on X11)
- * configure: X11 inline image with Imlib2
- fix typo in fb/imlib2
- * w3mimg/x11/x11_w3mimg.c: USE_IMLIB2
- (x11_load_image): USE_IMLIB2
- (x11_show_image): USE_IMLIB2
- (x11_free_image): USE_IMLIB2
- (x11_get_image_size): USE_IMLIB2
-
-2003-01-22 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03664] config.param is clear when configure -help
- * configure: config.param created after arg parsing
-
-2003-01-21 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * map.c (follow_map_menu): if USE_IMAGE or MENU_MAP
- * proto.h (follow_map_menu): ditto
-
-2003-01-21 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03660] Re: fputs -> Strfputs
- * Str.h (Strncmp_charp): paren
- (Strncasecmp_charp): ditto
- (Strinsert): ditto
- (Strshrinkfirst): ditto
- * display.c (disp_err_message): added
- * file.c (loadGeneralFile): don't put function in macro arg
- (saveBuffer): ditto
- * frame.c (createFrameFile): ditto
- * proto.h (disp_err_message): macro->function
- * table.c (pushdata): if data is NULL, use ""
- (suspend_or_pushdata): if line is NULL, use ""
- * textlist.h (pushText): don't use (s) twice in a macro
-
-2003-01-21 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03659] Can't download from SSL.
- * istream.c (ISfileno): case IST_SSL
-
-2003-01-21 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03658] Re: Other user can see local cookie.
- * fm.h (rc_dir): init(NULL)
- * rc.c (config_file): deleted
- (init_rc): use rc_dir
-
-2003-01-21 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03657] fputs -> Strfputs
- * form.c (form_fputs_decode): use Strfputs()
-
-2003-01-19 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 03655] Re: file.c:image_source when undef USE_IMAGE
- * map.c (follow_map_menu): fix warnings
-
-2003-01-19 WATANABE Katsuyuki <knabe@sannet.ne.jp>
-
- * [w3m-dev 03654] file.c:image_source when undef USE_IMAGE
- * file.c (readHeader): image_source ifdef USE_IMAGE
- (loadGeneralFile): ditto
- (uncompress_stream): ditto
-
-2003-01-19 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 03653] SourceForge.net: 576032 w3m https crashes with OpenSSL-0.9.7
- * istream.c (ssl_check_cert_ident): use sk_GENERAL_NAME_free()
-
-2003-01-18 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 03652] Re: Debian bug #176981
- * file.c (checkHeader): always remove_space
- (loadGeneralFile): no need remove_space
-
-2003-01-18 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03651] Debian bug #176981
- * file.c (checkRedirection): added
- (loadGeneralFile): check redirection
- t_buf only is created when it is NULL
- remove_space
-
-2003-01-18 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03647] expandName() and expandPath()
- * etc.c (openSecretFile): use expandPath
- (expandName): rewrite
- (file_to_url): use expandPath
- * file.c (_doFileCopy): use expandPath
- (doFileSave): use expandPath
- * indep.c (expandPath): rewrite
- * linein.c (inputLineHistSearch): use expandPath
- (next_dcompl): use expandPath
- (doComplete): use expandPath
- * local.c (set_cgi_environ): rewrite
- * mailcap.c (loadMailcap): use expandPath
- * main.c (svBuf): use expandPath
- (addDownloadList): use expandPath
- * rc.c (init_rc): use expandPath
- (rcFile): rewrite
- (auxbinFile): use expandPath
- (libFile): use expandPath
- (etcFile): use expandPath
- (helpFile): use expandPath
- * url.c (loadMimeTypes): use expandPath
- (loadURIMethods): use expandPath
-
-2003-01-18 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03646] setup child process, local CGI
- * etc.c (reset_signals): static
- don't ignore SIGUSR1
- (close_all_fds_except): static
- DEV_NULL_PATH
- (setup_child): added
- (myExec): rewrite
- (mySystem): rewrite
- * file.c (readHeader): check image_source
- (loadGeneralFile): check image_source
- (doExternal): use setup_child
- (_doFileCopy): use setup_child
- (doFileSave): use setup_child
- (uncompress_stream): check image_source
- use setup_child
- * image.c (getCharSize): no need stderr redirect
- (openImgdisplay): use setup_child
- (loadImage): use setup_child
- (getImageSize): no need stderr redirect
- * local.c (writeLocalCookie): check Local_cookie_file
- (localcgi_popen_rw): added
- (localcgi_popen_r): deleted
- (localcgi_post): rewrite
- (localcgi_get): deleted
- * proto.h (localcgi_get): defined by localcgi_post
- (reset_signals): deleted
- (close_all_fds_except): deleted
- (close_all_fds): deleted
- (setup_child): added
- * search.c (open_migemo): use setup_child, myExec
- * w3mimgdisplay.c (main): use DEV_NULL_PATH
-
-2003-01-16 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03644] Re: Other user can see local cookie.
- * cookie.c (save_cookies): return if no_rc_dir
- * etc.c (tmpf_base): add cookie
- (tmpfname): use tmp_dir instead of rc_dir
- * file.c (loadGeneralFile): cookie is not passed via URL
- * fm.h (TMPF_COOKIE): incl
- (MAX_TMPF_TYPE): incl
- (no_rc_dir): added
- (tmp_dir): added
- (config_file): added
- * local.c (Local_cookie_file): added
- (writeLocalCookie): added
- (setLocalCookie): dont set environment LOCAL_COOKIE
- (localcgi_post): writeLocalCookie
- (localcgi_get): writeLocalCookie
- * main.c (config_filename): deleted
- (cmd_loadURL): arg FormList
- (main): rewrite config_file, rc
- (ldhelp): no cookie in URL
- (cmd_loadURL): arg FormList
- (goURL0): cmd_loadURL change
- (cmd_loadBuffer): cmd_loadURL change
- (adBmark): cookie is posted
- (follow_map): cmd_loadURL change
- (linkMn): cmd_loadURL change
- (reinit): init_rc change
- * proto.h (create_option_search_table): deleted
- (init_rc): no args
- * rc.c (create_option_search_table): static
- (init_rc): no args
- rewrite
- (optionpanel_src1): rewrite
- (load_option_panel): html_quote
- (panel_set_option): no_rc_dir
- * w3mbookmark.c: rewrite
- * w3mhelperpanel.c: rewrite
- * scripts/dirlist.cgi.in: rewrite
- * scripts/w3mhelp.cgi.in: rewrite
- * scripts/w3mmail.cgi.in: rewrite
- * scripts/multipart/multipart.cgi.in: rewrite
-
-2003-01-16 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * file.c (loadGopherDir): convertLine RAW_MODE
- * ftp.c (loadFTPDir): ditto
-
-2003-01-16 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03642] Re: cleanup (don't close connection of news server)
- * local.c (localcgi_post): localcgi_popen_r first
-
-2003-01-16 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03641] Re: cleanup (don't close connection of news server)
- * ftp.c (ftp_command): fix fwrite arg
- * news.c (news_command): fix fwrite arg
-
-2003-01-16 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03640] Re: cleanup (don't close connection of news server)
- * anchor.c (_put_ahchor_news): always conv_str
- (_put_anchor_all): always conv_str
- * etc.c (close_all_fds): deleted
- (close_all_fds_except): added, except fd=f is left open
- * file.c (guess_filename): added
- (UFhalfclose): added
- (convertLine): cleanup_line if not raw mode
- check uf
- (readHeader): always convertLine
- (loadGeneralFile): rewrite
- (loadGopherDir): return Str, args change to ParsedURL and code
- rewrite
- (saveBuffer): always conv_str
- (_doFileCopy): close_all_fds
- (doFileSave): close_all_fds_except
- (uncompress_stream): dup, close_all_fds_except
- * form.c (form_fputs_decode): always conv_str
- (input_textarea): convertLine
- * frame.c (createFrameFile): convertLine
- * ftp.c (loadFTPDir): arg code
- rewrite
- (readFTPDir): convertLine
- * html.h (UFfileno): added
- * image.c (loadImage): close_all_fds
- * indep.h (RAW_MODE): added
- * local.c (loadLocalDir): return Str
- (dirBuffer): rewrite
- (localcgi_popen_r): close_all_fds
- * main.c (main): check SCM_LOCAL
- print err_msg
- * news.c (news_command): args cmd and arg
- (news_quit): news_command
- (openNewsStream): news_command
- (readNewsgroup): deleted
- (loadNewsgroup): added
- (closeNews): added
- * proto.h (loadGopherDir): update
- (conv_str): define for no JP_CHARSET
- (readFTPDir): deleted
- (loadFTPDir): added
- (readNewsgroup): deleted
- (loadNewsgroup): added
- (dirBuffer): deleted
- (loadLocalDir): added
- (close_all_fds): defined by close_all_fds_except
- (close_all_fds_except): added
-
-2003-01-16 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03639] Re: smb.cgi
- * Bonus/2ch.cgi: change password handling
- * Bonus/README: update
- * Bonus/README.eng: ditto
-
-2003-01-12 qhwt@myrealbox.com
-
- * [w3m-dev 03636] segfault in main.c
- * main.c (main): check newbuf->currentURL.file
-
-2003-01-12 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * Bonus/README.eng: sync with Bonus/README
-
-2003-01-12 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03635] 2ch.cgi
- * Bonus/2ch.cgi: added
- * Bonus/README: update
-
-2003-01-12 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * Bonus/README.eng: sync with Bonus/README
-
-2003-01-12 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03634] smb.cgi
- * Bonus/smb.cgi: added
- * Bonus/README: update
-
-2003-01-12 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * ftp.c (ftp_pasv): ftp_command response
- (readFTPDir): masked declaration of realpathname
-
-2003-01-12 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03633] Re: cleanup (don't close connection of news server)
- * file.c (FTPhalfclose): deleted
- (loadGeneralFile): closeFTP when doFileSave is done
- (_doFileCopy): return int
- (doFileMove): return int
- (doFileSave): return int
- * ftp.c: rewrite
- * main.c (w3m_exit): disconnectFTP
- * proto.h (_doFileCopy): return int
- (doFileMove): return int
- (doFileSave): return int
- (openFTP): deleted
- (openFTPStream): return InputStream
- (closeFTP): no arg
- (Ftpfclose): disconnectFTP
- * url.c (openFTPstream): deleted
-
-2003-01-11 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * fix compiler warnings
- * html.h (UFclose): value computed but not used
-
-2003-01-11 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03632] cleanup (don't close connection of news server)
- * file.c (loadSomething): remove UFclose nntp:,news:
- (loadFile): UFclose
- (loadGeneralFile): always UFclose
- * html.h (UFclose): only reset when ISclose ==0
- * istream.c (ISclose): return int
- (ISfileno): flag IST_UNCLOSE
- * istream.h (ISclose): return int
- (IST_UNCLOSE): added
- * news.c (news_close): reset IST_UNCLOSE
- (news_open): set IST_UNCLOSE
-
-2003-01-11 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03631] display current form item
- * form.c (form2str): rewrite
- * istream.c (ssl_get_certificate): fix typo
- * map.c (follow_map_panel): valign=top
- (append_map_info): valign=top
- (append_link_info): valign=top
- (append_frame_info): <pre_int>
- html_quote ssl_certificate
- (page_info_panel): rewrite, html_quote
-
-2003-01-11 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * doc/README.pre_form: update
- * doc-jp/README.pre_form: ditto
-
-2003-01-11 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03630] improved pre_form
- * form.c (pre_form): add re_url, name
- (add_pre_form): add name
- rewrite
- (loadPreForm): add "form"
- (preFormUpdateBuffer): handle re_url
-
-2003-01-11 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03629] delete tmp file
- * etc.c (tempfname): always file to delete
- * file.c (xface2xpm): no need fileToDelete
- (readHeader): ditto
- (loadGeneralFile): ditto
- (loadHTMLBuffer): ditto
- (loadHTMLString): ditto
- (loadGopherDir): ditto
- (loadImageBuffer): ditto
- (doExternal): rewrite
- (doFileSave): no need fileToDelete
- (uncompress_stream): ditto
- * fm.h (CurrentPid): added
- * image.c (getImage): cache->touch to delete
- * local.c (setLocalCookie): use CurrentPid
- (localcgi_post): fileToDelete
- * main.c (main): CurrentPid
- (pipeBuf): no need fileToDelete
- (query_from_followform): CurrentPid
- (vmSrc): no need fileToDelete
-
-2003-01-11 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03628] Re: Error occured while reset
- * file.c (doExternal): bufp = NULL, return 1
- (uncompress_stream): tempfname fileToDelete
-
-2003-01-11 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03626] Re: relative URL
- * url.c (parseURL2): copy if scheme is local or local-cgi
-
-2003-01-11 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03625] keymap key SEARCH string
- * main.c (srch): accept command argument
- (reMark): accept command argument
- * Bonus/google.cgi: added
-
-2003-01-11 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03622] Re: Error occured while reset
- * file.c (uncompress_stream): child process initialized
- * terms.c (close_tty): close unless stdin,out,err
- (reset_tty): flush_tty, close_tty
- (write1): flush_tty
- (refresh): flush_tty
- (flush_tty): check ttyf
-
-2003-01-11 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03620] -m option and header
- * buffer.c (reshapeBuffer): fix reading from stdin
- fix -m option
- * display.c (redrawNLine): rewrite
- (redrawLine): return l instead of l->next
- (redrawLineImage): ditto
- * file.c (loadFile): read header even if skip header
- (loadGeneralFile): read header even if skip header
- * fm.h (SkipHeader): added
- * main.c (main): check whether reading from stdin
- SkipHeader
-
-2003-01-10 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03619] Re: Error occured while reset
- * file.c (process_img): check image.ext
- (HTMLlineproc2body): check image.ext
- (loadImageBuffer): url, ext is in URLFile
- * frame.c (unloadFrame): no need to push to fileToDelete
- (copyFrame): no need to reset FB_TODELETE
- (resetFrameElement): f_body->source, buf->sourcefile
- (frame_download_source): buf->source
- buf->sourcefile reset
- * frame.h (FB_NOCACHE): deleted
- (FB_TODELETE): deleted
- * main.c (vmSrc): Currentbuf->sourcefile
- need_reshape if images exist
-
-2003-01-09 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03617] sourcefile when Content-Encoding: is specified.
- * file.c (uncompress_stream): add src arg
- (examineFile): change uncompress_stream
- (loadGeneralFile): change uncompress_stream
- (doExternal): src
- (uncompress_stream): ext
- tmpfile with same ext
-
-2003-01-09 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03616] Re: data: URL scheme
- * file.c (loadGeneralFile): check SCM_DATA
- (loadImageBuffer): newBuffer()
- * html.h (SCM_DATA): added
- * indep.c (url_unquote): deleted
- (Str_url_unquote): renamed from Str_form_unquote
- + is decoded is_form only
- * indep.h (url_unquote): deleted
- (Str_url_unquote): added
- (Str_form_unquote): define by Str_url_unquote
- * main.c (followA): file_unquote
- (cmd_loadURL): file_unquote
- * url.c (DefaultPort): add for data:
- (schemetable): add "data"
- (DefaultFile): SCM_FTPDIR
- (parseURL): scheme copied from current
- (parseURL2): SCM_DATA
- check SCM_FTP, SCM_FTPDIR
- (_parsedURL2Str): add data in scheme_str
- handle SCM_DATA
- SCM_FTPDIR
- (openURL): file_unquote
- handle SCM_DATA
-
-2003-01-08 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03611] relative URL
- * news.c (openNewsStream): don't skip '/' for nntp:
- (readNewsgroup): cleanup
- * url.c (parseURL): don't copy user & password
- (parseURL2): fix for group, don't copy user & password
-
-2003-01-07 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * fix build warnings
- * url.c (parseURL2): fix comparison between pointer and integer
- * news.c (readNewsgroup): variable `scheme',`group',`list' might be clobbered by `longjmp' or `vfork'
-
-2003-01-07 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03610] Re: news:<newsgroup>
- * anchor.c (_put_anchor_news): check '<'
- (reAnchorNewsheader): added
- * file.c (loadSomething): Subject: as buffername
- (checkHeader): check buf->document_header
- (loadGeneralFile): reAnchorNewsheader
- * html.h (SCM_NNTP_GROUP): added
- * main.c (main): delete USE_NNTP in switch (newbuf->real_scheme)
- (chkNMIDBuffer): lowercase in url_like_pat
- * news.c (add_news_message): add scheme, group as arg
- (openNewsStream): check SCM_NNTP_GROUP
- check current_news.host
- (readNewsgroup): rewrite to support nntp:,news: extension
- * proto.h (reAnchorNewsheader): added
- * url.c (DefaultPort): add 119 for nntp group
- (parseURL2): rewrite to support nntp:,news: extension
- (_parsedURL2Str): add for SCM_NNTP_GROUP
- (openURL): rewrite to support nntp:,news: extension
-
-2002-12-28 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * fix build errors
- * display.c (make_lastline_message): fix error for undef JP_CHARSET
- * news.c (readNewsgroup: `code' always required
-
- * gcc -Wall -Werror clean
- * file.c (loadHTMLstream): unused variable `p'
- * news.c (news_command): unused variable `c'
- (news_open): unused variable `tmp'
- (readNewsgroup): volatile page, qgroup, flag, start, end
- uninitialized variable `page'
- * url.c (openURL): unused variable `fw', `r', `stream'
-
-2002-12-28 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * rc: nntpserver, nntpmode, max_news
-
-2002-12-28 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03608] news:<newsgroup>
- * XMakefile (LSRCS): add news.c
- (LOBJS): add news.o
- * file.c (loadSOmething): don't UFclose() for nntp/news
- (readHeader): remove . at beginning of line for news
- img link to file:
- (loadGeneralFile): add SCM_NEWS_GROUP
- don't UFclose() for nntp/news
- (loadHTMLstream): . line check for news
- (loadBuffer): . line check for news
- * fm.h (NNTP_server): added
- (NNTP_mode): added
- (MaxNewsMessage): added
- * html.h (SCM_NEWS_GROUP): added
- * main.c (main): NNTP_server or NNTPSERVER
- NNTP_mode or NNTPMODE
- add SCM_NEWS_GROUP
- (followA): remove news:..@.. check
- (cmd_loadURL): remove news:...@.. check
- (w3m_exit): disconnectNews
- * proto.h (openNewsStream): added
- (readNewsgroup): added
- (disconnectNews): added
- * rc.c (CMT_NNTP_SERVER): added
- (CMT_NNTP_MODE): added
- (CMT_MAX_NEWS): added
- (params9): add nntpserver, nntpmode, max_news
- * url.c (DefaultPort): add 119 for news group
- (parseURL2): news:..@... is SCM_NEWS_GROUP
- (_parsedURL2Str): add news for SCM_NEWS_GROUP
- (openURL): cleanup SCM_NEWS
- add SCM_NEWS_GROUP
- * news.c: added
-
-2002-12-28 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03607] mymktime: time zone support
- * etc.c (get_zone): added
- (mymktime): parse timezone
-
-2002-12-28 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03606] Re: clean up displayBuffer()
- * main.c (followA): B_FORCE_REDRAW
- (follow_map): ditto
-
-2002-12-27 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03604] http response code and content-type
- * file.c (loadGeneralFile): don't guessContentType if http errors
-
-2002-12-26 Hiroyuki Ito <hito@crl.go.jp>
-
- * [w3m-dev 03602] Re: w3mimgdisplay core dump
- * w3mimgdisplay.c (DrawImage): check load_image, imageBuf[n].pixmap
- * w3mimg/fb/fb_w3mimg.c (w3mfb_show_image): check img->pixmap
- * w3mimg/x11/x11_w3mimg.c (x11_show_image): check img->pixmap
-
-2002-12-26 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03601] Re: meta refresh
- * main.c (LastEvent): added
- (pushEvent): add to LastEvent
-
-2002-12-26 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03600] Re: meta refresh
- * main.c (main): move add_download_list
-
-2002-12-25 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03598] restore cursor when download list panel is updated.
- * main.c (stopDownload): delete->replace
- (ldDL): use DownloadListBuffer()
-
-2002-12-25 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03597] Re: meta refresh
- * main.c (Event): next, linked list
- (N_EVENT_QUEUE): deleted
- (eventQueue): deleted
- (n_event_queue): deleted
- (CurrentEvent): added
- (main): event processing, add CurrentEvent linked list
- (pushEvent): add Event to CurrentEvent
- (SigAlarm): Currentbuf->event
- * proto.h (pushEvent): rename args
-
-2002-12-25 Hiroaki Shimotsu <shim@d5.bs1.fc.nec.co.jp>
-
- * [w3m-dev 03596] LIST
- * anchor.c (link_list_panel): check internal
-
-2002-12-25 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03595] tolower, toupper
- * Str.c (Strlower): TOLOWER
- (Strupper): TOUPPER
- * backend.c: delete ctype.h
- * etc.c (gethtmlcmd): TOLOWER
- * file.c (readHeader): TOLOWER
- (checkOverWrite): TOLOWER
- (guess_charset): TOLOWER
- * ftp.c: delete ctype.h
- * indep.c (strcasecmp): TOLOWER
- (strncasecmp): TOLOWER
- (strcasematch): TOLOWER
- * istream.c: include myctype.h
- (ssl_get_certificate): TOLOWER
- * mailcap.c (mailcapMatch): TOLOWER
- * main.c (_quitfm): TOLOWER
- * menu.c (accesskey_menu): TOLOWER
- * mimehead.c: include myctype.h
- (decodeWord): TOUPPER
- * mktable.c: delete ctype.h, include myctype.h
- (main): IS_SPACE
- * myctype.h: delete ctype.h
- (TOLOWER): added
- (TOUPPER): added
- * parsetagx.c (parse_tag): TOLOWER
- * rc.c (str_to_bool): TOLOWER
- (str_to_color): TOLOWER
- * regex.c: delete ctype.h, include myctype.h
- (TOLOWER): added
- (TOUPPER): added
- (regmatch1): TOLOWER
- (matchWhich): TOLOWER, TOUPPER
-
-2002-12-22 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * mimehead.c (decodeWord): don't use toupper() (requires ctype.h)
-
-2002-12-22 ABE Yuji <cbo46560@pop12.odn.ne.jp>
-
- * [w3m-dev 03594] mime decode with encoding named 'b' & 'q'
- * mimehead.c (decodeWord): toupeer(method)
-
-2002-12-22 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * file.c (discardline): not used
-
-2002-12-22 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03593] Re: segmentation fault when <title> exist after <img>
- * file.c (cur_title): added
- (save_obuf): deleted
- (process_title): added
- (process_n_title): added
- (feed_title): added
- (HTMLtagproc1): rewrite HTML_TITLE, HTML_N_TITLE,
- HTML_TITLE_ALT, HTML_N_HEAD, HTML_HEAD
- (HTMLlineproc0): check RB_TITLE
- (completeHTMLstream): add RB_TITLE
- (loadHTMLstream): initialize cur_title
-
-2002-12-21 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03590] segmentation fault when <title> exist after <img>
- * file.c (save_line): deleted
- (save_prevchar): deleted
- (save_obuf): added
- (HTMLtagproc1): bcopy save_obuf
-
-2002-12-20 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03588] include time.h in ftp.c
- * ftp.c: include <time.h>
-
-2002-12-19 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03583] w3mman
- * scripts/w3mman/README: W3MMAN_W3M, W3MMAN_MAN
- * scripts/w3mman/w3mman.1.in: add ENVIRONMENT
- * scripts/w3mman/w3mman.in: $ENV{'W3MMAN_W3M'}, $ENV{'W3MMAN_MAN'}
- * scripts/w3mman/w3mman2html.cgi.in: $ENV{'W3MMAN_MAN'}
- hyphenation
-
-2002-12-19 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03582] add config options graphic_char and use_proxy
- * NEWS: rc: graphic_char, use_proxy
- * fm.h (Do_no_use_proxy): macro using use_proxy
- (use_proxy): added
- (no_graphic_char): deleted
- (UseGraphicChar): added
- * main.c (main): UseGraphicChar, use_proxy
- * rc.c (CMT_GRAPHIC_CHAR): added
- (CMT_USE_PROXY): added
- (params1): graphic_char
- (params4): use_proxy
- * terms.c (graph_ok): UseGraphicChar
-
-2002-12-19 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03581] MARK_URL, MARK_WORD
- * main.c (chkWORD): accept ()[]{}&|;*?$ as anchor
-
-2002-12-19 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03580] Re: clean up displayBuffer()
- * main.c (main): force redraw
-
-2002-12-19 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03579] Re: clean up displayBuffer()
- * display.c (displayBuffer): re calcTabPos() when force or image redraw
- * main.c (_mark): force redraw
- (reinit): redraw image
- * search.c (backwardSearch): found_last
-
-2002-12-19 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 03584] Re: meta refresh
- * main.c (DefaultAlarm): fix initialize value
-
-2002-12-19 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03578] meta refresh
- * file.c (getMetaRefreshParam): do nothing if refresh_interval < 0
- (HTMLtagproc1): rewrite refresh
- (HTMLlineproc2body): add HTML_META
- * fm.h (BP_RELOAD): deleted
- (Buffer): add event
- (AL_IMPLICIT_DONE): deleted
- (AL_ONCE): deleted
- (AL_RESTORE): deleted
- (AlarmEvent): added
- * main.c (AlarmEvent): deleted
- (PrevAlarm): deleted
- (DefaultAlarm): added
- (CurrentAlarm): point to DefaultAlarm
- (main): CurrentKeyData, CurrentCmdData
- handle Currentbuf->event
- (SigAlarm): CurrentAlarm is pointer
- (copyAlarmEvent): deleted
- (setAlarm): setAlarmEvent pass &DefaultAlarm
- (setAlarmEvent): arg event
- (ldDL): no BP_RELOAD
- * proto.h (setAlarmEvent): arg event
-
-2002-12-18 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03577] incorrect table width
- * table.c (dv2sv): fix move direction
- (set_integered_width): ditto
- (check_table_height): ditto
- (feed_table_tag): ditto
-
-2002-12-17 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03576] Re: news support
- * anchor.c (_put_anchor_news): convert to document code and quote
- (_put_anchor_all): convert to document code
- * main.c (chkNMIDBuffer): change url_like_pat
-
-2002-12-15 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * NEWS: rc: preserve_timestamp
-
-2002-12-15 Takahashi Youichirou <nikuq@hk.airnet.ne.jp>
-
- * [w3m-dev 03574] Re: preserve timestamp
- * ftp.c (getFtpModtime): don't call localtime,gettime in same expr
-
-2002-12-15 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 03573] Re: Bug#172851: w3m: In form, takes hostname as baseref for relative URI action
- * url.c (parseURL): if empty is URL, base URL is used
-
-2002-12-15 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03571] base=0 -> 10 in toNumber()
- * parsetagx.c (toNumber): strtol base=10
-
-2002-12-15 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03570] meta tag in frame
- * frame.c (createFrameFile): fix meta equiv parse in frame
-
-2002-12-15 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03569] Re: preserve timestamp
- * file.c (loadGeneralFile): PresetveTimestamp
- (_doFileCopy): is_pipe, PreserveTimestamp
- (doFileSave): PreserveTImestamp
- * fm.h (PreserveTimestamp): added
- * rc.c (CMT_PRESERVE_TIMESTAMP): added
- (params3): add preserve_timestamp
-
-2002-12-15 Takahashi Youichirou <nikuq@hk.airnet.ne.jp>
-
- * [w3m-dev 03568] Re: preserve timestamp
- * etc.c (USE_COOKIE): moved
- * file.c (utime.h): include
- (setModtime): added
- (loadGeneralFile): set f.modtime
- (_doFileCopy): setModtime()
- (doFileSave): setModtime()
- * ftp.c (getFtpModtime): added
- (openFTP): pass URLFile, set modtime
- * html.h (URLFile): add modtime
- * proto.h (openFTP): arg URLFile *uf
- (mymktime): always
- * url.c (init_stream): initialize modtime
- (openFTPStream): pass URLFile
- (openURL): openFTPStream
-
-2002-12-13 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03567] default keybinding
- * doc-jp/keymap.default (C-q,C-t,(,),+,-,D,L,T,m,r,{,|,},
- M-c,M-k,M-l,M-m,M-o,M-t): assign
- * doc/keymap.default: ditto
- * keybind.c: ditto
- * doc-jp/keymap.lynx (C-q,C-t,C-u,(,),,,.,;,D,L,T,W,[,],
- m,r,w,{,|,},M-<,M->,M-W,M-c,M-g,
- M-k,M-l,M-m,M-n,M-o,M-p,M-t,M-w): assign
- * doc/keymap.lynx: ditto
- * keybind_lynx.c: ditto
- * doc-jp/menu.default (Main): Select,SelectTab,TAB_LINK
- * doc/menu.default: ditto
-
-2002-12-13 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03566] configure prefix
- * configure: add X prefix for expr args
-
-2002-12-13 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03564] clean up displayBuffer()
- * display.c (delayed_msg): static
- (drawAnchorCursor): static
- (redrawBuffer): define
- (redrawNLine): static
- (redrawLine): static
- (redrawLineRegion): static
- (do_effects): static
- (do_color): static
- (make_lastline_link): added
- (make_lastline_message): added
- (displayBuffer): rewrite with make_lastline_message()
- (drawAnchorCursor0): added
- (drawAnchorCursor): added
- * main.c (main): remove onA()
- (keyPressEventProc): remove onA()
- (disp_srchresult): static
- disp_message TRUE
- (isrch): remove onA()
- (srch): displayBuffer
- remove onA()
- (srch_nxtprv): remove onA()
- (pipeBuf): disp_message TRUE
- (pipesh): disp_message TRUE
- (readsh): disp_message TRUE
- (_mark): dispBuffer
- (_followForm): break, always dispBuffer
- (drawAnchorCursor0): deleted
- (drawAnchorCursor): deleted
- (onA): deleted
- (anchorMn): delete onA()
- (svBuf): displayBuffer B_NORMAL
- (reload): disp_err_message TRUE
- displayBuffer
- (rFrame): displayBuffer
- (invoke_browser): displayBuffer
- (extbrz): disp_err_message TRUE
- (process_mouse): onA -> displayBuffer
- (movMs): delete onA()
- (menuMs): onA -> displayBuffer
- (closeTMs): disp_message TRUE
- (wrapToggle): disp_message TRUE
- (execdict): disp_message TRUE
- (SigAlarm): displayBuffer, delete onA
- (reinit): displayBuffer
- * map.c (getCurrentMapLabel): deleted
- (retrieveCurrentMapArea): added
- * proto.h (redrawBuffer): deleted
- (redrawNLine): deleted
- (redrawLine): deleted
- (redrawLineRegion): deleted
- (do_effects): deleted
- (do_color): deleted
- (message_list): deleted
- (getCurrentMapLabel): deleted
- (retrieveCurrentMapArea): added
-
-2002-12-13 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03563] Directory Traversal Vulnerabilities in FTP Clients
- * file.c (guess_save_name): pass guess_filename
-
-2002-12-13 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03562] #undef BUFINFO
- * config.h.dist (BUFINFO): undef
- * configure (use_bufinfo): n
- * main.c (saveBufferInfo): ifdef USE_BUFINFO
- * proto.h (reloadBuffer): if 0
- (saveBufferInfo): ifdef USE_BUFINFO
-
-2002-12-12 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03559] Re: use select instead of signal for loading images
- * fm.h (Buffer): add image_loaded
- * image.c (W3M_SIGIMG): deleted
- (image_lock): deleted
- (need_load_image): deleted
- (load_image_handler): deleted
- (load_image_next): deleted
- (getAllImage): check image_loaded
- (loadImage): delete image_lock
- delete IMG_FLAG_NEXT
- * main.c (main): check image_loaded
- * proto.h (sleep_till_anykey): return int
- * terms.c (sleep_till_anykey): return int
-
-2002-12-12 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03558] long title is displayed over tab region
- * display.c (redrawNLine): check l < 0
- use addnstr
-
-2002-12-11 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03554] Re: Undo/Redo
- * doc/README.func (REDO): added
- (UNDO): added
- * doc-jp/README.func (REDO): added
- (UNDO): added
- * scripts/w3mhelp.cgi.in: (Page/Cursor motion): add undoPos, redoPos
-
-2002-12-11 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * NEWS: func: REDO, UNDO
-
-2002-12-11 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03553] Undo/Redo
- * fm.h (Buffer): add undo
- (BufferPos): added
- * funcname.tab (REDO): added
- (UNDO): added
- * main.c (save_buffer_position): added
- (main): save_buffer_position
- (resetPos): added
- (undoPos): added
- (redoPos): added
- * proto.h (undoPos): added
- (redoPos): added
-
-2002-12-11 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03552] Re: link list
- * menu.c (accesskey_menu): check hseq
- (list_menu): check hseq
-
-2002-12-11 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03551] Re: External URI loader
- * file.c (loadGeneralFile): fix SCM_UNKNONWN
-
-2002-12-10 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * NEWS: func: LIST, LIST_MENU, MOVE_LIST_MENU
-
-2002-12-10 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03549] link list
- * anchor.c (addMultirowsImg): add a->slave
- (getAnchorText): arg AnchorList *al
- (link_list_panel): added
- * funcname.tab (LIST): added
- (LIST_MENU): added
- (MOVE_LIST_MENU): added
- * main.c (anchorMn): added
- (accessKey): use anchorMn()
- (listMn): added
- (movlistMn): added
- (linkLst): added
- * map.c (searchMapList): not static
- * menu.c (accesskey_menu): pass AnchorList to getAnchorText()
- (lmKeys): added
- (lmKeys2): added
- (nlmKeys): added
- (nlmKeys2): added
- (lmGoto): added
- (lmSelect): added
- (list_menu): added
- * proto.h (linkLst): added
- (listMn): added
- (movlistMn): added
- (list_menu): added
- (searchMapList): added
- (getAnchorText): arg AnchorList *al
- (link_list_panel): added
- * doc/README.func (LIST): added
- (LIST_MENU): added
- (MOVE_LIST_MENU): added
- * doc-jp/README.func (LINK_MENU): fix message
- (LIST): added
- (LIST_MENU): added
- (MOVE_LIST_MENU): added
- * scripts/w3mhelp.cgi.in (Page/Cursor motion): add movlistMn
- (Hyperlink operation): add linkLst linkMn
-
-2002-12-10 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03548] close anchor before <img align=...>
- * file.c (process_img): use div_int
- (process_hr): use div_int
- (process_idattr): don't close_anchor
- (CLOSE_A): added
- (HTMLtagproc1): </p> close anchor
- <dl>,<ul>,<ol>,<blockquote>,<li>,<dt>,<dd> close anchor
- <noframes> close anchor
- <pre> close anchor
- <center> close anchor
- <div> close anchor
- add DIV_INT
- <form> close anchor
- * html.c (TagMAP): add div_int
- * html.h (HTML_DIV_INT): added
- (HTML_N_DIV_INT): added
- * tagtable.tab (div_int): added
- (/div_int): added
-
-2002-12-10 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03544] Can't display "1&2" in table
- * file.c (HTMLlineproc0): continue -> R_ST_NORMAL
-
-2002-12-10 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * file.c (loadGeneralFile): missing `{', fix indent for SCM_UNKNOWN
- * main.c (set_buffer_environ): unused variables `prev_col'
-
-2002-12-10 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03543] External URI loader (Debian closes: Bug#169962)
- * file.c (loadGeneralFile): rewrite SCM_UNKNOWN
-
-2002-12-10 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03542] news support
- * file.c (loadGeneralFile): NNTP as well as NEWS
- * indep.c (url_unquote_char): check % hex hex
- (url_unquote): unquote except \0, \n, \r
-
-2002-12-10 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03541] Re: W3M_LINE_NO / W3M_CURRENT_COLUMN
- * main.c (goLine): check searchKeyData()
- (set_buffer_environ): W3M_CURRENT_*
-
-2002-12-07 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03536] <del>, <s>
- * file.c (HTMLtagproc1): <s>..</s> is [S:...:S]
- (HTMLtagproc0): <del> will delete <table>
- * fm.h (RB_S): added
- * html.c (TagMAP): <s>,</s>
- move <internal>, </internal>
- * html.h (HTML_S): added
- (HTML_N_S): added
- (HTML_INTERNAL): renumed
- (HTML_N_INTERNAL): ditto
- (MAX_HTMLTAG): add 2
- * rc.c (CMT_DISP_INS_DEL): update
- * table.c (feed_table_tag): add HTML_S, HTML_N_S
- * table.h (TBLM_S): added
- (TBLM_ANCHOR): renum
- * tagtable.tab: (strike, s): HTML_S
- (/strike, /s): HTML_N_S
-
-2002-12-07 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03535] close anchor, quote <
- * file.c (HTMLtagproc1): close_anchor
- * frame.c (createFrameFile): quote <
-
-2002-12-07 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03534] cleanup file.c
- * file.c (HTMLlineproc2body): cleanup
-
-2002-12-06 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * version.c.in: w3m/0.3.2.2+cvs
- * NEWS: 0.3.2.2
-
-2002-12-06 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * security fix
- * file.c (process_img): html_quote()
-
-2002-12-06 Takahashi Youichirou <nikuq@hk.airnet.ne.jp>
-
- * [w3m-dev 03530] save history
- * history.c (saveHistory): save tmpfile and rename
-
-2002-12-06 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * NEWS: func: ACCESSKEY, LINK_MENU
-
-2002-12-06 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03529] Support of title, accesskey of anchor
- * anchor.c (putAnchor): arg title, key
- initialize slave
- (registerHref): arg title, key
- (registerName): title = NULL, key = '\0'
- (registerForm): title = NULL, key = '\0'
- (_put_anchor_news): title = NULL, key = '\0'
- (_put_anchor_all): title = NULL, key = '\0'
- (addMultirowsImg): register title, accesskey
- (addMultirowsForm): title = NULL, key = '\0'
- (getAnchorText): added
- * display.c (displayBuffer): show title if any
- * file.c (set_breakpoint): use bcopy
- (back_to_breakpoint): use bcopy
- (flushline): s/anchor/anchor.url/
- s/anchor_hseq/anchor.hseq/
- s/anchor_target/anchor.target/
- add anchor.*
- (close_effect0): s/anchor/anchor.url/
- s/anchor_hseq/anchor.hseq/
- (close_anchor): use bzero
- (process_img): ATTR_TITLE,
- (HTMLtagproc1): s/anchor/anchor.url/
- target, referer, title, accesskey, hseq
- (HTMLlineproc2body): ATTR_TITLE, ATTR_ACCESSKEY
- (init_henv): use bzero
- * fm.h (Anchor): add title, accesskey, slave
- (Breakpoint): use Anchor
- (struct readbuffer): use Anchor
- * funcname.tab (ACCESSKEY): added
- (LINK_MENU): added
- * html.c (ALST_A): add ATTR_TITLE, ATTR_ACCESSKEY
- (ALST_IMG): add ATTR_TITLE
- (ALST_IMG_ALT): add ATTR_TITLE
- (AttrMAP): add accesskey, renum
- * html.h (ATTR_ACCESSKEY): added
- (ATTR_*): renum 50->60
- * main.c (linkMn): added
- (accessKey): added
- * menu.c (LinkMenu): deleted
- (LinkV): deleted
- (initLinkMenu): deleted
- (lmGoURL): deleted
- (popupMenu): delete initLinkMenu()
- (initMenu): delete Link
- (link_menu): added
- (accesskey_menu): added
- * proto.h (linkMn): added
- (link_menu): added
- (accessKey): added
- (accesskey_menu): added
- (putAnchor): arg title, key
- (registerHref): arg title, key
- (registerImg): arg title
- (getAnchorText): added
- * doc/README.func (ACCESSKEY): added
- (LINK_MENU): added
- * doc-jp/README.func (ACCESSKEY): added
- (LINK_MENU): added
- * scripts/w3mhelp.cgi.in (Hyperlink operation): add linkMn accessKey
-
-2002-12-06 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03528] area without alt
- * map.c (getCurrentMapLabel): when a->alt is empty
-
-2002-12-06 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03527] fix frame.c
- * frame.c (createFrameFile): move need_reconstruct
-
-2002-12-06 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03526] Re: fix doc*/README.func, w3mhelp.cgi.in
- * scripts/w3mhelp.cgi.in: (load_keymap):
- always upcase ESC,SPC,TAB,DEL,UP,DOWN,RIGHT,LEFT
-
-2002-12-05 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03525] Re: sync option
- * func.c (initKeymap): delete check force, keymap_initialized
-
-2002-12-05 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03524] fix doc*/README.func, w3mhelp.cgi.in
- * doc/README.func (REINIT): added
- * doc-jp/README.func (REINIT): added
- * scripts/w3mhelp.cgi.in (Page/Cursor motion):
- add moveR1 movL1 movD1 movU1 ldown1 lup1
- (File/Stream operation): add pipeBuf
- (Miscellany): add dispVer execCmd reinit
- (load_keymap): rewrite
- (norm_key): rewrite
-
-2002-12-05 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * NEWS: rc: display_ins_del
-
-2002-12-05 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03523] Re: del/ins
- * file.c (HTMLtagproc1): check displayInsDel, RB_DEL
- * fm.h (RB_DEL): added
- (displayInsDel): added
- * rc.c (CMT_DISP_INS_DEL): added
- (display_ins_del): added
- * table.c (feed_table_tag): check displayInsDel, TBLM_DEL
- * table.h (TBLM_DEL): added
- (TBLM_ANCHOR): renum
- (struct table_mode): unsigned int pre_mode
-
-2002-12-05 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03522] newline around <pre>..</pre>
- * file.c (HTMLtagproc1): break before <pre>/after </pre> if necessary
-
-2002-12-05 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03521] sync option
- * display.c (redrawNLine): calcTabPos()
- * func.c (initKeymap): return if keymap_initialized
- * main.c (calcTabPos): no more static
- (main): move sync_with_option, initCookie, setLocalCookie
- move backend
- move initKeymap, initMouseAction, initMenu
- remove calcTabPos
- add displayBuffer
- (numTab): static
- (deleteTab): delete calcTabPos
- (moveTab): delete calcTabPos
- * proto.h (calcTabPos): added
-
-2002-12-05 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev-en 00841] Re: w3m segfaults if the terminal is not writable
- * terms.c (reset_tty): don't close stderr
-
-2002-12-04 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03516] Re: 2 stroke keybinding
- * func.c (keymap_initialized): initialized to FALSE
- (setKeymap): push KeyData
-
-2002-12-04 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * NEWS: 2 stroke keybinding
- func: MULTIMAP
-
-2002-12-04 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03515] 2 stroke keybinding
- * func.c (setKeymap): add map
- K_MULTI support
- (getKey2): added
- (getKey): rewrite to use getKey2()
- * func.h (K_MULTI): added
- (MULTI_KEY): added
- * funcname.tab (MULTIMAP): added
- * main.c (escKeyProc): added
- (escmap): rewrite to use escKeyProc()
- (escbmap): rewrite to use escKeyProc()
- (escdmap): rewrite to use escKeyProc()
- (multimap): added
- * proto.h (multimap): added
-
-2002-12-04 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03514] Effect of tab title
- * display.c (redrawNLine): rewrite, do without clrtoeolx()
-
-2002-12-04 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03512] Re: HTML parser
- * table.c (feed_table_tag): HTML_N_SELECT, HTML_N_CAPTION
-
-2002-12-04 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03510] waiting time when cookie was rejected.
- * file.c (readHeader): display cookie warnings for only 1 sec
-
-2002-12-04 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03509] HTML parser
- * file.c (close_textarea): delete
- (HTMLtagproc1): rewrite
- delete HTML_EOL
- move HTML_LISTING, HTML_N_LISTING
- add HTML_PRE_PLAIN, HTML_N_PRE_PLAIN
- add HTML_PLAINTEXT
- end_tag
- (HTMLlineproc0): s/str/line/
- rewrite
- (completeHTMLstream): </textarea> if necessary
- * fm.h (struct readbuffer): delete ignore_tag
- add end_tag
- (RB_XMPMODE): deleted
- (RB_LSTMODE): deleted
- (RB_SCRIPT): added
- (RB_STYLE): added
- (RB_*): renumber
- (R_ST_EOL): added
- (R_ST_*): renumber
- (ST_IS_TAG): check R_ST_EOL
- * form.c (form_fputs_decode): remove <eol> handling
- * frame.c (newFrame): remove_space()
- (CASE_TABLE_TAG): added
- (createFrameFile): rewrite
- * html.c (TagMAP): delete eol
- add pre_plain, /pre_plain
- * html.h (HTML_EOL): deleted
- (HTML_PRE_PLAIN): added
- (HTML_N_PRE_PLAIN): added
- * table.c (visible_length): rewrite
- (visible_length_plain): added
- (maximum_visible_length_plain): added
- (do_refill): R_ST_EOL
- (table_close_select): end_tag
- (table_close_textarea): end_tag
- (TAG_ACTION_PLAIN): added
- (feed_table_tag): rewrite
- (feed_table): rewrite
- * table.h (TBLM_*) reassign
- (struct table_mode): delete ignore_tag
- add end_tag
- * tagtable.tab (eol): deleted
- (pre_plain): added
- (/pre_plain): added
-
-2002-12-03 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03505] Re: coredump when ssl error
- * file.c (loadGeneralFile): term_raw(), SIGINT before retry
-
-2002-12-03 AIDA Shinra <aida-s@jcom.home.ne.jp>
-
- * [w3m-dev 03504] coredump when ssl error
- * file.c (loadGeneralFile): term_raw, SIGINT
-
-2002-12-03 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * remove ununsed variables
- * file.c (addLink): unused variable `t'
- * menu.c (lmGoURL): unused variable `pu'
-
-2002-12-03 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03501] link tag support
- * buffer.c (reshapeBuffer): initialize formlist, linklist,
- maplist, hmarklist, imarklist
- * file.c (addLink): added
- (HTMLlineproc2body): add HTML_LINK
- (loadHTMLstream): use HTMLlineproc0 not in R_ST_NORMAL
- (reloadBuffer): initialize linklist, maplist,
- hmarklist, imarklist
- * fm.h (LINK_TYPE_NONE): added
- (LINK_TYPE_REL): added
- (LINK_TYPE_REV): added
- (LinkList): added
- (Buffer): add linklist
- * html.c (ALST_LINK): added
- (TagMAP): add link
- (AtrMAP): add rel, rev, title
- * html.h (HTML_LINK): added
- (ATTR_REL): added
- (ATTR_REV): added
- (ATTR_TITLE): added
- * map.c (append_map_info): anchor
- (append_link_info): added
- (page_info_panel): append_link_info
- * menu.c (LinkMenu): added
- (linkV): added
- (initLinkMenu): added
- (lmGoURL): added
- (popupMenu): initLinkMenu()
- (initMenu): w3mMenuList new 4
- add "Link"
- * tagtable.tab (link): added
-
-2002-11-29 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m bug] internal tag
- * display.c (loadHTMLstream): HTMLlineproc0 internal
-
-2002-11-29 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03498] Re: parse <!-- ... --> in <script>
- * file.c (HTMLlineproc0): tag in textarea
- * frame.c (createFrameFile): fix comment processing in frame
-
-2002-11-28 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03497] incorrect image size
- * image.c (getImageSize): invoke w3mimgdiplay -size instead of "5;..."
- * w3mimgdisplay.c (defined_size): added
- (main): if defined_size get_image_size()
- (GetOption): -size
-
-2002-11-28 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03496] parse <!-- ... --> in <script>
- * etc.c (read_token): check <pre>
- * file.c (HTMLlineproc0): remove comment processing
- check pre mode
- comment processing move
-
-2002-11-28 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03495] local CGI can't work
- * local.c: #include "hash.h"
- (set_environ): env string put in hash
-
-2002-11-28 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03494] Number of line is few when pager mode.
- * display.c (redrawLine): buf->rootY
-
-2002-11-28 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03493] scroll menu
- * menu.c (mLineU): added
- (mLineD): added
- (MenuKeymap): C-r, C-s, J, K
- (mouse_scroll_line): added
- (process_mMouse): drag
- BTN4, BTN5
- * doc-jp/README.menu: update
-
-2002-11-27 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * version.c.in: w3m/0.3.2.1+cvs
-
-2002-11-27 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03491] Re: case insensitive regexp search
- * regex.c (matchWhich): tolower
-
-2002-11-27 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * use local_cookie for support local-cgi commands
- * file.c (loadGeneralFile): pass Local_cookie to DirBufferCommand
- * fm.h (Local_cookie): Str
- * local.c (setLocalCookie): Str, set_environ()
- (set_cgi_environ): remove LOCAL_COOKIE
- * main.c (ldhelp): pass Local_cookie
- (adBmark): ditto
- * rc.c (optionpanel_src1): cookie
- (load_option_panel): pass Local_cookie
- * w3mbookmark.c (main): check Local_cookie
- * w3mhelperpanel (main): ditto
- * scripts/dirlist.cgi.in: ditto
- * scripts/w3mhelp.cgi.in: ditto
- * scripts/multipart/multipart.cgi.in: ditto
-
-2002-11-27 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * frame.c (createFrameFile): html_quote()
-
-2002-11-27 Hiroyuki Ito <hito@crl.go.jp>
-
- * [w3m-dev 03488] meta refresh in frame
- * file.c (getMetaRefreshParam): added
- (HTMLtagproc1): use getMetaRefreshParam()
- * frame.c (createFrameFile): check meta refresh
- * proto.h (getMetaRefreshProgram): added
-
-2002-11-27 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * w3m 0.3.2.1 security fix
- * frame.c (createFrameFile): html_quote()
-
-2002-11-27 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03486] fix of displayLineInfo
- * display.c (displayBuffer): don't divide by 0
-
-2002-11-26 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03485] fix mouse menu position
- * main.c (do_mouse_action): use anchor_map is no active_map
- check top left corner
- (FRAME_WIDTH): added
- (menuMs): adjust cursorX using FRAME_WIDTH
-
-2002-11-26 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * NEWS: func: CLOSE_TAB_MOUSE, MENU_MOUSE, MOVE_MOUSE, TAB_MOUSE
-
-2002-11-26 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * doc/README.mouse_menu: deleted
- * doc/README.mouse: added
- * doc-jp/README.mouse_menu: deleted
- * doc-jp/README.mouse: added
-
-2002-11-26 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * map.c (follow_map_menu): MapArea *a is used ifdef MENU_MAP
- * func.c (initMouseAction): remove unsed variables: x, width, map
-
-2002-11-26 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03478] mouse action configuration
- * display.c (displayBuffer): mouse_menu -> mouse_action.menu_str
- mouse_action.lastline_str
- (redrawNLine): mouse_menu -> mouse_action.menu_str
- * fm.h (MouseMenuMap): deleted
- (MouseActionMap): added
- (MouseAction): added
- (mouse_action): added
- * func.c (default_mouse_action): added
- (setMouseAction0): added
- (setMouseAction1): added
- (setMouseAction2): added
- (initMouseMenu): deleted
- (initMouseAction): added
- * funcname.tab (CLOSE_TAB_MOUSE): added
- (MENU_MOUSE): added
- (MOVE_MOUSE): added
- (TAB_MOUSE): added
- * main.c (main): initMouseMenu() -> initMouseAction()
- mouse_menu -> mouse_action
- (posTab): mouse_menu -> mouse_action
- check y > LastTab->y
- (mouse_menu_action): deleted
- (do_mouse_action): added
- (process_mouse): mouse_menu -> mouse_action
- do_mouse_action()
- (movMs): added
- (menuMs): added
- (tabMs): added
- (closeTMs): added
- (reinit): initMouseMenu() -> initMouseAction()
- resource: MOUSE_MENU -> MOUSE
- (calcTabPos): mouse_menu -> mouse_action
- * menu.c (mainMn): mouse_menu -> mouse_action
- (selMn): mouse_menu -> mouse_action
- (tabMn): mouse_menu -> mouse_action
- (initMenu): add SelectTag to w3mMenuList
- * proto.h (movMs): added
- (menuMs): added
- (tabMs): added
- (closeTMs): added
- (initMouseMenu): deleted
- (initMouseAction): added
- * rc.c (sync_with_option): initMouseMenu() -> initMouseAction()
- * doc/README.func (CLOSE_TAB_MOUSE): added
- (MENU_MOUSE): added
- (MOVE_MOUSE): added
- (TAB_MOUSE): added
- * doc-jp/README.func (CLOSE_TAB_MOUSE): added
- (MENU_MOUSE): added
- (MOVE_MOUSE): added
- (TAB_MOUSE): added
-
-2002-11-26 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03476] Re: Bug#170506: w3m: Unable to use mozilla bugzilla
- * file.c (HTMLtagproc1): initialize ignore_tag in table_mode
- (HTMLtagproc0): check table_level
- * table.c (feed_table_tag): set mode->ignore_tag
- * table.h (struct table_mode): add ignore_tag
-
-2002-11-25 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 03471] Re: SETPGRP()
- * configure: SETPGRP() always defined
- * proto.h (close_all_fds): added
- (myExec): #ifdef HAVE_SETPGRP
- * etc.c (close_all_fds): added
- (myExec): #ifdef HAVE_SETPGRP
- (mySystem): #ifndef -> #ifdef
- * file.c (_doFileCopy): delete #ifdef HAVE_SETPGRP
- (doFileSave): ditto
- * image.c (openImgdisplay): delete #ifdef HAVE_SETPGRP
- use close_all_fds()
- * search.c (open_migemo): ditto
-
-2002-11-23 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03466] Re: background download when external viewer
- * file.c (doExternal): UFclose(&uf);
-
-2002-11-23 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03464] Re: case insensitive regexp search
- (rewrite [w3m-dev 03462] by Hiroyuki Ito <hito@crl.go.jp>)
- * regex.c (matchWhich): add int
- (newRegex0): igncase
- (regmatch1): matchWhich with re->mode & RE_IGNCASE
- (matchWhich): add igncase
-
-2002-11-23 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03459] background download when external viewer
- * etc.c (myExec): added
- (mySystem): rewrite to use myExec()
- * file.c (doExternal): run background if BackgroundExtViewer
- * proto.h (myExec): added
-
-2002-11-23 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * doc/README.mouse_menu: delete column 10 limit
- * doc-jp/README.mouse_menu: ditto
-
-2002-11-23 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03458] Re: mouse menu
- * display.c (displayBuffer): nTab2 -> nTab, mouse_menu
- * fm.h (nTab2): deleted
- (MouseMenuMap): added
- (MouseMenu): added
- (LIMIT_MOUSE_MENU): added
- * func.c (initMouseMenu): delete mouse_menu_map initialization
- conv_from_system
- mouse_menu->width
- * main.c (main): mouse_menu->in_action = FALSE
- (posTab): check mouse_menu
- (mouse_menu_action): add y arg
- mouse_menu_width check
- (process_mouse): nTab2 -> nTab, mouse_menu
- (nTabLine): deleted
- (calcTabPos): check mouse_menu
- * menu.c (mainMn): x, y
- (selMn): mouse_menu check
- (tabMn): mosue_menu check
- * proto.h (nTabLine): deleted
-
-2002-11-22 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * NEWS: options: -N
-
-2002-11-22 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03457] open URL of command line on each new tabs
- * main.c (delBuffer): static
- (fusage): -N
- (main): add open_new_tab for -N
-
-2002-11-22 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03456] tiling of tab
- * display.c (displayBuffer): use LastTab->y
- (redrawNLine): fix column calculation
- * fm.h (TabBuffer): add x1, x2, y
- * main.c (calcTabPos): added
- (main): calcTabPos()
- (mouse_scroll_line): rewrite
- (process_mouse): use LastTab->y
- (_newT): calcTabPos()
- (calcTabPos): added
- (deleteTab): calcTabPos()
- (moveTab): calcTabPos()
-
-2002-11-22 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * doc/README.mouse_menu: added
- * doc-jp/README.mouse_menu: added
-
-2002-11-22 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03455] mouse menu
- * configure (config.h): MOUSE_FILE
- * display.c (displayBuffer): nTab -> nTab2, N_TAB -> nTabLine()
- (redrawNLine): nTab -> nTab2, N_TAB -> nTabLine()
- mouse_menu support
- * fm.h (nTab2): added
- (N_TAB): deleted
- (NO_TABBUFFER): added
- (struct _MouseMenu): added
- (mouse_menu_map): added
- (mouse_menu): added
- * func.c (initMouseMenu): added
- * main.c (main): initMouseMenu()
- (posTab): mouse_menu support
- (mouse_menu_action): added
- (process_mouse): mouse_menu support
- (reinit): initMouseMenu()
- (nTabLine): added
- (moveTab): check NO_TABBUFFER
- * proto.h (nTabLine): added
- (initMouseMenu): added
- * rc.c (sync_with_option): initMouseMenu()
-
-2002-11-22 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * NEWS: func: NEXT, PREV
-
-2002-11-22 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03454] next / previous buffer
- * funcname.tab (NEXT): added
- (PREV): added
- * main.c (nextBf): added
- (prevBf): added
- * proto.h (nextBf): added
- (prevBf): added
- * doc/README.func (NEXT): added
- (PREV): added
- * doc-jp/README.func (NEXT): added
- (PREV): added
- * scripts/w3mhelp.cgi.in (Buffer operation): nextBf prevBf
-
-2002-11-20 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * NEWS: rc: image_map_list
-
-2002-11-20 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03452] image map
- * display.c (displayBuffer): use getCurrentMapLabel()
- * fm.h (MapArea): delete ifdef MENU_MAP
- (image_map_list): added
- * main.c (followA): don't call retrieveCurrentImg() ifdef USE_IMAGE
- use retrieveCurrentMap() ifndef USE_IMAGE
- (_followForm): indent
- (drawAnchorCursor0): add AnchorList
- (drawAnchorCuror): pass AnchorList to drawAnchorCursor0
- (follow_map): follow_map_panel
- * map.c (searchMapList): added
- (nearestMapArea): n, min default value to -1
- (searchMapArea): added
- (getCurrentMapLabel): added
- (getMapXY): moved
- (retrieveCurrentMap): added
- (follow_map_menu): parsed_tagarg -> name
- rewrite to search map list/area
- (follow_map_panel): parsed_tagarg -> name
- rewrite to search map list/area
- (newMapArea): delete ifdef MENU_MAP
- (append_map_info): added
- (page_info_panel): append_map_info
- * proto.h (follow_map_menu): parsed_tagarg -> name
- (follow_map_panel): parsed_tagarg -> name
- (getCurrentMapLabel): added
- (retrieveCurrentMap): added
- * rc.c (CMT_IMAGE_MAP_LIST): added
- (image_map_list): added
-
-2002-11-20 Yoshinobu Sakane <sakane@d4.bsd.nes.nec.co.jp>
-
- * [w3m-dev 03450] Re: cygwin console on Win9X
- * terms.c (mouse_init): ifdef __CYGWIN__
- (mouse_end): ditto
-
-2002-11-19 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * ftp.c (ftp_fclose): void return
-
-2002-11-19 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03444] download from ftp.
- * file.c (FTPhalfclose: static
- (loadGeneralFile): UFclose
- FTPhalfclose for SCM_FTP
- UFclose before signal back
- (loadImageBuffer): UFclose before signal back
- (openGeneralPagerBuffer): UFclose
- * ftp.c (ftp_fclose): added
- (Ftpfclose): dont read response(), but ftp_fclose()
- (FtpBye): ftp_fclose()
-
-2002-11-19 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03449] Add DOWNLOAD_LIST to doc*/README.func and scripts/w3mhelp.cgi.in
- * doc-jp/README.func (DOWNLOAD_LIST): added
- * doc/README.func (DOWNLOAD_LIST): added
- * scripts/w3mhelp.cgi.in (Miscellany): add ldDL
-
-2002-11-19 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03448] Some fixes
- * url.c (KeyAbort): SIGNAL_RETURN
- * .cvsginore: delete w3mimgsize
- * scripts/.cvsignore: delete xface2xbm
- * scripts/xface2xbm.in: deleted
-
-2002-11-19 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03447] Re: Open download list panel on new tab
- * main.c (download_action): buffer management deleted
- (ldDL): buffer management moved here
-
-2002-11-19 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * NEWS: rc: open_tab_dl_list
-
-2002-11-19 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03446] Open download list panel on new tab
- * fm.h (open_tab_dl_list): added
- * main.c (download_action): buffer delete when download done
- (ldDL): open buf in new tab if open_tab_dl_list
- * rc.c (CMT_OPEN_TAB_DL_LIST): added
- (open_tab_dl_list): added
-
-2002-11-19 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03445] download list for "w3m foo.tar.gz"
- * main.c (main): display download list
-
-2002-11-19 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03443] Can't display "echo only_one_line | w3m"
- * display.c (redrawNLine): check 1st line
-
-2002-11-16 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 03442] Re: setting form on loading
- * form.c (preFormUpdateBuffer): ifdef MENU_SELECT
-
-2002-11-16 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03441] charset of save file
- * file.c (_doFileCopy): use conv_from_system()
- (doFileSave): conv_from_system()
- * main.c (DownloadListBuffer): conv_from_system()
-
-2002-11-16 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03440] Re: restore alarm event
- * fm.h (BP_RELOAD): added
- (DOWNLOAD_LIST_TITLE): added
- * main.c (main): if BP_RELOAD, do reload
- (reload): if buffer is DOWNLOAD_LIST, ldDL()
- (DownloadListBuffer): rewrite with DOWNLOAD_LIST_TITLE
- (download_action): delete "update"
- don't delete prev buffer
- (ldDL): rewrite to do reload
-
-2002-11-16 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03439] restore alarm event
- * fm.h (AL_RESTORE): added
- * main.c (alarm_sec): deleted
- (alarm_status): deleted
- (alarm_buffer): deleted
- (alarm_event): deleted
- (AlarmEvent): added
- (CurrentAlarm): added
- (PrevAlarm): added
- (main): rewrite with CurrentAlarm
- (SigAlarm): rewrite with CurrentAlarm
- (copyAlarmEvent): added
- (setAlarm): if AL_RESTORE, copy back from PrevAlarm
- rewrite with CurrentAlarm
-
-2002-11-16 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03438] Re: segmentation fault by large complex table.
- * table.c (check_table_height): check MAXROWCELL
- * table.h (MAXROWCELL): added
-
-2002-11-16 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03437] Re: Check image size
- * fm.h (MAX_IMAGE_SIZE): changed to 2048
-
-2002-11-16 Hiroyuki Ito <hito@crl.go.jp>
-
- * [w3m-dev 03436] Check image size
- * file.c (process_img): check w > MAX_IMAGE_SIZE
- (HTMLlineproc2body): check w,h > MAX_IMAGE_SIZE
- * fm.h (MAX_IMAGE_SIZE): added
- * image.c (getImageSize): check w,h,width,height > MAX_IMAGE_SIZE
-
-2002-11-16 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03435] save image with SAVE
- * buffer.c (discardBuffer): check image
- * file.c (loadImageBuffer): add st
- IMG_FLAG_DONE_REMOVE
- s/sourcefile/mailcap_source/
- * fm.h (IMG_FLAG_DONT_REMOVE): added
- * image.c (drawImage): & IMG_FLAG_LOADED
- (deleteImage): & IMG_FLAG_DONT_REMOVE
- (showImageProgress): & IMG_FLAG_LOADED
- (getImage): & IMG_FLAG_LOADED
- (getImageSize): & IMG_FLAG_LOADED
- * main.c (vmSrc): delete ifdef USE_IMAGE
-
-2002-11-16 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03434] Re: cygwin console on Win9X
- * terms.c (cygwin_mouse_btn_swapped): ifdef USE_MOUSE
- (lastConMouse): deleted
- (check_win9x): static
- (read_win32_console): static
- (GetConsoleHwnd): static
- (cygwin_version): ifdef USE_MOUSE, static
- (check_cygwin_console): static
- (NEED_XTERM_ON): added
- (NEED_XTERM_OFF): added
- (NEED_CYGWIN_ON): added
- (NEED_CYGWIN_OFF): added
- (XTERM_TITLE): static char[]
- (SCREEN_TITLE): static char[]
- (CYGWIN_TITLE): static char[]
- (term_title): check title_str
- * terms.h (LASTLINE): added
- (is_xterm): deleted
- (enable_win9x_console_input): extern
- (disable_win9x_console_input): extern
- (NEED_XTERM_ON): deleted
- (NEED_XTERM_OFF): deleted
-
-2002-11-16 WATANABE Katsuyuki <katsuyuki_1.watanabe@toppan.co.jp>
-
- * [w3m-dev 03433] cygwin console on Win9X
- * configure (config.h): SUPPORT_WIN9X_CONSOLE_MBCS
- * linein.c (inputLineHistSearch): enable_win9x_console_input()
- disable_win9x_console_input()
- * main.c (mouse): cygin_mouse_btn_swapped
- * terms.c (is_xterm): static
- (isLocalConsole): added
- (cygwin_mouse_btn_swapped): added
- (check_win32_console): deleted
- (check_win9x): added
- (init_win32_console_handle): check ttyslot()
- (enable_win9x_console_input): added
- (disable_win9x_console_input): added
- (read_win32_console_input): delete ifdef MOUSE
- (cmp_tv): deleted
- (subtract_tv): deleted
- (GetConsoleHwnd): added
- (cygwin_version): added
- (select_or_poll_win32_console): deleted
- (check_cygwin_console): added
- (select_win32_console): deleted
- (set_tty): check_cygin_console()
- (term_title): SetConsoleTitle()
- (CYGWIN_ON): added
- (CYGIN_OFF): added
- (mouse_init): NEED_CYGWIN_ON
- (mouse_end): NEED_CYGWIN_OFF
- * terms.h (cygwin_mouse_btn_swapped): added
- (enable_win9x_console_input): added
- (disable_win9x_console_input): added
- (NEED_CYGWIN_ON): added
- (NEED_CYGWIN_OFF): added
-
-2002-11-16 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03432] Re: tab browser
- * display.c (displayBuffer): s/buf->LINES/LASTLINES/ in cygwin
-
-2002-11-16 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * NEWS: func: DOWNLOAD_LIST
-
-2002-11-16 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03431] save file by background process
- * file.c (loadGeneralFile): use _doFileCopy()
- (_doFileCopy): renamed from doFileCopy()
- lock
- fork & save
- (doFileSave): lock
- fork & save
- * fm.h (DownloadList): added
- (FirstDL): added
- (LastDL): added
- * form.c (struct internal_action): add download
- * funcname.tab (DOWNLOAD_LIST): added
- * html.h (URLFile): add url
- * main.c (dump_extra): add add_download_list
- (main): add_download_list, ldDL()
- (_quitfm): added
- (quitfm): rewrite with _quitfm()
- (qquitfm): ditto
- (w3m_exit): stopDownload()
- (addDownloadList): added
- (checkDownloadList): added
- (convert_size3): added
- (DownloadListBuffer): added
- (download_action): added
- (stopDownload): added
- (ldDL): added
- * proto.h (ldDL): added
- (convert_size): added
- (convert_size2): added
- (doFileCopy): deleted
- (_doFileCopy): added
- (addDownloadList): added
- (stopDownload): added
- (checkDownloadList): added
- (download_action): added
- * url.c (openURL): save url in uf
-
-2002-11-15 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03430] disable display of alarm command
- * main.c (SigAlarm): remove display_message_nsec()
- (setAlarm): show sec
-
-2002-11-15 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * NEWS: env,rc: https_proxy
-
-2002-11-15 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03429] https proxy
- * fm.h (HTTPS_proxy): added
- (HTTPS_proxy_parsed): added
- * main.c (main): check https_proxy
- * rc.c (CMT_HTTPS_PROXY): added
- (https_proxy): added
- (parse_proxy): HTTPS_proxy
- * url.c (openURL): for HTTPS, use HTTPS_proxy
- (schemeToProxy): HTTPS_proxy_parsed
-
-2002-11-14 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03428] install manual as w3m.exe.1 on Cygwin
- * XMakefile (MAN1_TARGET): added
- (HELP_TARGET): added
- (install): use MAN1_TARGET, HELP_TARGET
- (uninstall): use MAN1_TARGET, uninstall HELP_TARGET
-
-2002-11-14 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03427] Re: Select the nearest map area as default.
- * map.c (newMapArea): accept sign chars
- if points is not enough, return as SHAPE_UNKNOWN
-
-2002-11-14 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03425] charset of title
- * display.c (displayBuffer): buffername converted to system coding
- for term title
-
-2002-11-14 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03424] Content length
- * file.c (loadGeneralFile): current_content_length before do_download
- (save2tmp): current_content_length move before return
-
-2002-11-12 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 03422] Re: setting form on loading
- * form.c (loadPreForm): initialize name
- check textarea, name for /textarea
-
-2002-11-12 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03418] Re: tab browser
- * display.c (redrawNLine): s/clrtoeol/clrtoeolx/
- move rootY
-
-2002-11-12 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03417] install_w3mimgdisplay
- * configure: define install_w3mimgdisplay
- after use_w3mimg_fb determined
-
-2002-11-12 Akira TAGOH <at@gclab.org>
-
- * [w3m-dev 03415] fix a build issue for 64bit arch
- * gcmain.c: deleted
- * main.c: no need gcmain.c
- s/MAIN/main/
- * mktable.c: ditto
- * w3mbookmark.c: ditto
- * w3mhelperpanel.c: ditto
-
-2002-11-12 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * doc/w3m.1: update
- * doc-jp/w3m.1: update
- * NEWS: update: -show-option
-
-2002-11-12 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03414] Re: show parameter
- * main.c (fusage): add -show-option
- (MAIN): check -show-option
-
-2002-11-12 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03413] Re: setting form on loading
- * form.c (loadPreForm): add textarea
- (preFormUpdateBuffer): submit if value is matched as well
- case FORM_TEXTAREA
- case FORM_SELECT ifdef MENU_SELECT
-
-2002-11-12 Yuji Abe <cbo46560@pop12.odn.ne.jp>
-
- * [w3m-dev 03411] do AUXBIN_TARGETS
- * scripts/Makefile (all): add AUXBIN_TARGETS
- (clean): add AUXBIN_TARGETS
-
-2002-11-12 AIDA Shinra <aida-s@jcom.home.ne.jp>
-
- * [w3m-dev 03408] edit From in w3mail.cgi
- * scripts/w3mmail.cgi.in: edit from as well
-
-2002-11-12 AIDA Shinra <aida-s@jcom.home.ne.jp>
-
- * [w3m-dev 03408] fix Bug#87472
- MOUSE_SCROLL_LINE should be a run-time option
- * fm.h (relative_wheel_scroll): added
- (fixed_wheel_scroll_count): added
- (relative_wheel_scroll_ratio): added
- * main.c (mouse_scroll_line): added
- (process_mouse): s/MOUSE_SCROLL_LINE/mouse_scroll_line()/
- * menu.c (MOUSE_SCROLL_LINE): deleted
- * terms.h (MOUSE_SCROLL_LINE): deleted
- * rc.c (CMT_RELATIVE_WHEEL_SCROLL): added
- (CMT_RELATIVE_WHEEL_SCROLL_RATIO): added
- (CMT_FIXED_WHEEL_SCROLL_COUNT): added
- (wheelmode): added
- (params3): add relative_wheel_scroll,
- relative_wheel_scroll_ratio,
- fixed_wheel_scroll_count
- * NEWS: updated
-
-2002-11-12 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03407] char GlobalKeymap -> unsigned char GlobalKeymap
- * fm.h (GlobalKeymap): char->unsigned char
- (EscKeymap): ditto
- (EscBKeymap): ditto
- (EscDKeymap): ditto
- (PcKeymap): ditto
- * keybind.c: ditto
- * keybind_lynx.c: ditto
-
-2002-11-12 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03406]
- * scripts/Makefile: add AUXBIN_DIR
- update LIB_DIR, HELP_DIR
- xface2xpm installed in AUXBIN_DIR
- * scripts/multipart/Makefile: update LIB_DIR
- * scripts/w3mman/Makefile: update LIB_DIR
-
-2002-11-12 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03405] Re: tab browser
- * main.c (moveTab): B_FORCE_REDRAW
-
-2002-11-10 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03401] w3mhelp.cgi
- * proto.h (tabMn): nulcmd ifndef USE_MENU
- * scripts/w3mhelp-funcdesc.en.pl.in: add LINEEDIT:EDITOR
- * scripts/w3mhelp-funcdesc.ja.pl.in: add LINEEDIT:EDITOR
- Tab operation
- * scripts/w3mhelp-funcname.pl.in: add LINEEDIT:EDITOR C-o
- * scripts/w3mhelp.cgi.in: add tabA in Hyperlink operation
- add tabURL, tabrURL in File/Stream operation
- add Tab operation
- add lineedit_editor in Line edit mode
-
-2002-11-10 NOMIYA Masaru <nomiya@ttmy.ne.jp>
-
- * [w3m-dev 03399]
- * XMakefile: ;; -> ;
-
-2002-11-10 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 03398] auxbindir
- * XMakefile: EXT_TARGETS -> LIB_TARGETS, AUXBIN_TARGETS
- * config.h.dist: add AUXBIN_DIR
- LIB_DIR is cgi-bin
- * configure: add -auxbindir
- add AUXBIN_DIR
- LIB_DIR is cgi-bin
- EXT_TARGETS -> LIB_TARGETS, AUXBIN_TARGETS
- * file.c (compression_decoder): libfile_p -> auxbin_p
- (check_command): libfile_p -> auxbin_p
- use w3m_auxbin_dir() instead of w3m_lib_dir()
- (acceptableEncoding): libfile_p -> auxbin_p
- (xface2xpm): use auxbinFile() instead of libFile()
- (uncompress_stream): libfile_p -> auxbin_p
- use auxbinFile() instead of libFile()
- * image.c (getCharSize): use w3m_auxbin_dir() instead of w3m_lib_dir()
- (openImgdisplay): use w3m_auxbin_dir() instead of w3m_lib_dir()
- * indep.c (w3m_auxbin_dir): added
- * indep.h (w3m_auxbin_dir): added
- * proto.h (auxbinFile): added
- * rc.c (auxbinFile): added
- (libFile): #if 0, no longer used
- (helpFile): used only #ifndef USE_HELP_CGI
- * NEWS: separate auxbindir and libdir (local-CGI, file:///$LIB/)
-
-2002-11-09 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03396] Re: meta refresh problem
- * main.c (MAIN): AL_IMPLICIT -> alarm_status
- (SigAlarm): AL_IMPLICIT -> alarm_status
-
-2002-11-09 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03391] use editor when input at last line
- * linein.c (_editor): added
-
-2002-11-09 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03390] some fixes related with form
- * form.c (input_textarea): goto input_end
- unlink(tmpf);
- * main.c (_followForm): s/TEXT/Password/
-
-2002-11-09 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03388] meta refresh problem
- * fm.h (AL_IMPLICIT_DONE): 3->4
- (AL_ONCE): 8
- (AL_IMPLICIT_ONCE): (AL_IMPLICIT|AL_ONCE)
- * main.c (MAIN): & AL_IMPLICIT, & AL_IMPLICIT_DONE
- (SigAlarm): & AL_IMPLICIT, & AL_IMPLICIT_DONE, & AL_ONCE
- (setAlaramEvent): & AL_IMPLICIT
-
-2002-11-09 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03387] Re: tab browser
- * buffer.c (newBuffer): buf->LINES initialize
- (gotoLine): use buf->LINES
- (gotoRealLine): use buf->LINES
- * display.c (displayBuffer): check by buf->LINES
- (redrawNLine): buf->LINES
- (redrawLine): buf->LINES
- (redrawLineImage): no need buf->rootY
- (cursorDown): buf->LINES
- (arrangeCursor): buf->LINES
- * etc.c (columnSkip): buf->LINES
- (lineSkip): buf->LINES
- (currentLineSkip): buf->LINES
- * fm.h (Buffer): add LINES
- * main.c (nscroll): Currentbuf->LINES
- (pgFore): Currentbuf->LINES
- (pgBack): Currentbuf->LINES
- (ctrCsrV): Currentbuf->LINES
- (movD): Currentbuf->LINES
- (movU): Currentbuf->LINES
- (_goLine): Currentbuf->LINES
- (drawAnchorCursor): Currentbuf->LINES
- (setOpt): B_REDRAW_IMAGE
- (newT): B_REDRAW_IMAGE
- (closeT): B_REDRAW_IMAGE
- (nextT): B_REDRAW_IMAGE
- (prevT): B_REDRAW_IMAGE
- (moveTab): B_NORMAL
-
-2002-11-09 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03386] Re: Interrupt in no_proxy_check()
- * file.c (getAuthCookie): term_cbreak()
- (loadGeneralFile): term_cbreak()
- term_raw()
- preFormUpdateBuffer() before term_raw()
- (loadHTMLstream): term_raw()
-
-2002-11-07 Katsumi@yamaoka.cc
-
- * [w3m-dev 03385] install-sh typo
- * install-sh: s/'/"/
-
-2002-11-07 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03383] Select the nearest map area as default.
- * fm.h (MapArea): add center_x, center_y
- * map.c (nearestMapArea): added
- (follow_map_menu): initial by nearestMapArea()
- (newMapArea): set center_x, center_y
-
-2002-11-07 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03382] Interrupt in no_proxy_check()
- * url.c (check_no_proxy): SIGINT trap by KeyAbort
-
-2002-11-06 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03380] fix configure
- * configure: s/INSTALL_W3MIMGDISPLAY/install_w3mimgdisplay/
- already define
- * config.h.dist (INSTALL_W3MIMGDISPLAY): added
-
-2002-11-06 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 03379] setuid w3mimgdisplay and check console tty
- * XMakefile: w3mimgdisplay install by INSTALL_W3MIMGDISPLAY
- * configure: ask setuid w3mimgdisplay
- (w3mimgdisplay_setuid): added
- (INSTALL_W3MIMGDISPLAY): added
- * etc.c (mySystem): close until FOPEN_MAX
- * image.c (openImgdisplay): setenv W3M_TTY
- stderr to /dev/null
- close until FOPEN_MAX
- * install-sh: -o, -g for owner, group
- * proto.h (ttyname_tty): added
- * search.c (open_migemo): stderr to /dev/null
- close until FOPEN_MAX
- * terms.c (ttyname_tty): added
- * w3mimgdisplay.c: include <sys/types.h>, <unistd.h>
- W3MIMGDISPLAY_SETUID
- stderr to /dev/null
- * w3mimg/w3mimg.c: include <sys/types.h>, <unistd.h>
- W3MIMGDISPLAY_SETUID
- * w3mimg/fb/fb_w3mimg.c (check_tty_console): added
-
-2002-11-06 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03377] sync_with_option
- * etc.c (loadPassword): reset passwords
- * form.c (loadPreForm): reset PreForm
- * main.c (option_assigned): deleted
- (parse_proxy): deleted
- (MAIN): move initCookie(), setLocalCookie()
- after sync_with_option()
- delete parseURL for *_proxy
- s/WrapSearch/WrapDefault/
- move initKeymap(), initMenu() after setupscreen()
- sync_with_option() after init_rc()
- * rc.c (pre_form_file): move in params9 (network settting)
- (sync_with_option): initKeymap(), initMenu() is done
- if fmInitialized
- (init_rc): delete sync_with_option()
-
-2002-11-06 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03375] NULL check of CurrentTab
- * display.c (disp_message_nsec): check CurrentTab
- * file.c (doExternal): check CurrentTab
- * image.c (loadImage): check CurrentTab
-
-2002-11-06 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 03374] disable_secret_security_check
- * etc.c (openSecurityFile): disable_secret_security_check
- * fm.h (disable_secret_security_check): added
- * rc.c (CMT_DISABLE_SECRET_SECURITY_CHECK): added
- (disable_secret_security_check): added
- * NEWS: rc: disable_secret_security_check
-
-2002-11-06 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * NEWS: update
-
-2002-11-06 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * rc.c (CMT_PRE_FORM_FILE): added
- (pre_form_file): added
-
-2002-11-06 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * doc-jp/README.tab: added [w3m-dev 03372]
- * doc/README.tab: brief translation
-
-2002-11-06 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03372] tab browser
- * display.c (displayBuffer): add ny
- rootY offset by tab
- tab line
- (cursorDown): offset rootY
- (arrangeCursor): offset rootY
- * etc.c (columnSkip): offset rootY
- (lineSkip): offset rootY
- (currentLineSkip): offset rootY
- * file.c (HTMLlineproc2body): ATTR_TARGET
- * fm.h (MapArea): add target
- (Buffer): add rootY
- (TabBuffer): added
- (Currentbuf): comment out
- (Firstbuf): comment out
- (CurrentTab): added
- (FirstTab): added
- (LastTab): added
- (open_tab_blank): added
- (close_tab_back): added
- (nTab): added
- (TabCols): added
- (N_TAB): added
- (Currentbuf): CurrentTab->currentBuffer
- (Firstbuf): CurrentTab->firstBuffer
- * funcname.tab (CLOSE_TAB): added
- (NEW_TAB): added
- (NEXT_TAB): added
- (PREV_TAB): added
- (TAB_GOTO): added
- (TAB_GOTO_RELATIVE): added
- (TAB_LEFT): added
- (TAB_LINK): added
- (TAB_MENU): added
- (TAB_RIGHT): added
- * html.c (ALST_AREA): add ATTR_TARGET
- * image.c (showImageProgress): offset rootY
- * main.c (_newT): added
- (followTab): added
- (moveTab): added
- (check_target): added
- (MAIN): init tab related values
- buf => tab
- (nscroll): offset rootY
- (pgFore): offset rootY
- (pgBack): offset rootY
- (ctrCsrV): offset rootY
- (_movD): offset rootY
- (_movU): offset rootY
- (_goLine): offset rootY
- (_mark): offset rootY
- (followA): check target
- (_followForm): offset rootY
- (drawAnchorCursor0): offset rootY
- (drawAnchorCursor): offset rootY
- (backBf): check close_tab_back
- (follow_map): rewrite for tab, check target
- (posTab): added
- (process_mouse): tab operation
- offset rootY
- (deleteFiles): for all buffers in all tabs
- (newTab): added
- (newT): added
- (numTab): added
- (deleteTab): added
- (closeT): added
- (nextT): added
- (prevT): added
- (followTab): added
- (tabA): added
- (tabURL0): added
- (tabURL): added
- (tabrURL): added
- (moveTab): added
- (tabR): added
- (tabL): added
- * map.c (follow_map_menu): return MapArea
- (newMapArea): add target args
- * menu.c (SelTabMenu): added
- (SelTabV): added
- (initSelTabMenu): added
- (smChTab): added
- (smDelTab): added
- (MainMenuItem): add Select Tab
- on New Tab
- (popupMenu): add initSelTabMenu()
- offset rootY
- (mainMn): offset rootY
- (selMn): offset rootY
- (initSelectMenu): offset rootY
- (tabMn): added
- * proto.h (newT): added
- (closeT): added
- (nextT): added
- (prevT): added
- (tabA): added
- (tabURL): added
- (tabrURL): added
- (tabR): added
- (tabL): added
- (newTab): added
- (deleteTab): added
- (follow_map_menu): return MapArea
- (newMapArea): add target arg
- (tabMn): added
- * rc.c (CMT_OPEN_TAB_BLANK): added
- (CMT_CLOSE_TAB_BACK): added
- (open_tab_blank): added
- (close_tab_back): added
- * doc/README.func (CLOSE_TAB): added
- (NEW_TAB): added
- (NEXT_TAB): added
- (PREV_TAB): added
- (TAB_GOTO): added
- (TAB_GOTO_RELATIVE): added
- (TAB_LEFT): added
- (TAB_LINK): added
- (TAB_MENU): added
- (TAB_RIGHT): added
- * doc-jp/README.func: ditto doc/README.func
-
-2002-11-06 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * doc-jp/README.pre_form: added [w3m-dev 03373]
- * doc/README.pre_form: brief translation
-
-2002-11-06 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * etc.c (PASS_IS_READABLE_MSG): deleted
- (FILE_IS_READABLE_MSG): added
- (openPasswdFile): deleted
- (openSecretFile): delete error_msg arg
- (loadPasswd): use openSecretFile()
- * form.c (next_token): delete unused static decl
- (FILE_IS_READABLE_MSG): deleted
- (loadPreForm): no need pass error_msg
- * proto.h (openSecretFile): delete error_msg arg
-
-2002-11-06 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03373] setting form on loading
- * config.h.dist (PRE_FORM_FILE): added
- * configure (PRE_FORM_FILE): added
- * etc.c (openPasswdFile): define by openSecretFile()
- (openSecretFile): renamed, not static
- * file.c (loadGeneralFile): preFOrmUpdateBuffer()
- * fm.h (Buffer): add submit
- (pre_form_file): added
- * form.c (struct pre_form_item): added
- (struct pre_form): added
- (next_token): added
- (PreForm): added
- (add_pre_form): added
- (add_pre_form_item): added
- (loadPreForm): added
- (preFormUpdateBuffer): added
- * frame.c (renderFrame): add preFormUpdateBuffer()
- * main.c (MAIN): buf->submit check
- * proto.h (preFormUpdateBuffer): added
- (openSecretFile): added
- (loadPreForm): added
- * rc.c (sync_with_option): add loadPreForm()
-
-2002-11-06 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03371] segmentation fault by large complex table.
- * table.c (bsearch_2short): indexarry char to short
- (bsearch_double): ditto
- (dv2sv): ditto
- (table_rule_width): ditto
- (set_integrated_width): ditto
- (check_table_height): ditto
- (feed_table_tag): ditto
- * table.h (struct table_cell): index, eindex char to short
-
-2002-11-05 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * w3m 0.3.2
- * version.c.in: update
- * doc/README: version 0.3.2, release date
- * doc-jp/README: ditto
- * NEWS: update
-
-2002-11-05 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * scripts/w3mhelp.cgi.in: add chkWORD
-
-2002-11-04 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev-en 00827] Re: w3m-cvs segfaults on news://<mid> URLs
- * url.c (openURL): check pu->file for news:
-
-2002-10-31 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * fix compilation warnings
- * w3mimgdisplay.c: add #include <string.h> for strlen, strcmp
- * w3mimg/fb/fb.c: add #include <string.h> for memset
- * w3mimg/fb/fb_w3mimg.c: add #include <string.h> for memset
-
-2002-10-31 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * 0.3.2 release candidate 4
- * version.c.in: update
-
-2002-10-31 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 03365] ~/.netrc support
- * etc.c (add_auth_pass_entry): add netrc arg
- add new entry to tail
- (find_auth_pass_entry): ent->host == NULL is "default"
- (loadPasswd): rewrite with next_token, parsePasswd,
- openPasswdFile
- load ~/.netrc
- (next_token): added
- (parsePasswd): added
- (openPasswdFile): added
- * ftp.c (openFTP): use find_auth_user_passwd
- * NEWS: ~/.netrc
-
-2002-10-31 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03363] refresh download
- * file.c (HTMLtagproc1): alarm is implicit once
- * fm.h (AL_IMPLICIT_ONCE): added
- * main.c (searchKeyData): reset CurrentKeyData, CurrentCmdData
- (SigAlarm): CurrentCmdData is saved to data
- message displayed on AL_EXPLICIT
- clear alarm when AL_IMPLICIT_ONCE
- (setAlarmEvent): AL_IMPLICIT_ONCE
-
-2002-10-31 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03362] Re: support for http://user:pass@www.url.com
- * etc.c (loadPasswd): accept host, passwd
-
-2002-10-31 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 03359] support for http://user:pass@www.url.com
- * etc.c (find_auth_user_passwd): use ParsedURL for args
- use user and passwd if these are defined in ParsedURL
- * file.c (getAuthCookie): change find_auth_user_passwd()
- * proto.h (find_auth_user_passwd): change prototype
- * NOTE: http://user:pass@www.url.com is NOT RECOMMENDED
- for security reasons.
+ * cookie.c: Free tmp.
-2002-10-30 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+ * local.c: Remove unreachable return.
- * [w3m-dev 03357] tab in <pre> in <ul>,<ol>,...
- * file.c (HTMLlineproc2): check indent for tabstop
+2015-08-10 Alan Grow <alangrow@gmail.com>
-2002-10-30 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+ * url.c (HTTPrequest):
+ - Use Content-Type instead of Content-type.
+ - Use Content-Length instead of Content-length.
+ Origin: https://github.com/acg/w3m/commit/5946c2784d4eae46ec06e52390e43a874b3395fc
- * [w3m-dev 03354] display current line number
- * display.c (displayBuffer): %3d -> %d
+2015-08-09 Egmont Koblinger <egmont@users.sourceforge.net>
-2002-10-29 Fumitoshi UKAI <ukai@debian.or.jp>
+ * terms.c: Support sgrmouse for skip_escseq.
+ * menu.c: Adjust comments for keymaps.
+ Origin: https://sourceforge.net/p/w3m/patches/65/#e2aa
- * 0.3.2 release candidate 3
- * version.c.in: update
+2015-08-09 Tatsuya Kinoshita <tats@debian.org>
-2002-10-29 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+ * keybind_lynx.c: Support sgrmouse for Lynx-like key binding.
+ cf. https://sourceforge.net/p/w3m/patches/65/
- * [w3m-dev 03352] w3mimgsize is not necessary.
- * XMakefile (IMGSIZE): removed
- * config.h.dist (IMGSIZE): removed
- * configure (imgtarget): remove IMGSIZE
- (config.h): remove IMGSIZE
- * rc.c (CMT_IMGSIZE): removed
- * doc/README.img: remove imgsize
- * w3mimgsize.c: removed
+2015-08-09 IWAMOTO Kouichi <sue@iwmt.org>
-2002-10-28 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+ * menu.c: Support SGR style mouse handler for menu.
+ cf. https://github.com/tats/w3m/issues/5
+ Origin: https://gist.github.com/ttdoda/83fbcf676a21da28432b
+ Bug: https://sourceforge.net/p/w3m/patches/65/
- * [w3m-dev 03351] w3m core dump
- * table.c (feed_table_tag): fix rendering problem (maybe security hole?)
+2015-08-06 Richard Quirk <richard@quirk.es>
-2002-10-28 Fumitoshi UKAI <ukai@debian.or.jp>
+ Fix problems reported by cppcheck, clang --analyze and gcc warnings.
+ Origin: https://github.com/tats/w3m/pull/6
- * [w3m-dev-en 00796]
- * configure: expand here. ($var in Makefile is $v + ar)
- * XMakefile: clean w3mimg/**/*.o
+ * Str.c, Str.h: Strnew_charp and co do not modify the char* input.
-2002-10-28 Fumitoshi UKAI <ukai@debian.or.jp>
+ * local.c: Close temp file if pipe open fails.
- * [w3m-dev-en 00795]
- * configure: IMLIB_CONFIG, IMLIB2_CONFIG, GDKPIXBUF_CONFIG
- * rc.c (CMT_DISP_IMAGE): need if not defined USE_IMAGE
+ * rc.c: Avoid passing null to strlen.
-2002-10-27 Fumitoshi UKAI <ukai@debian.or.jp>
+ * file.c: Initialise hidden_input to NULL.
+ This prevents a possible use of garbage value on line 3017.
- * 0.3.2 release candidate 2
- * version.c.in: update
+ * file.c: Use pclose for pipe.
-2002-10-26 Fumitoshi UKAI <ukai@debian.or.jp>
+2015-08-05 IWAMOTO Kouichi <sue@iwmt.org>
- * [w3m-dev-en 00788]
- * fm.h (displayImage): FALSE ifndef USE_IMAGE
- * rc.c (displayImage): display_image even if USE_IMAGE undefined
- (sync_with_options): display_image is forced to be FALSE
- ifndef USE_IMAGE
+ * main.c: Fix that SGR style mouse handler has off-by-one problem.
+ cf. https://github.com/tats/w3m/issues/5
+ Origin: https://gist.github.com/ttdoda/30c189a63d483beeb207
+ Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/w3m/+bug/1390768
+ Bug: https://sourceforge.net/p/w3m/patches/65/
-2002-10-26 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev-en 00783] hsaka@mth.biglobe.ne.jp (Hironori SAKAMOTO)
- add display_lineinfo option
- * display.c (displayBuffer): check displayLineInfo
- * fm.h (displayLineInfo): added
- * rc.c (CMT_DISPLINEINFO): added
- (display_lineinfo): added
- * NEWS (rc: display_lineinfo): add
+2015-07-31 yshl <yshl@takechiyo.net>
-2002-10-26 Fumitoshi UKAI <ukai@debian.or.jp>
+ * Bonus/goodict.cgi:
+ - Use Encode.pm instead of NKF.
+ - Update to the current URL.
+ - Enable to select search mode.
+ Origin: https://github.com/tats/w3m/pull/4
- * [w3m-dev-en 00781] "Clemens Fischer" <ino-waiting@gmx.net>
- zope doesn't recognize implied *LWS in accept-language
- * rc.c (sync_with_option): remove optional LWS
+2015-07-20 Tatsuya Kinoshita <tats@debian.org>
-2002-10-26 Fumitoshi UKAI <ukai@debian.or.jp>
+ * README: Add short description.
- * [w3m-dev-en 00780] "Carlo E. Prelz" <fluido@fluido.as>
- always print on screen the relative position
- * display.c (displayBuffer): relative position
+ * doc-jp/FAQ.html, doc/FAQ.html: Mention GOPHER_PROXY and FTP_PROXY.
-2002-10-26 Fumitoshi UKAI <ukai@debian.or.jp>
+2015-07-05 Tatsuya Kinoshita <tats@debian.org>
- * 0.3.2 release candidate 1
- * version.c.in: update
+ * doc-jp/FAQ.html, doc/FAQ.html: Mention HTTPS_PROXY.
+ Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=791425
-2002-10-26 Gary Johnson <garyjohn@spk.agilent.com>
+2015-06-27 yshl <yshl@takechiyo.net>
- * [w3m-dev-en 00777] patch to fix w3m-0.3.1 word break problem
- * file.c (is_period_char):
- 0x203A - SINGLE RIGHT-POINTING ANGLE QUOTATION MARK
- (is_beginning_char):
- 0x2018 - LEFT SINGLE QUOTATION MARK
- 0x2039 - SINGLE LEFT-POINTING ANGLE QUOTATION MARK
- (is_word_char): add several chars ifndef JP_CHARSET
- add ':' and '*'
+ * doc-jp/README.SSL: Modify certdata2pem.rb to assume the encoding
+ of the certdata.txt to be UTF-8.
+ Origin: https://github.com/tats/w3m/pull/3
-2002-10-17 Hiroyuki Ito <hito@crl.go.jp>
+2015-06-23 Daniel Schepler <dschepler@gmail.com>
- * [w3m-dev 03342]
- * doc/README.img: updated
- * doc-jp/README.img: updated
+ * terms.c: Wrap the functions used by image.c in USE_IMAGE.
+ Origin: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=789539
-2002-10-17 Daiki Ueno <ueno@unixuser.org>
+2015-05-09 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev 03341] white space is needed to close an empty-element tag
- * parsetagx.c (parse_tag): extract tagname until '/'
+ * doc-jp/README.siteconf, doc/README.siteconf:
+ Update examples of siteconf for twitter.com.
-2002-10-11 Fumitoshi UKAI <ukai@debian.or.jp>
+2015-05-03 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev 03339] Re: Debian Bug#164098 w3m: <sup> is not properly supported
- * file.c (HTMLtagproc1): HTML_SUP, HTML_N_SUP, HTML_SUB, HTML_N_SUB
- * html.c (TagMAP): sup, /sup, sub, /sub
- * html.c (HTML_SUP): added
- (HTML_N_SUP): added
- (HTML_SUB): added
- (HTML_N_SUB): added
- * table.c (feed_table_tag): HTML_SUP, HTML_N_SUP, HTML_SUB, HTML_N_SUB
- * tagtable.tab (sup): added
- (/sup): added
- (sub): added
- (/sub): added
+ * main.c: Correct GC version confirmation.
-2002-10-11 Hiroyuki Ito <hito@crl.go.jp>
+2015-05-02 yshl <yshl@takechiyo.net>
- * [w3m-dev 03337] delete unused functions in fb.c etc. (Re: canna patch)
- * w3mimg/fb/fb.c (fb_image_rotate): delete
- (fb_frame_rotate): delete
- (fb_pset): delete
- (fb_get_color): delete
- (fb_clear): delete
- (fb_cmap_disp): delete
- (fb_fscrn_disp): delete
- (fb_vscrn_disp): delete
- * w3mimg/fb/fb.h (fb_image_rotate): delete
- (fb_frame_rotate): delete
- (fb_pset): delete
- (fb_get_color): delete
- (fb_clear): delete
- (fb_cmap_disp): delete
- (fb_fscrn_disp): delete
- (fb_vscrn_disp): delete
- * w3mimg/fb/fb_img.c (fb_image_draw_simple): delete
- * w3mimg/fb/fb_img.h (fb_image_draw_simple): delete
-
- * w3mimg/fb/license.txt: removed, follow w3m license
-
-2002-10-09 AIDA Shinra <aida-s@jcom.home.ne.jp>
-
- * [w3m-dev 03336] proxy check for https authorization:
- * url.c (HTTPrequest): check CONNECT request for ssl
-
-2002-10-06 Hiroyuki Ito <hito@crl.go.jp>
-
- * [w3m-dev 03333] x11 image animation
- * w3mimg/x11/x11_w3mimg.c (struct x11_image): added
- (x11_img_new): added
- (resize_image): added
- (x11_load_image): rewrite GdkPixbuf
- (x11_show_image): rewrite GdkPixbuf
- (x11_free_image): rewrite GdkPixbuf
-
-2002-10-02 Yuji Abe <cbo46560@pop12.odn.ne.jp>
-
- * [w3m-dev 03332] Re: hang up when seeing web page that contains xbm file
- * w3mimg/x11/x11_w3mimg.c (x11_load_image): transparent support
-
-2002-10-02 Yoshinobu Sakane <sakane@d4.bsd.nes.nec.co.jp>
-
- * [w3m-dev 03331] Re: hang up when seeing web page that contains xbm file
- * configure: check gdk-pixbuf-config existence
-
-2002-10-01 Yuji Abe <cbo46560@pop12.odn.ne.jp>
-
- * [w3m-dev 03330] Re: hang up when seeing web page that contains xbm file
- * w3mimg/x11/x11_w3mimg.c (x11_load_image): scaling
-
-2002-09-30 Yuji Abe <cbo46560@pop12.odn.ne.jp>
-
- * [w3m-dev 03327] gdk-pixbuf support for w3m-img/x11
- * configure (use_w3mimg_x11) Imlib1 or GdkPixbuf
- check gdkpixbuf
- * w3mimg/x11/x11_w3mimg.c (USE_GDKPIXBUF): added
- (x11_init): USE_GDKPIXBUF
- (x11_load_image): USE_GDKPIXBUF
- (x11_get_image_size): USE_GDKPIXBUF
-
-2002-09-30 qhwt@myrealbox.com
-
- * [w3m-dev 03325] Re: hang up when seeing web page that contains xbm file
- * w3mimgdisplay.c (main): always return response
- even if size is unknown
-
-2002-09-29 Hiroaki Shimotsu <shim@d5.bs1.fc.nec.co.jp>
-
- * [w3m-dev 03323] EDITOR
- * main.c (MAIN): use not_null()
+ * main.c: Correct GC version confirmation.
+ Origin: https://github.com/tats/w3m/pull/2
-2002-09-29 AIDA Shinra <aida-s@jcom.home.ne.jp>
-
- * Re: [w3m-dev 03320] Re: Passwords
- * etc.c (dir_under): same path is ok
- * file.c (loadGeneralFile): if missing, return NULL
- ssl cert already checked
- * html.h (URLFILE): add ssl_certificate
- * istream.c (ssl_get_certificate): change args
- * istream.h (ssl_get_certificate): ditto
- * url.c (openSSLHandle): add p_cert
- ssl certificate check here
- (HTTPrequest): auth_cookie fix
-
-2002-09-25 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 03321] Bug#162104: file descriptors 1 and 2 are closed rather than reopened to /dev/null
- * etc.c (mySystem): fd 0,1,2 redirect /dev/null, close all other fds
-
-2002-09-25 AIDA Shinra <aida-s@jcom.home.ne.jp>
-
- * [w3m-dev 03319] mailto
- * main.c (followA): mailto
- * main.c (cmd_loadURL): mailto
- * url.c (_parsedURL2Str): mailto: query
-
-2002-09-25 AIDA Shinra <aida-s@jcom.home.ne.jp>
-
- * [w3m-dev 03318] Re: Passwords
- * etc.c (struct auth_path): added
- (passwords): added
- (dir_under): added
- (add_auth_pass_entry): added
- (find_auth_pass_entry): added
- (find_auth_user_passwd): added
- (loadPasswd): added
- (find_auth): dir_under()
- (add_auth_cookie): check file
- * file.c (find_auth_user_passwd): removed
- (getAuthCookie): use delText()
- check proxy
- (get_auth_cookie): removed
- (loadGeneralFile): auth_pu
- * proto.h (schemeToProxy): added
- (get_auth_cookie): removed
- (loadPasswd): added
- (find_auth_user_passwd): added
- * rc.c (sync_with_option): loadPasswd()
- * textlist.c (delValue): added
- * textlist.h (delValue): added
- (delText): added
- * url.c (HTTPrequest): seen_www_auth
- (schemeToProxy): added
-
-2002-09-11 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 03312] Re: Passwords
- * config.h.dist: PASSWD_FILE
- * file.c (find_auth_user_passwd): return if passwd_file == NULL
-
-2002-09-11 Yuuichi Teranishi <teranisi@gohome.org>
-
- * [w3m-dev 03311] Re: Passwords
- * configure (config.h): default PASSWD_FILE
- * fm.h (passwd_file): default PASSWD_FILE
-
-2002-09-11 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 03307] add password_file support
- * file.c (find_auth_user_passwd): added
- * fm.h (passwd_file): added
- * rc.c (CMT_PASSWDFILE): added
- (passwdfile): added
-
-2002-09-09 Hiroyuki Ito <hito@crl.go.jp>
-
- * [w3m-dev 03300] framebuffer: 8bit color support
- * w3mimg/fb/fb.c: support FB_VISUAL_PSEUDOCOLOR 256 colors
-
-2002-09-09 Hironori SAKAMOTO <h-saka@lsi.nec.co.jp>
-
- * [w3m-dev 03299] remove file before copying (install-sh)
- * install-sh: remove file before copying
-
-2002-09-09 Hironori SAKAMOTO <h-saka@lsi.nec.co.jp>
-
- * [w3m-dev 03298] [ -f instead of [ -e (configure)
- * configure: use test -f instead of test -e
-
-2002-09-09 Hironori SAKAMOTO <h-saka@lsi.nec.co.jp>
-
- * [w3m-dev 03297] TERM=mlterm
- * terms.c (w3m_term_info_list): add mlterm
-
-2002-09-09 Hironori SAKAMOTO <h-saka@lsi.nec.co.jp>
-
- * [w3m-dev 03296] fix configure (strtoq)
- * configure (strtoq): fix missing semicolon
-
-2002-09-06 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 03292] Re: load file at cursor
- * anchor.c (reAnchorPos): added
- (reAnchorWord): added
- (reAnchorAny): rewrite to use reAnchorPos()
- * funcname.tab (MARK_WORD): added
- * keybind.c (;) MARK_WORD
- * main.c (getCurWord): added
- (chkWORD): added
- (is_wordchar): added
- (getCurWord): added
- (GetWord): rewrite to use getCurWord()
- * proto.h (chkWORD): added
- (reAnchorWord): added
- * doc/README.func: add MARK_WORD
- * doc/keymap.default: add MARK_WORD
- * doc-jp/README.func: add MARK_WORD
- * doc-jp/keymap.default: add MARK_WORD
- * NEWS: add MARK_WORD
-
-2002-08-28 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
-
- * [w3m-dev 03291] parsetagx.c:toNumber()
- * parsetagx.c (toNumber): don't parse non-number value as 0,
- just ignore
-
-2002-08-28 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
-
- * [w3m-dev 03290] Re: Forward: Bug#157098: wrong file presentation on large files
- * indep.c (strtoclen): need defined()
-
-2002-08-21 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * Debian Bug#157098: wrong file presentation on large files
- from "Eduard Bloch" <blade@debian.org>
- * configure (clen_t): added
- (HAVE_STRTOLL): added
- (HAVE_STRTOQ): added
- (HAVE_ATOLL): added
- (HAVE_ATOQ): added
- * config.h.dist: ditto
- * file.c (current_content_length): s/int/clen_t/
- (loadGeneralFile): s/atoi/strtoclen/
- (convert_size): s/int/clen_t/
- (convert_size2): s/int/clen_t/
- (showProgress): s/int/clen_t/
- (loadHTMLstream): s/int/clen_t/ linelen, trbyte
- (loadBuffer): ditto
- (getNextPage): s/int/clen_t/ linelen
- (save2tmp): s/int/clen_t/ linelen, trbye
- (_MoveFile): s/int/clen_t/ linelen, trbye
- * fm.h (_Buffer): s/int/clen_t/ linelen, trbye
- * ftp.c (size_int2str): s/long/clen_t/
- (ex_ftpdir_name_size_date): s/long/clen_t/
- * indep.c (strtoclen): added
- * indep.h (strtoclen): added
- * proto.h (showProgress): s/int/clen_t/
-
-2002-07-31 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * Debian Bug#154766: w3m-img: support DirectColor framebuffer visuals?
- from Colin Watson <cjwatson@debian.org>
- * w3mimg/fb/fb.c (fb_open): accept FB_VISUAL_DIRECTCOLOR
-
-2002-07-30 Hiroyuki Ito <hito@crl.go.jp>
-
- * [w3m-dev 03282] Re: w3m-img for framebuffer update
- * w3mimg/fb/fb.c (fb_image_new): ignore no image
- calloc multiple images
- (fb_image_fill): added
- (fb_image_draw): width, height fix
- (fb_image_rotate): fix typo
- (fb_image_copy): added
- (fb_frame_new): added
- (fb_freme_free): added
- (fb_frame_rotate): added
- * w3mimg/fb/fb.h (FB_IMAGE): add num, id, delay
- (fb_frame_new): added
- (fb_frame_free): added
- (fb_frame_rotate): added
- * w3mimg/fb/fb_gdkpixbuf.c (get_image_size): animation support
- (fb_image_load): animation support
- (draw): add bg, x, y, w, h args
- * w3mimg/fb/fb_img.h (fb_image_load): return FB_IMAGE**
- * w3mimg/fb/fb_imlib2.c (fb_image_load): return FB_IMAGE**
- * w3mimg/fb/fb_w3mimg.c (w3mfb_show_image): animation support
-
-2002-07-23 Hiroyuki Ito <hito@crl.go.jp>
-
- * [w3m-dev 03280] w3m-img without w3mimgsize
- * fm.h (Imagesize): deleted
- * image.c (getImageSize): rewrite to use w3mimgdisplay
- instead of w3mimgsize
- * rc.c (params1): remove imgsize, merged to imgdisplay
-
-2002-07-23 Hiroyuki Ito <hito@crl.go.jp>
-
- * [w3m-dev 03279] w3m-img for framebuffer update
- http://homepage3.nifty.com/slokar/fb/w3mfb.patch.gz
- * w3mimg/fb/readme.txt: update
- * w3mimg/fb/fb.c: update
- * w3mimg/fb/fb.h: update
- * w3mimg/fb/fb_gdkpixbuf.c: update
- * w3mimg/fb/fb_img.c: update
- * w3mimg/fb/fb_img.h: update
- * w3mimg/fb/fb_imlib2.c: update
- * w3mimg/fb/fb_w3mimg.c: update
- * w3mimg/fb/fb_gdkpixbuf.h: deleted
- * w3mimg/fb/fb_imlib2.h: deleted
- * w3mimg/w3mimg.h (w3mimg_op): add get_image_size()
- * w3mimg/x11/x11_w3mimg.c: update
- * w3mimgdisplay.c (main): use get_image_size()
- * w3mimgsize.c (main): use get_image_size()
-
-2002-07-19 Hideyuki SHIRAI <shirai@rdmg.mgcs.mei.co.jp>
-
- * [w3m-dev 03277] compile error on Solaris7
- * w3mimg/w3mimg.c: include <stdio.h> for NULL
-
-2002-07-19 Yoshinobu Sakane <sakane@d4.bsd.nes.nec.co.jp>
-
-a * [w3m-dev 03276] compile error on EWS4800
- * file.c (extract_auth_val): fix warnings
- * w3mimg/w3mimg.c: include <stdlib.h>
-
-2002-07-18 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03275] fix of multipart.cgi
- * scripts/multipart/multipart.cgi.in: check REQUEST_METHOD first
- need $count for POST
-
-2002-07-18 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * w3mimgdisplay.c (main): '5' for w3mimgsize
-
-2002-07-18 Yoshinobu Sakane <sakane@d4.bsd.nes.nec.co.jp>
-
- * [w3m-dev 03270] Re: w3m-img for framebuffer merged
- * w3mimg/x11/x11_w3mimg.c (w3mimg_x11open): unsigned int nchildren
-
-2002-07-18 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * XMakefile (w3mimg/w3mimg): added
- (w3img/fb) fixed
- * w3mimg/w3mimg.h (w3mimg_open): deleted to avoid compilation warnings
- * w3mimg/w3mimg.c: added
- * configure (imgobjs): add w3mimg/w3mimg.o
+2015-04-29 Markus Hiereth <post@hiereth.de>
-2002-07-18 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+ * po/de.po: Update German translation.
+ Origin: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=783383
- * [w3m-dev 03272] Re: w3m-img for framebuffer merged (Re: Re: w3m-img for framebuffer)
- * XMakefile (w3mimg/x11): chdir
- (w3mimg/fb): chdir
+2015-04-29 Tatsuya Kinoshita <tats@debian.org>
-2002-07-18 Fumitoshi UKAI <ukai@debian.or.jp>
+ * po/Makevars, po/de.po, po/ja.po, po/w3m.pot, rc.c:
+ Update PO strings for display_borders.
- * [w3m-dev 03273] Re: w3m-img for framebuffer merged
- * configure (use_w3mimg_fb): check linux, use test -c
+2015-04-26 yshl <yshl@takechiyo.net>
-2002-07-18 Fumitoshi UKAI <ukai@debian.or.jp>
+ * main.c: Use GC_oom_fn instead of GC_set_oom_fn for gc-7.1.
+ Origin: https://github.com/tats/w3m/pull/1
- * merge w3m-img for framebuffer support
- * w3mimg/w3mimg.h: created
- * w3mimg/x11/x11_w3mimg.c: created
- * w3mimg/fb/fb_w3mimg.c: created
- * w3mimgsize.c w3mimgdisplay.c: modified
- * configure: modified
- * XMakefile: modified
- * config.h.dist: updated
+2015-02-03 Tatsuya Kinoshita <tats@debian.org>
-2002-07-18 ZXB01226@nifty.com
+ * po/de.po, po/ja.po, po/w3m.pot: Update PO.
- * w3m-img for framebuffer support
- * http://homepage3.nifty.com/slokar/fb/
- * w3mimg/fb/fb.c w3mimg/fb/fb.h
- w3mimg/fb/fb_img.c w3mimg/fb/fb_img.h
- w3mimg/fb/fb_gdkpixbuf.c w3mimg/fb/fb_gdkpixbuf.h
- w3mimg/fb/fb_imlib2.c w3mimg/fb/fb_imlib.h
- w3mimg/fb/readme.txt w3mimg/fb/license.txt: added
+2015-02-02 Tatsuya Kinoshita <tats@debian.org>
-2002-07-18 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+ * file.c, fm.h, rc.c:
+ New option "display_borders" to display 0 pixel table borders.
+ cf. http://d.hatena.ne.jp/rubikitch/20101120
- * [w3m-dev 03263] fix lastA segfault
- * main.c (lastA): fix lastA segfault when no anchor found
+2015-01-24 Tatsuya Kinoshita <tats@debian.org>
-2002-07-18 Fumitoshi UKAI <ukai@debian.or.jp>
+ * acinclude.m4, configure, version.c.in:
+ Update to 0.5.3+gitYYYYMMDD (generate from ChangeLog).
- * version.c.in: cvs version
+2015-01-15 Tatsuya Kinoshita <tats@debian.org>
-2002-07-16 Fumitoshi UKAI <ukai@debian.or.jp>
+ * alloc.h, main.c: Drop C99 features.
- * w3m 0.3.1
- * version.c.in: update
- * doc/README: version 0.3, release date
- * doc-jp/README: ditto
- * NEWS: update
+2015-01-15 Scarlett <scarlett@xavin.net>
-2002-07-12 WATANABE Katsuyuki <katsuyuki_1.watanabe@toppan.co.jp>
+ Add overflow detection.
+ Origin: http://marc.info/?l=openbsd-ports&m=142090828929750&w=2
+ * main.c: Call exit(1) when out of memory to avoid dereferencing null
+ pointers when gc's malloc fails.
+ * alloc.h: Replacements for w3m's allocation macros which add
+ overflow detection and concentrate the macros in one file.
+ * indep.h, libwc/charset.c, libwc/status.c, matrix.c: Use the
+ overflow-detecting allocation macros from alloc.h.
- * [w3m-dev 03255] update cygwin info
- * doc-jp/README: update
- * doc/README: update
- * doc-jp/README.cygwin: deleted
- * doc/README.cygwin: deleted
+2015-01-15 Tatsuya Kinoshita <tats@debian.org>
-2002-07-10 SAKAI Kiyotaka <ksakai@kso.netwk.ntt-at.co.jp>
+ * Str.c, cookie.c, map.c:
+ Do not use C99 printf format specifiers and asprintf.
- * [w3m-dev 03240] doc-jp update
- * doc-jp/MANUAL.html: update
- * doc-jp/README: update
- * doc-jp/README.SSL: update
- * doc-jp/README.img: update
+2015-01-15 Scarlett <scarlett@xavin.net>
-2002-07-10 Fumitoshi UKAI <ukai@debian.or.jp>
+ Correct printf arguments and use asprintf.
+ Origin: http://marc.info/?l=openbsd-ports&m=142090828929750&w=2
+ * Str.c: Use asprintf() instead of rolling our own printf string
+ length detection.
+ * cookie.c: Pass the char pointer in the string struct to printf %s
+ instead of the string struct itself.
+ Print time_t using %lld instead of %ld to allow for 64-bit time_t.
+ * main.c: Print a long int using the correct format specifier.
+ * map.c: Print size_t using the correct format specifier.
- * gc/: import gc6.1alpha5
+2014-12-06 Araki Ken <arakiken@users.sf.net>
-2002-07-09 Dai Sato <satodai@dog.intcul.tohoku.ac.jp>
+ Support OSC 5379 remote imaging and sixel graphics.
+ Origin: https://bitbucket.org/arakiken/w3m/branch/remoteimg (2014-11-16)
- * delete old mail addresses of aito-san from docs
- * delete old ftp site from w3m-doc/install.html.in
+ * doc/README.sixel, terms.c: Add README.sixel. W3M_IMG2SIXEL
+ environmental variable enables to specify options of img2sixel.
-2002-07-01 Dai Sato <satodai@dog.intcul.tohoku.ac.jp>
+ * image.c, terms.c:
+ Add n_terminal_image argument to put_image_{sixel|osc5379}().
+ Use struct winsize to calculate ppc and ppl.
- * [w3m-dev 03235] topA/lastA with prec_num
- * main.c: add prec_num to topA() and lastA()
+ * terms.c: If SCREEN_VARIANT=sixel on GNU screen, exec img2sixel
+ without -P option.
-2002-06-24 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+ * terms.c: ttymode_set() -> ttymode_reset().
- * [w3m-dev 03233] "obuf->flag |= RB_IGNORE_P" after <body> tag
- * file.c (HTMLtagproc1): no need RB_IGNORE_P after <body> tag
+ * terms.c: Fix.
-2002-06-18 Dai Sato <satodai@dog.intcul.tohoku.ac.jp>
+ * terms.c: Support GNU screen.
- * [w3m-dev 03215] Re: Boehm GC 6.1alpha5
- * XMakefile: add "base_lib gc.a" for making GC
+ * terms.c: Show GIF (except animation GIF) correctly.
-2002-06-18 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
+ * main.c, terms.c: img2sixel exits by Ctrl+C. Enable GIF Animation if
+ 'I' is pressed to show it.
- * [w3m-dev 03212] lstat() in form.c
- * form.c: define lstat unless HAVE_LSTAT
- (form_write_from_file): always check lstat()
+ * image.c: Add declaration of get_pixel_per_cell().
-2002-06-17 Dai Sato <satodai@dog.intcul.tohoku.ac.jp>
+ * terms.c: Show the first frame of animation gif files.
- * [w3m-dev 03214] strtoul() in frame.c
- * frame.c (parseFrameSetLength): strtoul() -> strtol()
+ * terms.c: system() -> fork()&execvp()
-2002-06-10 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
+ * display.c: Draw underline on anchor which contains cboth text and
+ images.
- * [w3m-dev-en 00752] Re: tab completion weirdness in w3m 0.3
- * file.c (doFileCopy): same fix as [w3m-dev-en 00751]
+ * etc.c: Remove close_tty() from setup_child() because close_tty()
+ sometimes interrupts loadGeneralFile() in loadImage() and corrupt
+ image data can be cached in ~/.w3m.
-2002-06-10 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
+ * image.c: Minor fix.
- * [w3m-dev-en 00751] Re: tab completion weirdness in w3m 0.3
- * main.c (svBuf): unescape spaces when input is filename
- * proto.h (unescape_spaces): added
+ * image.c: Cache image files if at all possible and convert them to
+ sixel when -sixel option is specified.
-2002-06-08 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
+ * image.c: Init pixel_per_{char|line}_i if get_pixel_per_cell() fails.
- * [w3m-dev 03207] strchr(), strcasecmp(), and strncasecmp()
- * etc.c (strchr): removed
- (strcasecmp): removed
- (strncasecmp): removed
- * indep.c (strchr): moved, cast
- (strcasecmp): moved, fix the case that s1 = ""
- (strncasecmp): moved, fix the case that s1 is shorter than s2
- * indep.h (strchr): added
- (strcasecmp): added
- (strncasecmp): added
+ * display.c, file.c, fm.h, image.c, main.c, terms.c:
+ Add -sixel option which supports image processing by img2sixel.
-2002-06-06 Fumitoshi UKAI <ukai@debian.or.jp>
+ * image.c: Don't download image files whose size is specified in
+ <img> tag.
- * [w3m-dev 03206] Re: dict
- * main.c (execdict): quote word
+ * image.c: Minor fixes of parseImageHeader().
-2002-06-06 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+ * image.c: Determine the format of an image file by its header data
+ not by its file name suffix.
- * [w3m-dev 03204] INET6
- * main.c (fversion): s/USE_INET6/INET6/
+ * image.c: Read width and height from jpeg, png and gif files directly
+ instead of executing w3mimgdisplay -size.
-2002-06-06 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+ * display.c: display.c: Draw underline on anchor text which is not
+ overlapped with any image.
- * [w3m-dev 03203] dict
- * main.c (execdict): fix loadGeneralFile()
+ * terms.c: Clear fd_set by FD_ZERO() before select().
-2002-06-02 Tushar Samant <scribble@pobox.com>
+ * file.c: nw and ni are rounded up instead of rounded off to show
+ every corner of images.
- * [w3m-dev-en 00748] PATCH: Reinitialize w3m while running
- * funcname.tab (INIT_MAILCAP): deleted
- (REINIT): added
- * main.c (config_filename): added
- (reinit): added
- * proto.h (reinit): added
- * rc.c (rc_initialized): deleted
- * w3mhelperpanel.c (editMailcap): use REINIT MAILCAP
+ * terms.c: Change time to wait for the response of "\x1b[14t\x1b[18t"
+ from 0.1 sec to 0.5 sec.
-2002-06-02 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
+ * image.c:
+ - clearImage() works.
+ - Use cached image files created by w3m in getImage().
- * [w3m-dev 03200] Re: New configuration option ``keymap_file'' and new command ``DEFINE_KEY''
- * fm.h: add <sts/stat.h>, unistd.h>
- * fm.h (keymap_file): added
- * func.c (keymap_initialized): added
- (current_keymap_file): added
- (setKeymap): added
- (initKeymap): rewrite to use setKeymap()
- * funcname.tab (DEFINE_KEY): added
- * main.c (MAIN): initKeymap(TRUE)
- (defKey): added
- * proto.h (defKey): added
- (setKeymap): added
- (initKeymap): add force param
- * rc.c (CMT_KEYMAP_FILE): added
- (params3): add keymap_file
- (sync_with_option): add initKeymap(FALSE)
- * doc/README.func (DEFINE_KEY): added
- * doc-jp/README.func: (DEFINE_KEY): added
- * scripts/w3mhelp.cgi.in: add defKey
- * NEWS:
- func: DEFINE_KEY
- rc: keymap_file
+ * file.c: Hack for alignment.
-2002-06-02 Hiroaki Shimotsu <shim@d5.bs1.fc.nec.co.jp>
+ * fm.h, image.c, terms.c:
+ - Adjust the image size to the terminal cell size.
+ - If the image size is specified in html source, skip to load the image.
- * [w3m-dev 03196] C-w
- * linein.c (inputLineHistSearch) move_word changed
- * linein.c (setStrType): add space to termchar
+ * display.c, fm.h, image.c, main.c, terms.c, w3mimg/x11/x11_w3mimg.c:
+ Support remote image by OSC 5379 show_picture sequence.
-2002-05-15 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
+2014-12-06 Olaf Hering <olh@suse.de>
- * [w3m-dev 03191] typo in file.c:extract_auth_val()?
- * file.c (extract_auth_val): s/177/0177/
+ * parsetagx.c: Fix crash in parse_tag() during every start.
+ Origin: https://build.opensuse.org/package/view_file/openSUSE:Factory/w3m/w3m-parsetagx-crash.patch?expand=1
-2002-05-15 Tsutomu OKADA <okada@furuno.co.jp>
+ * fm.h: Change the default to alt_entity=0.
+ Change the default for the option "Use ASCII equivalents to
+ display entities" from YES to NO.
+ Origin: https://build.opensuse.org/package/view_file/openSUSE:Factory/w3m/w3m-0.5.1-no-ASCII-equivalents-by-default.patch?expand=1
+ Bug-Novell: https://bugzilla.novell.com/show_bug.cgi?id=247397
- * [w3m-dev 03190] a tiny patch for configure
- * configure (ask_choice): reset default value
+ * anchor.c, libwc/gb18030.c, libwc/ucs.c, regex.c:
+ Fix a few harmless uninitialized variables.
+ Origin: https://build.opensuse.org/package/view_file/openSUSE:Factory/w3m/w3m-uninitialized.patch?expand=1
-2002-04-27 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
+2014-12-06 Peter Poeml <poeml@suse.de>
- * [w3m-dev 03185] Re: cmd_mark in main.c, rev 1.60 broke unmark?
- * main.c (cmd_mark): deleted
- (_mark): xor PE_MARK
- (reMark): or PE_MARK
+ * terms.c: Prevent segfault when editing a textarea field with vi.
+ Add fix for segfault that can occur when editing a textarea field
+ with vi, and returning to w3m (it seems to happen if the terminal
+ is not writable, as when using w3m after 'su - some_user')
+ Origin: https://build.opensuse.org/package/view_file/openSUSE:Factory/w3m/w3m-0.4.1-textarea-segfault.dif?expand=1
-2002-04-27 Fumitoshi UKAI <ukai@debian.or.jp>
+2014-12-04 Tatsuya Kinoshita <tats@debian.org>
- * scripts/.cvsignore: add xface2xpm
+ * acinclude.m4: Follow updated configure.
-2002-04-26 Tushar Samant <scribble@pobox.com>
-
- * [w3m-dev-en 00733] Submission: "English" patch
- * rc.c: update english
+2014-12-03 Yusuke Baba <babayaga1@y8.dion.ne.jp>
-2002-04-25 Fumitoshi UKAI <ukai@debian.or.jp>
+ * configure, w3mimg/fb/fb.c, w3mimg/fb/fb.h, w3mimg/fb/fb_w3mimg.c:
+ Support FreeBSD framebuffer.
+ Origin: http://www.ac.auone-net.jp/~baba/w3m-img/index.html
+ Bug-FreeBSD: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=122673
- * [w3m-dev-en 00730] Re: Patch for a more flexible dictionary lookup
- * NEWS: rc: use_dictcommand, dictcommand
- * main.c (execdict): use url_quote_conv() instead of cURLcode()
- * proto.h (cURLcode): deleted
- * doc-jp/README.dict: updated
+2014-12-02 Naohiro Aota <naota@gentoo.org>
-2002-04-25 Tushar Samant <scribble@pobox.com>
+ * acinclude.m4, configure, w3mimg/fb/fb_gdkpixbuf.c:
+ * w3mimg/x11/x11_w3mimg.c:
+ Depend on gdk-pixbuf instead of gtk when gtk2.
+ Origin: http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/www-client/w3m/files/w3m-0.5.3-gdk-pixbuf.patch?revision=1.1
- * [w3m-dev-en 00729] Re: Patch for a more flexible dictionary lookup
- * config.h.dist (DICT): define
- * configure (use_dict): default y
- * fm.h (DICTCMD): deleted
- (UseDictCommand): added
- (DictCommand): added
- * main.c (execdict): rewrite to use DictCommand, loadGeneralFile()
- * rc.c (CMT_USE_DICTCOMMAND): added
- (CMT_DICTCOMMAND): added
- (params1): use_dictcommand, dictcommand added
- * doc/README.dict: updated
+2014-12-02 Jeroen Roovers <jer@gentoo.org>
-2002-04-21 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
+ * acinclude.m4, configure: Add tinfo to with_termlib.
+ Fix building against sys-libs/ncurses[tinfo].
+ Origin: https://504588.bugs.gentoo.org/attachment.cgi?id=372650
+ Bug-Gentoo: https://bugs.gentoo.org/show_bug.cgi?id=504588
- * [w3m-dev 03181] KEYBIND_SRC was not passed to scripts/Makefile
- * Makefile (all-scripts): pass KEYBIND_SRC
+2014-12-01 OBATA Akio <obache@netbsd.org>
-2002-04-17 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
+ * acinclude.m4, configure:
+ Assume defined PKG_CONFIG points right location when gtk2.
+ Origin: http://cvsweb.netbsd.org/bsdweb.cgi/pkgsrc/www/w3m/patches/patch-aa?rev=1.13&content-type=text/x-cvsweb-markup
+ Origin: http://cvsweb.netbsd.org/bsdweb.cgi/pkgsrc/www/w3m/patches/patch-ak?rev=1.1&content-type=text/x-cvsweb-markup
- * [w3m-dev 03178] Parser of ``cols'' and ``rows''
- * frame.c (parseFrameSetLength): added
- (newFrameSet): use parseFrameSetLength()
+2014-12-01 Vsevolod Stakhov <vsevolod@FreeBSD.org>
-2002-04-17 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
-
- * [w3m-dev 03177] SIGUSR1 --> W3M_SIGIMG in image.c
- * image.c (W3M_SIGIMG): added
- (load_image_handler): s/SIGUSR1/W3M_SIGIMG/
- (load_image_next): ditto
- (loadImage): ditto
-
-2002-04-17 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
-
- * [w3m-dev 03176] no Content-Type in http response header
- * file.c (loadGeneralFile): guess content-type from filename
-
-2002-04-09 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03169] Can't calculate table height if number of cells > 20.
- * table.c (check_table_height): change row, rowspan, indexarray, height
- from array to pointer
+ * config.h.in: Disable USE_EGD for LibreSSL.
+ Disable use of RAND_egd as it is absent in FreeBSD.
+ This also fixes build error with LibreSSL.
+ Origin: https://bz-attachments.freebsd.org/attachment.cgi?id=144635
+ Bug-FreeBSD: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=191852
+ Bug-FreeBSD: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=191956
-2002-04-09 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+2014-12-01 zimous <zimous@matfyz.cz>
- * [w3m-dev 03167] xface2xbm -> xface2xpm (current imlib can't handle XBM)
- * configure: s/XFACE2XBM/XFACE2XPM/
- * config.h.dist: ditto
- * file.c (xface2xpm): renamed from xface2xbm
- modified for xpm
- (readHeader): s/xface2xbm/xface2xpm/
- * scripts/Makefile (LIB_TARGETS): s/xface2xbm/xface2xpm/
- * scripts/xface2xpm.in: added
+ * po/ja.po: Set Language tag properly for Japanese translation.
+ Origin: https://512722.bugs.gentoo.org/attachment.cgi?id=378452
+ Bug-Gentoo: https://bugs.gentoo.org/show_bug.cgi?id=512722
-2002-03-30 Fumitoshi UKAI <ukai@debian.or.jp>
+2014-11-30 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev 03162] Re: "ttp:" is marked instead of "http:" by MARL_URL
- * main.c (chkURLBuffer): "mailto" removed when USE_W3MMAILER
- in this case, chkExternalURIBuffer() will mark mailto: URL.
+ * doc/w3m.1: Typo fix.
-2002-03-30 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+2014-11-30 Markus Hiereth <post@hiereth.de>
- * [w3m-dev 03160] Re: "ttp:" is marked instead of "http:" by MARL_URL
- * NEWS: mark_all_pages
- * anchor.c (reAnchorAny): check MarkAllPages
- * fm.h (MarkAllPages): added
- * rc.c (CMT_MARK_ALL_PAGES): added
- (mark_all_pages): added
-
-2002-03-30 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03159] "ttp:" is marked instead of "http:" by MARL_URL
- * main.c (chkURLBuffer): check internal URLs first
-
-2002-03-28 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * terms.c (set_tty): s/term_info/w3m_term_info/g;
- struct term_info is defined in FreeBSD's sys/consio.h
- reported by KOIE Hidetaka <hide@koie.org>
-
-2002-03-28 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03146] Re: header option
- * main.c (make_optional_header_string): cleanups
-
-2002-03-28 Yuuichi Teranishi <teranisi@gohome.org>
-
- * [w3m-dev 03145] header option
- * main.c (MAIN): hide args for security
-
-2002-03-23 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
-
- * [w3m-dev 03140] Forward: Bug#139305:
- w3m: EXTERN_LINK does not work if href ends with ampersand
- * main.c (invoke_browser): check bg by browser
-
-2002-03-21 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * terms.c (term_title): use ttyf instead of stderr
-
-2002-03-20 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03137] Re: w3mman.1
- * XMakefile (MAN1): added
- (MAN1_JA): added
- (install-core): install man
- (install-scripts): pass MAN_DIR
- (uninstall): uninstall man, pass MAN_DIR to subdirs
- * config.h.dist (MAN_DIR): added
- (MAN1_DIR): added
- (MAN1_JA_DIR): added
- * configure: -mandir
- (config.h): add MAN_DIR, MAN1_DIR, MAN1_JA_DIR
- * scripts/w3mman/Makefile (MAN1_DIR): added
-
-2002-03-20 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03136] Add COMMAND to execute multiple commands
- * fm.h (CurrentMenuData): deleted
- (CurrentCmdData): added
- * func.c (getKey): check next char of ^
- (getWord): get word until ';'
- (getQWord): rewrite using Str
- * funcname.tab (COMMAND): added
- * main.c (MAIN): delete CurrentMenuData
- initialize CurrentCmdData
- (searchKeyData): use CurrentCmdData
- (execCmd): added
- (SigAlarm): delete CurrentMenuData, use CurrentCmdData
- * menu.c (action_menu): delete CurrentMenuData, use CurrentCmdData
- * proto.h (execCmd): added
- * doc/README.func (ALARM): capitalize
- (COMMAND): added
- * doc-jp/README.func (COMMAND): added
-
-2002-03-20 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03135] commit of [w3m-dev 03006] is incomplete.
- * file.c (HTMLlineproc2body): check form_int fid attr
- update forms[]
- fix buf->formlist
-
-2002-03-16 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * part of [w3m-dev-en 00713] contrib: unofficial "current page info" patch, updated for w3m-0.3
- by Moritz Barsnick <barsnick@gmx.net>
- * map.c (page_info_panel): s/line/lines/
- s/byte/bytes/
- anchor for URL of current anchor
-
-2002-03-16 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * -title support
- modified [w3m-dev-en 00710] contrib: unofficial "xterm title" patch, updated for w3m-0.3
- by Moritz Barsnick <barsnick@gmx.net>
- * NEWS: -title
- * fm.h (displayTitleTerm): added
- * proto.h (term_title): added
- * main.c (fusage): add -title
- (MAIN): add -title
- (quitfm): term_title("")
- * display.c (displayBuffer): term_title()
- * terms.c (title_str): added
- (TERM_INFO): added
- (term_info): modified from mouse_term_info
- (term_info_list): modified from xterm_mouse_term
- add "screen"
- (set_tty): check displayTitleTerm
- (term_title): added
-
-2002-03-16 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03132] Re: Reload image
- * file.c (loadGeneralFile): b->type = "text/html"
- * file.c (loadImageBuffer): comment out getImageSize()
- image_flag = IMG_FLAG_AUTO
- * file.c (openGeneralPagerBuffer): buf->type = "text/html"
- * frame.c (resetFrameElement): if (buf->mailcap_source) ...
- * frame.c (frame_download_source): if (buf->mailcap_source) ...
- * main.c (vwSrc): #ifdef USE_IMAGE
-
-2002-03-16 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 03133] Re: w3mman.1
- * scripts/w3mman/Makefile (MAN1_TARGETS): added
- (MAN_TARGETS): use $(MAN_TARGETS)
- (INSTALL_MAN): added
- (install): use $MAN1_TARGETS, $(INSTALL_MAN)
- * scripts/w3mman/w3mman2html.cgi.in: $PAGER='cat'
-
-2002-03-15 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * scripts/.cvsignore: add xface2xbm
-
-2002-03-15 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 03130] w3mman.1
- * scripts/w3mman/.cvsignore: add w3mman.1
- * scripts/w3mman/Makefile (MAN_DIR): added
- (MAN_TARGETS): added
- (all): add $(MAN_TARGETS)
- (.in): replace @LIB_DIR@
- (install): install $(MAN_TARGETS)
- (uninstall): uninstall $(MAN_TARGETS)
- (clean): clean $(MAN_TARGETS)
- * scripts/w3mman/w3mman.1.in: added
- * scripts/w3mman/w3mman2html.cgi.in: undef $PAGER
-
-2002-03-15 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03129] Re: X-Face
- * configure (use_xface): ask
- * fm.h (_Buffer): add header_source
- * buffer.c (reshapeBuffer): fix reshape when reading stdin with image
- fix disappearing header when reading stdin
- * file.c (xface2xbm): check file existence
- * file.c (readHeader): save to tmp file
- X-Face when activeImage & displayImage
- * main.c (dispI): comment out checking content type
- * main.c (stopI): ditto
- * scripts/xface2xbm.in: update compface URL
- read from file $XF
- write to file $XBM
-
-2002-03-15 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * proto.h (readHeader): added
-
-2002-03-14 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03127] X-Face
- * NEWS: X-Face support
- * configure (use_xface): added
- * config.h.dist (USE_XFACE): added
- (XFACE2XBM): added
- * file.c (xface2xbm): added
- (readHeader): X-Face: handling
- * scripts/Makefile (LIB_TARGETS): add xface2xbm
- * scripts/xface2xbm.in: added
+ * doc/w3m.1: Miscellaneous changes to improve English manpage.
+ Origin: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=766550#30
-2002-03-14 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+2014-11-29 Markus Hiereth <post@hiereth.de>
- * [w3m-dev 03126] reshapeBuffer() and -m option
- * buffer.c (reshapeBuffer): fix reshapeBuffer() in case of -m option
-
-2002-03-14 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03125] w3m -m < image
- * file.c (openGeneralPagerBuffer): use internal viewer for -m option
+ * doc/w3m.1: Improve FILES.
+ Origin: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=766550#30
+ Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=403634
-2002-03-13 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+ * doc/w3m.1: Improve EXAMPLES.
+ Origin: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=766550#30
+ Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=380560
- * [w3m-dev 03116] Re: aligned block in <td align="center">
- * file.c (flushline): align if align="align"
- * fm.h (RB_LEFT): change value
- (RB_ALIGN): include RB_LEFT
- (RB_INTABLE): added
- * table.c (do_refill): obuf.flag |= RB_INTABLE
+ * doc/w3m.1: Improve explanation about option -N.
+ Origin: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=766550#30
+ Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=345084
+ Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=530468
-2002-03-11 WATANABE Katsuyuki <katsuyuki_1.watanabe@toppan.co.jp>
+ * doc/w3m.1: Note that -cols only affects when HTML is rendered.
+ Origin: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=766550#30
+ Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=285251
- * [w3m-dev 03110] Re: gopher broken
- * file.c (loadGeneralFile): #ifdef USE_GOPHER
+ * doc/w3m.1: Add more info on configuration.
+ Origin: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=766550#30
+ Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=268211
-2002-03-11 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+2014-11-29 Justin B Rye <justin.byam.rye@gmail.com>
- * [w3m-dev 03106] Re: displayBuffer
- * display.c (displayBuffer): revert previous changes
- * file.c (process_img): remove space in src attribute
+ * scripts/w3mman/w3mman.1.in: Tweak for W3MMAN_W3M.
+ Origin: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=771003#5
-2002-03-10 Rei FURUKAWA <furukawa@tcp-ip.or.jp>
+ * scripts/w3mman/w3mman.1.in: English fixes.
+ Origin: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=766550#25
- * [w3m-dev 03096] displayBuffer
- * display.c (displayBuffer): buf->need_reshape = 0 to prevent recursive
- displayBuffer calls
+2014-11-29 Tatsuya Kinoshita <tats@debian.org>
-2002-03-09 Fumitoshi UKAI <ukai@debian.or.jp>
+ * version.c.in: Update to 0.5.3+debian-19+.
- * [w3m-dev 03095] Re: gopher broken
- (Re: Bug#137287: w3m: segfault on gopher://xxxx.xxx URI)
- * file.c (loadGopherDir): html_quote(url_quote_conv())
+2014-11-29 Justin B Rye <justin.byam.rye@gmail.com>
-2002-03-09 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+ * scripts/w3mman/w3mman2html.cgi.in: Fix Perl warnings.
+ Origin: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=771004
- * [w3m-dev 03092] Reload image
- * file.c (loadImageBuffer): cache->index = 0
+2014-10-21 Tatsuya Kinoshita <tats@debian.org>
-2002-03-09 Fumitoshi UKAI <ukai@debian.or.jp>
+ * version.c.in: Update to 0.5.3+debian-19
- * [w3m-dev 03093] Re: gopher broken
- (Re: Bug#137287: w3m: segfault on gopher://xxxx.xxx URI)
- * file.c (loadGopherDir): fix ->ptr
- q should be url_quote()
- * url.c (openURL): url_unquote() for gopher selector
+ * po/LINGUAS: Correct LINGUAS to a whitespace separated list
-2002-03-09 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+2014-10-21 Markus Hiereth <markus.hiereth@freenet.de>
- * [w3m-dev 03090] Re: gopher broken
- (Re: Bug#137287: w3m: segfault on gopher://xxxx.xxx URI)
- * file.c (loadGeneralFile): if loadGopherDir, type is real_type
- * file.c (loadGopherDir): rewrite to use loadHTMLstream()
+ * po/LINGUAS, po/de.po: Add German translation
+ Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=763964
-2002-03-08 Fumitoshi UKAI <ukai@debian.or.jp>
+2014-10-15 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev 03088] gopher broken
- (Re: Bug#137287: w3m: segfault on gopher://xxxx.xxx URI)
- * file.c (form_max): initial value should be -1
- * file.c (loadGopherDir): </A>
+ * version.c.in: Update to 0.5.3+debian-18
-2002-03-08 YAMAMOTO Takashi <yamt@mwd.biglobe.ne.jp>
+ * doc-jp/README.SSL: Update README.SSL to follow default values
- * [w3m-dev 03087] vi +1 emptyfile
- * etc.c (myEditor): line > 1
+ * config.sub: Update config.sub with autotools-dev 20140911.1
-2002-03-06 Christian Weisgerber <w3m-dev-en@mips.inka.de>
+ * fm.h: Disable SSLv3 by default [CVE-2014-3566]
+ cf. https://blog.mozilla.org/security/2014/10/14/the-poodle-attack-and-the-end-of-ssl-3-0/
- * [w3m-dev-en 00699]
- * configure: define SETPGRP() instead of setpgrp()
- * etc.c (mySystem): use SETPGRP() instead of setpgrp()
- * image.c (openImgdisplay): ditto
- * search.c (open_migemo): ditto
- * url.c: revert changes by Dai Sato on 2002-02-01
- since stdio.h and config.h is included with this order
- in fm.h
+2014-10-15 Ludwig Nussel <ludwig.nussel@suse.de>
-2002-03-06 Fumitoshi UKAI <ukai@debian.or.jp>
+ * fm.h: Force ssl_verify_server on and disable SSLv2 support
+ Origin: http://www.openwall.com/lists/oss-security/2010/06/14/4
- * version.c.in: 0.3+cvs
+2014-10-13 Tatsuya Kinoshita <tats@debian.org>
-2002-03-06 Fumitoshi UKAI <ukai@debian.or.jp>
+ * version.c.in: Update to 0.5.3+debian-17+
- * w3m 0.3
- * version.c.in: update
- * doc/README: version 0.3, release date
- * doc-jp/README: ditto
- * NEWS: update
+2014-10-04 Tatsuya Kinoshita <tats@debian.org>
-2002-03-06 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+ * libwc/ambwidth_map.awk, libwc/map/ucs_ambwidth.map:
+ Fix incorrect generation of ucs_ambwidth_map
- * [w3m-dev 03084] A temporary file remains when pipe + 'v'
- * proto.h (saveBufferDelNum): deleted
- * file.c (saveBufferDelNum): deleted
- * file.c (saveBuffer): saveBufferDelNum() renamed
- * main.c (vwSrc): tmpfname() recorded as fileToDelete
- use saveBuffer() instead of saveBufferDelNum()
+2014-08-22 Tatsuya Kinoshita <tats@debian.org>
-2002-03-04 Fumitoshi UKAI <ukai@debian.or.jp>
+ * version.c.in: Update to 0.5.3+debian-17
- * doc-jp/MANUAL.html: add note about file:/cgi-bin
- * doc/MANUAL.html: ditto
+ * config.guess:
+ Update config.guess to 2014-03-23 with autotools-dev 20140510.1
-2002-03-01 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+ * config.sub:
+ Update config.sub to 2014-05-01 with autotools-dev 20140510.1
- * [w3m-dev 03073] frame + image
- * file.c (loadGeneralFile): w3m_dump & ~DUMP_FRAME
- * file.c (loadImageBuffer): comment out if (frame_source)
+2014-08-22 Micah Cowan <micah@addictivecode.org>
-2002-03-01 Fumitoshi UKAI <ukai@debian.or.jp>
+ * main.c: Support Boehm GC 7.2.
+ Replace Gentoo's patch to prevent segfaults due to infinite recursion.
+ Origin: https://bugs.debian.org/cgi-bin/bugreport.cgi?msg=5;filename=080_gc72.patch;att=1;bug=758831
+ Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=758831
+ Bug-Fedora: https://bugzilla.redhat.com/show_bug.cgi?id=555467
+ Bug: http://sourceforge.net/p/w3m/patches/63/
+ Bug: http://sourceforge.net/p/w3m/patches/59/
- * [w3m-dev 03072] Proxy-Authorization (Re: Re: https through proxy)
- * file.c (loadGeneralFile) delete Proxy-Authorization set here
- * fm.h (HR_FLAG_PROXY): added
- * main.c (MAIN): need "Basic " for proxy_auth_cookie
- * url.c (HTTPrequest): add seen_proxy_auth
- if proxy and no Proxy-Authorization: header seen and
- has proxy_auth_cookie, use it
- * url.c (openURL): hr->flag |= HR_FLAG_PROXY
-
- * file.c (loadGeneralFile) comment indent fix
- * html.c (TagMAP): ditto
+2014-08-22 Tatsuya Kinoshita <tats@debian.org>
-2002-02-28 Fumitoshi UKAI <ukai@debian.or.jp>
+ * main.c:
+ Revert "Support Boehm GC 7.2" (w3m-0.5.2-gc72.patch from Gentoo)
+ This reverts commit 4331db3e3e673ac4dbfe8e9f2b42a8e0478dc98a.
- * [w3m-dev 03070] Re: https through proxy
- * url.c (openURL): pass extra_header (Proxy-Authorization:)
+2014-06-23 Tatsuya Kinoshita <tats@debian.org>
-2002-02-26 Fumitoshi UKAI <ukai@debian.or.jp>
+ * version.c.in: Update to 0.5.3+debian-16
- * [w3m-dev 03067] Re: https through proxy
- * file.c (loadGeneralFile): comment out ssl_get_certificate here
+ * url.c: Disable ciphers that use keys smaller than 128 bits
+ Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/w3m/+bug/1325674
-2002-02-26 Fumitoshi UKAI <ukai@debian.or.jp>
+2014-01-04 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev-en 00691] Re: w3m 0.2.5.1 fails to recognize '<dt id="XXX">'
- * html.c: ATTR_CORE for dt, dd, blockquote, caption
+ * version.c.in: Update to 0.5.3+debian-15
-2002-02-26 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+2014-01-03 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev 03064] Re: SELECTED form value
- * form.c (formResetBuffer): set inititial value
+ * version.c.in: Update to 0.5.3+debian-14
-2002-02-23 HIDAI Ken-ichi <hidai@nmn.jp>
+ * acinclude.m4, configure: Use pkg-config to build with imlib2 1.4.6
- * [w3m-dev 03060] doc-jp/README.migemo
- * doc-jp/README.migemo: added
+ * doc/HISTORY, doc/README.cookie, doc/README.m17n:
+ Prefer US-ASCII rathar than Japanese encodings in English documents
-2002-02-23 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+2013-12-27 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev 03059] table + hborder + rowspan + valign=bottom
- * table.c (renderTable): add case BORDER_NOWIN:
+ * doc-jp/MANUAL.html, doc/MANUAL.html:
+ Cleanup unusable links in MANUAL.html
+ Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=517315
-2002-02-20 Fumitoshi UKAI <ukai@debian.or.jp>
+ * version.c.in: Update to 0.5.3+debian-13+
- * [w3m-dev 03057] Re: Bug#134350: w3m: Forgets (http auth) login information upon reload (or almost anything else)
- * etc.c (find_auth): add `file'
- check file as well
- * etc.c (find_auth_cookie): add `file'
- * etc.c (add_auth_cookie): add `file'
- * file.c (AuthBasicCred): add "Basic "
- * file.c (AuthDigestCred): add "Digest "
- * file.c (getAuthCookie): if h_auth == NULL, get recorded cookie
- * file.c (get_auth_cookie): get recorded cookie
- * file.c (loadGeneralFile): don't clear add_auth_cookie_flag
- by redirection
- add_auth_cookie if authorization is required and passed
- * fm.h (auth_cookie): add file
- * ftp.c (openFTP): follow change auth_cookie
- * proto.h (get_auth_cookie): added
- * proto.h (find_auth_cookie): add `file'
- * proto.h (add_auth_cookie): add `file'
- * url.c (openURL): get_auth_cookie
+2013-12-17 Tatsuya Kinoshita <tats@debian.org>
-2002-02-20 Fumitoshi UKAI <ukai@debian.or.jp>
+ * version.c.in: Update to 0.5.3+debian-13
- * [w3m-dev 03058] mailer
- * NEWS: rc: mailer
- * fm.h (Mailer): change default
- * main.c (MAIN): $MAILER will be used as "mailer"
- * main.c (followA): if "mailer" defined & simple mailto: URL,
- use mailer instead of w3mmail.cgi
- * main.c (cmd_loadURL): ditto
- * rc.c (params6): remove ifndef USE_W3MMAILER
+2013-12-14 Tatsuya Kinoshita <tats@debian.org>
-2002-02-15 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+ * config.guess:
+ Update config.guess to 2013-06-10 with autotools-dev 20130810.1
- * [w3m-dev 03056] DISPLAY_IMAGE, STOP_IMAGE don't work.
- * main.c (dispI): fix DISPLAY_IMAGE
- * main.c (stopI): fix STOP_IMAGE
+ * config.sub:
+ Update config.sub to 2013-08-10 with autotools-dev 20130810.1
-2002-02-14 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+2013-12-07 Reinhard Max <max@suse.de>
- * [w3m-dev 03055] LIB_DIR -> w3m_lib_dir()
- * image.c (getCharSize): s/LIB_DIR/w3m_lib_dir()/
- * image.c (openImgdisplay): ditto
- * image.c (getImageSize): ditto
+ * local.c: Fix a directory descriptor leak in loadLocalDir.
+ Patch from openSUSE on 2009-09-07.
+ Origin: https://build.opensuse.org/package/view_file/openSUSE:Factory/w3m/w3m-closedir.patch
+ Bug-Novell: https://bugzilla.novell.com/show_bug.cgi?id=531675
-2002-02-14 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+2013-12-07 AIDA Shinra <shinra@j10n.org>
- * [w3m-dev 03048] garbage of images on the right edge of termical.
- * display.c (redrawLineImage): fix width calculation
+ * main.c: Fix crash after SEARCH_NEXT.
+ Patch from <http://www.j10n.org/files/w3m-cvs-1.1055-search-next.patch>,
+ [w3m-dev:04473] on 2013-12-07.
-2002-02-14 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+2013-11-11 Paul Boekholt <p.boekholt@gmail.com>
- * [w3m-dev 03053] Re: SSL indicator
- * main.c (dump_extra): Output SSL certificate.
+ * file.c: Add support for single quoted meta refresh URL
+ Bug: https://sourceforge.net/p/w3m/patches/53/
+ Bug-NetBSD: http://gnats.netbsd.org/42400
-2002-02-12 Katsumi Yamaoka <yamaoka@jpl.org>
+2013-11-07 Cristian Rodriguez <crrodriguez@opensuse.org>
- * [w3m-dev 03038] LDFLAGS
- * XMakefile: refer to LDFLAGS when linking
- * configure: add -ldflags=*
+ * url.c: Use SSL_OP_NO_COMPRESSION if available.
+ Due to the "CRIME attack" (CVE-2012-4929) HTTPS clients that
+ negotiate TLS-level compression can be abused for MITM attacks.
+ * url.c: Use SSL_MODE_RELEASE_BUFFERS if available.
+ Patch from openSUSE on 2012-11-12:
+ https://build.opensuse.org/request/show/141054
-2002-02-12 Yoshinobu Sakane <sakane@d4.bsd.nes.nec.co.jp>
+2013-10-15 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev 03036]
- * display.c (displayBuffer): ifdef USE_SSL
+ * Makefile.in:
+ Depend on funcname.tab to fix parallel make issue of scripts
+ Bug: https://sourceforge.net/p/w3m/patches/64/
+ Bug-Gentoo: https://bugs.gentoo.org/show_bug.cgi?id=362249
-2002-02-10 Fumitoshi UKAI <ukai@debian.or.jp>
+ * w3mimg/Makefile.in:
+ Avoid prerequisite $(IMGOBJS) to fix parallel make issue of w3mimg
+ Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=726188
- * [w3m-dev 03034] check buf
- * frame.c (frame_download_source): buf->ssl_certificate can be used
- only if buf != NULL && buf != NO_BUFFER
+ * acinclude.m4, configure:
+ Explicitly add -lX11 to IMGX11LDFLAGS only when gtk2
+ Bug: https://sourceforge.net/p/w3m/patches/57/
-2002-02-10 Fumitoshi UKAI <ukai@debian.or.jp>
+ * w3mimg/Makefile.in: Revert "Fix parallel make issue"
+ This reverts commit aa6f871c6dcc108118142bcc786e4a6ac3d46867.
- * [w3m-dev 03033] SSL indicator
- * display.c (displayBuffer): show SSL indicator
+ * Makefile.in:
+ Revert "Explicitly link w3mimgdisplay with -lX11 to build with gcc 4.5"
+ This reverts commit 7410954066d68ac2ad6aea638801714447321fec.
-2002-02-08 Yoshinobu Sakane <sakane@d4.bsd.nes.nec.co.jp>
+2013-10-14 AIDA Shinra <shinra@j10n.org>
- * [w3m-dev 03025] fix image loading on EWS4800
- * image.c (loadImage): exit if symlink failed
- exit if fopen failed
+ * url.c: Define schemeNumToName() to fix scheme bug.
+ Patch from <http://www.j10n.org/files/w3m-cvs-1.1055-schemebug.patch>,
+ [w3m-dev:04470] on 2013-10-14.
+ Bug: https://sourceforge.net/p/w3m/patches/60/
-2002-02-08 Fumitoshi UKAI <ukai@debian.or.jp>
+ * config.h.in, file.c, fm.h, html.h, image.c, indep.c, indep.h:
+ * istream.c, istream.h, local.c, main.c, mimehead.c, proto.h:
+ Workaround of GC crash on Cygwin64.
+ Patch from <http://www.j10n.org/files/w3m-cvs-1.1055-win64gc.patch>,
+ [w3m-dev:04469] on 2013-10-14.
- * [w3m-dev 03022] SSL certificates of frame body
- * frame.h (frame_body): add ssl_certificate
- * frame.c (frame_download_source): save ssl_certificate
- * map.c (append_frame_info): display ssl_certificate of frame_body
+2013-10-14 Tatsuya Kinoshita <tats@debian.org>
-2002-02-08 Fumitoshi UKAI <ukai@debian.or.jp>
+ * version.c.in: Update to 0.5.3+debian-12+
- * [w3m-dev 03021] Bug#132934: w3m should recognize file:/uris
- in chkURLBuffer function
- * main.c (chkURLBuffer): add "file:"
-
-2002-02-08 Yuji Abe <cbo46560@pop12.odn.ne.jp>
-
- * [w3m-dev 03017] URI scheme is case insensitive
- * url.c (searchURIMethods): s/strcmp/strcasecmp/
-
-2002-02-08 Tsutomu Okada <okada@furuno.co.jp>
-
- * [w3m-dev 03011] segmentation fault on <input> tag without <form>
- * file.c (process_input): tmp initialization fix
-
-2002-02-07 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [emacs-w3m:02733] for emacs-w3m better rendering with inline image
- * main.c (MAIN): activeImage = TRUE when -halfdump & display_image=1
-
-2002-02-07 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 03006] fix form order in table
- * file.c (process_form): static
- fix form index order
- method should be quoted
- * file.c (process_form): added
- * file.c (HTMLlineproc2body): add form_id
- * html.c (ALST_FORM_INT): added
- * html.c (form_int): update
-
-2002-02-07 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 03005] fix Bad cert ident
- * istream.c (ssl_match_cert_ident): added
- * istream.c (ssl_check_cert_ident): use ssl_match_cert_ident()
-
-2002-02-07 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02999] don't ask accept bad cert when background downloading
- * file.c (getAuthCookie): if QuietMessage, return NULL
- * file.c (inputAnswer): if QuietMessage, input "n"
+2013-10-14 Jarek Czekalski <jarekczek@poczta.onet.pl>
-2002-02-05 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02991] form support in w3m -halfdump foo.html|w3m -halfload
- * fm.h (DUMP_HALFEXTRA): deleted
- * proto.h (process_select): return Str
- * file.c (process_img): process_form() fix
- * file.c (process_input): process_form() fix
- * file.c (process_select): return Str
- process_form() fix
- * file.c (process_textarea): process_form() fix
- * file.c (process_form): support -halfdump
- * file.c (HTMLtagproc1): delete case HTML_FORM_INT, HTML_N_FORM_INT
- process_{form,select,textarea}() fix
- * file.c (HTMLlineproc2body): support -halfload
- HTML_INTERNAL, HTML_N_INTERNAL,
- HTML_FORM_INT, HTML_FORM_INT,
- HTML_TEXTAREA_INT, HTML_N_TEXTAREA_INT,
- HTML_SELECT_INT, HTML_N_SELECT_INT,
- HTML_OPTION_INT, HTML_TITLE_ALT
- * file.c (print_internal_information): fix -halfdump
- * file.c (loadHTMLstream): no DUMP_HALFEXTRA
- * html.h: add HTML_INTERNAL, HTML_N_INTERNAL,
- HTML_SELECT_INT, HTML_N_SELECT_INT,
- HTML_OPTION_INT, HTML_TEXTAREA_INT, HTML_N_TEXTAREA_INT
- * html.c (ALST_TEXTAREA_INT): added
- * html.c (ALST_SELECT_INT): added
- * html.c: add <internal>, </internal>, <select_int>, </select_int>
- <option_int>, <textarea_int>, </textarea_int>
- * main.c (MAIN): delete -halfdump_extra
- dont output <pre> by -halfdump
- * table.c (feed_table_tag): process_{form,select}() fix
- add case HTML_INTERNAL, HTML_N_INTERNAL,
- HTML_SELECT_INT, HTML_N_SELECT_INT,
- HTML_OPTION_INT, HTML_TEXTAREA_INT, HTML_N_TEXTAREA_INT,
- * tagtable.tab: add internal, /internal, select_int, /select_int
- option_int, textarea_int, /textarea_int
-
-2002-02-05 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02990]
- * file.c (doFileCopy): use Strfgets() instead of fgets()
- * file.c (doFileSave): ditto
-
-2002-02-05 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02989]
- * file.c (inputAnswer): use Strfgets() instead of fgets()
-
-2002-02-04 TSUCHIYA Masatoshi <tsuchiya@pine.kuee.kyoto-u.ac.jp>
-
- * [w3m-dev 02986]
- * file.c (print_internal_information): Don't print boundaries.
- Use henv->f instead of stdout.
-
-2002-02-04 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02984] inline image improvements and cleanups
- * config.h.dist (HAVE_SYMLINK) added
- * config.h.dist (HAVE_LSTAT): added
- * configure: symlink() check
- * configure: lstat() check
- * fm.h (maxLoadImage): added
- * form.c (form_write_from_file): s/HAVE_READLINK/HAVE_LSTAT/
- * image.c: include <sys/stat.h>
- * image.c (MAX_LOAD_IMAGE): default 8
- * image.c (max_load_image): deleted
- * image.c (n_load_image): added
- * image.c (showImageProgress): added
- * image.c (loadImage): check load image count
- s/HAVE_READLINK/HAVE_LSTAT/ (HAVE_SYMLINK)
- showImageProgress
- * local.c: include <sys/stat.h>
- s/HAVE_READLINK/HAVE_LSTAT/
- * rc.c (CMT_MAX_LOAD_IMAGE): added
- * rc.c (max_load_image): added
- * doc/README.img: update
- * doc-jp/README.img: update
-
- * file.c (process_img): pre_int fix
-
-2002-02-04 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02985] inputAnswer() and no "ssl_forbid_method"
- * file.c (inputAnswer): buf size is 80
- * url.c (openSSLHandle): if old_ssl_forbid_method == ssl_forbid_method
- ssl path is not modified
-
-2002-02-04 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02980] Re: code_to_str not found ifndef JP_CHARSET
- * backend.c (get_mime_charset_name): used only ifdef JP_CHARSET
-
-2002-02-04 Kazuhiko <kazuhiko@archi.kyoto-u.ac.jp>
-
- * [w3m-dev 02979] code_to_str not found ifndef JP_CHARSET
- * file.c (print_internal_information): ifdef JP_CHARSET
-
-2002-02-03 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02967] parallel image downloading
- * fm.h (ImageCache): add touch, pid
- * image.c (getCharSize): retry fscanf
- * image.c (drawImage): retry fflush
- * image.c (MAX_LOAD_IMAGE): added, default 4
- * image.c (image_cache): change to ImageCache**
- * image.c (image_lock): added
- * image.c (load_image_handler): signal SIGUSR1
- * image.c (load_image_next): signal SIGUSR1
- * image.c (loadImage): parallel image downloading
- * image.c (getImage): initialize touch, pid
- * image.c (getImageSize): return value is TRUE or FALSE
- retry fscanf
-
-2002-02-03 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02970] multiple -lnsl -lsocket
- * configure: merge bsdlib and extlib detection, use extlib only
- add ldflags to extlib
- (SYS_LIBRARIES): remove extlib
- (LOCAL_LIBRARIES): exlib only
-
-2002-02-03 TSUCHIYA Masatoshi <tsuchiya@pine.kuee.kyoto-u.ac.jp>
-
- * [w3m-dev 02964] Print data of forms when halfdump option is set
- * backend.c (print_headers): print w3m-current-url and w3m-base-url
- * backend.c (print_formlist): deleted
- * backend.c (internal_get): remove "if (buf->formlist) {}"
- * file.c (print_internal_information): added
- * file.c (loadHTMLstream): if halfdump, print_internal_information
- if w3m_backend, print_internal_information
- * fm.h (DUMP_HALFEXTRA): added
- * main.c (-halfdump_extra): added
-
-2002-02-01 Dai Sato <satodai@dog.intcul.tohoku.ac.jp>
-
- * [w3m-dev 02972] #include "config.h"
- * url.c, mktable.c: fix the order of including files
-
-2002-02-01 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02968] fix problem with Netscape-Enterprise WWW-authenticate
- * file.c (findAuthentication): token is case insensitive
-
-2002-02-01 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02961] halfdump image is not consistent
- * file.c (flushline): check f
- * file.c (do_blankline): fix blanklink conditions
-
-2002-02-01 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * gcc -Wall -Werror safe
- * anchor.c (addMultirowsImg): unused variable: fi
- * display.c (redrawLineImage): unused variable: ncol
- * file.c (process_img): uninitialized variables: r2, ni, w0, i0, ismap
- unused variable: url, ext
- * file.c (loadHTMLstream): need volatile image_flag
- * image.c (image_index): int
- * image.c (getCharSize): need prototype
- * image.c (getImage): uninitialized variable: key
- return NULL
- * map.c (follow_map_menu): used only USE_IMAGE: px, py, map
- * map.c (newMapArea): used only USE_IMAGE: p, i, max
- * proto.h (addMultirowsImg): added
- * w3mimgdisplay.c (main): format string fix
- * w3mimgdisplay.c (DrawImage): need (Pixmap) cast
-
- * inflate.c: indent
-
-2002-02-01 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * w3m-img merge (w3m-0.2.4+cvs-1.278-img-2.2.patch.gz)
- * NEWS: w3m-img merge
- * .cvsignore: add w3mimgdisplay, w3mimgsize
- * XMakefile: add image.c to SRCS
- add image.o to OBJS
- add IMGDISPLAY, IMGSIZE
- * config.h.dist: USE_IMAGE, IMGSIZE, IMGDISPLAY
- * configure: add find_imlib
- ask use_image
- (config.h) add $imgtarget to EXT_TARGETS
- $def_use_image
- IMGSIZE, IMGDISPLAY
- * fm.h (MAX_IMAGE): added
- * fm.h (DEFAULT_PIXEL_PER_CHAR): fix for USE_IMAGE
- * fm.h (DEFAULT_PIXEL_PER_LINE): added
- * fm.h (B_REDRAW_IMAGE): added
- * fm.h (IMG_FLAG_SKIP): added
- * fm.h (IMG_FLAG_AUTO): added
- * fm.h (IMG_FLAG_START): added
- * fm.h (IMG_FLAG_STOP): added
- * fm.h (IMG_FLAG_NEXT): added
- * fm.h (IMG_FLAG_UNLOADED): added
- * fm.h (IMG_FLAG_LOADED): added
- * fm.h (IMG_FLAG_ERROR): added
- * fm.h (MapArea): added
- * fm.h (MapList): s/urls/alts/, add area
- * fm.h (ImageCache): added
- * fm.h (Image): added
- * fm.h (Anchor): add image
- * fm.h (Buffer): add imarklist, image_flag, need_reshape
- * fm.h (RG_FRAME_SRC): added
- * fm.h (ALIGN_MIDDLE): added
- * fm.h (ALIGN_TOP): added
- * fm.h (ALIGN_BOTTOM): added
- * fm.h (QuietMessage): added
- * fm.h (Imgdisplay): added
- * fm.h (Imgsize): added
- * fm.h (activeImage): added
- * fm.h (displayImage): added
- * fm.h (autoImage): added
- * fm.h (useExtImageViewer): added
- * fm.h (image_source): added
- * fm.h (view_unseenobject): change default if USE_IMAGE
- * fm.h (set_pixel_per_char): added
- * fm.h (pixel_per_line): added
- * fm.h (set_pixel_per_line): added
- * fm.h (image_scale): added
- * proto.h (dispI): added
- * proto.h (stopI): added
- * proto.h (deleteImage): added
- * proto.h (getAllImage): added
- * proto.h (loadImage): added
- * proto.h (getImage): added
- * proto.h (getImageSize): added
- * proto.h (process_img): add width arg
- * proto.h (loadImageBuffer): added
- * proto.h (follow_map_menu): add a_img arg
- * proto.h (getMapXY): added
- * proto.h (newMapArea): added
- * proto.h (touch_cursor): added
- * proto.h (cURLcode): added
- * proto.h (initImage): added
- * proto.h (termImage): added
- * proto.h (addImage): added
- * proto.h (drawImage): added
- * proto.h (clearImage): added
- * anchor.c (addMultirowsImg): added
- * buffer.c (discardBuffer): deleteImage if USE_IMAGE
- * buffer.c (reshapeBuffer): buf->need_reshape check
- * display.c (fmTerm): if activeImage, stop load image
- * display.c (fmInit): if displayImage, initImage
- * display.c (image_touch): added
- * display.c (draw_image_flag): added
- * display.c (redrawLineImage): added
- * display.c (displayBuffer): buf->need_reshape = TRUE
- mode == B_REDRAW_IMAGE
- image flag checks
- force redraw image in mode == B_REDRAW_IMAGE
- displayBuffer if need reshape
- drawImage
- * display.c (redrawNLine): redrawLineImage
- * display.c (redrawLineImage): added
- * display.c (disp_message_nsec): return immediately if QuietMessage
- * etc.c (reset_signals): ignore SIGUSR1
- * file.c (frame_source): added
- * file.c (_MoveFile): added
- * file.c (cur_baseURL): added
- * file.c (cur_document_code): added
- * file.c (cur_iseq): added
- * file.c (loadGeneralFile): fix fmInitialized and prevtrap checks
- save cur_baseURL
- image_source load
- loadImageBuffer for "image/*"
- frame_source flag
- fix b->type when proc is loadImageBuffer
- * file.c (process_img): add width arg
- parse height and width attr, align
- fix for inline-image
- * file.c (process_input): fix for form <input type="image">
- * file.c (HTMLtagproc1): pass h_env->limit to process_img()
- fix <img_alt> for inline-image
- save cur_baseURL
- * file.c (HTMLlineproc2body): fix <img_alt> for inline-image
- * file.c (loadHTMLstream): fix for inline-image
- fix fmInitialized and prevtrap checks
- save cur_document_code
- save image_flag
- * file.c (loadGopherDir): save cur_document_code
- fix fmInitialized and prevtrap checks
- * file.c (loadImageBuffer): added for inline-image
- * file.c (save2tmp): fix fmInitialized and prevtrap checks
- * frame.c (frame_download_source): set RG_FRAME_SRC flag
- image check
- * funcname.tab (DISPLAY_IMAGE): added
- * funcname.tab (STOP_IMAGE): added
- * html.c (ALST_IMG): add align, ismap
- * html.c (ALST_AREA): add shape, coords
- * html.c (ALST_IMG_ALT): add width, height, usemap, ismap, hseq,
- xoffset, yoffset, top_margin, bottom_margin
- * html.c (AttrMap): add shape, coords, ismap, xoffset, yoffset
- * html.h (ATTR_SHAPE): added
- * html.h (ATTR_COORDS): added
- * html.h (ATTR_ISMAP): added
- * html.h (ATTR_XOFFSET): added
- * html.h (ATTR_YOFFSET): added
- * html.h (ATTR_TOP_MARGIN): added
- * html.h (ATTR_BOTTOM_MARGIN): added
- * html.h (SHAPE_UNKNOWN): added
- * html.h (SHAPE_DEFAULT): added
- * html.h (SHAPE_RECT): added
- * html.h (SHAPE_CIRCLE): added
- * html.h (SHAPE_POLY): added
- * image.c: added
- * main.c (fversion): add USE_IMAGE
- * main.c (fusage): -ppl option
- * main.c (MAIN): set_pixel_per_char if ppc specified
- -ppl option
- loadImage
- * main.c (pushBuffer): deleteImage
- * main.c (quitfm): termImage
- * main.c (selBuf): deleteImage
- * main.c (followA): fix for inline-image and map area
- * main.c (query_from_followform): getMapXY()
- * main.c (setOpt): displayBuffer B_REDRAW_IMAGE
- * main.c (follow_map): fix calculate x, y
- * main.c (dispI): added
- * main.c (stopI): added
- * map.c: include <math.h>
- * map.c (inMapArea): added
- * map.c (follow_map_menu): add a_img arg to handle inline-image
- * map.c (follow_map_panel): use MapArea
- * map.c (getMapXY): added
- * map.c (newMapArea): added
- * menu.c (smChBuf): deleteImage
- * parsetagx.c (toAlign): align top, bottom, middle
- * rc.c (P_SCALE): added
- * rc.c (CMT_PIXEL_PER_LINE): added
- * rc.c (CMT_DISP_IMAGE): added
- * rc.c (CMT_AUTO_IMAGE): added
- * rc.c (CMT_EXT_IMAGE_VIEWER): added
- * rc.c (CMT_IMAGE_SCALE): added
- * rc.c (CMT_IMGDISPLAY): added
- * rc.c (CMT_IMGSIZE): added
- * rc.c (show_param): P_PIXELS
- * rc.c (set_param): P_PIXELS
- * rc.c (sync_with_option): initImage
- * rc.c (to_str): P_PIXELS
- * table.c (feed_table_tag): fix <img> for inline-image
- * tagtable.tab (image): added
- * terms.c (wgetch): retry read when EINTR or EAGAIN
- * terms.c (touch_cursor): added
- * w3mimgdisplay.c: added
- * w3mimgsize.c: added
- * doc/README.func (DISPLAY_IMAGE): added
- * doc/README.func (STOP_IMAGE): added
- * doc/README.img: added
- * doc-jp/README.func (DISPLAY_IMAGE): added
- * doc-jp/README.func (STOP_IMAGE): added
- * doc-jp/README.img: added
- * scripts/w3mhelp.cgi.in: show dispI, stopI
- * scripts/multipart/multipart.cgi.in: inline image support
-
-2002-02-01 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * version.c.in: 0.2.5+cvs
-
-2002-01-31 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * w3m 0.2.5
- * version.c.in: update
- * doc/README: version 0.2.5, release date
- * doc-jp/README: ditto
- * NEWS: update
-
-2002-01-31 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02960] inflate without memmove()
- * inflate.c: rewrite without memmove()
-
-2002-01-31 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
-
- * inflate.c: support raw deflate without zlib header
-
-2002-01-31 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02955] compression_decoders error message
- * file.c (uncompress_stream): redirect stderr
- * inflate.c (main): print error message
-
-2002-01-31 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02949] fix for #undef USE_MIGEMO
- * main.c (dispincsrch): need #ifdef USE_MIGEMO
-
-2002-01-31 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02946] toggle migemo
- * fm.h (migemo_active): added
- * proto.h (inputLineHistSearch): add arg `prop' to incrfunc()
- * linein.c (inputLineHistSearch): ditto
- * main.c (isrch): ditto
- * main.c (dispincsrch): ditto
- C-\ toggle migemo
- underline when migemo is active
- * search.c (migemo_active): deleted
- * search.c (migemo_running): added
- * search.c (init_migemo): migemo_running
- * search.c (migemostr): ditto
- * search.c (forwardSearch): migemo_active > 0
- * search.c (backwardSearch): ditto
-
-2002-01-31 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02942] Digest qop=auth support
- * file.c (http_auth): add request to cred() arg
- * file.c (AuthBasicCred): ditto
- * file.c (AuthDigestCred): ditto
- * file.c (AuthDigestCred): support algorithm=MD5, MD5-sess
- qop=auth, auth-int
- * file.c (qstr_unquote): return NULL if input is NULL
- * file.c (none_auth_param): added
- * file.c (findAuthentication): skip weak or unknown auth
- * file.c (getAuthCookie): add request to arg
- * file.c (loadGeneralFile): add request to getAuthCookie()
-
-2002-01-31 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02934] add auth cookie with unquoted realm
- * file.c (loadGeneralFile): need unquote realm
-
-2002-01-31 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02933] segmentation fault when w3m -dump https:
- * file.c (readHeader): use inputAnswer()
- * file.c (getAuthCookie): remove term_cbreak()
- * file.c (checkOverWrite): use inputAnswer()
- * file.c (inputAnswer): added
- * istream.c (ssl_get_certificate): use inputAnswer()
- * main.c (qquitfm): change prompt
- * proto.h (inputAnswer): added
-
-2002-01-30 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02931] use POST in multipart.cgi
- * scripts/multipart/multipart.cgi.in: support POST method
-
-2002-01-30 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02930] Re: fixed w3mmail.cgi
- * scripts/w3mmail.cgi.in (lang_header_default): [=_?] should be encoded
- * scripts/w3mmail.cgi.in (lang_body_default): '=' should be encoded
-
-2002-01-30 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02929] Re: fixed w3mmail.cgi
- * file.c (openPagerBuffer): use content_charset as document_code
- * file.c (getNextPage): code is document_code or DocumentCode
-
-2002-01-30 Fumitoshi UKAI <ukai@debian.or.jp>
+ * terms.c: Fix paren in check_cygwin_console()
+ Bug: https://sourceforge.net/p/w3m/patches/66/
- * [w3m-dev 02928] RFC2617: HTTP Digest authentication
- * NEWS: RFC2617: HTTP Digest authentication
- * config.h.dist (USE_DIGEST_AUTH): added
- * configure (use_digest_auth): added, enabled when openssl found
- (because it used openssl/md5.h)
- * file.c (auth_param): added
- * file.c (http_auth): added
- * file.c (extract_auth_val): added
- * file.c (qstr_unquote): added
- * file.c (extract_auth_param): added
- * file.c (get_auth_param): added
- * file.c (AuthBasicCred): added
- * file.c (digest_hex): added
- * file.c (AuthDigestCred): added
- * file.c (basic_auth_param): added
- * file.c (digest_auth_param): added
- * file.c (www_auth): added
- * file.c (findAuthentication): added
- * file.c (getAuthCookie): rewrite, use http_auth
- * file.c (loadGeneralFile): HRequest hr
- * file.c (loadGeneralFile): use findAuthentication, new getAuthCookie
- * proto.h (HTTPrequestMethod): added
- * proto.h (HTTPrequestURI): added
- * proto.h (openURL): add `hr' arg
- * url.c (HTTPrequestMethod): added
- * url.c (HTTPrequestURI): added
- * url.c (HTTPrequest): use HTTPrequestMethod and HTTPrequestURI
- * url.c (openURL): add `hr' arg
-
-2002-01-30 SASAKI Takeshi <sasaki@ct.sakura.ne.jp>
-
- * [w3m-dev 02927] mailto: POST method with w3mmail.cgi
- * file.c (loadGeneralFile): pass request even if SCM_UNKNOWN
- (for external URI loader)
- * scripts/w3mmail.cgi.in: support POST method
-
-2002-01-30 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02926] fixed w3mmail.cgi
- * scripts/w3mmail.cgi.in: dont MIME encode for preview
- * scripts/w3mmail.cgi.in (lang_body): add 7bit/8bit flag arg
- * scripts/w3mmail.cgi.in: fix hidden from value
- * scripts/w3mmail.cgi.in (lang_setup): check $LC_ALL, $LC_CTYPE
- * scripts/w3mmail.cgi.in (lang_header_default): fix MIME encode word
-
-2002-01-30 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02920] don't use inttypes.h and/or stdint.h
- * mktable.c: remove inttypes.h, uintptr_t, use unsigned long instead
- * configure: remove inttypes.h detection
- * config.h.dist: remove HAVE_INTTYPES_H
-
-2002-01-29 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02921] use inttypes.h instead of stdint.h
- * configure: check inttypes.h instead of stdint.h
- * config.h.dist: s/STDINT_H/INTTYPES_H/
- * mktable.c: use inttypes.h instead of stdint.h
-
-2002-01-28 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02919] no need of width
- * scripts/w3mmail.cgi.in: no need width=80 for header field name
-
-2002-01-28 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02919] wrong table width calculation
- * table.c (set_table_matrix0): refine width calculation
-
-2002-01-28 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02918] fixed scripts/w3mmail.cgi.in
- * scripts/w3mmail.cgi.in: add width=80 for header field name
- * scripts/w3mmail.cgi.in (url_unquote): use pack instead of chr
-
-2002-01-27 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02914]
- * history.c (copyHist): added
- * history.h (copyHist): ditto
- * main.c (goURL0): copyHist(URLHist), push current and anchor URLs
- default set by DefaultURLString
-
-2002-01-26 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02913] wrong table width calculation
- * table.c (set_table_matrix0): refine width calculation
-
-2002-01-26 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02875] rendering a table with inconsistent colspan,rowspan
- * table.c (feed_table_tag): don't clear HTT_X|HTT_Y
- instead, if set these flags, break the loop
-
-2002-01-26 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02909] wrong table width calculation (sf.net Bug#506949)
- * table.c (correct_table_matrix4): added
- * table.c (set_table_matrix0): use correct_table_matrix4()
-
-2002-01-25 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02908] document code of frame
- * frame.c (renderFrame): save document_code if JP_CHARSET
-
-2002-01-25 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02904]
- * rc.c (N_STR): use cpp stringification
-
-2002-01-25 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02902] mouse inactive after calling some command with ALARM.
- * main.c (SigAlarm): mouse_inactive() and mouse_active()
-
-2002-01-25 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02901] Default URL for GOTO*
- * fm.h (DEFAULT_URL_*): added
- * fm.h (DefaultURLString): added
- * main.c (cmd_loadURL): add arg `referer'
- * main.c (goURL0): 2nd arg is `relative' flag
- check DefaultURLString
- if relative, then current and referer is set
- * main.c (ldhelp): cmd_loadURL arg changes
- * main.c (deletePrevBuf): ditto
- * main.c (cmd_loadBuffer): ditto
- * main.c (adBmark): ditto
- * main.c (follow_map): ditto
- * rc.c (CMT_DEFAULT_URL): added
- * rc.c (defaulturls): added
- * rc.c (params9): add "default_url"
+2013-10-13 Tatsuya Kinoshita <tats@debian.org>
-2002-01-25 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+ * version.c.in: Update to 0.5.3+debian-12
- * [w3m-dev 02901] DNS_ORDER_*
- * fm.h (DNS_ORDER_*): added
- * rc.c (dnsorders): use N_S(DNS_ORDER_*)
-
-2002-01-25 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02901] ACCEPT_BAD_COOKIE_*
- * file.c (readHeader): accept_bad_cookie is one of ACCEPT_BAD_COOKIE_*
- * fm.h (PERHAPS): deleted
- * fm.h (ACCEPT_BAD_COOKIE_*): added
- * rc.c (n_s): added
- * rc.c (N_S): added
- * rc.c (badcookiestr): use N_S(ACCEPT_BAD_COOKIE_*)
-
-2002-01-24 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+ * doc-jp/MANUAL.html, doc-jp/w3m.1, doc/MANUAL.html, doc/w3m.1:
+ Update document for the -s option change
+ Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=75527
- * [w3m-dev 02896] fid attr value should be in sequence
- * table.c (feed_table_tag): s/line/""/ for HTML_FORM,HTML_N_FORM
+ * terms.c: Do not fail when LANG is not set.
+ Check whether the value of LC_ALL, LC_CTYPE or LANG is not NULL in
+ check_cygwin_console().
+ Bug: https://sourceforge.net/p/w3m/patches/66/
-2002-01-24 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02894] Re: goURL
- * file.c (HTMLtagproc1): s/goURL/gorURL/
- * keybind.c (EscKeymap): M-u = GOTO_RELATIVE
- * keybind_lynx.c (EscKeymap): ditto
- * doc/keymap.default: ditto
- * doc/keymap.lynx: ditto
- * doc-jp/keymap.default: ditto
- * doc-jp/keymap.lynx: ditto
- * main.c (MAIN): add $HTTP_HOME or $WWW_HOME to history
- * main.c (MAIN): add history even if it is local file or local cgi
- * main.c (goURL0): change args, def_url -> current
- * main.c (goURL0): delete ParsedURL *b_url
- * main.c (goURL0): add Buffer *cur_buf
- * main.c (goURL0): if current is supplied, use its URL as default
- * main.c (goURL0): add URL to history if loadURL succeeded
- * main.c (goURL): change args for goURL0()
- * main.c (gorURL): ditto
-
-2002-01-23 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02889] fix scripts/multipart/multipart.cgi.in
- * scripts/multipart/multipart.cgi.in: return "" instead of next
-
-2002-01-23 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02885] Re: goURL
- * funcname.tab (GOTO_RELATIVE): added
- * main.c (goURL0): renamed from goURL
- don't add http:// here, if base URL is NULL, cmd_loadURL()
- will add http:// when necessary
- * main.c (goURL): go to URL with current URL
- * main.c (gorURL): go to relative URL
- * proto.h (gorURL): added
- * doc/README.func (GOTO_RELATIVE): added
- * doc-jp/README.func (GOTO_RELATIVE): ditto
-
-2002-01-22 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev-en 00670] GOTO behavior change
- * main.c (goURL): default URL is current URL
- if retry_http specified, and inputed URL is not absolute URL
- add http:// to top of url
-
- * linein.c (InputKeymap): C-w as backword-kill-word
-
-2002-01-22 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02880] URI_PATTERN
- * url.c (URI_PATTERN): better match for % hex hex
- * url.c (chkExternalURIBuffer): don't use URI_PATTERN as format string
-
-2002-01-22 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02879] reset signals
- * etc.c (reset_signals): added
- * etc.c (mySystem): use reset_signals()
- * file.c (uncompress_stream): use reset_signals()
- * proto.h (reset_signals): added
- * search.c (init_migemo): kill by SIGKILL
- * search.c (open_migemo): use reset_signals()
-
-2002-01-22 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * url.c (URI_PATTERN): remove \
-
-2002-01-22 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02878] fix regexp [-...], [...-], []...]
- * regexp.c (newRegex0): if first char is `-' or ']' after '[',
- it isn't meta char.
- if last char in [..] is `-', it isn't meta char.
-
-2002-01-22 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02877] some fixes for urimethodmap
- * config.h.dist (RC_DIR): remove tailing /
- * configure (mailer): if use_w3mmailer = y, don't ask mailer
- * configure (RC_DIR): remove tailing /
- * fm.h (Mailer): ifndef USE_W3MMAILER
- * main.c (MAIN): ifndef USE_W3MMAILER getenv("MAILER")
- * rc.c ("mailer"): ifndef USE_W3MMAILER
- * regex.c (newRegex0): \ escape kanji chars
- * url.c (searchURIMethods): need escape for -
- * scripts/w3mmail.cgi.in: move $url, $qurl
- * scripts/w3mmail.cgi.in: url_unquote $to
-
-2002-01-21 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02876] w3mmail.cgi.in backport from w3mmee
- * action='file://$0'
- * don't add \n to $body's tail
- * $body =~ s/\r+\n/\n/g;
- * s/@cmd/@opt/
- * url_unquote: + should be unquote too
-
-2002-01-18 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02873] delete "decode MIME-body" in doc{,-jp}/README
- * doc-jp/README: delete "decode MIME-body"
- * doc/README: ditto
-
-2002-01-18 Yoshinobu Sakane <sakane@d4.bsd.nes.nec.co.jp>
-
- * [w3m-dev 02872] EWS4800 sh doesn't work ${param-word}
- * configure (use_migemo): change migemo URL
- * configure (def_migemo_command): fix for EWS4800
- * configure (def_image_viewer): ditto
- * configure (def_audio_player): ditto
-
-2002-01-18 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02871] ignore SIGCHLD (for at least EWS4800)
- * search.c (open_migemo): signal(SIGCHLD, SIG_IGN);
-
-2002-01-18 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02870] don't kill migemo by SIGINT
- * main.c (w3m_exit): init_migemo() to kill migemo
- * search.c: #include <unistd.h>
- * search.c (migemo_active): added
- * search.c (migemo_pid): added
- * search.c (init_migemo): migemo_active = use_migemo
- * search.c (init_migemo): kill migemo_pid
- * search.c (open_migemo): s/pid/migemo_pid/
- * search.c (open_migemo): setpgrp()
- * search.c (open_migemo): s/use_migemo/migemo_active/
- * search.c (migemostr): ditto
- * search.c (forwardSearch): ditto
- * search.c (backwardSearch): ditto
-
-2002-01-17 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02867] mark URL for external URIs
- * main.c (chkURLBuffer): chkExternalURIBuffer()
- * proto.h (chkExternalURIBuffer): added
- * url.c (chkExternalURIBuffer): added
-
-2002-01-17 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02866]
- * search.c: #include <signal.h>
- * search.c (open_migemo): ignore SIG_INT for migemo process
- * search.c (open_migemo): close_tty()
- * search.c (open_migemo): use execl() instead of system()
-
-2002-01-17 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02865]
- * search.c (open_migemo): add flush_tty()
-
-2002-01-17 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02864] def_migemo_command
- * configure (def_migemo_command): default is
- migemo -t egrep /usr/local/share/migemo/migemo-dict
-
-2002-01-17 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02863] discard migemo error message
- * search.c (open_migemo): close stderr
-
-2002-01-17 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02862] SIGPIPE for migemo support
- * main.c (SigPipe): added
- * main.c (MAIN): signal(SIGPIPE, )
- * search.c: #include <errno.h>
- * search.c (migemostr): check fflush() error
- * search.c (migemostr): check result string (empty is err)
- * search.c (migemostr): if error occured, disable use_migemo
-
-2002-01-17 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02861] IPv6 configuration check
- * configure: force "#define INET6" if socket(AF_INET6, SOCK_STREAM, 0)
- failed but use_ipv6=y in config.param
-
-2002-01-17 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02859]
- * config.h.dist (DEF_MIGEMO_COMMAND): added
- * configure (DEF_MIGEMO_COMMAND): added
- * fm.h (migemo_command): initial value is DEF_MIGEMO_COMMAND
- * main.c (migemostr): remove here, move search.c
- * main.c (srchcore): dont migemostr() here
- * proto.h (init_migemo): added
- * rc.c (sync_with_option): init_migemo()
- * search.c (init_migemo): added
- * search.c (open_migemo): added
- * search.c (migemostr): communicate background migemo
- * search.c (forwardSearch): if regexCompile for migemostr failed,
- try original str
- * search.c (backwardSearch): ditto
-
-2002-01-17 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02855]
- * main.c (dispincsrch): for C-s C-s, revert some changes
-
-2002-01-17 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02854] highlight for incremental search
- * NEWS: highlight for incremental search
- * display.c (EFFECT_MARK_START): added
- * display.c (EFFECT_MARK_END): added
- * display.c (EFFECT_MARK_START_C): added
- * display.c (EFFECT_MARK_END_C): added
- * display.c (EFFECT_MARK_START_M): added
- * display.c (EFFECT_MARK_END_M): added
- * display.c: define_effect for MARK_{START,END}
- * display.c (mark_mode): added
- * display.c (redrawLine): if mark_mode
- * display.c (do_effects): do_effect2(PE_MARK, ...)
- * display.c (do_effects): do_effect1(PE_MARK, ...)
- * fm.h (P_EFFECT): changed to 0x01ff
- * fm.h (PE_MARK): moved
- * fm.h (mark_color): added
- * linein.c (inputLineHistSearch): incrfunc(int ch, Str str)
- * main.c (clear_mark): added
- * main.c (dispincsrch): remove arg `x', `y'
- * main.c (dispincsrch): move SAVE_BUFPOSITION()
- * main.c (srch): if (result & SR_FOUND) clear_mark()
- * main.c (cmd_mark): PE_MARK
- * main.c (nextMk): s/PM_MARK/PE_MARK/
- * main.c (prevMk): s/PM_MARK/PE_MARK/
- * proto.h (inputLineHistSearch): change prototype incfunc()
- * rc.c (CMT_MARK_COLOR): added
- * rc.c (params2): add "mark_color"
- * search.c (set_mark): added
- * search.c (forwardSearch): use set_mark()
- * search.c (backwardSearch): use set_mark()
-
-2002-01-16 Tsutomu Okada <okada@furuno.co.jp>
-
- * [w3m-dev 02851]
- * regex.c (newRegex0): fix return NULL;
-
-2002-01-16 Yoshinobu Sakane <sakane@d4.bsd.nes.nec.co.jp>
-
- * [w3m-dev 02847]
- * menu.c (initSelectMenu): use /* */ instead of //
-
-2002-01-16 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02846]
- * regex.c (newRegex0): check msg
-
-2002-01-16 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02845]
- * regex.c (newRegex0): check regex->storage[STORAGE_MAX]
-
-2002-01-16 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02843] w3mmail.cgi.in update
- * scripts/w3mmail.cgi.in: add $SENDMAIL_OPT
- change html
-
-2002-01-16 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02841] migemo patch
- * NEWS: migemo support
- * config.h.dist (USE_MIGEMO): added
- * configure: add use_migemo
- * fm.h (use_migemo): added
- * fm.h (migemo_command: added
- * main.c (fversion): add "migemo"
- * main.c (migemostr): added
- * main.c (srchcore): if use_migemo, use migemostr
- * rc.c (CMT_USE_MIGEMO): added
- * rc.c (CMT_MIGEMO_COMMAND): added
- * rc.c (params3): add use_migemo, migemo_command
-
-2002-01-16 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * main.c (fversion): add "external-uri-loader,w3mmailer"
-
-2002-01-16 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02840]
- * scripts/w3mmail.cgi.in: use LOCAL_COOKIE
- * scripts/w3mmail.cgi.in: no need HTTP response header
- * scripts/w3mmail.cgi.in: fix typo $nkf_NKF
- * scripts/w3mmail.cgi.in: eval { use NKF; } is perl5ism
- * scripts/multipart/multipart.cgi.in: ditto
-
-2002-01-16 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02835]
- * rc.c: move label_topline, nextpage_topline from param3 to param1
- param7 is SSL Setting
-
-2002-01-15 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02834] mailto: use external program
- * NEWS: use w3mmail.cgi for mailto: URL
- * configure: add use_w3mmailer
- * frame.c (createFrameFile): ifndef USE_W3MMAILER
- * main.c (followA): ifndef USE_W3MMAILER
- * main.c (cmd_loadURL): ifndef USE_W3MMAILER
- * url.c (schemetable): ifndef USE_W3MMAILER, mailto: become SCM_UNKNOWN
- * url.c (parseURL2): ifndef USE_W3MMAILER
- * url.c (_parsedURL2Str): ifndef USE_W3MMAILER
- * url.c (default_urimethods): added
- * url.c (searchURIMethods): check default_urimethods
- * scripts/Makefile: add w3mmail.cgi
- * scritps/w3mmail.cgi.in: added
- * scripts/.cvsignore: ignore w3mmail.cgi
-
-2002-01-15 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * file.c (loadGeneralFile): return NULL, not NO_BUFFER
-
-2002-01-15 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02833] ssl_forbid_method in SSL Setting
- * rc.c (params7): ssl_forbid_method moved here
- * rc.c (params8): ssl_forbid_method removed here
- * rc.c (sections): params7 ifdef USE_SSL
-
-2002-01-15 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02832] external URI loader support
- * NEWS: support external URI loader
- * config.h.dist (USE_EXTERNAL_URI_LOADER): added
- * config.h.dist (USER_URIMETHODMAP): added
- * config.h.dist (SYS_URIMETHODMAP): added
- * configure: ask use_external_uri_loader
- * file.c (loadGeneralFile): return NO_BUFFER, not NULL
- * file.c (loadGeneralFile): add SCM_UNKNOWN for USE_EXTERNAL_URI_LOADER
- * fm.h (urimethodmap_files): added
- * menu.c (initSelectMenu): SCM_UNKNOWN comment out
- * proto.h (initURIMethods): added
- * proto.h (searchURIMethods): added
- * rc.c (CMT_URIMETHODMAP): added
- * rc.c (params6): add urimethodmap
- * rc.c (sync_with_option): add initURIMethods()
- * url.c (parseURL): if SCM_UNKNOWN, url is saved in pu->file
- * url.c (_parsedURL2Str): if SCM_UNKNOWN, url is in pu->file
- * url.c (urimethods): added
- * url.c (loadURIMethods): added
- * url.c (initURIMethods): added
- * url.c (searchURIMethods): added
-
-2002-01-13 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02828]
- * url.c (_parsedURL2Str): add '/' at the end when scheme is SCM_FTPDIR
-
-2002-01-12 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02829]
- * file.c (loadGeneralFile): return NO_BUFFER
- * file.c (loadGeneralFile): if ssl_get_certificate() fails,
- no buffer created
- * istream.c (ssl_certificate_validity): deleted
- * istream.c (ssl_set_certificate_validity): ditto
- * istream.c (accept_this_site): added
- * istream.c (ssl_accept_this_site): ditto
- * istream.c (ssl_check_cert_ident): 1st arg is `X509 *'
- * istream.c (ssl_get_certificate): 2nd arg is `char *hostname'
- cert check code moved here from openSSLHandle()
- * url.c (free_ssl_ctx): accept_this_site initialized
- * url.c (openSSLHandle): remove cert check code here
-
-2002-01-12 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02827]
- * scripts/Makefile: use sed instead of /bin/sh while read; echo loop
-
-2002-01-12 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02823]
- * scripts/Makefile: don't use read -r
- because Solaris 8 for x86 doesn't work
-
-2002-01-12 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02822] Print FTP directory list for -dump_extra option
- * file.c (loadGeneralFile): remove FTPDIRtmp, use readFTPDir() instead
- save to buf->sourcefile for -dump_extra
- * ftp.c (FTPDIRtmp): deleted
- * ftp.c (openFTP): delete readFTPDir() part
- * ftp.c (readFTPDir): added
- * proto.h (readFTPDir): added
-
-2002-01-11 Akinori Ito <aito@fw.ipsj.or.jp>
-
- * [w3m-dev 02819]
- * regex.c (RegexMatch): loop condition changed (from < to <= )
- * regex.c (regmatch_iter): end condition changed (from >= to >)
- * search.c (forwardSearch): next search fix
-
-2002-01-11 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02818]
- * regex.c (regmatch_iter): return 0 if out of range
-
-2002-01-11 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02817]
- * menu.c (menuBackwardSearch): new regexMatch()
-
-2002-01-11 aito@fw.ipsj.or.jp
-
- * [w3m-dev 02815]
- * cookie.c (domain_match): use new regex
- * main.c (chkURLBuffer): use new regex
- * main.c (chkNMIDBuffer): use new regex
- * menu.c (menuForwardSearch): new regexMatch()
- * regex.c (RegexMatch): negative length means whole string
- * regex.c (RegexMatch): new regmatch()
- * regex.c (regmatch_sub_anytime): add 5th arg `char *'
- * regex.c (regmatch_iter): add 4th arg `char *'
- * regex.c (regmatch): add 3rd arg `char *'
- * url.c (openSocket): use new regex
-
-2002-01-10 aito@fw.ipsj.or.jp
-
- * [w3m-dev 02811] new regexp implementation
- * regex.h: remove defines
- * regex.h: struct regexchar, struct regex
- * regex.c: include stdio.h, stdlib.h, string.h, config.h
- * regex.c: remove include fm.h
- * regex.c (NULL JP_CHARSET IS_ALPHA IS_KANJI1): define unless defined
- * regex.c (RE_*) define
- * regex.c (st_ptr): deleted
- * regex.c (regmatch): remove 4th arg `int'
- * regex.c (newRegex0): rewrite, based on old newRegex
- * regex.c (newRegex): use newRegex0()
- * regex.c (RegexMatch): rewrite
- * regex.c (struct MatchingContext1): added
- * regex.c (struct MatchingContext2): added
- * regex.c (YIELD): added
- * regex.c (regmatch_sub_anytime): added
- * regex.c (regmatch_iter): added
- * regex.c (regmatch): use regmatch_iter()
- * regex.c (regmatch1): rewrite
- * regex.c (lc2c): add 2nd arg `len', rewrite
-
-2002-01-10 Yoshinobu Sakane <sakane@d4.bsd.nes.nec.co.jp>
-
- * [w3m-dev 02810]
- * scripts/Makefile: read -r
- * scripts/w3mhelp.cgi.in: fix bugs displaying "C-" only in some case
-
-2002-01-08 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02794]
- * url.c (parseURL): cleanup
- * url.c (parseURL2): file_unquote(pu->file)
-
-2002-01-07 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * version.c.in: 0.2.4+cvs
-
-2002-01-07 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * w3m 0.2.4
- * version.c.in: update
- * doc/README: version 0.2.4, release date
- * doc-jp/README: ditto
- * NEWS: update
-
-2002-01-06 Fumitoshi UKAI <ukai@debian.or.jp>
+2013-10-12 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev 02781] Re: Bug#127883: w3m tries to use xv as default
- * config.h.dist (DEF_IMAGE_VIEWER): added
- * config.h.dist (DEF_AUDIO_PLAYER): added
- * configure (def_image_viewer): added
- * configure (def_audio_player): added
- * configure (DEF_IMAGE_VIEWER): added
- * configure (DEF_AUDIO_PLAYER): added
- * mailcap.c (DefaultMailcap): use DEF_IMAGE_VIEWER, DEF_AUDIO_PLAYER
-
-2002-01-05 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02779] `;' is valid in URL
- * main.c (chkURLBuffer): add ;
-
-2001-12-28 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02772]
- * istream.c (ssl_get_certificate): show certificate subject and issuer
- * istream.c (ssl_check_cert_ident): add missing NULL for Strcat_m_charp
- * url.c (openSSLHandle): close(sock) and SSL_free(handle) on failure
-
-2001-12-28 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02770] form element outside <form>..</form>
- * main.c (_followForm): check whether parent action is "none"
- * form.c (internal_action): add "none"
- * form.c (do_internal): check internal_action[i].rout
- * file.c (process_input): check cur_form_id
- * file.c (process_select): ditto
- * file.c (process_textarea): ditto
-
-2001-12-28 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02769] <form>..</form> as block element
- * file.c (HTMLtagproc1): CLOSE_P for <form>...</form>
- * table.c (feed_table_tag): add feed_table_block_tag for <form></form>
-
-2001-12-28 Hironori Sakamoto <h-saka@lsi.nec.co.jp>
-
- * [w3m-dev 02765] backend
- * backend.c (internal_get): cleanups
- * file.c (flushline): remove w3m_backend checks
- * file.c (loadHTMLstream): add w3m_backend check
- * fm.h (backend_halfdump_str): deleted
- * fm.h (backend_halfdump_buf): added
-
-2001-12-28 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
-
- * [w3m-dev 02761]
- * file.c (loadcmdout): remove unnecessary buf check
-
-2001-12-28 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02760]
- * file.c (getshell): check buf == NULL
- * main.c (execdict): check buf == NULL
- buf->type == NULL, then buf->type is set as "text/plain"
-
-2001-12-28 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02759] fold textarea
- * fm.h (FoldTextarea): added
- * form.c (formUpdateBuffer): check FoldTextarea
- * rc.c (CMT_FOLD_TEXTAREA): added
- * rc.c (params1): add "fold_textarea"
-
-2001-12-28 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02757]
- * main.c (execdict): w = conv_from_system(word)
- * main.c (dictword): call execdict() only
-
-2001-12-27 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * url.c (openSSLHandle): accept_this_file is out of
- #ifdef USE_SSL_VERIFY
-
-2001-12-27 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02753]
- * url (ssl_verify_error_string): deleted
- * url.c (openSSLHandle): use X509_verify_cert_error_string()
-
-2001-12-27 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02750] RFC2818 server identity check
- * istream.c (ssl_certificate_validity): added
- * istream.c (ssl_set_certificate_validity): added
- * istream.c (ssl_get_certificate): use ssl_certificate_validity
- * istream.h (ssl_set_certificate_validity): added
- * url.c (ssl_verity_error_string): added
- * url.c (openSSLHandle): add accept_this_site
- * url.c (openSSLHandle): dont check by SSL_VERIFY_PEER,
- use SSL_get_verify_result() instead
- * url.c (openSSLHandle): check peer_certificate() and then
- SSL_get_verify_result()
-
-2001-12-27 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02749] cleanup code for editor,mailer,extbrowser
- * etc.c (myExtCommand): added
- * etc.c (myEditor): added
- * form.c (input_textarea): use myEditor()
- * main.c (pipeBuf): use myExtCommand()
- * main.c (editBf): use myEditor()
- * main.c (editScr): use myEditor()
- * main.c (followA): use myExtCommand()
- * main.c (cmd_loadURL): use myExtCommand()
- * main.c (invoke_browser): use myExtCommand()
- * main.c (execdict): use myExtCommand()
- * proto.h (myExtCommand): added
- * proto.h (myEditor): added
-
-2001-12-27 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02748] cleanup code for restoring cursor position
- * buffer.c (reshapeBuffer): delete top, linenum, cursorY, pos,
- currentColumn, formitem
- * buffer.c (reshapeBuffer): add sbuf and
- use copyBuffer(), restorePosition()
- * buffer.c (reshapeBuffer): use chkURLBuffer(), chkNMIDBuffer()
- * display.c (in_check_url): deleted
- * display.c (displayBuffer): ditto
- * display.c (displayBuffer): s/Currentbuf/buf/
- * display.c (arrangeLine): ditto
- * display.c (restorePosition): added
- * fm.h (TOP_LINENUMBER): added
- * fm.h (CUR_LINENUMBER): added
- * main.c (editBf): delete type, top, linenum, cursorY, pos,
- currentColumn
- * main.c (editBf): add sbuf and use copyBuffer(), restorePosition()
- * main.c (reload): delete type, top, linenum, cursorY, pos,
- currentColumn
- * main.c (reload): add sbuf and use copyBuffer(), restorePosition()
- * main.c (chkURLBuffer): added
- * main.c (chkURL): chkRULBuffer on Currentbuf
- * main.c (chkNMIDBuffer): added
- * main.c (chkNMID): chkNMIDBuffer on Currentbuf
- * proto.h (chkURLBuffer): added
- * proto.h (chkNMIDBuffer): added
- * proto.h (restorePosition): added
-
-2001-12-27 "OMAE, jun" <jun-o@dai.meta.ne.jp>
-
- * [w3m-dev 02735]
- * indep.c (bcopy): need (chat *) cast
- * indep.c (bzero): use char * instead of void *
-
-2001-12-26 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02745]
- * istream.h: #include <x509v3.h> deleted
- * istream.c: #include <x509v3.h>
- * istream.c (ssl_check_cert_ident): if subjectAltName dNSName found,
- don't try commonName
-
-2001-12-26 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02743] RFC2818 server identity check
- * NEWS: RFC2818 server identity check
- * istream.c (ssl_check_cert_ident): added
- * istream.h (ssl_check_cert_ident): ditto
- * istream.h: #include <x509v3.h>
- * url.c (free_ssl_ctx): ssl_ctx = NULL
- * url.c (openSSLHandle): arg hostname to check cert id
- * url.c (openSSLHandle): check SSL_get_verify_result
- if ssl_verify_server
- * url.c (openSSLHandle): check server identity by ssl_check_cert_ident
- * url.c (openURL): openSSLHandle with pu->host
-
-2001-12-26 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02715] bugfix in scripts/multipart/multipart.cgi.in
- was not applied
- * scripts/multipart/multipart.cgi: fix "use NKF" check
-
-2001-12-26 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
-
- * [w3m-dev 02732] fix Debian Bug#126381
- - Passwords entered for HTTPS are used for HTTP
- * etc.c (find_auth): add port arg
- * etc.c (find_auth_cookie): add port arg
- * etc.c (add_auth_cookie): add port arg
- * file.c (getAuthCookie): find_auth_cookie(host, port, realm)
- * file.c (loadGeneralFile): add_auth_cookie(host, port, realm, ss)
- * fm.h (struct auth_cookie): add port
- * ftp.c (openFTP): find_auth_cookie(host, port, user)
- * ftp.c (openFTP): add_auth_cookie(host, port, user, pwd)
- * proto.h (find_auth_cookie): add port
- * proto.h (add_auth_cookie): add port
-
-2001-12-26 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02729]
- * doc-jp/README.func (DOWNLOAD): update
- * doc-jp/README.func (EDIT): ditto
- * doc-jp/README.func (EDIT_SCREEN): ditto
- * doc-jp/README.func (SAVE): ditto
- * doc/README.func (DOWNLOAD): ditto
- * doc/README.func (SAVE): ditto
- * doc/README.func (SUBMIT): ditto
- * scripts/w3mhelp.cgi.in: $key is normalized by &norm_key
- * scripts/w3mhelp.cgi.in: keyfunc update
- * scripts/w3mhelp.cgi.in (load_keymap): check data, &norm_key
- * scripts/w3mhelp.cgi.in (norm_key): added
-
-2001-12-26 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [#496613] LASTLINE in terms.c
- by Kazuhiro NISHIYAMA (znz)
- * terms.c (LASTLINE): defined(__CYGWIN__) instead of defined(CYGWIN)
- * terms.c (setlinescols): ditto
-
-2001-12-26 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [#496610] #include <sys/wait.h>
- by Kazuhiro NISHIYAMA (znz)
- * main.c: #if defined(HAVE_WAITPID) || defined(HAVE_WAIT3)
- * etc.c: ditto
- * file.c: ditto
-
-2001-12-26 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
-
- * [w3m-dev 02725] bcopy, bzero
- * etc.c (bcopy): deleted
- * etc.c (bzero): deleted
- * indep.c (bcopy): added
- * indep.c (bzero): added
- * indep.c (bcopy): src should be const
- * fm.h (bcopy): ditto
-
-2001-12-25 Kazuhiko <kazuhiko@archi.kyoto-u.ac.jp>
-
- * [w3m-dev 02727]
- * doc-jp/keymap.default (C-r): ISEARCH_BACK
- * doc-jp/keymap.default (C-s): ISEARCH
- * doc-jp/README.func: fix typo
-
-2001-12-25 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02726] incremental search
- * NEWS: incremental search
- * fm.h (inputLineHist) define by inputLineHistSearch
- * fm.h (COPY_BUFPOTISION): added
- * fm.h (SAVE_BUFPOSITION): ditto
- * fm.h (RESTORE_BUFPOSITION): ditto
- * funcname.tab (ISEARCH): added
- * funcname.tab (ISEARCH_BACK): added
- * keybind.c (GlobalKeymap): C-s = ISEARCH, C-r = ISEARCH_BACK
- * linein.c (inputLineHistSearch): renamed from inputLineHist,
- new arg incrfunc() for increment search
- * linein.c (inputLineHistSearch): add cursorX, cursorY
- * main.c (srchcore): remove displayBuffer, onA
- * main.c (dispincsrch): added
- * main.c (isrch): ditto
- * main.c (isrchfor): ditto
- * main.c (isrchbak): ditto
- * main.c (srch): add displayBuffer, onA
- * main.c (srch_nxtprv): ditto
- * proto.h (isrchfor): added
- * proto.h (isrchbak): ditto
- * proto.h (inputLineHistSearch): renamed
- * doc/keymap.default (C-r): ISEARCH_BACK
- * doc/keymap.default (C-s): ISEARCH
- * doc/README.func (ISEARCH): added
- * doc/README.func (ISEARCH_BACK): ditto
- * doc-jp/README.func (ISEARCH): added
- * doc-jp/README.func (ISEARCH_BACK): ditto
-
-2001-12-25 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02723] cleanup resizing
- * main.c (resized): renamed to need_resize_screen
- * main.c (need_resize_screen): added
- * main.c (resize_hook): prototype here
- * main.c (resize_handler): ditto
- * main.c (MAIN): move signal initialization
- * main.c (MAIN): remove duplicate signal initialization
- * main.c (resize_screen): added
- * proto.h (resize_hook): deleted
- * terms.c (mouse_init): remove signal
-
-2001-12-25 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02721]
- * main.c (resize_handler): added
- * main.c (MAIN): use resize_handler in getch()
-
-2001-12-25 WATANABE Katsuyuki <katsuyuki_1.watanabe@toppan.co.jp>
-
- * [w3m-dev 02714]
- * scripts/w3mhelp.cgi.in: $helpdir should be handled by cygwin_pathconv
- when $CYGPATH=1
-
-2001-12-25 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02715] bugfix in scripts/multipart/multipart.cgi.in
- * scripts/multipart/multipart.cgi: fix "use NKF" check
-
-2001-12-25 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02719] (based on [w3m-dev 02708] comments)
- * resize_hook: set resized flag only
- * main.c (MAIN): in key input loop, process resize
- when resized flag is set
-
-2001-12-24 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02702] fix problem with emacs-w3m in [w3m-dev 02699]
- * main.c (MAIN): remove some flag initialization, its too early?
- this code caused problem with emacs-w3m.
-
-2001-12-23 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02700] search refactoring
- * based on http://www.nmn.jp/~hidai/software/w3m/
- * fm.h: add SR_* constants, result value for search
- * main.c (srchcore): added
- * main.c (disp_srchresult): added
- * main.c (srch): added
- * main.c (srchfor): use srch()
- * main.c (srchbak): use srch()
- * main.c (srch_nxtprv): use srchcore() & disp_srch_result()
- * search.c (forwardSearch): return SR_* result value
- * search.c (backwardSearch): ditto
-
-2001-12-23 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02699] initialization too late
- * main.c (MAIN): initializations moved before arg processing
- * debian bug closes: Bug##102445: ignores SIGWINCH while downloading
-
-2001-12-22 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
-
- * [w3m-dev 02696]
- * configure: fix bashism of w3mhelp-{lynx,w3m}_{en,ja} expansion
-
-2001-12-22 Dai Sato <satodai@dog.intcul.tohoku.ac.jp>
-
- * [w3m-dev 02687] version number in w3mhelp-*.html (+[w3m-dev 02689])
- * configure (cur_ver): w3mhelp*.html version subst
- * w3mhelp*.html: deleted
- * w3mhelp*.html.in: added
+ * table.h: Bump MAXCOL to 256
+ Bug: https://sourceforge.net/p/w3m/feature-requests/24/
-2001-12-22 Tsutomu Okada <okada@furuno.co.jp>
+2013-10-12 Laurence Richert <laurencerichert@yahoo.de>
- * [w3m-dev 02682]
- * doc/README: remove README.dj
- * doc-jp/README.hp: deleted
+ * main.c, proto.h: vim/-perator like handling
+ - half page scrolling
+ - jumping to elements numbered by getLinkNumberStr() from Karsten
+ Schoelzel
+ Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=724028
-2001-12-22 Fumitoshi UKAI <ukai@debian.or.jp>
+2013-10-12 Tatsuya Kinoshita <tats@debian.org>
- * [w3m-dev 02692] w3m on linux/ia64
- * mktable.c: #include "config.h"
- * mktable.c: #include "stdint.h" or uintptr_t typedef
- * mktable.c: use uintptr_t instead of unsigned int
- * configure: check pthread on linux
- * configure: add gc_cflags for linux/ia64,alpha,s390
- * configure: check stdint.h
- * configure (config.h): add $pthreadlib to GCLIB
- * configure (config.h): add $def_have_stdint_h
- * config.h.dist (HAVE_STDINT_H): added
- * Str.c: add #include <stdlib.h> for exit() on some platform (ia64)
+ * doc-jp/README, doc/README:
+ Mention project page rather than unavailable mailing lists
-2001-12-22 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+2013-10-09 Rafael Laboissiere <rafael@laboissiere.net>
- * [w3m-dev 02690] RC_DIR in scripts
- * configure (config.h): add RC_DIR
- * config.h.dist: ditto
- * XMakefile: pass RC_DIR
- * scripts/Makefile: subst RC_DIR
- * scripts/dirlist.cgi.in: $RC_DIR initial value
- * scripts/w3mhelp.cgi.in: ditto
- * scripts/w3mhelp.cgi.in (cygwin_pathconv): added
+ * doc/README.img: Fix typo
+ Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=725892
-2001-12-22 Fumitoshi UKAI <ukai@debian.or.jp>
+2013-08-12 Tatsuya Kinoshita <tats@debian.org>
- * version.c.in: 0.2.3.2+cvs
+ * version.c.in: Update to 0.5.3+debian-11+
-2001-12-22 Fumitoshi UKAI <ukai@debian.or.jp>
+ * ChangeLog: Update ChangeLog to use contributor's name
- * w3m 0.2.3.2 - Security fix in w3m/scripts
- * version.c.in: update
- * w3mhelp-*.html: version 0.2.3.2
- * doc/README: version 0.2.3.2, release date
- * doc-jp/README: ditto
- * NEWS: added
+2013-08-08 Tatsuya Kinoshita <tats@debian.org>
-2001-12-22 Fumitoshi UKAI <ukai@debian.or.jp>
+ * version.c.in: Update to 0.5.3+debian-11
- * scripts/w3mhelp.cgi.in: lang=[a-z][a-z] only
+2013-08-04 Tatsuya Kinoshita <tats@debian.org>
-2001-12-22 Hironori Sakamoto <h-saka@lsi.nec.co.jp>
+ * Str.c: Check length for Strchop()
- * Security hole in multipart.cgi.in, w3mman2html.cgi.in
- * scripts/w3mhelp.cgi.in: open(F, "< $var") instead of open(F, $var)
- * scripts/w3mhelp.cgi.in: fix eval qq{require ...};
- * scripts/multipart/multipart.cgi.in: ditto
- * scripts/w3mman/w3mman2html.cgi.in: validate $keyword, $section, $man
+ * main.c: Fix potentially segfault of execdict()
-2001-12-21 Fumitoshi UKAI <ukai@debian.or.jp>
+ * version.c.in: Update to 0.5.3+debian-10+
- * [w3m-dev-en 00656]
- * helpdir default is PREFIX/share/w3m
+ * file.c: Fix segfault of loadGeneralFile()
+ Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=718612
-2001-12-20 Fumitoshi UKAI <ukai@debian.or.jp>
+2013-08-02 Tatsuya Kinoshita <tats@debian.org>
- * version.c.in: 0.2.3.1-cvs
+ * version.c.in: Update to 0.5.3+debian-10
-2001-12-20 Fumitoshi UKAI <ukai@debian.or.jp>
+2013-08-02 Piotr P. Karwasz <piotr.p@karwasz.org>
- * w3m 0.2.3.1
- * version.c.in: update
- * w3mhelp-*.html: version 0.2.3.1
- * doc/README: version 0.2.3.1, release date
- * doc-jp/README: ditto
+ * scripts/w3mman/w3mman2html.cgi.in:
+ Correct underline processing and more UTF-8 support for w3mman2html.cgi.
+ Patch from <https://bugs.launchpad.net/ubuntu/+source/w3m/+bug/680202>
+ on 2010-11-23.
-2001-12-20 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+2013-08-01 Hilko Bengen <bengen@debian.org>
- * [w3m-dev 02683]
- * configure (def_param): fix wrong behavior unless variable initialized
- * configure (def_param): fix unnecessary eval
- * configure (ask_choice): ditto
+ * entity.c: Ignore SOFT HYPHEN to prevent drawing hyphens everywhere.
+ Patch from <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=441934>
+ on 2011-03-01.
-2001-12-20 Dai Sato <satodai@dog.intcul.tohoku.ac.jp>
+2013-08-01 Tatsuya Kinoshita <tats@debian.org>
- * w3mhelp-*.html, doc/README, doc-jp/README:
- * fix version number to 0.2.3.
+ * doc-jp/README, doc/README: Update contact list in README
+ Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=696209
-2001-12-20 Fumitoshi UKAI <ukai@debian.or.jp>
+2013-07-30 Tatsuya Kinoshita <tats@debian.org>
- * version.c.in: 0.2.3-cvs
+ * config.guess, config.sub:
+ Update config.guess and config.sub to supprot aarch64.
+ Updated with Debian autotools-dev version 20130515.1.
-2001-12-20 Fumitoshi UKAI <ukai@debian.or.jp>
+2013-07-30 Conrad J.C. Hughes <debbugs@xrad.org>
- * w3m 0.2.3 release
- * version.c.in: update
+ * main.c: Sort anchors by sequence number in -dump.
+ Patch from <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=657666>
+ on 2012-01-27.
-2001-12-20 Fumitoshi UKAI <ukai@debian.or.jp>
+2013-07-30 Tatsuya Kinoshita <tats@debian.org>
- * w3m 0.2.3 release condidate 3
- * configure (use_bundled_gclib): added
+ * version.c.in: Update to 0.5.3+debian-9+
-2001-12-20 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+2013-07-29 Tatsuya Kinoshita <tats@debian.org>
- * w3m 0.2.3 release candidate 2
- * [w3m-dev 02678]
- * configure: get mygcversion from gc/version.h
- * Makefile: update GCLIBTGZ
+ * version.c.in: Update version to w3m/0.5.3+debian-9
-2001-12-20 Fumitoshi UKAI <ukai@debian.or.jp>
+ * version.c.in: Set CURRENT_VERSION to debian version
- * w3m 0.2.3 release candidate 1
- * gc/: sync with w3m-0.2.2-inu-1.1/gc
- * Patches/ews4800: deleted
- * configure: comment out Patches/ews4800
+2013-07-28 Tatsuya Kinoshita <tats@debian.org>
-2001-12-20 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+ * file.c: Fix segfault of process_button()
- * [w3m-dev 02655] print version and compile options
- * configure: change order of questions
- * main.c (fversion): added
- * main.c (fusage): use fversion()
- * main.c (fusage): add -help, -version
- * main.c (MAIN): add -help, -version
+2013-04-08 AIDA Shinra <shinra@j10n.org>
-2001-12-20 Tsutomu Okada <okada@furuno.co.jp>
+ * file.c: One more patch for siteconf from [w3m-dev 04464]
- * [w3m-dev 02672]
- * main.c (wrap_GC_warn_proc): msg_ring initial value
- * main.c (SigAlarm): not need #ifdef USE_ALARM, already guarded
+ * anchor.c, config.h.in, display.c, doc-jp/README.siteconf:
+ * doc/README.siteconf, file.c, fm.h, form.c, frame.c, func.c:
+ * history.c, indep.c, indep.h, linein.c, main.c, map.c, menu.c:
+ * po/ja.po, proto.h, rc.c, url.c: Support the siteconf feature.
+ Patch to support the siteconf feature, from [w3m-dev 04463]
+ on 2012-06-27.
-2001-12-18 Fumitoshi UKAI <ukai@debian.or.jp>
+2013-04-08 Hayaki Saito <user@zuse.jp>
- * [#493911] too few arguments to function `longjmp'
- by Kazuhiro NISHIYAMA (znz)
- * configure (LONGJMP): need val argument
+ * keybind.c, main.c, proto.h, terms.c:
+ Support SGR 1006 mouse reporting.
+ cf. [w3m-dev 04466] on 2012-07-15
+ Origin: https://gist.github.com/3114255
+ Bug: https://sourceforge.net/p/w3m/patches/65/
-2001-12-18 Fumitoshi UKAI <ukai@debian.or.jp>
+2012-05-19 Hilko Bengen <bengen@debian.org>
- * [#493906] missing #ifdef by Kazuhiro NISHIYAMA (znz)
- * main.c (sig_chld): #ifdef SIGCHLD
- * main.c (SigAlarm): #ifdef USE_ALARM
+ * form.c: Assume "text" if an input type is unknown.
+ Patch from <http://bugs.debian.org/615843> on 2011-03-01.
-2001-12-18 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
+2012-05-19 Simon Ruderich <simon@ruderich.org>
- * [w3m-dev 02670]
- * table.c (maximum_visible_length): use strchr()
- * table.c (do_refill): use force==2 mode for flushline()
+ * Makefile.in: Use $(CPPFLAGS) with $(CPP).
+ Patch from <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=665491>
+ on 2012-03-24.
-2001-12-18 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+2012-05-03 Miroslav Šulc <fordfrog@gentoo.org>
- * [w3m-dev 02669] delete cURLcode()
- * main.c (cURLcode): deleted
- * main.c (loadNormalBuf): no need to use cURLcode()
- * main.c (followI): ditto
- * main.c (query_from_followform): need conv_form_encoding()
+ * w3mimg/Makefile.in: Fix parallel make issue.
+ Patch from Gentoo
+ <http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/www-client/w3m/files/w3m-0.5.3-parallel-make.patch?revision=1.1&view=markup>
+ <https://bugs.gentoo.org/show_bug.cgi?id=353390> on 2011-02-01.
-2001-12-18 Rin Okuyama <okuyama@cna.ne.jp>
+2012-05-03 MATSUU Takuto <matsuu@gentoo.org>
- * [w3m-dev 02668] install-sh: -e option of sh(1)
- * install-sh: add set -e
+ * main.c: Support Boehm GC 7.2.
+ Patch from Gentoo
+ <http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/www-client/w3m/files/w3m-0.5.2-gc72.patch?revision=1.1&view=markup>
+ on 2009-12-13.
-2001-12-18 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+2012-05-02 Reinhard Tartler <siretart@tauware.de>
- * [w3m-dev 02667]
- * terms.c (mouse_init): #ifdef SIGWINCH guard
-
-2001-12-16 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02666] resizing on xterm with gpm support
- * terms.c (mouse_init): check Gpm_Open return value, signal(SIGWINCH)
-
-2001-12-16 Rin Okuyama <okuyama@cna.ne.jp>
-
- * [w3m-dev 02664] install-sh -s option
- * XMakefile: install-sh -s
- * install-sh: support strip option
-
-2001-12-15 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02663] fix prevA() cause loop
- * table.c (do_refill): force flushline
- * table.c (feed_table_tag): push line if <a> has no href attr
-
-2001-12-15 Rin Okuyama <okuyama@cna.ne.jp>
-
- * [w3m-dev 02659] rc.c (show_srch_str)
- * fm.h (show_srch_str): added
- * main.c (srch_nxtprv): check show_srch_str
- * rc.c (CMT_SHOW_SRCH_STR): added
-
-2001-12-15 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
-
- * [w3m-dev 02657]
- * main.c (chkURL): accept URL ending with '='
-
-2001-12-15 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
-
- * [w3m-dev 02656]
- * XMakefile (clean): remove functable.c
- * anchor.c (_put_anchor_new): use Strnew_size() and Strcat_charp_n()
- * indep.c (getescapechar): use GET_MYCDIGIT
-
-2001-12-13 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
-
- * [w3m-dev 02541] mouse support on cygwin
- * linein.c (_esc): ignore ESC M <ch> <ch> <ch> on cygwin
- * terms.c (is_xterm): not static on cygwin
- * terms.c (ConInV): INPUT_RECORD * -> char *
- * terms.c (MouseConToXTerm): deleted
- * terms.c (iMouseConXTerm): deleted
- * terms.c (expand_win32_console_input_buffer): added
- * terms.c (read_win32_console_input): use PeekConsoleInput
- and ReadConsole
- * terms.c (read_win32_console): use read_win32_console_input()
- * terms.c (cmp_tv): added
- * terms.c (subtract_tv): added
- * terms.c (select_or_poll_win32_console): added
- * terms.c (select_win32_console): added
- * terms.c (xterm_mouse_term): deleted
- * terms.c (mouse_term_info): added
- * terms.c (set_tty): modified to use mouse_term_info
- * terms.c (sleep_till_anykey): use select_win32_console on cygwin
- * terms.c (mouse_init): check is_xterm flag
- * terms.c (mouse_end): check is_xterm flag
- * terms.h (is_xterm): if cygwin
- * terms.h (NEED_XTERM_ON): added
- * terms.h (NEED_XTERM_OFF): added
-
-2001-12-11 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02651] search keymap using hash
- * XMakefile (func.c): depends functable.c funcname1.h
- * XMakefile (functable.c): generated from funcname.tab
- * functable.awk: added
- * fm.h (w3mKeyList): deleted
- * func.c (w3mKeyList): ditto
- * file.c (readHeader): change getFuncList()
- * func.c (w3mNFuncList): deleted
- * func.c (functable.c): include
- * func.c (initKeymap): no need to count w3mFuncList
- * func.c (initKeymap): change getFuncList()
- * func.c (initKeymap): put data to keyData hashtable
- * func.c (countFuncList): deleted
- * func.c (getFuncList): use getHash_si()
- * func.c (getKeyData): use getHash_iv()
- * func.c (addKeyList): deleted
- * func.c (searchKeyList): deleted
- * func.h (textlist.h): include
- * func.h (hash.h): include
- * func.h (KEY_HASH_SIZE): added
- * func.h (KeyListItem): deleted
- * func.h (KeyList): deleted
- * hash.c: s/hist/sv/
- * hash.c: add defhashfunc_i(int, void *, iv)
- * hash.h: s/hist/sv/
- * hash.h: defhash(int, void *, iv)
- * hash.h (putHash_*): added
- * hash.h (getHash_*): added
- * hash.h (defhashfunc_i): added
- * history.c (pushHashHist): s/hist/sv/
- * history.c (getHashHist): s/hist/sv/
- * history.h (Hist): s/hist/sv/
- * main.c (searchKeyData): item deleted
- * main.c (searchKeyData): data added
- * main.c (searchKeyData): use getKayData() instead of searchKeyList()
- * main.c (setAlarm): w3mNFuncList deleted
- * main.c (setAlarm): change getFuncList()
- * menu.c (w3mNFuncList): deleted
- * menu.c (w3mFuncList): deleted
- * menu.c (initMenu): no need to count w3mFuncList
- * menu.c (setMenuItem): change getFuncList()
- * proto.h (countFuncList): deleted
- * proto.h (getFuncList): change args
- * proto.h (addKeyList): deleted
- * proto.h (searchKeyList): deleted
- * proto.h (getKeyData): added
-
-2001-12-11 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
-
- * [w3m-dev 02650]
- * file.c (readHeader): Strnew_charp_n() should be used
-
-2001-12-11 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02647]
- * proto.h (arg_is): deleted
- * etc.c (arg_is): ditto
- * etc.c (searchAnchorArg): ditto
-
-2001-12-11 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02648] rewrite strCmp() with strcmp()
- * indep.c (strCmp): use strcmp()
-
-2001-12-11 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
-
- * [w3m-dev 02441] A patch against functions *_(un)?quote()
- * indep.c (url_unquote_char): use GET_MYCDIGIT, instead of sscanf
- * indep.c (url_quote): use xdigit[] instead of sprintf()
- * myctype.c (MYCTYPE_DIGITMAP): added
- * myctype.h (MYCTYPE_DIGITMAP): ditto
- * myctype.h (GET_MYCDIGIT): added
-
-2001-12-11 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02647]
- * proto.h (getAnchor): deleted
- * etc.c (getAnchor): deleted
-
-2001-12-09 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
-
- * [w3m-dev 02646] Some code cleanups
- * configure: use host libgc instead of gc/gc.a on Linux and/or AIX
- if possible
- * etc.c (get_cmd): deleted, merged into gethtmlcmd()
- * etc.c (gethtmlcmd): merge get_cmd() code
- * file.c (uncompressed_file_type): initialize slen
- * file.c (passthrough): status deleted
- * file.c (HTMLlineproc0): istr deleted, gethtmlcmd() argument fix
- * fm.h (_GNU_SOURCE): ifndef _GNU_SOURCE
- * proto.h (gethtmlcmd): fix prototypes
- * terms.c: include <sys/ioctl.h> always
-
-2001-12-09 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02645]
- * configure: fix to prevent rcsid expansion
-
-2001-12-08 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02641]
- * configure: generate version.c from version.c.in
- * version.c.in: added
- * version.c: deleted, autogenerated from version.c.in
- * .cvsignore (version.c): added
-
-2001-12-07 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02642]
- * linein.c (next_dcompl): fix ifdef EMACS_LIKE_LINEEDIT
-
-2001-12-07 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02640]
- * linein.c (escape_spaces): rewrite
- * linein.c (unescape_spaces): rewrite
-
-2001-12-07 Tsutomu Okada <okada@furuno.co.jp>
-
- * [w3m-dev 02638] completion for ! and/or @
- * linein.c (next_compl): check "\\ ", "\\\t"
- * linein.c (escape_spaces): added
- * linein.c (unescape_spaces): added
- * linein.c (doComplete): use unescape_spaces, escape_spaces
-
-2001-12-07 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02637]
- * url.c (openSocket): hostname volatile -> const
- * url.c (openSocket): add hname
- * url.c (openSocket): copy hostname to hname to be modified safely
- * url.c (otherinfo): revert previous change
-
-2001-12-07 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02635] dirlist
- * file.c (loadGeneralFile): use pu.file instead of pu.real_file
- * scripts/dirlist.cgi.in: modified for perl4
-
-2001-12-07 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [#489463] Host: header is wrong IPv6 literal addr
- * url.c (otherinfo): IPv6 address should be quoted with bracket
-
-2001-12-07 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+ * istream.c, istream.h:
+ Fix that struct file_handle conflicts with glibc 2.14.
+ Patch from <https://bugs.launchpad.net/ubuntu/+source/w3m/+bug/935540>
+ on 2012-02-19.
- * [w3m-dev 02629]
- * linein.c (next_compl): completion for name including space
-
-2001-12-07 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02633]
- * url.c (parseURL2): filename should be quoted here, because
- it will be unquote() soon
-
-2001-12-07 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * rename install.sh to install-sh
- * XMakefile: s/install.sh/install-sh/
-
-2001-12-07 Tsutomu Okada <okada@furuno.co.jp>
-
- * [w3m-dev 02622]
- * tagtable.tab (noframes): added
- * tagtable.tab (/noframes): added
- * fm.h (RB_NOFRAMES): added
- * html.h (HTML_NOFRAMES): added
- * html.h (HTML_N_NOFRAMES): added
- * html.c (ALST_NOFRAMES): added
- * html.c (98 HTML_NOFRAMES): added
- * html.c (99 HTML_N_NOFRAMES): added
- * file.c (HTMLtagproc1): add HTML_NOFRAMES, HTML_N_NOFRAMES
- * file.c (HTMLtagproc1): don't meta refresh if it is in noframes and
- auto frame rendering
- * main.c (MAIN): use setAlarmEvent()
- * main.c (SigAlarm): ditto
- * main.c (setAlarm): ditto
- * main.c (setAlarmEvent): check if status == AL_UNSET
-
-2001-12-06 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02619]
- * file.c (loadHTMLString): set document type
-
-2001-12-05 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02618]
- * configure: fix typo in --mimetypes
-
-2001-12-05 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02617]
- * scripts/Makefile (HELP_LIBS): added
- * scripts/Makefile (all): depends $(HELP_LIBS)
- * scripts/Makefile (install): depends $(HELP_LIBS)
- * scripts/Makefile (w3mhelp-funcname.pl): split from helplibs
- * scripts/Makefile (w3mhelp-funcdesc.pl): split from helplibs, touch
- * scripts/Makefile (clean): clean *-stamp
- * scripts/.cvsignore: add w3mhelp-funcdesc-stamp
-
-2001-12-05 Tsutomu Okada <okada@furuno.co.jp>
-
- * [w3m-dev 02616]
- * buffer.c (gotoLine): use set_delayed_message instead of disp_message
- * buffer.c (gotoRealLine): ditto
- * display.c (delayed_msg): added
- * display.c (displayBuffer): display deleyed_msg if it is set
- * display.c (set_delayed_message): added
- * proto.h (set_delayed_message): added
-
-2001-12-05 Tsutomu Okada <okada@furuno.co.jp>
-
- * [w3m-dev 02615]
- * main.c (goLine): _goLine() called twice when prec_num was set
-
-2001-12-05 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02614]
- * XMakefile (HELP_ALLFILES): added
- * XMakefile (INSTALL_PROGRAM): ditto
- * XMakefile (INSTALL_SCRIPT): ditto
- * XMakefile (INSTALL_DATA): ditto
- * XMakefile (install) use INSTALL_{PROGRAM,DATA}
- * XMakefile (install-helpfile): cleanup
- * XMakefile (install-scripts): pass MKDIR
- * XMakefile (uninstall): cleanup
- * XMakefile (clean): cleanup
- * scripts/Makefile (MKDIR): added
- * scripts/Makefile (INSTALL_DATA): added
- * scripts/Makefile (install): mkdir, use INSTALL_DATA
- * scripts/Makefile (uninstall): added
- * scripts/Makefile (clean): ignore errors
- * scripts/multipart/Makefile (MKDIR): added
- * scripts/multipart/Makefile (install): mkdir
- * scripts/multipart/Makefile (uninstall): added
- * scripts/multipart/Makefile (clean): ignore errors
- * scripts/multipart/Makefile (dist): cleanup
- * scripts/w3mman/Makefile (MKDIR): added
- * scripts/w3mman/Makefile (install): mkdir
- * scripts/w3mman/Makefile (uninstall): added
- * scripts/w3mman/Makefile (clean): ignore errors
- * scripts/w3mman/Makefile (dist): cleanup
-
-2001-12-04 Tsutomu Okada <okada@furuno.co.jp>
-
- * [w3m-dev 02611] a improvement of find_cookie()
- * cookie.c (make_cookie): domainname is passed as argument
- * cookie.c (find_cookie): FQDN(pu->host) done only once
- * func.c (getQWord): comment reformat
- * local.c (check_local_cgi): ditto
-
-2001-12-04 Tsutomu Okada <okada@furuno.co.jp>
-
- * [w3m-dev 02609]
- * proto.h: remove duplicate prototypes
-
-2001-12-04 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02608]
- * local.c (localcgi_get): request == NULL means no ? in URL
- * url.c (openURL): ditto
-
-2001-12-03 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02606]
- * XMakefile (install-scripts): run pwd outside for loop
-
-2001-12-03 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
-
- * [w3m-dev 02605] $(PWD) / allocStr()
-
- * XMakefile (install-scripts): use $$TOPDIR instead of $(PWD)
-
- * indep.c (allocStr): if len is negative, it will copy string in `s'
- * display.c (record_err_message): pass -1 as length to allocStr
- * etc.c (lastFileName): ditto
- * etc.c (mybasename): ditto
- * etc.c (FQDN): ditto
- * file.c (push_tag): ditto
- * func.c (addKeyList): ditto
- * history.c (unshiftHist): ditto
- * history.c (pushHist): ditto
- * indep.c (cleanupName): ditto
- * linein.c (inputLineHist): ditto
- * local.c (dirBuffer): ditto
- * main.c (gotoLabel): ditto
- * main.c (searchKeyData): ditto
- * parsetagx.c (parsedtag_set_value): ditto
- * terms.c (GETSTR): ditto
- * textlist.h (pushText): ditto
- * url.c (DefaultFile): ditto
- * url.c (parseURL): ditto
- * url.c (ALLOC_STR): ditto
- * url.c (parseURL2): ditto
- * url.c (openURL): ditto
- * w3mhelperpanel.c (extractMailcapEntry): ditto
-
-2001-12-02 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02604]
- * configure: kanji_symbols=n if lang=EN
- * file.c (HTMLlineproc2body): initialize rule
-
-2001-12-02 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02603]
- * scripts/w3mhelp.cgi.in: modified for perl4
-
-2001-12-01 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02601]
- * Makefile (install-core): added
- * Makefile (install-helpfile): added
- * configure (use_help_cgi): default yes if perl found
- * configure (config.h): add HELP_CGI
- * configure (config.h): add $def_use_help_cgi
- * main.c (ldhelp): add USE_HELP_CGI code
- * scripts/Makefile: use w3mhelp*.pl.in
- * scripts/w3mhelp-funcname.pl.in: added
- * scripts/w3mhelp-funcdesc.en.pl.in: added
- * scripts/w3mhelp-funcdesc.ja.pl.in: added
- * scripts/w3mhelp.cgi.in: use %buf_*, %lineedit_*
- * scripts/w3mhelp.cgi.in: use %title
-
- * [w3m-dev 02660] (based on [w3m-dev 02577]
- by Kiyokazu SUTO <suto@ks-and-ks.ne.jp>)
- * scripts/.cvsignore: add w3mhelp.cgi w3mhelp-*.pl
- * scripts/Makefile (HELP_DIR): added
- * scripts/Makefile (LIB_TARGETS): add w3mhelp.cgi
- * scripts/Makefile (DOCDIRS): added
- * scripts/Makefile (all): add helplibs
- * scripts/Makefile (.in): subst HELP_DIR, DOCDIRS
- * scripts/Makefile (helplibs): added
- * scripts/Makefile (install): s/DISTDIR/DESTDIR/
- * scripts/Makefile (install): install w3mhelp-*.pl
-
- * scripts/w3mhelp.cgi.in: added
-
- * XMakefile (INSTALL2): deleted
- * XMakefile (install): split
- * XMakefile (install-core): added
- * XMakefile (install-helpfile): added
- * XMakefile (all-scripts): HELP_DIR
- * XMakefile (install-scripts): HELP_DIR
-
- * doc/REAMDE.func: add ALARM, SUSPEND
- * doc-jp/README.func: ditto
-
- * config.h.dist: updated
-
-2001-11-30 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * url.c (otherinfo): use AcceptLang
- * rc.c (sync_with_option): initialize AcceptLang
-
-2001-11-30 Tsutomu Okada <okada@furuno.co.jp>
-
- * [w3m-dev 02599]
- * main.c comment reformat
-
-2001-11-30 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02598]
- * url.c (otherinfo): add missing NULL
-
-2001-11-30 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02597] (based on [w3m-dev 02594] by aito@fw.ipsj.or.jp)
- * fm.h (AcceptLang): added
- * fm.h (AcceptMedia): added
- * rc.c (CMT_ACCEPTENCODING): added
- * rc.c (CMT_ACCEPTMEDIA): added
- * rc.c (params9): add accept_encoding, accept_media
- * rc.c (sync_with_option): initialize AcceptEncoding and AcceptMedia
- * url.c (otherinfo): use Strcat_m_charp()
-
-2001-11-30 aito@fw.ipsj.or.jp
-
- * [w3m-dev 02594]
- * configure: s/dcode/display_code/
-
-2001-11-30 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02596]
- * file.c (acceptableEncoding): fix segfault if no decoder found
-
-2001-11-30 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02595]
- * file.c (compression_decoder): add encodings
- * file.c (readHeader): use compression_decoder->encodings
-
-2001-11-30 Tsutomu Okada <okada@furuno.co.jp>
-
- * [w3m-dev 02593]
- * form.h: comment reformat
- * matrix.c: ditto
- * menu.c: ditto
- * regex.c: ditto
- * table.h: ditto
- * terms.c: ditto
-
-2001-11-30 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02592] Accept: and AcceptEncoding:
- * url.c (otherinfo): use acceptableEncoding() acceptableMimeTypes()
-
- * file.c: add compression_decoder
- * file.c (check_compress): rewrite by using compression_decoder
- * file.c (compress_application_type): ditto
- * file.c (uncompressed_file_type): ditto
- * file.c (check_command): added
- * file.c (acceptableEncoding): added
- * proto.h (acceptableEncoding): ditto
- * file.c (uncompress_stream): renamed from gunzip_stream
- * file.c (uncompress_stream): rewrite by using compression_decoder
- * configure: add PATH_SEPARATOR
-
- * mailcap.c (extractMailcapEntry): static
- * mailcap.c (loadMailcap): static
- * proto.h (loadMailcap): removed
- * mailcap.c (acceptableMimeTypes): added
- * proto.h (acceptableMimeTypes): added
-
- * configure: #define USE_PATH_ENVVAR for __EMX__
- * file.c: GUNZIP_*, BUNZIP2_*, INFLATE_* removed here -> config.h
- * file.c (gunzip_stream): s/(GUNZIP|BUNZIP2|INFLATE)_CMD/\1_CMDNAME/
- * configure (config.h): GUNZIP_*, BUNZIP2_*, INFLATE_* moved here
- * fm.h (DirBufferCommand): use CGI_EXTENSION
- * fm.h (mailcap_list): removed from global -> mailcap.c
- * fm.h (UserMailcap): removed from global -> mailcap.c
- * mailcap.c: static mailcap_list
- * mailcap.c: static UserMailcap
- * proto.h (initMimeTypes): moved
- * proto.h (get_os2_dft): removed
- * rc.c (loadMimeTypes): removed here -> url.c
- * rc.c (initMimeTypes): removed here -> url.c
- * fm.h (mimetypes_list): removed from global -> url.c
- * fm.h (UserMimeTypes): removed from global -> url.c
- * url.c: static mimetypes_list
- * url.c: static UserMimeTypes
- * url.c (loadMimeTypes): moved here
- * url.c (initMimeTypes): moved here
-
-2001-11-30 Tsutomu Okada <okada@furuno.co.jp>
-
- * [w3m-dev 02590]
- * main.c (_peekURL): peek URL on <input type="image">
-
-2001-11-30 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02589]
- * rc.c (params1): remove #ifdef VIEW_UNSEENOBJECTS
-
-2001-11-29 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02588]
- * configure: fix alarm() check
-
-2001-11-29 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02587]
- * file.c (gunzip_stream): s/__CYGWIN__/USE_BINMODE_STREAM/
-
- * [w3m-dev 02586]
- * configure: typo s/_zdmachdep.c/zmachdep.c/
-
- * fix shadow variable
- * main.c (HTMLtagproc1): s/refresh/refresh_interval/
- * matrix.c (LUfactor): s/index/indexarray/
- * matrix.c (LUsolve): ditto
- * matrix.c (m_inverse): ditto
- * matrix.c (LUinverse): ditto
- * table.c (bsearch_2short): ditto
- * table.c (bsearch_double): ditto
- * table.c (dv2sv): ditto
- * table.c (check_cell_width): ditto
- * table.c (set_integered_width): ditto
- * table.c (set_table_width): ditto
- * table.c (check_table_height): ditto
- * ftp.c: s/ftp/current_ftp/
- * ftp.c (Ftpfclose): ditto
- * ftp.c (openFTP): ditto
- * ftp.c (closeFTP): ditto
- * ftp.c (FtpLogin): save to current_ftp
- * ftp.c (openFTP): s/realpath/realpathname/
- * ftp.c (openFTP): remove i
-
- * ftp.c (ftp_pasv): s/sin/sockaddr/
-
- * [w3m-dev 02584] code cleanup
-
- * linein.c (_esc): fix #ifdef EMACS_LIKE_LINEEDIT
-
- * fix shadow variables (partially)
- * version.c: s/version/w3m_version/
- * configure: ditto
- * fm.h: ditto
- * local.c (set_environ): ditto
- * main.c (fusage): ditto
- * main.c (MAIN): ditto
- * main.c (dispVer): ditto
- * rc.c (load_option_panel): ditto
- * url.c (otherinfo): ditto
- * file.c (readHeader): s/tmp/tmp2/
- * file.c (loadGeneralFile): s/tmp/cmd/
- * file.c (flushline): s/f/df/
- * file.c (doExternal): s/stat/mc_stat/
- * proto.h: ditto
- * mailcap.c (unquote_mailcap_loop): ditto
- * mailcap.c (unquote_mailcap): ditto
- * main.c (cmd_loadBuffer): s/link/linkid/
- * main.c (sig_chld): s/stat/p_stat/
- * fm.h: remove config_file
- * main.c (MAIN): s/config_file/config_filename/
- * rc.c (init_rc): ditto
- * proto.h: ditto
- * rc.c: add config_file
- * menu.c (goem_menu): s/select/mselect/
- * menu.c (draw_menu_item): ditto
- * menu.c (select_menu): ditto
- * menu.c (goto_menu): ditto
- * menu.c (action_menu): ditto
- * menu.c (mNext): ditto
- * menu.c (mPrev): ditto
- * menu.c (mOk): ditto
- * menu.c (mSrchF): ditto
- * menu.c (mSrchB): ditto
- * menu.c (mSrchN): ditto
- * menu.c (mSrchP): ditto
- * menu.c (process_mMouse): ditto
- * menu.c (smDelBuf): ditto
- * proto.h: ditto
-
- * printf format
- * display.c (redrawLine): use %*ld instead of %*d
-
- * require parentheses
- * ftp.c (FtpLogin): add paren
-
- * fix variable might be clobbered by `longjmp' or `vfork'
- * file.c (loadGeneralFile): add volatile
- * file.c (loadHTMLString): ditto
- * file.c (loadBuffer): ditto
- * file.c (doExternal): ditto
- * frame.c (createFrameFile): ditto
- * main.c (srchfor): ditto
- * main.c (srchbak): ditto
- * main.c (srch_nxtprv): ditto
- * url.c (openSocket): ditto
-
- * fix unused variables
- * file.c (readHeader): emssg if USE_COOKIE defined
- * file.c (HTMLlineproc2body: remove tmp
- * file.c (saveBufferDelNum): remove p
- * linein.c (_esc): c2 if JP_CHARSET defined
-
- * fix uninitialized variables
- * Str.c (Sprintf): initialize p
- * buffer.c (readBufferCache): initialize prevl
- * conv.c (cConvSE): initialize ub
- * conv.c (_cConvEE): initialize ub
- * conv.c (cConvES): initialize ub
- * file.c (loadGeneralFile): initialize proc, t, prevtral, ss, realm
- * file.c (HTMLlineproc2body): initialize debug
- * file.c (HTMLlineproc0): initialize tbl_mode, tbl_width
- * file.c (loadHTMLstream): initialize prevtrap
- * file.c (loadHTMLString): initialize prevtrap
- * file.c (loadBuffer): initialize prevtrap
- * form.c (formUpdateBuffer): initialize col
- * ftp.c (openFTP): initialize pwd
- * local.c (dirBuffer): initialize nrow
- * main.c (gpm_process_mouse): initialize btn
- * menu.c (gpm_process_menu_mouse): ditto
- * menu.c (initMenu): initialize nmenu, nitem, item
- * parsetagx.c (parse_tag): initialize attr_id
- * rc.c (show_params): initialize t
- * table.c (visible_length): initialize amp_len
- * table.c (set_integered_width): initialize x
- * table.c (check_table_height): initialize space
- * table.c (renderTable): initialize vrulea, vruleb, vrulec
- * terms.c (putchars): initialize s
- * url.c (openSocket): initialize trap, result
- * url.c (openURL): initialize sslh
-
-2001-11-28 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02579]
- * configure: Use environment variables CC, CFLAGS, LDFLAGS
-
-2001-11-28 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02574] sysconfdir
- * configure: add -bindir=* -libdir=* -helpdir=* -sysconfdir=*
- * configure: add ETC_DIR
- * indep.c (w3m_etc_dir): added
- * indep.h: ditto
- * rc.c (init_rc): use etcFile() instead of libFile()
- * rc.c (etcFile): added
- * proto.h: ditto
-
-2001-11-28 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02578]
- * file.c (process_anchor): support <input type="image">
- * html.c (ALST_INPUT): add ATTR_SRC, ATTR_WIDTH, ATTR_HEIGHT
- * html.c (MAXA_INPUT): +3
-
- * conv.c (checkShiftCode): fix comments for indent(1)
- * main.c (loadLink): ditto
- * fm.h: ditto
- * file.c (process_anchor); ditto
- * file.c (HTMLlineproc2body): ditto
-
-2001-11-28 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02576]
- * url.c (openURL): remove pu->file = p; which cause segfault
- because p is not initialized
-
-2001-11-28 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02571] MAXPATHLEN
- * indep.c (currentdir): #ifdef MAXPATHLEN for GNU Hurd
- * configure: ditto
-
-2001-11-27 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02572]
- * main.c (_peekURL): initialize s when anchor not found
-
-2001-11-27 aito@fw.ipsj.or.jp
- * Error correction on doc-jp/FAQ.html
-
-2001-11-27 sakane@d4.bsd.nes.nec.co.jp (Yoshinobu Sakane)
- * w3m-doc update.
-
-2001-11-26 Tsutomu Okada <okada@furuno.co.jp>
-
- * [w3m-dev 02537]
- * configure: s/$def_egd/def_use_egd/
-
-2001-11-26 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02556]
- * indep.c (strcasestr): strcasestr("", "") should not return NULL
-
- * [w3m-dev 02555]
- * configure: check strcasestr
- * fm.h (_GNU_SOURCE): requires for strcasestr()
- * indep.c (strcasestr): #ifdef HAVE_STRCASESTR
- * indep.c (strcasestr): check whether s2 is NULL
- * indep.h: add #include "config.h"
- * indep.h: #ifdef HAVE_STRCASESTR
- * indep.h: strcasestr() takes const char *
-
-2001-11-26 Yoshinobu Sakane <sakane@d4.bsd.nes.nec.co.jp>
-
- * [w3m-dev 02553]
- * configure: SysV's tr requires '[a-z]' '[A-Z]'
-
-2001-11-26 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
-
- * [w3m-dev 02547] "message/*" as a kind of text type
- * file.c (is_text_type): add message/*
-
-2001-11-25 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
-
- * [w3m-dev 02535] Name conflicts in configure
- * configure: s/libdir/tlibdir/ for loop variables
-
-2001-11-25 Dai Sato <satodai@dog.intcul.tohoku.ac.jp>
-
- * display.c: call of init_win32_console_handle is deleted
-
-2001-11-25 Rin Okuyama <okuyama@cna.ne.jp>
-
- * [w3m-dev 02533] setpgrp bug in configure
- * configure: s/have_setpgrp/def_have_setpgrp/
- s/setpgrp/def_setpgrp/
-
-2001-11-24 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * Makefile (indent): indent
- * run make indent
-
-2001-11-24 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02530]
- * file.c (readHeader): NULL check for domain
-
-2001-11-24 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02529]
- * configure (ask_choice): fix bugs
- * configure (include_opt): disable as much as if baby model
- * configure: ask/def parameter after model selected
-
- * fm.h (use_mark): runtime option use_mark
- * main.c (_mark): ditto
- * main.c (cmd_mark): ditto
- * main.c (nextMk): ditto
- * main.c (prevMk): ditto
- * main.c (reMk): ditto
- * rc.c (CMT_USE_MARK): ditto
- * rc.c (params3): ditto
-
- * fm.h (nextpage_topline): runtime option nextpage_topline
- * etc.c (lineSkip): ditto
- * main.c (nscroll): ditto
- * rc.c (CMT_NEXTPAGE_TOPLINE): ditto
- * rc.c (params3): ditto
-
- * fm.h (label_topline): runtime option label_topline
- * file.c (loadGeneralFile): ditto
- * main.c (loadLink): ditto
- * rc.c (CMT_LABEL_TOPLINE): ditto
- * rc.c (params3): ditto
-
- * fm.h (vi_prec_num): runtime option vi_prec_num
- * main.c (pgFore): ditto
- * main.c (pgBack): ditto
- * rc.c (CMT_VI_PREC_NUM): ditto
- * rc.c (params3): ditto
-
- * fm.h (emacs_like_lineedit): runtime option emacs_like_lineedit
- * linein.c (inputLineHist): ditto
- * linein.c (_esc): ditto
- * linein.c (next_dcompl): ditto
- * rc.c (CMT_EMACS_LIKE_LINEEDIT): ditto
- * rc.c (params3): ditto
-
- * fm.h (ftppass_hostnamegen): runtime option ftppass_hostnamegen
- * ftp.c (FtpLogin): ditto
- * rc.c (CMT_FTPPASS_HOSTNAMEGEN): ditto
- * rc.c (params9): ditto
-
-2001-11-24 Akihiro Sagawa <sagawa@sohgoh.net>
-
- * [w3m-dev 02528] RFC2732 URL Patch
- * main.c (chkURL): check RFC2732 style URLs
- * url.c (parseURL): remove RFC2732 address check here,
- move to openSocket()
- * url.c (openSocket): check RFC2732 style hostname
- * url.c (openSocket): check IPv4 address strictly
-
-2001-11-24 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02526]
- * .cvsignore: add inflate mktable w3m w3mbookmark w3mhelperpanel
- _zdmachdep.c
- * configure:
- pref_lang -> lang={JA|EN}
- dcode -> display_code
- scode -> system_code
- remove save_params()
- add def_param(), ask_choice() ask_param()
- all confiration parameters can be read from config.param
- s/DICT/USE_DICT/
- s/BUFINFO/USE_BUFINFO/
- * fm.h: s/DICT/USE_DICT/
- * proto.h: ditto
- * doc/README.dict: ditto
- * doc-jp/README.dict: ditto
- * display.c: s/BUFINFO/USE_BUFINFO/
- * main.c: s/DICT/USE_DICT/ s/BUFINFO/USE_BUFINFO/
-
-2001-11-24 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
-
- * [w3m-dev 02523]
- * table.c (feed_table_tag):
- fix problem of anchor tag with name attribute only
-
-2001-11-23 Tsutomu Okada <okada@furuno.co.jp>
-
- * [w3m-dev 02511]
- * terms.c (isWinConsole): added
-
-2001-11-22 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
-
- * [w3m-dev 02509] ([w3m-dev 02499] [w3m-dev 02508])
- * terms.c (setlinescols): initialize LASTLINE
- * terms.c: add LASTLINE
- * fm.h: extern int LASTLINE
- * linein.c: remove defined(__CYGWIN__) && defined(JP_CHARSET)
- * main.c: remove MOUSE_* definition
- * terms.h: move MOUSE_* definition from main.c
- * terms.c: add tty
- * terms.c (check_win32_console): added
- * terms.c (init_win32_console_handle): ditto
- * terms.c (read_win32_console_input): ditto
- * terms.c (read_win32_console): ditto
- * terms.c (set_tty) add call init_win32_console
- * terms.c (getch) use read_win32_console
- * terms.c (mouse_init): check hConIn
- * terms.c (mouse_end): ditto
-
-2001-11-22 aito@fw.ipsj.or.jp
-
- * [w3m-dev 02503]
- * indep.c (getescapechar): allow incomplete entity references in URL
- closes: Debian Bug#120540
-
-2001-11-22 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02506]
- * anchor.c (putHmarker): remove #ifdef __CYGWIN__ for bzero()
- * matrix.h (m_copy): ditto
- * table.c (pushTable): ditto
-
-2001-11-22 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02505]
- * configure (alarm): check alarm if USE_ALARM
-
-2001-11-22 Tsutomu Okada <okada@furuno.co.jp>
-
- * [w3m-dev 02501]
- * .cvsignore: add funcname.c funcname1.h funcname2.h tagtable.c
- * scripts/.cvsignore: added, dirlist.cgi
- * scripts/multipart/.cvsignore: added, multipart.cgi
- * scripts/w3mman/.cvsignore: added, w3mman w3mman2html.cgi
- * doc-jp/README.kokb: deleted
- * gc/makefile.depend: deleted
-
-2001-11-22 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * table.c (feed_table): fix the following table
- <table border=1><tr><td>&lt &lt;</table>
-
-2001-11-22 WATANABE Katsuyuki <katsuyuki_1.watanabe@toppan.co.jp>
-
- * [w3m-dev 02497]
- * url.c (parseURL2): fix #ifdef __EMX__ code
- * indep.c (cleanupName): remove #if 0 /* SUPPORT_NETBIOS_SHARE */ code
-
-2001-11-22 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02494]
- * configure (MIME_TYPES): check if mimetypes is empty
- * configure (label_topline): add missing =
- * configure (nextpage_topline): ditto
-
-2001-11-22 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02493]
- * scripts/multipart/Makefile: s/DISTDIR/DESTDIR/
-
-2001-11-21 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02481]
- * s/BG_COLOR/USE_BG_COLOR/
- * s/ANSI_COLOR/USE_ANSI_COLOR/
- * s/COLOR/USE_COLOR/
- * s/MENU/USE_MENU/
- * s/MOUSE/USE_MOUSE/
-
- * [w3m-dev 02480] new configure
- * config.h.dist: updated
- * configure: $def_emacs_like_lineedit, $def_vi_prec_num
- $def_label_topline, $def_nextpage_topline
- $def_use_mark, $def_use_gopher, $def_use_alarm
- * configure: add --{ssl,gc}-{include,lib}dir, --mimetypes
- * configure: BoehmGC Debian hack
- * XMakefile: add $(OPTS)
- * terms.c: use HAVE_SYS_SELECT_H
- * configure: add sys/select.h detection
- * configure: no_float_h -> float_h
- * configure: add chdir() detection
- * local.c (localcgi_post): use HAVE_CHDIR instead of __EMX__
- * local.c (localcgi_get): ditto
- * main.c: <time.h> no need for #ifdef __EMX__
- other files already do #include <time.h>
-
- [w3m-dev 02479]
- * rc.c (init_rc): remove #ifdef __EMX__ for tmpdir
- * config.h.dit: updated
- * url.c (openURL): use CGI_EXTENSION
- add extlen
- * rc.c (helpFile): remove #ifdef __EMX__
- use w3m_help_dir()
- * w3mbookmark.c (lib_dir): removed
- * w3mbookmark.c (print_bookmark_panel): use w3m_lib_dir()
- * rc.c (libFile): remove #ifdef __EMX__
- use w3m_lib_dir()
- * local.c (get_os2_dft): removed
- * local.c (check_local_cgi): use w3m_lib_dir() instead of lib_dir
- * local.c (cgi_filename): ditto
- * indep.c (w3m_dir): added
- * indep.c (w3m_lib_dir w3m_help_dir): ditto
- * indep.h (w3m_lib_dir w3m_help_dir): ditto
- * terms.c (set_tty): remove #ifdef __EMX__
- use DEV_TTY_PATH
- * local.c (localcgi_get): use DEV_NULL_PATH
- * w3mhelperpanel.c (printMailcapPanal): remove #ifdef __EMX__
- use W3mHELPERPANEL_CMDNAME
- * rc.c (optionpanel_src1): ditto
- * w3mbookmark.c (bkmark_src1): remove #ifdef __EMX__
- use W3MBOOKMARK_CMDNAME
- * main.c (adBmark): ditto
- use w3m_lib_dir()
- * terms.c (getTCstr): remove #ifdef __DJGPP__
- use DEFAULT_TERM
- check ent is NULL
- * main.c (fusage): remove #ifdef SHOW_PARAMS
- * main.c (MAIN): ditto
- * rc.c (show_params): ditto
- * fm.h (view_unseenobject): remove #ifdef VIEW_UNSEENOBJECTS
- * url.c (check_no_proxy): remove #ifdef NOPROXY_NETADDR
- * configure (show_params): removed
- * configure (config.h):
- - fix comment for USE_MARK
- - add MENU_THIN_FRAME
- - move $def_nntp (USE_NNTP), $def_ansi_color (ANSI_COLOR)
- - remove VIEW_UNSEENOBJECTS
- - remove $def_show_params (SHOW_PARAMS)
- - define DEFAULT_TERM
- - define W3MBOOKMARK_CMDNAME
- - define W3MHELPERPANEL_CMDNAME
- - define DEV_NULL_PATH
- - define DEV_TTY_PATH
- - define CGI_EXTENSION
-
- [w3m-dev 02478]
- * Makefile: make -> $(MAKE)
-
-2001-11-21 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02473]
- * scripts/Makefile: chmod +x
- * scripts/Makefile: add clean target
- * scripts/multipart/Makefile: ditto
- * scripts/w3mman/Makefile: ditto
- * XMakefile: clean scripts
- * scripts/dirlist.cgi: removed from CVS
- * Makefile (install-scripts): added
- * XMakefile: (install-scripts): depends all-scripts
-
-2001-11-21 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02470]
- * XMakefile: all of scripts are generated by this instead of configure
- * configure: add PERL, remove scripts/dirlist.cgi generation
- * config.h.dist: add PERL
- * scripts/Makefile: added
- * scripts/multipart/Makefile scripts/w3mman/Makefile:
- new scripts generation and installation
- * scripts/multipart/README scripts/w3mman/README: update
-
-2001-11-21 Tsutomu Okada <okada@furuno.co.jp>
-
- * [w3m-dev 02472] cleanup CYGWIN macro
- * display.c (displayBuffer): use __CYGWIN__ macro
- * fm.h: ditto
- * terms.c (refresh): add condition for isWinConsole which
- defined only japanese cygwin environment
-
-2001-11-21 Akinori Ito <aito@fw.ipsj.or.jp>
-
- * [w3m-dev 02466]
- Homepage URLs and author's mail addresses in the documents
- are changed.
-
-2001-11-21 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02459]
- * XMakefile: update scripts/dirlist.cgi generation
- * scripts/multipart/multipart.cgi: removed
- * scripts/w3mman/w3mman scripts/w3mman/w3mman2html.cgi: removed
-
- * [w3m-dev 02462]
- * scripts/dirlist.in scripts/dirlist.cgi: removed
- * scripts/dirlist.cgi.in: added
-
-2001-11-21 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * add rcsids
-
-2001-11-21 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02454]
- * buffer.c (newBuffer): set COLS
- * display.c (displayBuffer redrawLine redrawLineRegion
- cursorRight arrangeCursor cursorXY):
- new showLineNumber implementation
- * main.c (ctrCsrH shiftvisualpos shiftl shiftr _movL _movR
- _followForm follow_map process_mouse):
- use buf->COLS, buf->rootX
- * menu.c (popupMenu mainMn initSelectMenu):
- use buf->rootX
- * etc.c (columnSkip): use buf->COLS
- * file.c (HTMLlineproc2body loadBuffer saveBufferDelNum getNextPage)
- remove old showLineNumber codes
- * fm.h (Buffer): add rootX, COLS
-
-2001-11-21 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * XMakefile (clean): rm tagtable.c
- * .cvsignore: XXMakefile config.h config.param
-
-2001-11-20 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02455]
- * XMakefile.dist deflate.c: removed, not used
- * tagtable.c: removed, autogenerated files
- * XMakefile (mktable w3mbookmark w3mhelperpanel): use LIBS2
- * configure: add $bsdlib
-
-2001-11-20 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
-
- * frame.c (newFrameSet): fix possible buffer overrun
-
-2001-11-20 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * XXMakefile config.h: removed from CVS
- these are autogenerated files.
- config.h is moved to config.h.dist as sample config file.
-
-2001-11-20 Tsutomu Okada <okada@furuno.co.jp>
-
- * [w3m-dev 02449]
- * file.c (HTMLtagproc1): reimplement meta refresh with
- setAlarmEvent()
- * fm.h: put back alarm related variables to main.c
- add alarm related status flags
- * main.c: put back alarm related variables from fm.h
- alarm_once was renamed alarm_status
- add alarm_buffer and setAlarmEvent()
- * main.c (MAIN): cancel the alarm event if the buffer was
- changed
- * main.c (SigAlarm): ditto
- * main.c (setAlarm): use setAlarmEvent()
- * proto.h: add setAlarmEvent()
-
-2001-11-20 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * w3mhelperpanel.c (extractMailcapEntry): remove unused variables
- * istream.c (StrISgets): add parentheses around assignment used
- as truth value
-
- * XMakefile (clean): remove funcname.c funcname1.h funcname2.h
- these are autogenerated files.
- * funcname.c funcname1.h funcname2.h: removed from CVS
-
- * main.c (MAIN): add braces to avoid ambiguous `else'
- * main.c (set_buffer_environ): remove unused variables
- * linein.c (_rcompl): not EMACS_LIKE_LINEEDIT only
- * local.c (localcgi_get): remove unused variables
- * mailcap.c (unquote_mailcap_loop): remove unused variables
- * url.c (init_PRNG) add parentheses around assignment used as true value
- * url.c (parseURL): remove unsed label
- * url.c (parseURL2): remove unused variables
- * ftp.c (ftp_escape_str ftp_restore_str): remove not used functions
- * indep.c (getescapechar): remove unused variable
-
- * proto.h: add missing prototypes
-
-2001-11-20 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
-
- * [w3m-dev 02447]
- * terms.c (skip_escseq): is_xterm && ESC [ M <ch> <ch> <ch>
-
-2001-11-20 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02448]
- * terms.c (mouse_init): Gpm_Close() is required.
- closes: Debian Bug#120221: w3m-ssl: trashes terminal on exit
-
-2001-11-20 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
-
- * [w3m-dev 02444]
- * XMakefile (funcname1.h funcname2.h): sort as well as funcname.c
-
-2001-11-19 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02439]
- * terms.c (xterm_mouse_term set_tty): add cygwin as xterm-style
- mouse terminal
-
-2001-11-19 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
- * [w3m-dev 02436]
- * main.c (GetWord): closes: #482763 segmentation fault in main.c
-
-2001-11-19 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * gc/.cvsignore:
- remove gctest, if_mach, if_not_there, threadlibs
- closes: #482765 i386 binaries in gc directory
-
-2001-11-17 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02432]
- * configure: follow autoconf conventions
- STRCASECMP -> HAVE_STRCASECMP
- STRCHR -> HAVE_STRCHR
- STRERROR -> HAVE_STRERROR
- SYS_ERRLIST -> HAVE_SYS_ERRLIST
- NOBCOPY -> HAVE_BCOPY
- GETCWD -> HAVE_GETCWD
- GETWD -> HAVE_GETWD
- READLINK -> HAVE_READLINK (HAVE_LSTAT?)
- TERMIO -> HAVE_TERMIO_H
- TERMIOS -> HAVE_TERMIOS_H
- SGTTY -> HAVE_SGTTY_H
- DIRENT -> HAVE_DIRENT_H
- NO_FLOAT_H -> HAVE_FLOAT_H
- * etc.c fm.h config.h: HAVE_STRCASECMP
- * etc.c config.h file.c: HAVE_STRCHR
- strchr() moved from file.c to etc.c
- * etc.c config.h: HAVE_STRERROR
- * etc.c config.h main.c (MAIN): HAVE_SYS_ERRLIST
- * etc.c fm.h: HAVE_BCOPY
- * etc.c indep.c (currentdir) config.h: HAVE_GETCWD
- * indep.c (currentdir) config.h: HAVE_GETWD
- * form.c (form_write_from_file) local.c (dirBuffer)
- config.h: HAVE_READLINK
- * config.h terms.c: HAVE_TERMIO_H, HAVE_TERMIOS_H, HAVE_SGTTY_H
- * config.h local.h: HAVE_DIRENT_H
- * config.h matric.c: HAVE_FLOAT_H
-
- * anchor.c cookie.c file.c parsetagx.c regex.c table.c url.c:
- remove include <strings.h> ifdef __EMX__
- it will be included in fm.h
- * frame.c: remove include <strings.h> for bzero() and bcopy()
- these are declared in fm.h
- * indep.c: remove include <strings.h> for bcopy()
- this is declared in fm.h
- * istream.c mailcap.c: remove include <strings.h> for bzero()
- this is declared in fm.h
- * parsetag.c: remove include <strings.h> for bzero()
- no bzero() used in this file
-
- * [w3m-dev 02431]
- * terms.c (set_tty): "rxvt" is xterm
- (getTCstr): tgetstr("Km", &pt) is not xterm, removed
- (mouse_init): check Gpm_Open() == -2 to detect xterm when USE_GPM
-
-2001-11-16 Tsutomu Okada <okada@furuno.co.jp>
-
- * [w3m-dev 02418]
- * main.c (chkURL): add mailto: like pattern to mark as anchor
- * search.c (forwardSearch): check whether currentLine is NULL
- * search.c (backwardSearch): ditto
-
-2001-11-16 Dai Sato <satodai@dog.intcul.tohoku.ac.jp>
-
- * [w3m-dev-en 00641] Re: w3m-0.2.1-inu-1.6
- * configure: add some dirs for zlib and mime.types
-
-2001-11-16 Fumitoshi UKAI <ukai@debian.or.jp>
-
- * [w3m-dev 02417]
- * terms.c (mouse_init): fix mouse handling on TERM=linux
- if Gpm_Open() successed, set is_xterm = 0 so that
- w3m uses gpm functions.
-
-2001-11-16 Tsutomu Okada <okada@furuno.co.jp>
-
- * [w3m-dev 02408] meta refresh
- * file.c (HTMLtagproc1):
- use MetaRefresh
- add case refresh > 0
- * fm.h:
- add MetaRefresh
- move alarm related definition from main.c
- * main.c:
- move alarm releated definition to fm.h
- (SigAlarm): alarm_once
- * rc.c:
- add CMT_META_REFRESH
-
- * [w3m-dev 02415]
- * file.c (loadHTMLBuffer):
- pushText() to clean up temporary files
-
- * [w3m-dev 02414]
- * file.c (loadHTMLstream):
- SETJMP and signal after buffer is initialized
-
- * [w3m-dev 02413]
- * main.c (reMark):
- don't save invalid regexp to MarkString
-
-2001-11-15 aito@eie.yz.yamagata-u.ac.jp
-
- * release-0-2-2
- * Update to w3m-0.2.1-inu-1.6
-
-2001-11-09 aito@eie.yz.yamagata-u.ac.jp
-
- * release-0-2-1-inu-1-5
- * Updates from 0.2.1 into 0.2.1-inu-1.5
-
-2001-11-08 aito@eie.yz.yamagata-u.ac.jp
-
- * release-0-2-1
- * import w3m-0.2.1
-
-$Id: ChangeLog,v 1.1055 2012/05/22 10:20:45 inu Exp $
+2011-10-30 Colin Watson <cjwatson@ubuntu.com>
+
+ * acinclude.m4, configure, w3mbookmark.c:
+ Appease gcc -Werror=format-security.
+ Patch from 0.5.3-3ubuntu1 on 2011-10-23.
+ Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=646321
+
+2011-06-19 Martin Pitt <martin.pitt@ubuntu.com>
+
+ * Makefile.in:
+ Explicitly link w3mimgdisplay with -lX11 to build with gcc 4.5.
+ Patch from 0.5.2-10ubuntu1 on 2010-12-03.
+ Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=605761
+
+2011-06-19 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * main.c: Change the -s option to "squeeze multiple blank lines".
+ Change the -s option from "display charset Shift_JIS" to "squeeze
+ multiple blank lines" to work as /usr/bin/pager. In addition, the
+ options -j and -e are disabled. To specify the display charset,
+ use -O{s|j|e} instead.
+ Patch from [w3m-dev 01275] on 2000-10-26.
+ Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=75527
+
+2011-06-19 Hiroyuki Ito <ZXB01226@nifty.com>
+
+ * file.c, fm.h, html.c, html.h, proto.h, table.c, tagtable.tab:
+ Support the button element as defined in HTML 4.01.
+ Patch from upstream, [w3m-dev 04411] on 2010-09-17, to support the
+ button element. It is discussed upstream and incomplete, but enough
+ to login Launchpad.
+ Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=136810
+ Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/w3m/+bug/628755
+
+See ChangeLog.1 for earlier changes.
+
+;; Local Variables:
+;; coding: utf-8
+;; End:
diff --git a/ChangeLog.1 b/ChangeLog.1
new file mode 100644
index 0000000..88358ef
--- /dev/null
+++ b/ChangeLog.1
@@ -0,0 +1,9322 @@
+2012-05-22 Tatsuya Kinoshita <tats@vega.ocn.ne.jp>
+
+ * [w3m-dev 04451] w3m/entity.h should be removed when `make clean'
+ * Makefile.in: add entity.h to "make clean" target.
+
+2012-05-22 Tatsuya Kinoshita <tats@vega.ocn.ne.jp>
+
+ * [w3m-dev 04452] Re: w3m on macosx 10.6.6
+ * doc/w3m.1, doc/STORY.html, doc-jp/STORY.html:
+ delete words about formerly included Boehm GC library.
+
+2012-05-22 Enu <theme.of.n@gmail.com>
+
+ * file.c, HTML.c: parse META CHARSET.
+
+2011-01-17 Dai Sato <satodai@w3m.jp>
+
+ * correction: ChangeLog of 2011-01-15 (0.5.2 -> 0.5.3)
+
+2011-01-15 Dai Sato <satodai@w3m.jp>
+
+ * w3m 0.5.3
+ * version.c.in: update
+ * doc/README: version 0.5.3, release date, maintainer
+ * doc-jp/README: ditto
+ * po/w3m.pot, ja.po: ditto
+ * NEWS: update
+ * configure.ac: version 0.5.3
+ * configure: regenerated
+
+2011-01-05 SAKAI Kiyotaka <kiyotaka.sakai@ntt-at.co.jp>
+
+ * [w3m-dev 04445] Re: Update documents (README.cookie)
+ * doc-jp/README.cookie: refer to RFC 2109.
+ * doc/README.cookie: diito.
+
+2011-01-05 SAKAI Kiyotaka <kiyotaka.sakai@ntt-at.co.jp>
+
+ * [w3m-dev 04444] Re: error when 'make install'
+ * w3mimg/win/.cvsignore: added.
+
+2011-01-04 SAKAI Kiyotaka <kiyotaka.sakai@ntt-at.co.jp>
+
+ * [w3m-dev 04441] error when 'make install'
+ * update followig files. ABOUT-NLS Makefile.in acinclude.m4
+ aclocal.m4 config.rpath configure configure.ac entity.h install-sh
+ po/ChangeLog po/Makefile.in.in po/Rules-quot po/boldquot.sed
+ po/en@boldquot.header po/en@quot.header po/insert-header.sin
+ po/quot.sed po/remove-potcdate.sin
+
+2010-12-28 Ito Hiroyuki <ZXB01226@nifty.com>
+
+ * [w3m-dev 04440] Update documents (README.cookie)
+ * doc/README.cookie: added.
+ * doc-jp/README.cookie: add document about cookie_avoid_wrong_number_of_dots.
+
+2010-12-24 Ito Hiroyuki <ZXB01226@nifty.com>
+
+ * [w3m-dev 04439] Update documents (README.m17n)
+ * doc-jp/README.m17n: add documents for options "east_asian_width", "gb18030_as_ucs" and "simple_preserve_space".
+ * doc/README.m17n: ditto.
+
+2010-12-24 AIDA Shinra <shinra@j10n.org>
+
+ * [w3m-dev 04437] Re: Windows版w3mimg、他
+ * w3mimg/win/win_w3mimg.cpp: remove unused ifdefs.
+ (load, animate): support "-anim" option.
+ (show): support "image_scale".
+
+2010-12-20 AIDA Shinra <shinra@j10n.org>
+
+ * [w3m-dev 04425] Re: Windows版w3mimg、他
+ * w3mimgdisplay: supports Windows console (http://www.j10n.org/files/w3m-cvs-1.1040-misc.patch).
+ * image.c: ditto.
+ * configure.ac: ditto.
+ * config.h.in: ditto.
+ * acinclude.m4: ditto.
+ * Makefile.in: ditto.
+ * w3mimg/w3mimg.h: ditto.
+ * w3mimg/w3mimg.c: ditto.
+ * w3mimg/Makefile.in: ditto.
+ * doc/README.img: ditto.
+ * doc-jp/README.img: ditto.
+ * w3mimgdisplay.c (main): call "w_op->close(w_op)" before exit.
+ * w3mimg/win/win_w3mimg.cpp: added.
+ * w3mimg/win/Makefile.in: added.
+
+2010-12-20 Ito Hiroyuki <ZXB01226@nifty.com>
+
+ * doc/README.img: add documents about some options.
+ * doc-jp/README.img: ditto.
+
+2010-12-15 AIDA Shinra <shinra@j10n.org>
+
+ * [w3m-dev 04424] Windows版w3mimg、他
+ * scripts/w3mman/Makefile.in (DESTDIR): removed.
+ * scripts/multipart/Makefile.in (DESTDIR): removed.
+ * scripts/Makefile.in (DESTDIR): removed.
+ * url.c (add_index_file): can specify multiple files as an index file for directories.
+ * mktable.c (defhashfunc): fi indent of output.
+ * ftp.c (ftp_login): support IPv6.
+ * file.c (is_text_type): check if the type is "application/xhtml".
+ * Makefile.in (DESTDIR): removed.
+ (GC_LIBS): added.
+ (EXT_LIBS): use "GC_LIBS".
+ (entity.h): depend on entity.tab and mktable$(EXT).
+ (indep.o): depend on entity.h
+ (mktable$(EXT)): depend on Str.o, hash.o and myctype.o instead of $(ALIB).
+
+2010-12-15 Kazuhiko <kazuhiko@fdiary.net>
+
+ * [w3m-dev 04419] AC_W3M_EXTLIBS does not check /lib64
+ * acinclude.m4 (AC_W3M_EXTLIBS): search /lib64 and /usr/lib64.
+
+2010-12-11 theme.of.n@gmail.com
+
+ * [w3m-dev 04421] Patch to prevent sending `Referer: ' header from HTTPS to HTTP
+ * url.c (otherinfo): Don't send Referer: if https:// -> http://
+
+2010-10-11 d+w3m@vdr.jp
+
+ * [w3m-dev 04414] Re: "normal" bugs from bugs.debian.org
+ * doc/w3m.1: add documents about some options.
+ * doc/FAQ.html: fix typo.
+
+2010-08-24 Karsten Schoelzel <kuser@gmx.de>
+
+ * [w3m-dev 04393] [patch] locale-related character management
+ * http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=313365
+ * libwc/map/ucs_isalpha.map: added
+ * libwc/map/ucs_islower.map: added
+ * libwc/map/ucs_isupper.map: added
+ * libwc/map/mk_ucs_case_map.pl: added
+ * libwc/map/ucs_case.map: added
+ * libwc/map/mk_ucs_isdigit_map.pl: added
+ * libwc/map/ucs_isdigit.map: added
+ * libwc/ucs.c (wc_any_to_ucs): ceck if cc.ccs == WC_CCS_US_ASCII
+ (wc_is_ucs_alpha, wc_is_ucs_digit, wc_is_ucs_alnum)
+ (wc_is_ucs_lower, wc_is_ucs_upper, wc_ucs_toupper)
+ (wc_ucs_tolower, wc_ucs_totitle): added
+ * regex.c (match_longchar, match_range_longchar): use wc_any_to_ucs(), wc_ucs_tolower(), wc_ucs_toupper() and wc_ucs_totitle()
+ * main.c (nextChar, prevChar, getChar, is_wordchar): added
+ (movLW): use prevChar() and is_wordchar()
+ (movRW): use nextChar() and is_wordchar()
+ (getCurWord): remove 4th parameter
+ (getCurWord): use prevChar(), nextChar() and is_wordchar()
+
+2010-08-20 Karsten Schoelzel <kuser@gmx.de>
+
+ * [w3m-dev 04401] Re: mailto with options handling
+ * rc.c: Introduce option mailto_options
+ * main.c (handleMailto): added
+ (followA, cmd_loadURL): use handleMailto()
+ * fm.h (MAILTO_OPTIONS_USE_W3MMAILER, MAILTO_OPTIONS_IGNORE)
+ (MAILTO_OPTIONS_USE_MAILTO_URL): added
+
+2010-08-20 Ito Hiroyuki <ZXB01226@nifty.com>
+
+ * [w3m-dev 04402] Re: "normal" bugs from bugs.debian.org
+ * terms.c (reset_exit_with_value, reset_error_exit): added
+ (reset_exit): use reset_exit_with_value()
+ (ttymode_set, ttymode_reset, set_cc, getTCstr)
+ (sleep_till_anykey): use reset_error_exit() instead of reset_exit()
+
+2010-08-14 "Adam C. Emerson" <azure@azureprime.com>
+
+ * [w3m-dev 04390]
+ * http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=573789
+ * html.c: All elements have the id attribute.
+
+2010-08-12 Peter J. R. Moulder
+
+ * [w3m-dev 04384]
+ * http://sourceforge.net/tracker/index.php?func=detail&aid=2987194&group_id=39518&atid=425441
+ * html.c: some tags have ALST_NOP attribute
+ * tagtable.tab: add <span> and </span>
+ * html.h (HTML_SPAN, HTML_N_SPAN): added
+
+2010-08-11 SAKAI Kiyotaka <kiyotaka.sakai@ntt-at.co.jp>
+
+ * [w3m-dev 04381] Re: check socklen_t
+ * ftp.c: fix condition (#ifndef HAVE_SOCKLEN_T)
+
+2010-08-10 Ito Hiroyuki <ZXB01226@nifty.com>
+
+ * [w3m-dev 04379] check socklen_t
+ * configure.ac: check socklen_t
+ * ftp.c (ftp_login, ftp_pasv): use socklen_t instead of int
+
+2010-08-09 Ito Hiroyuki <ZXB01226@nifty.com>
+
+ * [w3m-dev 04374] Re: "important" bugs from bugs.debian.org
+ * table.c (feed_table_tag): don't show message when rowspan is greater than ATTR_ROWSPAN_MAX
+ * [w3m-dev 04376] Re: "important" bugs from bugs.debian.org
+ * table.c (feed_table_tag): fix indent
+
+2010-08-08 Steven Harms <ZXB01226@nifty.com>
+
+ * [w3m-dev 04371] Re: "important" bugs from bugs.debian.org
+ * https://bugs.launchpad.net/ubuntu/+source/w3m/+bug/131993
+ * table.c (ATTR_ROWSPAN_MAX): added
+ (feed_table_tag): maximum value of rowspan is ATTR_ROWSPAN_MAX
+
+2010-08-08 d+w3m@vdr.jp
+
+ * [w3m-dev 04360] Re: "important" bugs from bugs.debian.org
+ * main.c (main): use DEFAULT_COLS
+ (main): the maximum value of the -cols option is MAXIMUM_COLS
+ * backend.c (backend): use DEFAULT_COLS
+ * fm.h (MAXIMUM_COLS, DEFAULT_COLS): added
+
+2010-08-04 Ito Hiroyuki <ZXB01226@nifty.com>
+
+ * [w3m-dev 04369] Re: w3m's bugs from bugs.debian.org
+ * terms.c (graph_ok): fix condition (UseGraphicChar != GRAPHIC_CHAR_DEC)
+ * symbol.c (get_symbol): fix condition (UseGraphicChar != GRAPHIC_CHAR_ASCII)
+ * rc.c (params1): type of graphic_char option is PI_SEL_C
+ * main.c (main): use GRAPHIC_CHAR_ASCII and GRAPHIC_CHAR_DEC instead of FALSE and TRUE
+ * fm.h (GRAPHIC_CHAR_ASCII, GRAPHIC_CHAR_DEC, GRAPHIC_CHAR_CHARSET): added
+
+2010-08-03 d+w3m@vdr.jp
+
+ * [w3m-dev 04363] Re: w3m's bugs from bugs.debian.org
+ * doc/w3m.1: revert option -S
+ * doc-jp/w3m.1: revert option -S, -e, -j and -s
+ * main.c: remove codes for Debian
+
+2010-08-03 Ito Hiroyuki <ZXB01226@nifty.com>
+
+ * [w3m-dev 04343]
+ * file.c (loadGeneralFile): register user name and password for proxy authentication.
+ * url.c (HTTPrequest): unused variable seen_proxy_auth was removed
+ * fm.h: global variables proxy_auth_cookie and pauth are removed
+ * main.c (main): remove option -pauth
+ * doc/MANUAL.html: ditto
+ * doc-jp/MANUAL.html: ditto
+ * doc-jp/w3m.1: ditto
+ * doc/w3m.1: ditto
+ * doc/README.passwd: added
+ * doc-jp/README.passwd: added
+
+2010-07-31 Tatsuya Kinoshita <tats@vega.ocn.ne.jp>
+
+ * [w3m-dev 04350] Re: w3m's bugs from bugs.debian.org
+ * file.c (process_img): Revert the change of using ATTR_TITLE if ATTR_ALT is empty.
+
+2010-07-30 Ito Hiroyuki <ZXB01226@nifty.com>
+
+ * [w3m-dev 04348] Re: "important" bugs from bugs.debian.org
+ * file.c (TEXTAREA_ATTR_COL_MAX, TEXTAREA_ATTR_ROWS_MAX): added.
+ (process_textarea): check cur_textarea_size > TEXTAREA_ATTR_COL_MAX and cur_textarea_rows > TEXTAREA_ATTR_ROWS_MAX
+
+2010-07-30 Ito Hiroyuki <ZXB01226@nifty.com>
+
+ * [w3m-dev 04345] Re: "important" bugs from bugs.debian.org
+ * file.c (HR_ATTR_WIDTH_MAX): added.
+ (process_hr): check w > HR_ATTR_WIDTH_MAX
+
+2010-07-26 d+w3m@vdr.jp
+
+ * [w3m-dev 04237] [patch] cookie avoid [wrong number of dots]
+ * rc.c: Introduce option cookie_avoid_wrong_number_of_dots.
+ * fm.h: add global variables cookie_avoid_wrong_number_of_dots and Cookie_avoid_wrong_number_of_dots_domains.
+ * cookie.c (check_avoid_wrong_number_of_dots_domain): added.
+ (add_cookie): use check_avoid_wrong_number_of_dots_domain().
+
+2010-07-26 Ito Hiroyuki <ZXB01226@nifty.com>
+
+ * acinclude.m4: define AC_W3M_SSL_DIGEST_AUTH
+
+2010-07-25 AIDA Shinra <shinra@j10n.org>
+
+ * [w3m-dev 04049] Ctrl-C safe resolver
+ * fm.h (GRAPHIC_CHAR_ASCII, GRAPHIC_CHAR_CHARSET, GRAPHIC_CHAR_ALL): removed.
+ * fm.h: UseGraphicChar is initialized as FALSE.
+ * main.c (sig_chld): use TRUE and FALSE instead of GRAPHIC_CHAR_ALL and GRAPHIC_CHAR_ASCII.
+ * merge ambiguous width patch ( http://www.j10n.org/files/w3m-cvs-1.914-ambwidth.patch ).
+
+2010-07-24 Ito Hiroyuki <ZXB01226@nifty.com>
+
+ * [w3m-dev 04326] suppress compile warnings
+ * file.c (digest_hex): type of the parameter s is "unsigned char *".
+ (AuthDigestCred): use unsigned char.
+ (ex_efct): type of the function is "static int".
+
+2010-07-20 Sascha Silbe <sascha-debian-bugs-w3m-1@silbe.org>
+
+ * http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=523159#5
+ * url.c (openSSLHandle): add support for TLS SNI (Server Name Indication)
+
+2010-07-19 Karsten Schoelzel <kuser@gmx.de>
+
+ * http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=329862#20
+ * table.c (feed_table_tag): check displayLinkNumber.
+ * proto.h: add getLinkNumberStr().
+ * main.c (do_dump): check displayLinkNumber.
+ * fm.h: add global variable displayLinkNumber.
+ * file.c (getLinkNumberStr): added.
+ (process_input, process_select, HTMLtagproc1): check displayLinkNumber.
+
+2010-07-19 Karsten Schoelzel <kuser@gmx.de>
+
+ * http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=329863#8
+ * rc.c: Introduce option pseudo_inlines.
+ * fm.h: add global variable pseudoInlines.
+ * file.c (process_img): check q.
+
+2010-07-19 "Trent W. Buck" <twb@cybersource.com.au>
+
+ * http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=537706#10
+ * rc.c (interpret_rc): check line->length before call Strchop().
+
+2010-07-19 Karsten Schoelzel <kuser@gmx.de>
+
+ * http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=366284#5
+ * rc.c (init_rc): check config_file is NULL or not.
+ (panel_set_option): check config_file instead of no_rc_dir.
+
+2010-07-19 Karsten Schoelzel <kuser@gmx.de>
+
+ * http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=261174#10
+ * terms.c (graph_ok): check UseGraphicChar is GRAPHIC_CHAR_ALL or not.
+ * symbol.c (get_symbol): check UseGraphicChar.
+ * rc.c (graphic_char_str): added.
+ * main.c (sig_chld): use GRAPHIC_CHAR_ASCII and GRAPHIC_CHAR_ALL.
+ * fm.h (GRAPHIC_CHAR_ASCII, GRAPHIC_CHAR_CHARSET, GRAPHIC_CHAR_ALL): added.
+ * fm.h: UseGraphicChar is initialized as GRAPHIC_CHAR_ASCII.
+
+2010-07-19 Karsten Schoelzel <kuser@gmx.de>
+
+ * http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=185006#22
+ * main.c (sig_chld): save exit code to d->err.
+ (addDownloadList): initialize d->running and d->err.
+ (DownloadListBuffer): check d->err.
+
+ * fm.h (_DownloadList): add running and err.
+
+ * file.c (save2tmp): check returned value of Strfputs().
+ (doFileSave): exit code is depend on the returned value of save2tmp().
+
+2010-07-19 d+w3m@vdr.jp
+
+ * [w3m-dev 04238] [patch] simple preserve space
+ * rc.c: Introduce option simple_preserve_space.
+ * fm.h: add global variable SimplePreserveSpace.
+ * file.c (HTMLlineproc0): check SimplePreserveSpace.
+
+2010-07-18 Karsten Schoelzel <kuser@gmx.de>
+
+ http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=242599#21
+ * file.c (is_html_type): added.
+ (examineFile, loadGeneralFile, _saveBuffer)
+ (openGeneralPagerBuffer, reloadBuffer): use is_html_type() instead
+ of strcasecmp().
+ (loadGeneralFile): set f.guess_tupe
+ * display.c (displayBuffer): use is_html_type() instead of strcasecmp().
+ * buffer.c (reshapeBuffer): use is_html_type() instead of strcasecmp().
+ * backend.c (internal_get): use is_html_type() instead of strcasecmp().
+ * main.c (vwSrc, reload, dispI, stopI): use is_html_type() instead of strcasecmp().
+ * proto.h: add is_html_type()
+ * url.c: add "xhtml" to DefaultGuess.
+
+2010-07-18 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 04286] Re: break textform when buffer back
+ * form.c (form_update_line): set line->size
+
+2010-07-18 d+w3m@vdr.jp
+
+ * [w3m-dev 04319] Re: w3m's bugs from bugs.debian.org
+ * doc/w3m.1: fix typo.
+ * doc-jp/w3m.1: update
+
+2010-07-18 Petr Salinger <Petr.Salinger@seznam.cz>
+ * http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=493486
+ * terms.c: fix version check logic for FreeBSD
+
+2010-07-18 Colin Watson <cjwatson@ubuntu.com>
+ * http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=325699
+ * scripts/w3mman/w3mman2html.cgi.in (Content-Type): "MAN_KEEP_FORMATTING=1"
+
+2010-07-18 Ludwig Nussel <ludwig.nussel@...e.de>
+ * http://www.openwall.com/lists/oss-security/2010/06/14/4
+ * istream.c (ssl_check_cert_ident): replace \0 to make full string
+ visible to user (CVE-2010-2074).
+
+2007-06-07 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 04279] charset
+ * libwc/ces.h, libwc/charset.c: set charset to Shift_JIS, when locale
+ is japanese, jp_JP.PCK, ja_JP.IBM-932, ja_JP.IBM-943, or windows-31j.
+
+2007-06-07 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 04278] Re: segfault on CentOS4.5/libgc6.8
+ * term.c: add handling xterm-incompatible terminals without gpm.
+
+2007-06-04 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 04271] vi_prec_num
+ * main.c: make number prefixes working when vi_prec_num=0.
+
+2007-05-31 Dai Sato <satodai@w3m.jp>
+
+ * w3m 0.5.2
+ * version.c.in: update
+ * doc/README: version 0.5.2, release date, maintainer
+ * doc-jp/README: ditto
+ * po/w3m.pot, ja.po: ditto
+ * NEWS: update
+ * configure.ac: version 0.5.2
+ * configure: regenerated
+
+2007-05-31 Tsutomu OKADA
+
+ * [20070530101431@w3mbbs] Re: road to 0.5.2
+ * ftp.c: fix typo.
+ * main.c, mktable.c, w3mbookmark.c, w3mhelperpanel.c: add GC_INIT().
+
+2007-05-30 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 04266] Bug fix when tab browsing
+ * fm.h, main.c: fix for tab browsing.
+
+2007-05-30 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 04265] compile error when #undef USE_BG_COLOR
+ * terms.c: add #ifdef __CYGWIN__.
+
+2007-05-30 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 04264] Re: road to 0.5.2
+ * po/makefile.in.in, scripts/*/Makefile.in: add datarootdir.
+
+2007-05-29 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 04262] FreeBSD sysmouse (Re: road to 0.5.2)
+ * configure.ac: unbreak sysmouse support, pointed out by
+ Travis Poppe <tlp@lickwid.net>.
+ * configure: regenerated.
+
+2007-05-29 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 04260] Warning (Re: road to 0.5.2)
+ * main.c, display.c: delete unused macros, change void to static void.
+
+2007-05-29 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 04259] long long (Re: road to 0.5.2)
+ * Makefile.in, aclocal.m4: move 'gc' from $LIBS to $LIBGC.
+ * configure: regenerated.
+
+2007-05-29 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 04256] Re: road to 0.5.2
+ * scripts/Makefile.in, scripts/w3mhelp.cgi.in: add datarootdir.
+
+2007-05-28 Hideyuki SHIRAI <shirai@meadowy.org>
+
+ * [w3m-dev 04251] Re: road to 0.5.2
+ * po/w3m.pot: pot-update.
+
+2007-05-27 Hiroyuki Ito <ZXB01226@nifty.com>
+
+ * [w3m-dev 04252] Re: road to 0.5.2
+ * Makefile.in: add datarootdir for Autoconf 2.60 and later.
+
+2007-05-23 NOKUBI Takatsugu <knok@daionet.gr.jp>
+
+ * [w3m-dev 04155] w3m mingw patch
+ * config.h, configure.ac, etc.c, file.c, ftp.c, indep.c, istream.c,
+ local.c, main.c, rc.c, terms.c, url.c: fix for minpw, except for
+ deleting nsl and dl from configure.ac.
+ * configure: regenerated.
+
+2007-05-23 Hiroyuki Ito <ZXB01226@nifty.com>
+
+ * [w3m-dev 04233], [w3m-dev 04236] Re: <del>, <s>, <ins>, and so on
+ * file.c, fm.h, po/ja.po, po/w3m.pot, rc.c, table.c:
+ expand display_ins_del to select a type of fontify.
+
+2007-05-23 Hiroyuki Ito <ZXB01226@nifty.com>
+
+ * [w3m-dev 04242] Re: Compile error when --without-ssl
+ * aclocal.m4, configure.ac: add checking ssl before digest_auth.
+ * configure: regenerated.
+
+2007-05-23 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 04240] nl_langinfo() requires setlocale()
+ * fm.h, main.c, menu.c, rc.c: add "#ifdef"s.
+ * libwc/charset.c: add setlocale() for nl_langinfo().
+
+2007-05-23 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03923] <pre> in <table>
+ * file.c, table.c: avoid extra blanks in pre in table.
+
+2007-05-23 tamo
+
+ * [20070121110209@w3mbbs] unnecessary decoding in linein.c
+ * linein.c: decoding URLs in correct condition.
+
+2007-05-23 Tsutomu OKADA
+
+ * [20061228000713@w3mbbs] avoid warning for file.c
+ * html.h: change char to unsigned char for HTML_DL_COMPACT(133).
+
+2007-05-23 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 04213] update Unicode characters' width
+ * libwc/ucs.c, libwc/ucs.h, libwc/map/ucs_wide.map:
+ catch-up to EastAsianWidth-5.0.0.txt.
+
+2007-04-19 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 04212] quote URL of local dir
+ * local.c: quote URLs with non-ASCII local directory names.
+
+2007-04-19 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 04211] input type=image
+ * file.c, html.[ch]: avoid conflicts between input_alt and img_alt.
+ fix calculation of labeled line numbers when fold_line=1.
+
+2007-04-19 Hiroyuki Ito <ZXB01226@nifty.com>
+
+ * [w3m-dev 04197] Re: italic text
+ * fm.h: display <em> and <i> elements with underline.
+
+2006-12-27 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [SECURITY] fix format string vulnerability
+ * file.c (inputAnswer) fix format string bug
+
+2006-12-07 Hiroyuki Ito <ZXB01226@nifty.com>
+
+ * [w3m-dev 04185] Re: italic text
+ * file.c, fm.h, html.c, html.h, tagtable.tab:
+ display <em> and <i> elements with bold letters.
+
+2006-12-07 Hideyuki SHIRAI <shirai@meadowy.org>
+
+ * [w3m-dev 04184] automatic uncompression in downloading
+ * rc.c: Add `AutoUncompress'.
+ (params3): Ditto.
+ * fm.h: Add `AutoUncompress'.
+ * file.c (loadGeneralFile): Check `AutoUncompress' when uncompress
+ data.
+ (HTMLlineproc2body): Ditto.
+ * po/w3m.pot: Add new message for `AutoUncompress'.
+ * po/ja.po: ditto.
+
+2006-12-10 Hiroyuki Ito <ZXB01226@nifty.com>
+
+ * [w3m-dev 04159] Re: Is this mailing list still alive?
+ * cookie.c: accept invalid "set-cookies" headers
+ when "domainName == .hostName".
+
+2006-12-10 noz
+
+ * [20051124052846@w3mbbs] LiveHTTPHeaders
+ * file.c, fm.h, main.c, url.c: add -reqlog option which makes
+ ~/.w3m/request.log like LiveHTTPHeaders of FireFox.
+
+2006-08-07 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * mailcap.c (acceptableMimeTypes): change default accept: line
+ w3m should prefer text/html to other text/*.
+ reported as Debian Bug#374296
+
+2006-06-12 Dai Sato <satodai@w3m.jp>
+
+ * another fix for [w3m-dev-en 01067] Some more patches
+ * file.c (loadBuffer): avoid decoding when dump_extra option is specified.
+
+2006-06-10 Dai Sato <satodai@w3m.jp>
+
+ * fix for [w3m-dev-en 01067] Some more patches
+ * file.c (loadGeneralFile): avoid decoding when dump_extra option is specified.
+
+2006-06-10 Dai Sato <satodai@w3m.jp>
+
+ * [w3m-dev 03992] Change to display progress status when dump_extra option is specified
+ * file.c (loadHTMLstream): Show progress status when dump_extra option is specified.
+
+2006-06-07 Dai Sato <satodai@w3m.jp>
+
+ * [w3m-dev 04129] handling newlines in form values
+ * parsetagx.c: don't delete newlines in hidden values.
+
+2006-05-29 Dai Sato <satodai@w3m.jp>
+
+ * [w3m-dev-en 01067] Some more patches
+ * file.c, html.h, url.c: decode content-encoding in all situations.
+
+2006-05-29 Dai Sato <satodai@w3m.jp>
+
+ * [w3m-dev-en 01067] Some more patches
+ * main.c: delete calls to GC from wrap_GC_warn_proc to avoid deadlocks.
+
+2006-05-29 Dai Sato <satodai@w3m.jp>
+
+ * [w3m-dev-en 01067] Some more patches
+ * main.c: fix unsafe usages of SIGWINCH handler.
+
+2006-05-29 Dai Sato <satodai@w3m.jp>
+
+ * [w3m-dev-en 01067] Some more patches
+ * keybind(_lynx).c, doc(-jp)/keymap.default: add SHIFT-TAB as a default binding for PREV_LINK.
+
+2006-04-08 Dai Sato <satodai@w3m.jp>
+
+ * [w3m-dev 04154] Unclosed textarea in table
+ * table.c: close textarea when table related tags found.
+
+2006-04-08 Dai Sato <satodai@w3m.jp>
+
+ * [w3m-dev 04153] NEXT_LINK error
+ * anchor.c, filc.c, fm.h: check A tag in HTMLlineproc2body().
+
+2006-04-08 Dai Sato <satodai@w3m.jp>
+
+ * [w3m-dev 04152] [PATCH] Add more explanation for the usage of the option setting panel.
+ * doc(-jp)/FAQ.html, doc-jp/MANUAL.html: add explanations for .w3m/config and -o option.
+
+2006-04-08 Dai Sato <satodai@w3m.jp>
+
+ * [w3m-dev 04150] vi-prec_num
+ * main.c: fix vi_prec_num switching.
+
+2006-04-08 Dai Sato <satodai@w3m.jp>
+
+ * [w3m-dev 04146] disable HAVE_LANGINFO_CODESET on cygwin
+ * configure.ac: avoid AM_LANGINFO_CODESET check for Cygwin.
+
+2006-04-07 Dai Sato <satodai@w3m.jp>
+
+ * [w3m-dev-en 01060] Some patches
+ * file.c, fm.h, rc.c: Introduce option show_cookie and set it TRUE by default. If set to FALSE received cookies will not be shown.
+ * This fixes Debian bug #253547: w3m: Too slow receiving cookies.
+
+2006-04-07 Dai Sato <satodai@w3m.jp>
+
+ * [w3m-dev-en 01060] Some patches
+ * parsetagx.c: Replace '\n' (newline) with ' ' (space) in attributes of html tags instead of ignoring them.
+ * Fixes Debian bug #326167: w3m: new lines in hidden form fields are stripped
+
+2006-04-07 Dai Sato <satodai@w3m.jp>
+
+ * [w3m-dev-en 01060] Some patches
+ * scripts/w3mman/w3mman*.in: Add w3mman -l <file> command line argument for viewing of local man files.
+ * Fixes Debian bug #138805: w3mman -l doesn't work.
+
+2006-04-07 Dai Sato <satodai@w3m.jp>
+
+ * [w3m-dev-en 01060] Some patches
+ * libwc/detect.c: Use the hint instead of US_ASCII in wc_auto_detect.
+ * Fixes Debian bug #291735: w3m shouldn't "simplify" page's charset
+
+2006-04-07 Dai Sato <satodai@w3m.jp>
+
+ * [w3m-dev-en 01060] Some patches
+ * Str.h, table.c: Use Strnew_charp() instead of the wrong Strnew().
+ * Fixes SF bug #895351 Strnew called with argument in table.c.
+
+2006-02-10 Dai Sato <satodai@w3m.jp>
+
+ * http://dog.w3m.jp/bbs/spool/until200602.html#20060210153135@keijiwan
+ * url.c: replace pclose passed to localcgi_post/get() with fclose in openURL()
+
+2006-02-09 Dai Sato <satodai@w3m.jp>
+
+ * http://vimrc.hp.infoseek.co.jp/w3m-pclose.html
+ * file.c: replace pclose with fclose in the end of uncompress_stream()
+
+2005-02-27 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * configure.ac: rename from configure.in. this is for autoconf2.50
+
+2005-02-27 NOMIYA Masaru <nomiya@ttmy.ne.jp>
+
+ * [w3m-dev 04143] Patch for OS/2
+ * config.h.in: ifdef HAVE_SETPGRP
+ * configure.in: define USE_BINMODE_STREAM for *os2-emx*
+ * islang.c: ULONG -> unsigned long
+ * main.c: ULONG -> unsigned long
+
+2005-02-15 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev-en 01045] From newbie: problem with w3m-0.5.1 installation
+ * acinclude.m4 (AC_W3M_SSL): define USE_SSL after ssl library found
+
+2005-01-19 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
+
+ * [w3m-dev 04133] mouse_end() should preced reset_tty()?
+ * terms.c (reset_exit): mouse_end() should precede reset_tty()
+
+2005-01-05 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
+
+ * [w3m-dev 04130] [w3m-dev 04131] [w3m-dev 04132] Multiple challeges in *-Authenticate header
+ * file.c (skip_auth_token): added
+ (extract_auth_val): ',' is end of token
+ (extract_auth_param): use skip_auth_token
+ (AuthDigestCred): parse qop and calc cnonce correctly
+ (findAuthentication): use skip_auth_token
+
+2004-11-09 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * w3mimg/fb/fb_gdkpixbuf.c (fb_image_load):
+ fix unused variable `i'
+ * w3mimg/x11/x11_w3mimg.c (x11_load_image):
+ ditto
+
+2004-11-09 Hiroyuki Ito <ZXB01226@nifty.com>
+
+ * [w3m-dev 04128] Re: w3mimgdisplay
+ * acinclude.m4 (AC_W3M_IMAGE): check not yes
+ * aclocal.m4, configure: regen
+ * w3mimg/fb/fb_gdkpixbuf.c (fb_image_load):
+ fb_image_fill in case GDK_PIXBUF_FRAME_DISPOSE
+ * w3mimg/x11/x11_w3mimg.c (get_animation_size):
+ return n
+ (x11_load_image):
+ fill in case GDK_PIXBUF_FRAME_DISPOSE
+
+2004-11-05 Hiroyuki Ito <ZXB01226@nifty.com>
+
+ * [w3m-dev 04117] Re: start attribute and value attribute on ordered lists
+ * file.c (HTMLtagproc1): allow negative value for start attr
+
+2004-10-14 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * Bug#276246: w3m's locale parsing should at least see '@euro' modifier
+ * config.h (HAVE_LANGINFO_CODESET): added
+ * configure.in (AM_LANGINFO_CODESET): added
+ * libwc/charset.c: #include <langinfo.h>
+ (wc_charset_to_ces): use nl_langinfo(CODESET)
+
+2004-09-30 Hiroyuki Ito <ZXB01226@nifty.com>
+
+ * [w3m-dev 04108] PIPE_BUF
+ * main.c (pipeBuf): set buf->currentURL.file to prevent
+ segfault by "PIPE_BUF cat;VIEW SOURCE;"
+
+2004-08-31 SAKAI Kiyotaka <ksakai@kso.netwk.ntt-at.co.jp>
+
+ * [w3m-dev 04104] w3mmail.cgi
+ * scripts/w3mmail.cgi.in: strip ^M
+
+2004-08-17 Hiroyuki Ito <ZXB01226@nifty.com>
+
+ * [w3m-dev 04099] Re: w3m-img gtk2
+ * w3mimg/fb/fb_gdkpixbuf.c (fb_image_load): fix resize bug
+
+2004-08-06 Hiroyuki Ito <ZXB01226@nifty.com>
+
+ * [w3m-dev 04097] Re: w3m-img gtk2
+ * w3mimg/fb/fb_gdkpixbuf.c (draw): no need bg
+ (get_animation_size): use GTimeVal
+ (fb_image_load): use GTimeVal
+ fix for animation
+ * w3mimg/x11/x11_w3mimg.c (get_animation_size): use GTimeVal
+ (x11_load_image): use GTimeVal
+ fix for animation
+
+2004-08-05 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 04096] w3m-img gtk2
+ * acinclude.m4 (AC_W3M_IMAGE): add USE_GTK2
+ add --with-imagelib=gtk2
+ * aclocal.m4 config.guess config.sub configure: regen
+ * config.h.in: add USE_GTK2
+ * w3mimg/fb/fb_gdkpixbuf.c: support USE_GTK2
+ * w3mimg/fb/fb_img.h: add fb_image_init()
+ * w3mimg/fb/fb_imlib2.h: fb_image_init() stub
+ * w3mimg/fb/fb_w3mimg.c: call fb_image_init()
+ * w3mimg/x11/x11_w3mimg.c: support USE_GTK2
+
+2004-08-03 WATANABE Katsuyuki <knabe@sannet.ne.jp>
+
+ * [w3m-dev 04095] build fix when configure with --enable-messagel10n
+ * main.c (main): locale and textdomain initialization if ENABLE_NLS
+ * menu.c (initMenu): use _() instead of gettext()
+ * rc.c (show_params): use _() instead of gettext()
+
+2004-07-18 WATANABE Katsuyuki <knabe@sannet.ne.jp>
+
+ * [w3m-dev 04094] Re: option panel: gettextize select list
+ * rc.c (load_option_panel): don't gettext&wc_conv colorstr
+ several times
+
+2004-07-16 WATANABE Katsuyuki <knabe@sannet.ne.jp>
+
+ * [w3m-dev 04093] bookmark charset
+ * add global variable: BookmarkCharset.
+ * main.c:adBmark(): remove condition LANG = JA.
+ * main.c: buffername encode by BookmarkCharset when add bookmark.
+ * main.c: BookmarkCharset pass to w3mbookmark.
+ * w3mbookmark.c: ditto.
+
+2004-07-16 WATANABE Katsuyuki <knabe@sannet.ne.jp>
+
+ * [w3m-dev 04092] remove __CYGWIN__ && LANG == JA
+ * remove condition LANG == JA && __CYGWIN__
+ * cygwin_mouse_btn_swapped enabled when before 1.5.x
+
+2004-07-16 WATANABE Katsuyuki <knabe@sannet.ne.jp>
+
+ * [w3m-dev 04091] option panel: gettextize select list
+ * rc.c: gettextize option select list.
+ * rc.c: add gettextize message.
+ * po/w3m.pot: ditto.
+ * po/ja.po: ditto.
+
+2004-07-14 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * Debian Bug#259053
+ * doc/FAQ.html, doc-jp/FAQ.html: ~/.mailcap -> ~/.w3m/mailcap
+
+2004-05-11 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * based on [w3m-dev 04079]
+ SAKAI Kiyotaka <ksakai@kso.netwk.ntt-at.co.jp>
+ * Makefile.in: (libwc/libwc.a): always make in libwc subdir
+ (w3mimg/w3mimg.a): always make in w3mimg subdir
+
+2004-05-03 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev-en 01007]
+ * libwc/Makefile.in (CFLAGS): need @CPPFLAGS@
+
+2004-05-03 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * version.c.in: cvs version
+
+2004-04-29 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * w3m 0.5.1
+ * version.c.in: update
+ * doc/README: version 0.5, release date, maintainer
+ * doc-jp/README: ditto
+ * NEWS: update
+ * configure.in: version 0.5.1
+ * po/w3m.pot, ja.po: update-po
+
+2004-04-27 SAKAI Kiyotaka <ksakai@kso.netwk.ntt-at.co.jp>
+
+ * [w3m-dev 04068] install-sh problem
+ [w3m-dev 04069] install-sh problem 2
+ * Makefile.in (MAKE_ARGS): delete INSTALL
+ * install-sh: replace with X Consortium install-sh (from automake)
+
+2004-04-27 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 04073] Re: run configure in another directory
+ * Makefile.in (CFLAGS): include dir here
+ (DEFS): delete include dirs
+ (libwc/libwc.a): pass OPTS only
+ (w3mimg/w3mimg.a): pass OPTS only
+ * libwc/Makefile.in (CFLAGS): fixed
+ * w3mimg/Makefile.in (CFLAGS): added
+ (fb x11): pass OPTS only
+ * w3mimg/fb/Makefile.in (CFLAGS): added
+ * w3mimg/x11/Makefile.in (CFLAGS): added
+
+2004-04-23 SAKAI Kiyotaka <ksakai@kso.netwk.ntt-at.co.jp>
+
+ * [w3m-dev 04066] --disable-color
+ * rc.c (load_option_panel): #ifdef USE_COLOR
+
+2004-04-22 Masao Uebayashi <uebayasi@pultek.co.jp>
+
+ * fix build error for --enable-m17n --disable-unicode
+ * libwc/detect.c (wc_create_detect_map): #ifdef USE_UNICODE
+
+2004-04-17 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 04064] authentication
+ closes: Bug#:244029: w3m: HTTP basic authentication annoyance
+ * fm.h (auth_cookie): deleted
+ * proto.h (find_auth_cookie): deleted
+ (add_auth_cookie): deleted
+ (add_auth_user_passwd): added
+ (invalidate_auth_user_passwd): added
+ * etc.c (auth_pass): add bad flag
+ delete file
+ (dir_under): deleted
+ (add_auth_pass_entry): add override flag
+ no need to check file
+ (find_auth_pass_entry): delete file
+ check bad flag
+ check uname
+ (find_auth_user_passwd): find by pu->user
+ (add_auth_user_passwd): added
+ (invalidate_auth_user_passwd): added
+ (parsePasswd): add no override
+ ignore file
+ (find_auth): deleted
+ (find_auth_cookie): deleted
+ (dump_auth_cookie): deleted
+ (add_auth_cookie): deleted
+ * file.c (getAuthCookie): add *uname, *pwd
+ rewrite
+ (loadGeneralFile): delete ss, add uname, pwd
+ use add_auth_user_passwd instead of add_auth_cookie
+ * url.c (HTTPrequest): don't authorization here
+ it should be done in getAuthCookie in loadGeneralFile
+ through extra_header
+ * ftp.c (openFTPStream): add uname
+ use find_auth_user_passwd instead of find_auth_cookie
+ use add_auth_user_passwd instead of add_auth_cookie
+
+2004-04-10 SAKAI Kiyotaka <ksakai@kso.netwk.ntt-at.co.jp>
+
+ * [w3m-dev 04063] about Makefile
+ * Makefile.in (DEFS): use CGIBIN_DIR instead of LIB_DIR
+ (MAKE_ARGS): ditto
+ (distclean): rm -f
+ * config.h.dist: use CGIBIN_DIR instead of LIB_DIR
+ * indep.c (w3m_lib_dir): ditto
+ * scripts/Makefile.in: ditto
+ * scripts/multipart/Makefile.in: ditto
+ * w3mimg/Makefile.in (clearn): remove w3mimg.a
+
+2004-04-05 AIDA Shinra <shinra@j10n.org>
+
+ * [w3m-dev 04049] w3m-cvs-1.914-misc.patch
+ * Makefile.in (funcname.tab): dont modify when target is unchanged.
+ (CFLAGS): need $(CPPFLAGS)?
+ * config.h.in: add HAVE_STDINT_H, HAVE_INTTYPES_H
+ * configure.in: s/AC_CANONICAL_SYSTEM/AC_CANONICAL_HOST/
+ don't use AC_CYGWIN
+ don't use $CYGWIN, use $host_os *cygwin*
+ AC_DEFINE in AC_CHECK_HEADER (float.h, sys/select.h)
+ add stdint.h, inttypes.h
+ * etc.c (find_auth_pass_entry): host is case insensitive
+ * libwc/wc_types.h: use stdint.h or inttypes.h
+ * main.c (MAIN); need GC_init()
+
+2004-04-01 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ Debian Bug#241192 w3m ipv6 FQDN resolution failure
+ * etc.c (FQDN): need to set ai_flags AI_CANONNAME, since we need
+ ai_canonname here.
+
+2004-03-31 AIDA Shinra <shinra@j10n.org>
+
+ * [w3m-dev 04050] SSL verify
+ * url.c (openSSLHandle): don't load verify locations if
+ both ssl_ca_file and ssl_ca_path is NULL.
+
+2004-03-24 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * fix search problem on different charset page than display charset
+ * proto.h (conv_search_string): added
+ * search.c (migemostr): use conv_search_string
+ (conv_search_string): added
+ * main.c (srchcore): use conv_search_string
+ (reMark): ditto
+ * menu.c (menu_search_forward): ditto
+ (menu_search_backward): ditto
+ (menu_search_next_previous): ditto
+
+2004-03-23 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * rc.c: cleanup LANG == JA
+
+2004-03-23 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * main.c (main): DisplayCharset also follow locale
+
+2004-03-23 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * scripts/w3mhelp.cgi.in: use charset parramter
+ * scripts/w3mhelp-funcdesc.en.pl.in: add charset
+ * scripts/w3mhelp-funcdesc.ja.pl.in: ditto
+
+2004-03-22 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * main.c (main): don't use SystemCharset for default of
+ DisplayChaset, DocumentCharset
+
+2004-03-22 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * w3m 0.5
+ * version.c.in: update
+ * doc/README: version 0.5, release date, maintainer
+ * doc-jp/README: ditto
+ * NEWS: update
+
+2004-03-22 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * main.c (main): DisplayCharset and DocumentCharset also follow
+ locale configuration
+ * Makefile.in (distclean): distclean libwc
+ * libwc/Makefile.in: add distclean
+ * scripts/multipart/Makefile.in: add distclean
+ * scripts/w3mman/Makefile.in: add distclean
+ * scripts/Makefile.in: add distclean
+
+2004-03-22 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * w3mimg/Makefile.in (distclean): rm -f w3mimg.a
+
+2004-03-22 Akihiro Sagawa <sagawa@sohgoh.net>
+
+ * [w3m-dev 04046]
+ * configure.in (AC_W3M_IPv6): should check it after ext libs
+
+2004-03-22 Akihiro Sagawa <sagawa@sohgoh.net>
+
+ * [w3m-dev 04045]
+ * Makefile.in (DEFUNS): need $(top_srcdir)
+
+2004-03-21 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * Makefile.in (install-po): fix for broken sh.
+ reported in [w3m-dev 04043] Re: w3m 0.5
+
+2004-03-13 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 04041] spell-miss in configure
+ * acinclude.m4 (AC_W3M_M17N): fix help-string
+ suggested by sakane@d4.bsd.nes.nec.co.jp (Yoshinobu Sakane)
+
+2004-02-06 MANTANI Nobutaka <nobutaka@nobutaka.com>
+
+ * [w3m-dev 04038] --disable-m17n problem in form.c
+ * form.c (form_update_line): fix for disable-m17n
+
+2004-01-10 ABE Yuji <cbo46560@pop12.odn.ne.jp>
+
+ * [w3m-dev 04030] PUSH_TAG macro
+ * table.c (PUSH_TAG): fixed problem in --disable-m17n
+
+2003-12-09 WATANABE Katsuyuki <knabe@sannet.ne.jp>
+
+ * [w3m-dev 04025] mismatch message in ja.po
+ * po/ja.po: fix wrong messages
+
+2003-12-09 WATANABE Katsuyuki <knabe@sannet.ne.jp>
+
+ * [w3m-dev 04024] fix: drive letter
+ * url.c (parseURL2): fix for SUPPORT_DOS_DRIVE_PREFIX
+
+2003-12-09 YONETANI Tomokazu <qhwt@myrealbox.com>
+
+ * [w3m-dev 04022] $^
+ * Makefile.in (DEFUNS): added
+ funcname.tab: don't use $^
+ * w3mimg/Makefile.in (w3mimg.a): don't use $^
+
+2003-12-09 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
+
+ * [w3m-dev 04021] Deeply nested table
+ * file.c (completeHTMLstream): check obuf->table_level
+
+2003-10-26 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * Bug#217509: segfaults if TERM is not set
+ * terms.c (check_cygwin_console): check TERM==NULL
+ (set_tty): check TERM==NULL
+
+2003-10-23 ABE Yuji <cbo46560@pop12.odn.ne.jp>
+
+ * [w3m-dev 04011] accessing to an `https' URI with a fragment via a proxy
+ * url.c (HTTPrequestURI): drop fragment
+ (openURL): don't clear pu->label
+
+2003-10-23 ABE Yuji <cbo46560@pop12.odn.ne.jp>
+
+ * [w3m-dev 04010] support for deprecated __ss_family
+ * acinclude.m4 (AC_W3M_IPv6): check __ss_family
+ * config.h.in: add HAVE_OLD_SS_FAMILY
+ * ftp.c (ftp_pasv): ifdef HAVE_OLD_SS_FAMILY
+
+2003-10-23 ABE Yuji <cbo46560@pop12.odn.ne.jp>
+
+ * [w3m-dev 04009] ./configure --disable-image problem
+ * file.c (loadHTMLstream): if defined(USE_M17N)
+
+2003-10-22 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 04006] checking GC_version for libgc
+ reported by SAKAI Kiyotaka <ksakai@kso.netwk.ntt-at.co.jp>
+ * acinclude.m4 (AC_W3M_GC): check GC_init instead of GC_version
+
+2003-10-21 SAKAI Kiyotaka <ksakai@kso.netwk.ntt-at.co.jp>
+
+ * [w3m-dev 03996] HELP_DIR and funcname.tab
+ * configure.in (HELP_DIR): don't eval
+ * scripts/w3mhelp.cgi: subst @prefix@ for $helpdir
+
+2003-10-21 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * #include <openssl/...>
+ suggested by ABE Yuji <cbo46560@pop12.odn.ne.jp>
+ [w3m-dev 03998] problem about pkg-config check for OpenSSL
+ * html.h: #include <openssl/...>
+ * istream.c: ditto
+ * istream.h: ditto
+ * url.c: ditto
+
+2003-10-20 ABE Yuji <cbo46560@pop12.odn.ne.jp>
+
+ * [w3m-dev 04002] Re: function and w3m-control
+ * url.c (getURLScheme): accept numeric in scheme
+
+2003-10-18 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03996] HELP_DIR and funcname.tab
+ reported by SAKAI Kiyotaka <ksakai@kso.netwk.ntt-at.co.jp>
+ * configure.in: don't use posix shell syntax $(..)
+ * funcname.tab: deleted
+
+2003-10-11 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * scripts/Makefile.in (w3mhelp-funcname.pl): depends ../funcname.tab
+ * Makefile.in (IMGOBJS): deleted
+ (indep.o): depends on fm.h funcname1.h
+ (IMGDISPLAY): depends on w3mimg/w3mimg.a
+ (w3mimg/w3mimg.a): renamed from w3mimg
+ * acinclude.m4 (AC_W3M_IMAGE): modify IMBOBJS
+ * w3mimg/Makefile.in (AR): added
+ (RANLIB): added
+ (IMGOBJS): added
+ (w3mimg.a): added
+
+2003-10-11 qhwt@myrealbox.com
+
+ * [w3m-dev 03990] Re: post-m17n merge problem?
+ * Makefile.in (MAN1): need $(top_srcdir)
+ (MAN1_JA): ditto
+ (LOBJS): depends on fm.h funcname1.h
+ (INFLATE): depends on $(ALIB)
+ (libwc/libwc.a): renamed from libwc
+ (IMGDISPLAY): depends on $(IMGOBJS) instead of w3mimg
+ depends on $(ALIB)
+ (w3mimgdisplay.o): depends on w3mimg/w3mimg.h
+ * acinclude.m4 (AC_W3M_M17N): WCTARGET is libwc/libwc.a
+ * configure.in (HELP_DIR): expand ${prefix}
+
+2003-10-08 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03985] Re: support for 307 Temporary Redirect
+ * file.c (loadGeneralFile): support 307 Temporary Redirect
+
+2003-10-06 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * fix build error --disbable-m17n
+ * config.h.in: undef USE_M17N, USE_UNICODE
+ * etc.c (url_unquote_conv): USE_M17N
+ * file.c (convertLine): USE_M17N
+ (loadHTMLStream): fix ifdef USE_IMAGE->USE_M17N
+ (loadBuffer): fix USE_M17N
+ (getNextPage): fix USE_M17N
+ * fm.h (USE_M17N): don't define USE_M17N in case LANG == JA
+ (this should be done by configure)
+ (wc_ces): dummy typedef
+ (wc_Str_conv): fix non-m17n macro args
+ (wc_Str_conv_strict): ditto
+ * ftp.c (loadFTPDir): fix undefined USE_M17N
+ * mimehead.c (decodeWord): ditto
+ (decodeMIME): ditto
+ * news.c (loadNewsgroup): ditto
+ * proto.h (convertLine): ditto
+ (loadGopherDir): ditto
+ (loadFTPDir): ditto
+ (loadNewsgroup): ditto
+ (decodeWord): ditto
+ (decodeMIME): ditto
+ (url_unquote_conv): ditto
+ * terms.c (SETCH): ditto
+
+2003-10-06 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * --with-imagelib request on [w3m-dev 03981]
+ from Mamoru KOMACHI <usata@sodan.ecc.u-tokyo.ac.jp>
+ * acinclude.m4 (AC_W3M_IMAGE): add --with-imagelib
+
+2003-10-06 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * fix problem reported on [w3m-dev 03981]
+ from Mamoru KOMACHI <usata@sodan.ecc.u-tokyo.ac.jp>
+ * configure.in: add AC_SUBST(HELP_DIR)
+ * Makefile.in (HELP_DIR): use AC_SUBT(HELP_DIR)
+ * scripts/Makefile.in: add PACKAGE, VERSION, DOMAIN
+ use PACKAGE instead of package:
+ CGIBIN_DIR,AUXBIN_DIR,CONF_DIR
+ add HELP_DIR
+ add SUBDIRS
+ (install unstall): do $(SUBDIRS)
+ * scripts/multipart/Makefile.in: add PACKAGE,VERSION,DOMAIN
+ use PACKAGE instead of package:
+ CGIBIN_DIR,AUXBIN_DIR,CONF_DIR
+ add HELP_DIR
+ * scripts/w3mman/Makefile.in: add PACKAGE,VERSION,DOMAIN
+ use PACKAGE instead of package:
+ CGIBIN_DIR,AUXBIN_DIR,CONF_DIR
+ add HELP_DIR
+ add BIN_DIR, MAN1_DIR
+ LIB_TARGETS->CGIBIN_TARGETS
+ fix INSTALL_MAN
+ * scripts/w3mman/w3mman.1.in:
+ change @LIB_DIR@ to @libexecdir@/@PACKAGE@/cgi-bin/
+
+2003-10-01 Akira TAGOH <at@gclab.org>
+
+ * acinclude.m4 (AC_W3M_SSL): use PKG_CHECK_MODULES
+
+2003-09-29 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * Makefile.in (distclean): remove posubst
+ * Makefile.in (functable.c): fix cannot open file `b' for reading
+
+2003-09-27 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * funcname.tab: generated from DEFUN
+ * main.c menu.c: use DEFUN
+ * conv.c ucs_eucjp.h ucs_latin1.h: deleted
+
+2003-09-26 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * add posubst, compile-time message l10n
+ * Makefile.in: @POSUBST@
+ * acinclude.m4(AC_W3M_M17N): add POSUBST, POLANG
+ --enable-messagel10n
+ * configure.in (W3M_LANG): subst
+ (AM_GET_GNUTEXT): if messagel10n enabled, don't use NLS
+ (AC_OUTOUT): add posubst, chmod +x
+ * menu.c: remove if LANG == JA messages
+ * rc.c: ditto
+
+2003-09-26 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * remove ./intl
+ * configure.in: external fo AM_GNU_GETTEXT
+ * Makefile.in: remove intl, INTLTARGET
+
+2003-09-25 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * fix [w3m-dev 03975] Re: gettextize
+ * Makefile.in: add INTLTARGET, NLSTARGET
+ cleanup
+ * configure.in: INTLTARGET=intl,NLSTARGET=po if USE_NLS
+
+2003-09-25 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * gettextize
+ * Makefile.in: updated
+ * menu.c: gettextize
+ * rc.c: gettextize
+ * intl/.cvsignore: added
+ * po/.cvsignore: added
+ * po/Makevars: added
+ * po/Makevars.template: removed
+ * po/POTFILES.in: updated
+ * po/w3m.pot: created
+ * po/ja.po: created
+
+2003-09-24 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * based on [w3m-dev 03970]
+ SAKAI Kiyotaka <ksakai@kso.netwk.ntt-at.co.jp>
+ * acinclude.m4 (AC_W3M_IMAGE): add IMGTARGETS
+ * w3mimg/Makefile.in (all): use @IMGTARGETS@
+
+2003-09-24 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * gettextize initial modifications
+ * configure.in Makefile.in aclocal.m4 config.h.in:
+ update to support NLS
+ * ABOUT-NLS: added
+ * config.rpath: added
+ * mkinstalldirs: added
+ * intl/: added
+ * po/: added
+ * fm.h: NLS support
+ * main.c (main): add gettext trigger
+
+2003-09-23 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * more autoconfisicate
+
+2003-09-23 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * merge m17n patch (w3m-0.4.1-m17n-20030308.patch.gz)
+ * add libwc
+
+2003-09-23 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * version.c.in: cvs version
+
+2003-09-23 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * w3m 0.4.2
+ * version.c.in: update
+ * doc/README: version 0.4.2, release date
+ * doc-jp/README: ditto
+ * NEWS: update
+
+2003-09-23 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03967] Re: IPv4/IPv6 only option patch
+ * NEWS: options: -4, -6
+ * fm.h (DNS_ORDER_INET_ONLY): added
+ (DNS_ORDER_INET6_ONLY): added
+ (ai_family_order_table): [3]->[7]
+ * main.c (fusage): add -4/-6
+ (main): -4/-6 mapped to dns_order=4/dns_order=6
+ * rc.c (dnsorders): add DNS_ORDER_INET_ONLY, DNS_ORDER_INET6_ONLY
+ * url.c (dnsorders): add 3-6
+
+2003-09-16 Hiroyuki Ito <hito@crl.go.jp>
+
+ * [w3m-dev 03960]
+ * acinclude.m4 (AC_W3M_CHECK_VER): fix version check logic
+
+2003-08-30 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03958] w3mimgdisplay on jfbterm
+ * w3mimg/fb/fb_w3mimg.c (w3mimg_fbopen): check TERM=jfbterm
+
+2003-08-29 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03957] Location: from local-CGI
+ * file.c (loadGeneralFile): don't parse header for local file
+ redirected by Location: from local-CGI
+
+2003-08-12 TSUCHIYA Masatoshi <tsuchiya@pine.kuee.kyoto-u.ac.jp>
+
+ * [w3m-dev 03950] rel attribute of anchor tag
+ * html.c (ALST_A): add ATTR_REL
+ (MAXA_A): +1
+
+2003-07-27 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03945] Re: application/xhtml+xml support
+ * Makefile.in (ETC_DIR): added
+ (CONF_DIR): added
+ (DEFS): add CONF_DIR
+ (MAKE_ARGS): add CONF_DIR
+ * config.h.in (SYS_MAILCAP): use CONF_DIR
+ (SYS_URIMETHODMAP): use CONF_DIR
+ * func.c (sys_current_keymap_file): added
+ (interpret_keymap): added
+ (initKeymap): use interpret_keymap
+ (interpret_mouse_action): added
+ (initMouseAction): use interpret_mouse_action
+ * indep.c (w3m_conf_dir): added
+ * indep.h (w3m_conf_dir): added
+ * menu.c (interpret_menu): added
+ (initMenu): use interpret_menu
+ * proto.h (confFile): added
+ * rc.c (init_rc): read config file by interpret_rc
+ (confFile): added
+
+2003-07-23 Takahashi Youichirou <nikuq@hk.airnet.ne.jp>
+
+ * [w3m-dev 03942] Save history
+ * history.c (saveHistory): check tmpfile write error
+
+2003-07-23 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03941] fix character encoding for 'v'
+ * main.c (vwSrc): use document_code as DisplayCode
+
+2003-07-23 Yoshinobu Sakane <sakane@d4.bsd.nes.nec.co.jp>
+
+ * [w3m-dev 03939] next/prev visited link
+ * funcname.tab (NEXT_VISITED): added
+ (PREV_VISITED): added
+ * main.c (_nextA): added
+ (_prevA): added
+ (nextVA): added
+ (prevVA): added
+ * proto.h (nextVA): added
+ (prevVA): added
+ * doc/README.func (NEXT_VISITED): added
+ (PREV_VISITED): added
+ * doc-jp/README.func (NEXT_VISITED): added
+ (PREV_VISITED): added
+ * NEWS: func: NEXT_VISITED, PREV_VISITED
+
+
+2003-07-14 Hiroyuki Ito <hito@crl.go.jp>
+
+ * [w3m-dev 03938] clear region margin
+ * w3mimgdisplay.c (clearMargin): added
+ (GetOption): add -margin
+ (ClearImage): clear margin
+ * w3mi,g/w3mimg.h (w3mimg_op): clear_margin
+ * w3mimg/fb/fb.c (fb_clear): x,y must be >= 0
+ * w3mimg/x11/x11_w3mimg.c (x11_clear): x,y must be >= 0
+
+2003-07-14 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03937] <center> in <table>
+ * table.c (feed_table_tag): fix <center>,</center>,<div>,</div>,
+ <p>,<br>,<nobr>,</nobr>,<wbr>
+ check_rowcol() for <img>
+
+2003-07-10 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * w3mimg/fb/fb_img.h (get_image_size): add missing prototypes
+ * w3mimg/fb/fb.c (fb_clear): unused variable `j'
+
+2003-07-09 Hiroyuki Ito <hito@crl.go.jp>
+
+ * [w3m-dev 03935] Re: clear image
+ * w3mimg/fb/fb.c (fb_get_packed_color): added
+ (fb_image_pset): use fb_get_packed_color
+ (fb_image_fill): use fb_get_packed_color
+ (fb_clear): use tmp to store pixels
+
+2003-07-09 ABE Yuji <cbo46560@pop12.odn.ne.jp>
+
+ * [w3m-dev 03934] Re: clear image
+ * w3mimg/x11/x11_w3mimg.c (x11_clear): s/FALSE/False/
+
+2003-07-09 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03931] Re: clear image
+ * w3mimgdisplay.c (ClearImage): offset
+ * w3mimg/fb/fb.c (fb_clear): memcpy by pixel_size
+
+2003-07-08 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03929] clear image
+ * image.c (syncImage): added
+ (drawImage): rewrite using syncImage()
+ (clearImage): use clear image command (6)
+ * w3mimgdisplay.c: change protocol
+ 2 => terminate drawing
+ 6 => clear image
+ (main): '2' calls TermImage()
+ '6' calls ClearImage()
+ TermImage() when exit
+ (TermImage): renamed from ClearImage
+ (ClearImage): rewritten to call w_op->clear()
+ * w3mimg.h/w3mimg.h (w3mimg_op): add clear()
+ * w3mimg/fb/fb.c (fb_clear): added
+ * w3mimg/fb/fb.h (fb_clear): added
+ * w3mimg/fb/fb_img.c (fb_image_clear): added
+ * w3mimg/fb/fb_w3mimg.c (w3mfb_clear): added
+ (w3mimg_fbopen): initialize wop->clear
+ * w3mimg/x11/x11_w3mimg.c (x11_clear): added
+ (w3mimg_x11open): initialize wop->clear
+
+2003-07-08 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03927] deflate
+ * file.c (compression_decoder): .deflate for application/x-deflate's
+ extension
+
+2003-06-19 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03916] Re: charset attribute of anchor tag
+ requested by TSUCHIYA Masatoshi <tsuchiya@pine.kuee.kyoto-u.ac.jp>
+ for emacs-w3m
+ * html.c (ALST_A): add ATTR_CHARSET
+ (MAXA_A): +1
+
+2003-06-18 ABE Yuji <cbo46560@pop12.odn.ne.jp>
+
+ * [w3m-dev 03914] a fragment in the Referer URI
+ * url.c (otherinfo): strip URI fragment
+
+2003-06-13 Hiroyuki Ito <hito@crl.go.jp>
+
+ * [w3m-dev 03913] fix gif animation support
+ * w3mimg/fb/fb_gdkpixbuf.c (fb_image_load): fix gif animation
+ * w3mimg/x11/x11_w3mimg.c (x11_load_image): ditto
+
+2003-05-15 Akinori Ito <aito@fw.ipsj.or.jp>
+
+ * [w3m-dev 03902] Re: table rendering
+ * table.c (check_relative_width): check n_leftcell
+ check w <= r
+
+2003-05-14 ABE Yuji <cbo46560@pop12.odn.ne.jp>
+
+ * [w3m-dev 03901] body with status-code 401
+ * file.c (loadGeneralFile): show page when 401, 407
+
+2003-05-14 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03900] Re: table rendering
+ * table.c (check_relative_width): j loop starts from 0
+
+2003-05-14 SAKAI Kiyotaka <ksakai@kso.netwk.ntt-at.co.jp>
+
+ * [w3m-dev 03899] minor fixes
+ * acinclude.m4: fix s/SSLCFLAGS/SSL_CFLAGS/
+ * doc/README: update, fix typo
+ * doc-jp/FAQ.html: update, fix URL
+ * doc-jp/README: update
+ * doc-jp/README.SSL: update
+ * doc-jp/README.cookie: update
+ * doc-jp/README.img: update URL
+ * doc-jp/README.migemo: update
+ * doc-jp/STORY.html: fix URL
+
+2003-05-14 Akinori Ito <aito@fw.ipsj.or.jp>
+
+ * [w3m-dev 03898] Re: table rendering
+ * table.c (check_relative_width): added
+ (set_table_matrix): use check_relative_width
+
+2003-05-13 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03896] html_quote in textarea in frame
+ * frame.c (createFrameFile): fix html_quote in textarea in frame
+
+2003-05-13 Hironori SAKAMOTO <h-saka@lsi.nec.co.jp>
+
+ * [w3m-dev 03895] type=image support of pre_form
+ * form.c (loadPreFOrm): add image
+ (preFormUpdateBuffer): add FORM_INPUT_IMAGE
+ * doc/README.pre_form: update
+ * doc-jp/README.pre_form: ditto
+
+2003-05-11 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03891] Re: urimethodmap and relative URL
+ * url.c (parseURL2): copy scheme part into pu->file when SCM_UNKNOWN
+
+2003-05-07 Hiroyuki Ito <hito@crl.go.jp>
+
+ * [w3m-dev 03889] Progress bar in Download List Panel
+ * main.c (DownloadListBuffer): calculation in double
+
+2003-05-07 SAKAI Kiyotaka <ksakai@kso.netwk.ntt-at.co.jp>
+
+ * [w3m-dev 03888] autodetect ssl
+ * acinclude.m4 (AC_W3M_SSL): use SSL_*
+ * configure.in: move AC_W3M_SSL after AC_W3M_EXTLIBS
+
+2003-05-03 Hiroyuki Ito <hito@crl.go.jp>
+
+ * [w3m-dev 03887] Re: I-search problem
+ * main.c (dispincsrch): don't move cursor if not found.
+
+2003-04-27 qhwt@myrealbox.com
+
+ * [w3m-dev 03886] Re: POSTing patch (Re: User-Agent for Bonus/2ch.cgi)
+ * Bonus/2ch.cgi: posting
+
+2003-04-20 qhwt@myrealbox.com
+
+ * [w3m-dev 03883] User-Agent for Bonus/2ch.cgi
+ * Bonus/2ch.cgi: User-Agent
+
+2003-04-19 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03882] Re: Bug#189460: w3m: <q> tag is not recognized
+ * file.c (HTMLtagproc1): add HTML_Q, HTML_N_Q
+ * html.c (TagMAP): add "q", "/q"
+ * html.h (HTML_Q): added
+ (HTML_N_Q): added
+ * tagtable.tab: add q, /q
+
+2003-04-15 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03880] Re: convert \ -> / in URL
+ * Bonus/backslash_to_slash.cgi: added
+
+2003-04-15 Masanori Kobayasi <zap03216@nifty.ne.jp>
+
+ * [w3m-dev 03878] I-search problem
+ * linein.c (inputLineHistSearch): don't call incrfunc twice
+ * main.c (dispincsrch): fix search loop problem
+
+2003-04-14 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03875] Re: SSL & compressed stream
+ * file.c (loadGeneralFile): check t_buf != NULL
+ * url.c (openURL): don't initialize URLFile here
+ (init_stream): 0 clear URLFile
+
+2003-04-14 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03873] SSL & compressed stream
+ * file.c (loadGeneralFile): always update ssl_certificate
+ * url.c (openURL): initialize URLFile
+
+2003-04-12 NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>
+
+ * [w3m-dev 03872] goodict.cgi
+ * Bonus/goodict.cgi: adapt new goo dict web page
+
+2003-04-11 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * configure.in (AUXBIN_TARGETS): don't reset, move to head
+
+2003-04-10 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03870] Re: configure --help
+ * acinclude.m4 (AC_W3M_IMAGE): fix help message
+ (AC_W3M_SSL): fix typo
+
+2003-04-09 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03865] Re: configure --help
+ * acinclude.m4 (AC_W3M_ANSI_COLOR): depends USE_COLOR
+ (AC_W3M_BG_COLOR): depends USE_COLOR
+ (AC_W3M_W3MMAILER): depends external_uri_loader
+ * fm.h: undef USE_BG_COLOR ifndef USE_COLOR
+
+2003-04-09 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03864] doc/README
+ * doc/README doc-jp/README: update
+
+2003-04-09 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m] local cookie string is too easy to guess.
+ * fm.h (Local_cookie): deleted
+ * local.c (Local_cookie): static
+ (writeLocalCookie): localCookie()
+ (setLocalCookie): deleted
+ (localCookie): added
+ * main.c (main): delete srand48(), setLocalCookie()
+ (adBmark): s/Local_cookie/localCookie()/
+ * proto.h (setLocalCookie): deleted
+ (localCookie): added
+ * rc.c (load_option_panel): s/Local_cookie/localCookie()/
+
+2003-04-08 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03858] configure cleanup
+ * acinclude.m4 configure.in: update
+
+2003-04-08 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03856] <gc.h>
+ * backend.c entity.c fm.h hash.c indep.c indep.h matrix.c
+ textlist.c: s/"gc.h"/<gc.h>/
+
+2003-04-08 ABE Yuji <cbo46560@pop12.odn.ne.jp>
+
+ * [w3m-dev 03849] fix no INET6
+ * ftp.c: no need ifdef INET6
+
+2003-04-08 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03846] fix use_history
+ * main.c (main): move loadHistory
+
+2003-04-08 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03844] w3mhelp.cgi update
+ * scripts/w3mhelp-funcdesc.en.pl.in: add %menu_funcdesc
+ * scripts/w3mhelp-funcdesc.ja.pl.in: add %menu_funcdesc
+ update %title
+ * scripts/w3mhelp-funcname.pl.in: add %menu_funcname
+ add %menu_keyfunc
+ * scripts/w3mhelp.cgi.in: modified for menu
+ link to keymap
+
+2003-04-07 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03843] cleanup macros
+ * config.h.dist config.h.in etc.c file.c fm.h ftp.c linein.c
+ main.c rc.c:
+ delete EMACS_LIKE_LINEEDIT, VI_PREC_NUM, LABEL_TOPLINE,
+ NEXTPAGE_TOPLINE, FTPPASS_HOSTNAMEGEN
+ use_mark default FALSE
+ emacs_like_lineedit default FALSE
+ vi_prec_num default FALSE
+ add UseHistory, use_history
+ * NEWS: rc: use_history
+
+2003-04-05 ABE Yuji <cbo46560@pop12.odn.ne.jp>
+
+ * [w3m-dev 03838] W3M_LIBS splitted from LIBS
+ * Makefile.in (W3M_LIBS): added
+ * acinclude.m4 (AC_W3M_TERMLIB): use W3M_LIB
+ (AC_W3M_SSL): ditto
+ * configure.in (W3M_LIBS): added
+
+2003-04-04 Hiroyuki Ito <hito@crl.go.jp>
+
+ * [w3m-dev 03837] Re: gif animation with no delay_time
+ * w3mimg/fb/fb_gdkpixbuf.c (get_animation_size): add delay
+ check delay_time
+ (get_image_size): no need delay time
+ (fb_image_load): check delay
+ (draw): no bg
+ * w3mimg/fb/fb_w3mimg.c (w3mfb_show_image): delete delay skip loop
+ * w3mimg/x11/x11_w3mimg.c (get_animation_size): add delay
+ check delay_time
+ (x11_load_image): check delay
+ (x11_get_image_size): no need delay time
+
+2003-03-28 Dai Sato <satodai@dog.intcul.tohoku.ac.jp>
+
+ * doc(-jp)/keymap.default: ';' is quoted
+
+2003-03-28 Dai Sato <satodai@dog.intcul.tohoku.ac.jp>
+
+ * Makefile.in: distclean removes core
+
+2003-03-28 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03836] CFLAGS for SSL in configure
+ * acinclude.m4 (AC_W3M_SSL): add -I$dir/include to CFLAGS
+
+2003-03-28 ABE Yuji <cbo46560@pop12.odn.ne.jp>
+
+ * [w3m-dev 03834] Re: gif animation with no delay_time
+ * w3mimg/x11/x11_w3mimg.c (x11_load_image): fix delay check
+
+2003-03-27 ABE Yuji <cbo46560@pop12.odn.ne.jp>
+
+ * [w3m-dev 03833] gif animation with no delay_time
+ * w3mimg/fb/fb_w3mimg.c (w3mfb_show_image): skip delay<=0
+ * w3mimg/x11/x11_w3mimg.c (x11_image): add delay
+ (x11_img_new): initialize delay
+ (x11_load_image): initialize delay
+ (x11_show_image): jump to last image if delay<=0
+
+2003-03-27 WATANABE Katsuyuki <knabe@sannet.ne.jp>
+
+ * [w3m-dev 03831] fix typo
+ * acinclude.m4 (AC_W3M_LANG): SYSTEM_CODE
+ * configure.in: fix typo CYGIN
+
+2003-03-27 Hiroyuki Ito <hito@crl.go.jp>
+
+ * [w3m-dev 03830] Image size of gif animation
+ * w3mimg/fb/fb_gdkpixbuf.c (get_animation_size): added
+ (get_image_size): use get_animation_size()
+ (fb_image_load): ditto
+ * w3mimg/x11/x11_w3mimg.c (get_animation_size): added
+ (x11_load_image): use get_animation_size()
+ (x11_get_image_size): ditto
+
+2003-03-25 Hiroyuki Ito <hito@crl.go.jp>
+
+ * [w3m-dev 03829] w3mimgdisplay -anim
+ * w3mimgdisplay.c (maxAnim): added, default 100
+ (main): add --anim option, w_op->max_anim
+ * w3mimg/w3mimg.h (w3mimg_op): add max_anim
+ * w3mimg/fb/fb_gdkpixbuf.c (fb_image_load): add max_anim
+ * w3mimg/fb/fb_img.h (fb_image_load): add max_anim args
+ * w3mimg/fb/fb_imlib2.c (fb_image_load): add max_anim args
+ * w3mimg/fb/fb_w3mimg.c (w3mfb_load_image): pass max_anim
+ * w3mimg/x11/x11_w3mimg.c (x11_load_image): max_anim
+
+2003-03-24 Daiki Ueno <ueno@unixuser.org>
+
+ * [w3m-dev 03828] possible typo in nextA
+ * main.c (nextA): fix typo?
+
+2003-03-22 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03827] Re: checking for GC_version... no
+ * configure.in: add dl for extlibs
+
+2003-03-20 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03825] re-anchor for fold line
+ * anchor.c (reAnchorPos): fix for fold line
+
+2003-03-20 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev-en 00910] Re: autoconf: env MAKE not respected
+ * Makefile.in (SET_MAKE): added
+ (SHELL): added
+
+2003-03-19 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev-en 00908] Re: autoconf: --without-migemo is a nop
+ * acinclude.m4 (AC_W3M_MIGEMO): dont define USE_MIGEMO
+ when with_migemo=no
+
+2003-03-14 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03823] Re: etc.c: treatment for "%7E" is added to expandName()
+ * url.c (parseURL2): file unquote
+ * etc.c (expandName): revert previous changes
+
+2003-03-14 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03822] Re: etc.c: treatment for "%7E" is added to expandName()
+ * etc.c (expandName): rewrite with strncasecmp
+
+2003-03-14 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03821] fix for pmake
+ * Makefile.in: use $(srcdir)/... instead of $<
+
+2003-03-13 Dai Sato <satodai@dog.intcul.tohoku.ac.jp>
+
+ * etc.c: treatment for "%7E" is added to expandName()
+
+2003-03-13 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03819] support cd build && ../configure
+ * Makefile.in: add VPATH
+ add MV
+ use $(top_srcdir), $<, $@
+ * acinclude.m4 (AC_W3M_VERSION): use $srcdir
+ * configure.in (AC_W3M_VERSION): move
+ * mktable.c (main): basename
+
+2003-03-13 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * Makefile.in (distclean): added
+
+2003-03-13 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03818] fix autoconf
+ * Makefile.in (CGIBIN_DIR): added
+ (AUXBIN_DIR): added
+ (HELP_DIR): added
+ (RC_DIR): added
+ (MAKE_ARGS): added
+ (TARGET): use $(package)
+ (MAN1_TARGET): ditto
+ (install): use $(*_DIR)
+ * acinclude.m4 (AC_W3M_TERMLIB): added
+ (AC_W3M_GC): default search prefix /usr /usr/local $HOME
+ fix searches
+ (AC_W3M_SSL): fix bugs
+ * config.h (RC_DIR): remove tailing /
+ (SYS_MAILCAP): use ETC_DIR
+ (SYS_MIMETYPES): ditto
+ (USER_MIMETYPES): homedir
+ * configure.in: quote
+ (AC_W3M_TERMLIB): use
+ * Bonus/oldconfigure.sh: rewrite
+
+2003-03-12 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03816] --enable-lynx => --enable-keymap=lynx
+ * acinclude.m4 (AC_W3M_KEYMAP): --enable-lynx => --enable-keymap=lynx
+ * Bonus/oldconfigure.sh: ditto
+
+2003-03-12 Yuji Abe <cbo46560@pop12.odn.ne.jp>
+
+ * [w3m-dev 03814] fix autoconf
+ * acinclude.m4: quote variables
+ * Bonus/oldconfigure.sh: configure using old config.param
+
+2003-03-12 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03812] fix autoconf
+ * acinclude.m4 (AC_W3M_IMAGE): default is autodetect x11,fb
+
+2003-03-12 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03810] fix autoconf
+ * acinclude.m4 (AC_W3M_EXTLIBS): use $dir
+ (AC_W3M_GC): PREFIX is optional
+ (AC_W3M_SSL): PREFIX is optional
+ with_ssl=yes, check usual dirs
+ use $dir
+ (AC_W3M_IPv6): use $dir
+
+2003-03-12 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03809] fix autoconf
+ * acinclude.m4 (AC_W3M_CHECK_VER): accept version like "1.9.13-2"
+
+2003-03-12 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03808] fix autoconf
+ * acinclude.m4 (AC_W3M_GC): --with-gc takes PREFIX
+ check include first
+ (AC_W3M_CHECK_VER): show checking message
+ (AC_W3M_IMAGE): if gdkpixbuf found, don't check imlib*
+
+2003-03-11 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * Makefile.in (MODEL): delete @W3M_TARGET@
+ * configure.in: AC_SUBST(W3M_TARGET)
+
+2003-03-11 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * which: deleted
+ * makeallmomdel: deleted
+
+2003-03-11 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03804] fix autoconf
+ * acinclude.m4 (AC_W3M_MENU): default enabled
+ (AC_W3M_MOUSE): default enabled
+ (AC_W3M_COOKIE): default enabled
+ (AC_W3M_LANG): can't detect locale here.
+ autoconf set LANG=C
+ (AC_W3M_DIGEST_AUTH): default enabled
+ (AC_W3M_SSL): default enabled
+ * configure.in (AC_W3M_DIGEST_AUTH): added
+
+2003-03-11 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03804] fix autoconf
+ * config.h.in (EAMCS_LIKE_LINEEDIT): define
+ (VI_PREC_NUM): define
+ (USE_MARK): define
+ (LABEL_TOPLINE): define
+ (NEXTPAGE_TOPLINE): define
+ (FTPPASS_HOSTNAMEGEN): define
+ (SHOW_PARAMS): define
+ (VIEW_UNSEENOBJECTS): define
+ (ID_EXT): define
+
+2003-03-11 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03804] fix autoconf
+ * acinclude.m4 (AC_W3M_MODEL): deleted
+ (AC_W3M_COLOR): default enable
+ (AC_W3M_ANSI_COLOR): default enable
+ (AC_W3M_BG_COLOR): default enable
+ (AC_W3M_SHOW_PARAMS): deleted
+ (AC_W3M_DICT): default enable
+ (AC_W3M_HISTORY): default enable
+ (AC_W3M_VIEW_UNSEENOBJECTS): deleted
+ (AC_W3M_FORMAT_NICE): deleted
+ (AC_W3M_ID_EXT): deleted
+ (AC_W3M_FTPPASS_HOSTNAMEGEN): deleted
+ (AC_W3M_NNTP): default enabled
+ (AC_W3M_LANG): autodetect whether japanese is enabled
+ (AC_W3M_KANJI_SYMBOLS): default enabled
+ (AC_W3M_EMACS_LIKE_LINEEDIT): deleted
+ (AC_W3M_VI_PREC_NUM): deleted
+ (AC_W3M_MARK): deleted
+ (AC_W3M_LABEL_TOPLINE): deleted
+ (AC_W3M_NEXTPAGE_TOPLINE): deleted
+ (AC_W3M_SSL): fix without ssl
+ (AC_W3M_IMAGE): default enabled
+ (AC_W3M_XFACE): check uncompface
+ (AC_W3M_IPv6): enable_ipv6 if inet6 lib found
+ * configure.in (AC_PROG_CPP): added
+
+2003-03-11 Yuji Abe <cbo46560@pop12.odn.ne.jp>
+
+ * [w3m-dev 03803] fix autoconf
+ * acinclude.m4 (AC_W3M_MIGEMO): add missing test
+ needs quote
+ (AC_W3M_SSL): delete x
+
+2003-03-11 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03802] fix autoconf
+ * acinclude.m4 (AC_W3M_CHECK_VER): warn only
+
+2003-03-11 Yuji Abe <cbo46560@pop12.odn.ne.jp>
+
+ * [w3m-dev 03801] fix autoconf
+ * acinclude.m4 (AC_W3M_BG_COLOR): fix typo
+ (AC_W3M_KANJI_SYMBOLS): check enable_japanese != 'no'
+ (AC_W3M_KEYMAP): needs {}
+ (AC_W3M_EXTLIBS): don't modify libdir, use extlibdir
+ (AC_W3M_SSL): missing x
+ (AC_W3M_IMAGE): add AC_DEFINE(USE_IMAGE)
+ * config.h.in: s/USE_KANJI_SYMBOLS/KANJI_SYMBOLS/
+ add SIZEOF_LONG_LONG
+ don't use //, use /* */
+ * configure.in: add AC_CHECK_SIZEOF(long long, 0)
+
+2003-03-10 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * autoconfiscate
+ * Makefile.in: added
+ * acinclude.m4: added
+ * aclocal.m4: added (generated from acinclude.m4 by aclocal)
+ * configure.in: added
+ * config.h.in: added
+ * config.guess: added
+ * config.sub: added
+ * .cvsignore: add Makefile config.cache config.log config.status
+ * configure: generated by autoconf
+ * gc/: deleted
+ * XMakefile: deleted
+ * XXMakefile: deleted
+ * NEWS: autoconficate
+
+2003-03-10 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * version.c.in: cvs version
+
+2003-03-07 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * w3m 0.4.1
+ * version.c.in: update
+ * doc/README: version 0.4.1, release date
+ * doc-jp/README: ditto
+ * NEWS: update
+
+2003-03-06 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03794] displayBuffer() when CurrentTab == NULL.
+ * display.c (displayBuffer): check buf
+ * linein.c (inputLineHistSearch): check CurrentTab
+ (next_dcompl): check CurrentTab
+ (_editor): check CurrentTab
+ * main.c (resize_screen): check CurrentTab
+
+2003-03-06 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03793] incremental search fix
+ * main.c (dispincsrch): revert sbuf.pos fix
+ start from next position in next forward search
+ (srch): start from next position in forward saerch
+ if not found, restore original position
+ (srch_nxtprv): start from next position in next forward search
+ * search.c (forwardSearch): search from current position
+
+2003-03-06 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03792] URL match string
+ incremental search fix
+ * main.c (chkURLBuffer): allow - at end of URL string
+ (dispincsrch): start from current position in case of
+ incremental search
+ * search.c (forwardSearch): found if same position
+ (backwardSearch): ditto
+
+2003-03-03 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03788] UFhalfclose
+ * file.c (UFhalfclose): closeNews() for SCM_NEWS,NNTP
+
+2003-02-28 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03783] pipe to "command1 | command2"
+ * Bonus/utf8.cgi: added
+
+2003-02-27 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03784] ftp directory support
+ * ftp.c (AbortLoading): added
+ (KeyAbort): added
+ (openFTPStream): remove '~' in realpathname?
+ (loadFTPDir): remove '~' in realpathname?
+ keyabort
+ new ex_ftpdir_name_size_date()
+ add symlink information to flist
+ (XD_CTOD): deleted
+ (EX_COUNT_DIGIT): added
+ (ex_ftpdir_name_size_date): add **link
+ accept device file
+ loose date check for localized server
+
+2003-02-27 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03783] pipe to "command1 | command2"
+ * etc.c (myExtCommand): redirect to subshell
+ * main.c (pipeBuf): conv_to_system(cmd)
+ shell_quote()
+ set buf->filename, buf->buffername
+
+2003-02-26 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03782] real linenumber for EDIT and EDIT_SCREEN
+ * main.c (cur_real_linenumber): added
+ (editBf): use cur_real_linenumber instead of CUR_LINENUMBER
+ (editScr): ditto
+
+2003-02-26 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03781] Debian Bug report logs - #181897: w3m submits query urls with "extra"
+ * main.c (_followForm): remove tailling '?'
+
+2003-02-25 Hironori SAKAMOTO <h-saka@lsi.nec.co.jp>
+
+ * [w3m-dev-en 00891] Re: w3m 0.4 has been released!
+ * image.c (getCharSize): set W3M_TTY here, before Imgdisplay invoke
+ (openImgdisplay): no need setting W3M_TTY here
+
+2003-02-25 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * version.c.in: cvs version
+
+2003-02-24 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * w3m 0.4
+ * version.c.in: update
+ * doc/README: version 0.4, release date
+ * doc-jp/README: ditto
+ * NEWS: update
+
+2003-02-24 patakuti@t3.rim.or.jp
+
+ * [w3m-dev 03772] Compilation error on Cygwin B20.1
+ * terms.c (term_title): use Sprintf() instead of snprintf()
+ * doc-jp/README.cygwin doc/README.cygwin: add note about B20.1
+
+2003-02-21 WATANABE Katsuyuki <knabe@sannet.ne.jp>
+
+ * [w3m-dev 03765] Re: README.cygwin
+ * doc/README.cygwin: translated
+
+2003-02-21 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * doc/README: update
+
+2003-02-21 Dai Sato <satodai@dog.intcul.tohoku.ac.jp>
+
+ * [w3m-dev 03762] Re: README.cygwin
+ * doc/README.cygwin: translated
+
+2003-02-21 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03761] eliminate compiler warnings
+ * ftp.c (ftp_login): Str tmp
+ * table.c (feed_table_tag): p is used ifdef ID_EXT
+
+2003-02-21 WATANABE Katsuyuki <knabe@sannet.ne.jp>
+
+ * [w3m-dev 03760] Re: README.cygwin
+ * doc-jp/README: update
+
+2003-02-19 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * 0.4 release candidate 3
+ * version.c.in: update
+
+2003-02-19 Atsushi YOKOYAMA <yoko-a@cmh.fuchu.toshiba.co.jp>
+
+ * [w3m-dev 03758] Re: SVR4 signal behavior
+ * etc.c (reset_signals): use mySignal()
+ (setup_child): ditto
+ (myExec): ditto
+ (mySignal): added, use sigaction if available
+ * fm.h (TRAP_ON): use mySignal
+ (TRAP_OFF): ditto
+ * istream.c (ISclose): ditto
+ * main.c (sig_chld): ditto
+ (main): ditto
+ (do_dump): ditto
+ (resize_hook): ditto
+ (resize_handler): ditto
+ (srchcore): ditto
+ (readsh): ditto
+ (SigAlarm): ditto
+ * proto.h (mySignal): added
+ * terms.c (error_dump): use mySignal()
+ (set_int): ditto
+ (mouse_init): ditto
+
+2003-02-19 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03753] Fixed multipart.cgi
+ * scripts/multipart/multipart.cgi.in: remove w3m-control
+ use input hidden
+ add form_encode
+
+2003-02-18 WATANABE Katsuyuki <knabe@sannet.ne.jp>
+
+ * [w3m-dev 03749] README.cygwin
+ * doc-jp/README.cygwin: added
+ * doc/README: updated
+
+2003-02-17 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * 0.4 release candidate 2
+ * version.c.in: update
+
+2003-02-13 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03742] Re: Bug##180814: w3m: Missing w3mimgdisplay message at startup
+ * image.c (getCharSize): stderr redirect to omit /bin/sh error message
+
+2003-02-13 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * XMakefile (install-core): fix for broken non-POSIX /bin/sh
+
+2003-02-11 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev-en 00868] fix mark_all_pages
+ * anchor.c (reAnchorAny): next_line process for MarkAllPages
+
+2003-02-11 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev-en 00867] fix installation problem
+ * XMakefile (install-core): test AUXBIN_TARGETS
+
+2003-02-11 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * version.c.in: cvs version
+
+2003-02-11 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * 0.4 release candidate 1
+ * version.c.in: update
+
+2003-02-09 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03737] local-CGI POST
+ * local.c (localcgi_post): use tmp file
+
+2003-02-08 Hiroyuki Ito <hito@crl.go.jp>
+
+ * [w3m-dev 03736] dirlist sort
+ * scripts/dirlist.cgi.in (right_dir): use cmp for filename comparison
+
+2003-02-07 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03735] Re: make error of checkType arg
+ * etc.c (checkType): delete USE_ANSI_COLOR
+ * file.c (addnewline): macro for USE_ANSI_COLOR
+ (readHeader): rewrite of USE_ANSI_COLOR
+ (HTMLlineproc2body): ditto
+ (addnewline2): ditto
+ (addnewline): ditto
+ (loadBuffer): ditto
+ (getNextPage): ditto
+ * proto.h (checkType): macro for USE_ANSI_COLOR
+
+2003-02-07 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03733] Re: display decoded URL
+ * display.c (make_lastline_link): buf->document_code
+
+2003-02-07 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03732] Re: scroll() is slow ?
+ * configure (use_raw_scroll): added
+ (config.h) use_raw_scroll
+ * config.h.dist (USE_RAW_SCROLL): added
+ * display.c (displayBuffer): ifdef USE_RAW_SCROLL
+ * proto.h (scroll): ifdef USE_RAW_SCROLL
+ (rscroll): ditto
+ (need_clrtoeol): if 0
+ (terms.c): if 0 need_clrtoeol
+ (scroll_raw): ifdef USE_RAW_SCROLL
+
+2003-02-06 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * NEWS: rc: decode_url
+
+2003-02-06 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03730] display decoded URL
+ * anchor.c (link_list_panel): support DecodeURL
+ * display.c (make_lastline_link): support DecodeURL
+ * etc.c (url_unquote_conv): added
+ * fm.h (DecodeURL): added
+ * history.c (historyBuffer): support DecodeURL
+ * indep.c (QUOTE_MAP): added
+ (HTML_QUOTE_MAP): added
+ (html_quote_char): deleted
+ (url_quote): use is_url_quote
+ (file_quote): use is_file_quote
+ (is_url_safe): deleted
+ (Str_form_quote): use is_url_unsafe
+ (Str_url_unquote): add safe args
+ (is_shell_safe): delete
+ (shell_quote): use is_shell_unsafe
+ * indep.h (QUOTE_MAP): added
+ (HTML_QUOTE_MAP): added
+ (HTML_QUOTE_MASK): added
+ (SHELL_UNSAFE_MASK): added
+ (URL_QUOTE_MASK): added
+ (FILE_QUOTE_MASK): added
+ (URL_UNSAFE_MASK): added
+ (GET_QUOTE_TYPE): added
+ (is_html_quote): added
+ (is_shell_unsafe): added
+ (is_url_quote): added
+ (is_file_quote): added
+ (is_url_unsafe): added
+ (html_quote_char): added
+ (html_quote_char): deleted
+ (Str_url_unquote): added safe
+ (form_unquote): Str_url_unquote changes
+ * linein.c (_prev): support DecodeURL
+ (_next): ditto
+ * main.c (goURL0): support DecodeURL
+ (_peekURL): ditto
+ (curURL): ditto
+ * map.c (follow_map_panel): support DecodeURL
+ (append_map_info): ditto
+ (append_link_info): ditto
+ (append_frame_info): ditto
+ (page_info_panel): ditto
+ * menu.c (initSelectMenu): delete SCM_LOCAL_CGI
+ support DecodeURL
+ (initSelTabMenu): delete SCM_LOCAL_CGI
+ support DecodeURL
+ (link_menu): support DecodeURL
+ * parsetagx.c (parse_tag): is_html_quote
+ * proto.h (url_unquote_conv): added
+ * rc.c (CMT_DECODE_URL): added
+ (params1): add decode_url
+ * url.c (openURL): Str_url_unquote non safe
+
+2003-02-06 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03729] buf fix of reAnchorNewsheader()
+ * anchor.c (reAnchorAny): check l->bpos
+ (reAnchorNewsheader): check l->bpos
+ strlen(*q)
+ lineBuf[l->size]
+
+2003-02-06 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03728] IPv6 hostname
+ * url.c (parseURL): rewrite IPv6 address parser
+
+2003-02-04 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03724] Re: view source, edit source
+ * buffer.c (reshapeBuffer): initialize buf->width first
+ * display.c (displayBuffer): no need to check buf>sourcefile
+
+2003-02-01 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03721] PATH_INFO support of local CGI
+ * local.c (CGIFN_DROOT): deleted
+ (CGIFN_LIBDIR): added
+ (CGIFN_MODE): deleted
+ (CGIFN_CONTAIN_SLASH): deleted
+ (check_local_cgi): rewrite
+ (cgi_filename): rewrite
+ (localcgi_post): support PATH_INFO
+ * url.c (openURL): rewrite
+ * Bonus/smb.cgi: use PATH_INFO
+
+2003-02-01 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03720] mark remains
+ * main.c (srchcore): PREC_NUM
+
+2003-01-31 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03719] Re: Too slow when loading big file with fold_line=1
+ * file.c (addnewline): check i <l->len
+
+2003-01-31 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03718] Too slow when loading big file with fold_line=1
+ * etc.c (nextColumn): added
+ (calcPosition): use New_N
+ rewrite with nextColumn
+ (columnLen): added
+ * file.c (addnewline): rewrite with columnLen
+ * proto.h (columnLen): added
+
+2003-01-31 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03717] print newline before exec shell command.
+ * main.c (execsh): print newline
+
+2003-01-31 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03715] initial currentLine when pager mode.
+ * file.c (getNextPage): fix cur
+
+2003-01-31 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03714] -cols 1 -dump -o fold_line=1
+ * file.c (addnewline): check i == 0, i == l->len
+ * fm.h (_INIT_BUFFER_WIDTH): added
+ (INIT_BUFFER_WIDTH): use _INIT_BUFFER_WIDTH
+
+2003-01-31 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03713] search with "$"
+ * search.c (forwardSearch): check l->next && l->next->bpos
+ (backwardSearch): check l->size, l->next && l->next->bpos
+
+2003-01-31 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03712] buf fix of LINE_INFO
+ * main.c (curlno): rewrite
+
+2003-01-30 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03709] Re: view source, edit source
+ * display.c (displayBuffer): INIT_BUFFER_WIDTH
+ * file.c (_saveBuffer): added
+ (saveBuffer): use _saveBuffer
+ (saveBufferBody): added
+ * main.c (vmSrc): saveBufferBody
+ * proto.h (saveBufferBody): added
+
+2003-01-30 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev-en 00852] Re: Enhancement: content type detection of files
+ * url.c (DefaultGuess): remove upppercases
+ (guessContentTypeFromTable): rewrite, strcasecmp
+
+2003-01-30 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03708] Re: Don't stop loading image when moving to next page.
+ * config.h.dist (lstat): define ifndef HAVE_LSTAT
+ * configure (config.h) ditto
+ * display.c (fmTerm): new loadImage
+ (save_current_buf): only ifdef USE_BUFINFO
+ (displayBuffer): new loadImage
+ * etc.c (setup_child): TrapSignal
+ * file.c (loadGeneralFile): TRAP_OFF, TRAP_ON
+ (loadHTMLstream): ditto
+ (loadGopherDir): ditto
+ (loadBuffer): ditto
+ (loadImageBuffer): ditto
+ (getNextPage): ditto
+ (save2tmp): ditto
+ * fm.h (TrapSignal): added
+ (TRAP_ON): added
+ (TRAP_OFF): added
+ * form.c (HAVE_LSTAT): deleted
+ * frame.c (createFrameFile): TRAP_OFF, TRAP_ON
+ * image.c (image_buffer): added
+ (deleteImage): new loadImage
+ (getAllImage): initialize image_buffer
+ (loadImage): rewrite
+ * main.c (main): new loadImage
+ (checkDownloadList): remove ifdef HAVE_LSTAT
+ * news.c (loadNwesgroup): TRAP_ON, TRAP_OFF
+ * proto.h (loadImage): add buf arg
+ * url.c (openSocket): TRAP_ON, TRAP_OFF
+ (check_no_proxy): TRAP_ON, TRAP_OFF
+
+2003-01-29 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03707] Don't stop loading image when moving to next page.
+ * display.c (save_current_buf): required when defined USE_IMAGE
+ (displayBuffer): stop only buffer changed
+ * image.c (loadImage): IMG_FLAG_START load from maxLoadImage
+
+2003-01-29 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03706] X-Image-URL: support, bug fix of reshapeBuffer()
+ * buffer.c (reshapeBuffer): rewrite
+ * file.c (readHeader): rewrite
+
+2003-01-29 NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>
+
+ * [w3m-dev 03705] goodict.cgi (was: Re: google.cgi (was: Re: keymap key SEARCH string))
+ * Bonus/goodict.cgi: added
+
+2003-01-29 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03700] Re: google.cgi (was: Re: keymap key SEARCH string)
+ * main.c (goURL0): check relative or *url == '#'
+
+2003-01-28 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03689] Re: fold patch
+ * fm.h (BufferPos): add bpos
+ * main.c (save_buffer_position): bpos initialize
+ (resetPos): reset bpos
+
+2003-01-26 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03686] Re: fold patch
+ * buffer.c (writeBufferCache): rewrite
+ (readBufferCache): rewrite
+ * etc.c (calcPosition): short -> int realColumn
+ * fm.h (Line): short -> int len,width,size,bpos,bwidth
+ (BufferPoint): short->int pos
+ (Buffer): short->int currentColumn,pos,visualpos
+ (BufferPos): short->int currentColumn,pos
+ * frame.h (frameset_queue): short->int pos,currentColumn
+ * main.c (clear_mark): short->int pos
+ (dispincsrch): short->int pos
+ (backBf): short->int pos
+ (set_buffer_environ): short->int prev_pos
+
+2003-01-25 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03684] Re: fold patch
+ * file.c (PSIZE): added
+ (HTMLlineproc2body): outc,outp is created by NewAtom_N
+ use PSIZE
+
+2003-01-25 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * file.c (getNextPage): no need volatile for code
+
+2003-01-25 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03683] interrupt in getNextPage()
+ * file.c (getNextPage): trap SIGINT
+
+2003-01-25 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03682] open null file on tab
+ * display.c (displayBuffer): if empty, clear()
+
+2003-01-25 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03681] Re: fold patch
+ * buffer.c (reshapeBuffer): buf->pos, sbuf.currentLine fix
+ FoldLine
+ * display.c (arrangeCursor): buf->pos fix
+ (restorePosition): buf->pos fix
+
+2003-01-24 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * NEWS: func: RESHAPE
+ rc: fold_line
+
+2003-01-24 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * fix compiler warnings
+ * display.c (displayBuffer): fix suggest parentheses around && within ||
+2003-01-24 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03667] fold patch
+ * anchor.c (reAnchorPos): rewrite
+ (reAnchorWord): delete reseq_anchor()
+ (reAnchorAny): use l->size
+ delete reseq_anchor()
+ * backend.c (internal_get): pass TRUE to saveBuffer
+ * buffer.c (newBuffer): delete n->linelen
+ (reshapeBuffer): rewrite
+ * display.c (displayBuffer): FoldLine
+ (redrawLine): l->bpos
+ (cursorUp0): added
+ (cursorUp): rewrite
+ (cursorDown0): added
+ (cursowDown): rewrite
+ (cursorRight): check l->next
+ l->bwidth
+ (cursorLeft): l->prev && l->bpos
+ l->bwidth
+ (arrangeCursor): buf->currentLine->bwidth
+ buf->cursorX
+ * etc.c (checkType): **oporp
+ rewrite
+ (calcPosition): realColumn allocated by New_reuse
+ * file.c (addnewline): add nlines arg
+ (propBuffer): deleted
+ (colorBuffer): deleted
+ (readHeader): propBuffer
+ FOLD_BUFFER_WIDTH
+ (HTMLlineproc2body): rewrite
+ (addnewline2): added
+ (addnewline): rewrite
+ (loadBuffer): propBuffer, colorBuffer
+ (saveBuffer): cont arg
+ (getNextPage): rewrite
+ * fm.h (LINELEN): 256
+ (FNLEN): deleted
+ (Line): add size, bpos, bwidth
+ (Buffer): delete linelen
+ (INIT_BUFFER_WIDTH): check showLineNum
+ (FOLD_BUFFER_WIDTH): added
+ (FoldLine): added
+ * funcname.tab (RESHAPE): added
+ * main.c (do_dump): pass FALSE to saveBuffer
+ (nscroll): rewrite
+ (clear_mark): l->size
+ (shiftvisualpos): rewrite
+ (pipeBuf): pass TRUE to saveBuffer
+ (linebeg): check line->prev && line->bpos
+ (linend): check line->next, line->next->bpos
+ (editScr): pass TRUE to saveBuffer
+ (svBuf): pass TRUE to saveBuffer
+ (vmSrc): pass TRUE to saveBuffer
+ (reshape): added
+ (curlno): rewrite
+ * mimehead.c (LINELEN): deleted
+ * proto.h (reshape): added
+ (saveBuffer): add cont arg
+ (cursorUp0): added
+ (cursorDown0): added
+ (checkType): change type oprop, ocolor, delete check_color, len
+ * rc.c (CMT_FOLD_LINE): added
+ (params1): add fold_line
+ (sync_with_option): check PagerMax
+ * search.c (set_mark): l->size
+ (forwardSearch): rewrite
+ (backwardSearch): rewrite
+ * doc/README.func (RESHAPE): added
+ * doc-jp/README.func (RESHAPE): added
+ * scripts/w3mhelp.cgi.in (Buffer operation): add reshape
+
+2003-01-24 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * etc.c (next_status): after = is R_ST_VALUE
+ R_ST_VALUE > => R_ST_NORMAL
+ R_ST_VALUE SP => R_ST_TAG
+ (read_token): R_ST_VALUE
+ (correct_irrtag): R_ST_VALUE
+ * rm.h (R_ST_VALUE): added
+ (ST_IS_REAL_TAG): rewrite
+ (ST_IS_COMMENT): deleted
+ (ST_IS_TAG): deleted
+ * parsetagx.c (parse_tag): skip too long tagname
+ skip too long attrname
+ if attrvalue has quote char, need reconstruct
+ if unknown attr, need reconstruct
+ * table.c (visible_length): R_ST_VALUE
+
+2003-01-24 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03680] showProgress() on fast system
+ * file.c (showProgress): check line len, time
+
+2003-01-24 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03679] Re: cleanup for pipe
+ * etc.c (open_pipe_rw): check stdin, stdout
+ * file.c (uncompress_stream): rewrite
+
+2003-01-23 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03678] Re: config.param is clear when configure -help
+ * configure: don't override config.param
+
+2003-01-23 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03677] view source, edit source
+ * buffer.c (discardBuffer): unlink header source
+ * file.c (loadFile): delete skip header
+ * fm.h (BP_SOURCE): deleted
+ (SkipHeader): deleted
+ * main (editBf): cleanup
+ (vmSrc): cleanup
+
+2003-01-23 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03676] cleanup for pipe
+ * etc.c (open_pipe_rw): added
+ * file.c (uncompress_stream): rewrite using open_pipe_rw
+ * image.c (openImgdisplay): rewrite using open_pipe_rw
+ * local.c (localcgi_popen_rw): deleted
+ (localcgi_post): rewrite using open_pipe_rw
+ * proto.h (open_pipe_rw): added
+ * search.c (migemor): initialized to NULL
+ (migemow): initialized to NULL
+ (migemo_pid): initialized to 0
+ (open_migemo): rewrite using open_pipe_rw
+
+2003-01-23 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03675] x-face
+ * file.c (xface2xpm): use getImage()
+ (readHeader): check same file
+ (loadImageBuffer): rewrite
+ (lessopen_stream): shell_quote()
+
+2003-01-23 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03674] -dump problem
+ * file.c (loadGeneralFile): return NULL when dump
+ * main.c (dump_source): deleted
+ (dump_head): deleted
+ (dupm_extra): deleted
+ (do_dump): added
+ (main): singal when dump
+
+2003-01-23 Yoshinobu Sakane <sakane@d4.bsd.nes.nec.co.jp>
+
+ * [w3m-dev 03671] Re: config.param is clear when configure -help
+ * configure: test -f config.param
+
+2003-01-22 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03665] imlib2 support (on X11)
+ * configure: X11 inline image with Imlib2
+ fix typo in fb/imlib2
+ * w3mimg/x11/x11_w3mimg.c: USE_IMLIB2
+ (x11_load_image): USE_IMLIB2
+ (x11_show_image): USE_IMLIB2
+ (x11_free_image): USE_IMLIB2
+ (x11_get_image_size): USE_IMLIB2
+
+2003-01-22 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03664] config.param is clear when configure -help
+ * configure: config.param created after arg parsing
+
+2003-01-21 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * map.c (follow_map_menu): if USE_IMAGE or MENU_MAP
+ * proto.h (follow_map_menu): ditto
+
+2003-01-21 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03660] Re: fputs -> Strfputs
+ * Str.h (Strncmp_charp): paren
+ (Strncasecmp_charp): ditto
+ (Strinsert): ditto
+ (Strshrinkfirst): ditto
+ * display.c (disp_err_message): added
+ * file.c (loadGeneralFile): don't put function in macro arg
+ (saveBuffer): ditto
+ * frame.c (createFrameFile): ditto
+ * proto.h (disp_err_message): macro->function
+ * table.c (pushdata): if data is NULL, use ""
+ (suspend_or_pushdata): if line is NULL, use ""
+ * textlist.h (pushText): don't use (s) twice in a macro
+
+2003-01-21 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03659] Can't download from SSL.
+ * istream.c (ISfileno): case IST_SSL
+
+2003-01-21 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03658] Re: Other user can see local cookie.
+ * fm.h (rc_dir): init(NULL)
+ * rc.c (config_file): deleted
+ (init_rc): use rc_dir
+
+2003-01-21 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03657] fputs -> Strfputs
+ * form.c (form_fputs_decode): use Strfputs()
+
+2003-01-19 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03655] Re: file.c:image_source when undef USE_IMAGE
+ * map.c (follow_map_menu): fix warnings
+
+2003-01-19 WATANABE Katsuyuki <knabe@sannet.ne.jp>
+
+ * [w3m-dev 03654] file.c:image_source when undef USE_IMAGE
+ * file.c (readHeader): image_source ifdef USE_IMAGE
+ (loadGeneralFile): ditto
+ (uncompress_stream): ditto
+
+2003-01-19 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03653] SourceForge.net: 576032 w3m https crashes with OpenSSL-0.9.7
+ * istream.c (ssl_check_cert_ident): use sk_GENERAL_NAME_free()
+
+2003-01-18 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03652] Re: Debian bug #176981
+ * file.c (checkHeader): always remove_space
+ (loadGeneralFile): no need remove_space
+
+2003-01-18 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03651] Debian bug #176981
+ * file.c (checkRedirection): added
+ (loadGeneralFile): check redirection
+ t_buf only is created when it is NULL
+ remove_space
+
+2003-01-18 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03647] expandName() and expandPath()
+ * etc.c (openSecretFile): use expandPath
+ (expandName): rewrite
+ (file_to_url): use expandPath
+ * file.c (_doFileCopy): use expandPath
+ (doFileSave): use expandPath
+ * indep.c (expandPath): rewrite
+ * linein.c (inputLineHistSearch): use expandPath
+ (next_dcompl): use expandPath
+ (doComplete): use expandPath
+ * local.c (set_cgi_environ): rewrite
+ * mailcap.c (loadMailcap): use expandPath
+ * main.c (svBuf): use expandPath
+ (addDownloadList): use expandPath
+ * rc.c (init_rc): use expandPath
+ (rcFile): rewrite
+ (auxbinFile): use expandPath
+ (libFile): use expandPath
+ (etcFile): use expandPath
+ (helpFile): use expandPath
+ * url.c (loadMimeTypes): use expandPath
+ (loadURIMethods): use expandPath
+
+2003-01-18 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03646] setup child process, local CGI
+ * etc.c (reset_signals): static
+ don't ignore SIGUSR1
+ (close_all_fds_except): static
+ DEV_NULL_PATH
+ (setup_child): added
+ (myExec): rewrite
+ (mySystem): rewrite
+ * file.c (readHeader): check image_source
+ (loadGeneralFile): check image_source
+ (doExternal): use setup_child
+ (_doFileCopy): use setup_child
+ (doFileSave): use setup_child
+ (uncompress_stream): check image_source
+ use setup_child
+ * image.c (getCharSize): no need stderr redirect
+ (openImgdisplay): use setup_child
+ (loadImage): use setup_child
+ (getImageSize): no need stderr redirect
+ * local.c (writeLocalCookie): check Local_cookie_file
+ (localcgi_popen_rw): added
+ (localcgi_popen_r): deleted
+ (localcgi_post): rewrite
+ (localcgi_get): deleted
+ * proto.h (localcgi_get): defined by localcgi_post
+ (reset_signals): deleted
+ (close_all_fds_except): deleted
+ (close_all_fds): deleted
+ (setup_child): added
+ * search.c (open_migemo): use setup_child, myExec
+ * w3mimgdisplay.c (main): use DEV_NULL_PATH
+
+2003-01-16 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03644] Re: Other user can see local cookie.
+ * cookie.c (save_cookies): return if no_rc_dir
+ * etc.c (tmpf_base): add cookie
+ (tmpfname): use tmp_dir instead of rc_dir
+ * file.c (loadGeneralFile): cookie is not passed via URL
+ * fm.h (TMPF_COOKIE): incl
+ (MAX_TMPF_TYPE): incl
+ (no_rc_dir): added
+ (tmp_dir): added
+ (config_file): added
+ * local.c (Local_cookie_file): added
+ (writeLocalCookie): added
+ (setLocalCookie): dont set environment LOCAL_COOKIE
+ (localcgi_post): writeLocalCookie
+ (localcgi_get): writeLocalCookie
+ * main.c (config_filename): deleted
+ (cmd_loadURL): arg FormList
+ (main): rewrite config_file, rc
+ (ldhelp): no cookie in URL
+ (cmd_loadURL): arg FormList
+ (goURL0): cmd_loadURL change
+ (cmd_loadBuffer): cmd_loadURL change
+ (adBmark): cookie is posted
+ (follow_map): cmd_loadURL change
+ (linkMn): cmd_loadURL change
+ (reinit): init_rc change
+ * proto.h (create_option_search_table): deleted
+ (init_rc): no args
+ * rc.c (create_option_search_table): static
+ (init_rc): no args
+ rewrite
+ (optionpanel_src1): rewrite
+ (load_option_panel): html_quote
+ (panel_set_option): no_rc_dir
+ * w3mbookmark.c: rewrite
+ * w3mhelperpanel.c: rewrite
+ * scripts/dirlist.cgi.in: rewrite
+ * scripts/w3mhelp.cgi.in: rewrite
+ * scripts/w3mmail.cgi.in: rewrite
+ * scripts/multipart/multipart.cgi.in: rewrite
+
+2003-01-16 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * file.c (loadGopherDir): convertLine RAW_MODE
+ * ftp.c (loadFTPDir): ditto
+
+2003-01-16 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03642] Re: cleanup (don't close connection of news server)
+ * local.c (localcgi_post): localcgi_popen_r first
+
+2003-01-16 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03641] Re: cleanup (don't close connection of news server)
+ * ftp.c (ftp_command): fix fwrite arg
+ * news.c (news_command): fix fwrite arg
+
+2003-01-16 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03640] Re: cleanup (don't close connection of news server)
+ * anchor.c (_put_ahchor_news): always conv_str
+ (_put_anchor_all): always conv_str
+ * etc.c (close_all_fds): deleted
+ (close_all_fds_except): added, except fd=f is left open
+ * file.c (guess_filename): added
+ (UFhalfclose): added
+ (convertLine): cleanup_line if not raw mode
+ check uf
+ (readHeader): always convertLine
+ (loadGeneralFile): rewrite
+ (loadGopherDir): return Str, args change to ParsedURL and code
+ rewrite
+ (saveBuffer): always conv_str
+ (_doFileCopy): close_all_fds
+ (doFileSave): close_all_fds_except
+ (uncompress_stream): dup, close_all_fds_except
+ * form.c (form_fputs_decode): always conv_str
+ (input_textarea): convertLine
+ * frame.c (createFrameFile): convertLine
+ * ftp.c (loadFTPDir): arg code
+ rewrite
+ (readFTPDir): convertLine
+ * html.h (UFfileno): added
+ * image.c (loadImage): close_all_fds
+ * indep.h (RAW_MODE): added
+ * local.c (loadLocalDir): return Str
+ (dirBuffer): rewrite
+ (localcgi_popen_r): close_all_fds
+ * main.c (main): check SCM_LOCAL
+ print err_msg
+ * news.c (news_command): args cmd and arg
+ (news_quit): news_command
+ (openNewsStream): news_command
+ (readNewsgroup): deleted
+ (loadNewsgroup): added
+ (closeNews): added
+ * proto.h (loadGopherDir): update
+ (conv_str): define for no JP_CHARSET
+ (readFTPDir): deleted
+ (loadFTPDir): added
+ (readNewsgroup): deleted
+ (loadNewsgroup): added
+ (dirBuffer): deleted
+ (loadLocalDir): added
+ (close_all_fds): defined by close_all_fds_except
+ (close_all_fds_except): added
+
+2003-01-16 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03639] Re: smb.cgi
+ * Bonus/2ch.cgi: change password handling
+ * Bonus/README: update
+ * Bonus/README.eng: ditto
+
+2003-01-12 qhwt@myrealbox.com
+
+ * [w3m-dev 03636] segfault in main.c
+ * main.c (main): check newbuf->currentURL.file
+
+2003-01-12 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * Bonus/README.eng: sync with Bonus/README
+
+2003-01-12 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03635] 2ch.cgi
+ * Bonus/2ch.cgi: added
+ * Bonus/README: update
+
+2003-01-12 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * Bonus/README.eng: sync with Bonus/README
+
+2003-01-12 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03634] smb.cgi
+ * Bonus/smb.cgi: added
+ * Bonus/README: update
+
+2003-01-12 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * ftp.c (ftp_pasv): ftp_command response
+ (readFTPDir): masked declaration of realpathname
+
+2003-01-12 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03633] Re: cleanup (don't close connection of news server)
+ * file.c (FTPhalfclose): deleted
+ (loadGeneralFile): closeFTP when doFileSave is done
+ (_doFileCopy): return int
+ (doFileMove): return int
+ (doFileSave): return int
+ * ftp.c: rewrite
+ * main.c (w3m_exit): disconnectFTP
+ * proto.h (_doFileCopy): return int
+ (doFileMove): return int
+ (doFileSave): return int
+ (openFTP): deleted
+ (openFTPStream): return InputStream
+ (closeFTP): no arg
+ (Ftpfclose): disconnectFTP
+ * url.c (openFTPstream): deleted
+
+2003-01-11 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * fix compiler warnings
+ * html.h (UFclose): value computed but not used
+
+2003-01-11 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03632] cleanup (don't close connection of news server)
+ * file.c (loadSomething): remove UFclose nntp:,news:
+ (loadFile): UFclose
+ (loadGeneralFile): always UFclose
+ * html.h (UFclose): only reset when ISclose ==0
+ * istream.c (ISclose): return int
+ (ISfileno): flag IST_UNCLOSE
+ * istream.h (ISclose): return int
+ (IST_UNCLOSE): added
+ * news.c (news_close): reset IST_UNCLOSE
+ (news_open): set IST_UNCLOSE
+
+2003-01-11 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03631] display current form item
+ * form.c (form2str): rewrite
+ * istream.c (ssl_get_certificate): fix typo
+ * map.c (follow_map_panel): valign=top
+ (append_map_info): valign=top
+ (append_link_info): valign=top
+ (append_frame_info): <pre_int>
+ html_quote ssl_certificate
+ (page_info_panel): rewrite, html_quote
+
+2003-01-11 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * doc/README.pre_form: update
+ * doc-jp/README.pre_form: ditto
+
+2003-01-11 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03630] improved pre_form
+ * form.c (pre_form): add re_url, name
+ (add_pre_form): add name
+ rewrite
+ (loadPreForm): add "form"
+ (preFormUpdateBuffer): handle re_url
+
+2003-01-11 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03629] delete tmp file
+ * etc.c (tempfname): always file to delete
+ * file.c (xface2xpm): no need fileToDelete
+ (readHeader): ditto
+ (loadGeneralFile): ditto
+ (loadHTMLBuffer): ditto
+ (loadHTMLString): ditto
+ (loadGopherDir): ditto
+ (loadImageBuffer): ditto
+ (doExternal): rewrite
+ (doFileSave): no need fileToDelete
+ (uncompress_stream): ditto
+ * fm.h (CurrentPid): added
+ * image.c (getImage): cache->touch to delete
+ * local.c (setLocalCookie): use CurrentPid
+ (localcgi_post): fileToDelete
+ * main.c (main): CurrentPid
+ (pipeBuf): no need fileToDelete
+ (query_from_followform): CurrentPid
+ (vmSrc): no need fileToDelete
+
+2003-01-11 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03628] Re: Error occured while reset
+ * file.c (doExternal): bufp = NULL, return 1
+ (uncompress_stream): tempfname fileToDelete
+
+2003-01-11 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03626] Re: relative URL
+ * url.c (parseURL2): copy if scheme is local or local-cgi
+
+2003-01-11 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03625] keymap key SEARCH string
+ * main.c (srch): accept command argument
+ (reMark): accept command argument
+ * Bonus/google.cgi: added
+
+2003-01-11 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03622] Re: Error occured while reset
+ * file.c (uncompress_stream): child process initialized
+ * terms.c (close_tty): close unless stdin,out,err
+ (reset_tty): flush_tty, close_tty
+ (write1): flush_tty
+ (refresh): flush_tty
+ (flush_tty): check ttyf
+
+2003-01-11 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03620] -m option and header
+ * buffer.c (reshapeBuffer): fix reading from stdin
+ fix -m option
+ * display.c (redrawNLine): rewrite
+ (redrawLine): return l instead of l->next
+ (redrawLineImage): ditto
+ * file.c (loadFile): read header even if skip header
+ (loadGeneralFile): read header even if skip header
+ * fm.h (SkipHeader): added
+ * main.c (main): check whether reading from stdin
+ SkipHeader
+
+2003-01-10 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03619] Re: Error occured while reset
+ * file.c (process_img): check image.ext
+ (HTMLlineproc2body): check image.ext
+ (loadImageBuffer): url, ext is in URLFile
+ * frame.c (unloadFrame): no need to push to fileToDelete
+ (copyFrame): no need to reset FB_TODELETE
+ (resetFrameElement): f_body->source, buf->sourcefile
+ (frame_download_source): buf->source
+ buf->sourcefile reset
+ * frame.h (FB_NOCACHE): deleted
+ (FB_TODELETE): deleted
+ * main.c (vmSrc): Currentbuf->sourcefile
+ need_reshape if images exist
+
+2003-01-09 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03617] sourcefile when Content-Encoding: is specified.
+ * file.c (uncompress_stream): add src arg
+ (examineFile): change uncompress_stream
+ (loadGeneralFile): change uncompress_stream
+ (doExternal): src
+ (uncompress_stream): ext
+ tmpfile with same ext
+
+2003-01-09 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03616] Re: data: URL scheme
+ * file.c (loadGeneralFile): check SCM_DATA
+ (loadImageBuffer): newBuffer()
+ * html.h (SCM_DATA): added
+ * indep.c (url_unquote): deleted
+ (Str_url_unquote): renamed from Str_form_unquote
+ + is decoded is_form only
+ * indep.h (url_unquote): deleted
+ (Str_url_unquote): added
+ (Str_form_unquote): define by Str_url_unquote
+ * main.c (followA): file_unquote
+ (cmd_loadURL): file_unquote
+ * url.c (DefaultPort): add for data:
+ (schemetable): add "data"
+ (DefaultFile): SCM_FTPDIR
+ (parseURL): scheme copied from current
+ (parseURL2): SCM_DATA
+ check SCM_FTP, SCM_FTPDIR
+ (_parsedURL2Str): add data in scheme_str
+ handle SCM_DATA
+ SCM_FTPDIR
+ (openURL): file_unquote
+ handle SCM_DATA
+
+2003-01-08 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03611] relative URL
+ * news.c (openNewsStream): don't skip '/' for nntp:
+ (readNewsgroup): cleanup
+ * url.c (parseURL): don't copy user & password
+ (parseURL2): fix for group, don't copy user & password
+
+2003-01-07 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * fix build warnings
+ * url.c (parseURL2): fix comparison between pointer and integer
+ * news.c (readNewsgroup): variable `scheme',`group',`list' might be clobbered by `longjmp' or `vfork'
+
+2003-01-07 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03610] Re: news:<newsgroup>
+ * anchor.c (_put_anchor_news): check '<'
+ (reAnchorNewsheader): added
+ * file.c (loadSomething): Subject: as buffername
+ (checkHeader): check buf->document_header
+ (loadGeneralFile): reAnchorNewsheader
+ * html.h (SCM_NNTP_GROUP): added
+ * main.c (main): delete USE_NNTP in switch (newbuf->real_scheme)
+ (chkNMIDBuffer): lowercase in url_like_pat
+ * news.c (add_news_message): add scheme, group as arg
+ (openNewsStream): check SCM_NNTP_GROUP
+ check current_news.host
+ (readNewsgroup): rewrite to support nntp:,news: extension
+ * proto.h (reAnchorNewsheader): added
+ * url.c (DefaultPort): add 119 for nntp group
+ (parseURL2): rewrite to support nntp:,news: extension
+ (_parsedURL2Str): add for SCM_NNTP_GROUP
+ (openURL): rewrite to support nntp:,news: extension
+
+2002-12-28 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * fix build errors
+ * display.c (make_lastline_message): fix error for undef JP_CHARSET
+ * news.c (readNewsgroup: `code' always required
+
+ * gcc -Wall -Werror clean
+ * file.c (loadHTMLstream): unused variable `p'
+ * news.c (news_command): unused variable `c'
+ (news_open): unused variable `tmp'
+ (readNewsgroup): volatile page, qgroup, flag, start, end
+ uninitialized variable `page'
+ * url.c (openURL): unused variable `fw', `r', `stream'
+
+2002-12-28 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * rc: nntpserver, nntpmode, max_news
+
+2002-12-28 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03608] news:<newsgroup>
+ * XMakefile (LSRCS): add news.c
+ (LOBJS): add news.o
+ * file.c (loadSOmething): don't UFclose() for nntp/news
+ (readHeader): remove . at beginning of line for news
+ img link to file:
+ (loadGeneralFile): add SCM_NEWS_GROUP
+ don't UFclose() for nntp/news
+ (loadHTMLstream): . line check for news
+ (loadBuffer): . line check for news
+ * fm.h (NNTP_server): added
+ (NNTP_mode): added
+ (MaxNewsMessage): added
+ * html.h (SCM_NEWS_GROUP): added
+ * main.c (main): NNTP_server or NNTPSERVER
+ NNTP_mode or NNTPMODE
+ add SCM_NEWS_GROUP
+ (followA): remove news:..@.. check
+ (cmd_loadURL): remove news:...@.. check
+ (w3m_exit): disconnectNews
+ * proto.h (openNewsStream): added
+ (readNewsgroup): added
+ (disconnectNews): added
+ * rc.c (CMT_NNTP_SERVER): added
+ (CMT_NNTP_MODE): added
+ (CMT_MAX_NEWS): added
+ (params9): add nntpserver, nntpmode, max_news
+ * url.c (DefaultPort): add 119 for news group
+ (parseURL2): news:..@... is SCM_NEWS_GROUP
+ (_parsedURL2Str): add news for SCM_NEWS_GROUP
+ (openURL): cleanup SCM_NEWS
+ add SCM_NEWS_GROUP
+ * news.c: added
+
+2002-12-28 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03607] mymktime: time zone support
+ * etc.c (get_zone): added
+ (mymktime): parse timezone
+
+2002-12-28 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03606] Re: clean up displayBuffer()
+ * main.c (followA): B_FORCE_REDRAW
+ (follow_map): ditto
+
+2002-12-27 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03604] http response code and content-type
+ * file.c (loadGeneralFile): don't guessContentType if http errors
+
+2002-12-26 Hiroyuki Ito <hito@crl.go.jp>
+
+ * [w3m-dev 03602] Re: w3mimgdisplay core dump
+ * w3mimgdisplay.c (DrawImage): check load_image, imageBuf[n].pixmap
+ * w3mimg/fb/fb_w3mimg.c (w3mfb_show_image): check img->pixmap
+ * w3mimg/x11/x11_w3mimg.c (x11_show_image): check img->pixmap
+
+2002-12-26 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03601] Re: meta refresh
+ * main.c (LastEvent): added
+ (pushEvent): add to LastEvent
+
+2002-12-26 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03600] Re: meta refresh
+ * main.c (main): move add_download_list
+
+2002-12-25 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03598] restore cursor when download list panel is updated.
+ * main.c (stopDownload): delete->replace
+ (ldDL): use DownloadListBuffer()
+
+2002-12-25 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03597] Re: meta refresh
+ * main.c (Event): next, linked list
+ (N_EVENT_QUEUE): deleted
+ (eventQueue): deleted
+ (n_event_queue): deleted
+ (CurrentEvent): added
+ (main): event processing, add CurrentEvent linked list
+ (pushEvent): add Event to CurrentEvent
+ (SigAlarm): Currentbuf->event
+ * proto.h (pushEvent): rename args
+
+2002-12-25 Hiroaki Shimotsu <shim@d5.bs1.fc.nec.co.jp>
+
+ * [w3m-dev 03596] LIST
+ * anchor.c (link_list_panel): check internal
+
+2002-12-25 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03595] tolower, toupper
+ * Str.c (Strlower): TOLOWER
+ (Strupper): TOUPPER
+ * backend.c: delete ctype.h
+ * etc.c (gethtmlcmd): TOLOWER
+ * file.c (readHeader): TOLOWER
+ (checkOverWrite): TOLOWER
+ (guess_charset): TOLOWER
+ * ftp.c: delete ctype.h
+ * indep.c (strcasecmp): TOLOWER
+ (strncasecmp): TOLOWER
+ (strcasematch): TOLOWER
+ * istream.c: include myctype.h
+ (ssl_get_certificate): TOLOWER
+ * mailcap.c (mailcapMatch): TOLOWER
+ * main.c (_quitfm): TOLOWER
+ * menu.c (accesskey_menu): TOLOWER
+ * mimehead.c: include myctype.h
+ (decodeWord): TOUPPER
+ * mktable.c: delete ctype.h, include myctype.h
+ (main): IS_SPACE
+ * myctype.h: delete ctype.h
+ (TOLOWER): added
+ (TOUPPER): added
+ * parsetagx.c (parse_tag): TOLOWER
+ * rc.c (str_to_bool): TOLOWER
+ (str_to_color): TOLOWER
+ * regex.c: delete ctype.h, include myctype.h
+ (TOLOWER): added
+ (TOUPPER): added
+ (regmatch1): TOLOWER
+ (matchWhich): TOLOWER, TOUPPER
+
+2002-12-22 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * mimehead.c (decodeWord): don't use toupper() (requires ctype.h)
+
+2002-12-22 ABE Yuji <cbo46560@pop12.odn.ne.jp>
+
+ * [w3m-dev 03594] mime decode with encoding named 'b' & 'q'
+ * mimehead.c (decodeWord): toupeer(method)
+
+2002-12-22 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * file.c (discardline): not used
+
+2002-12-22 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03593] Re: segmentation fault when <title> exist after <img>
+ * file.c (cur_title): added
+ (save_obuf): deleted
+ (process_title): added
+ (process_n_title): added
+ (feed_title): added
+ (HTMLtagproc1): rewrite HTML_TITLE, HTML_N_TITLE,
+ HTML_TITLE_ALT, HTML_N_HEAD, HTML_HEAD
+ (HTMLlineproc0): check RB_TITLE
+ (completeHTMLstream): add RB_TITLE
+ (loadHTMLstream): initialize cur_title
+
+2002-12-21 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03590] segmentation fault when <title> exist after <img>
+ * file.c (save_line): deleted
+ (save_prevchar): deleted
+ (save_obuf): added
+ (HTMLtagproc1): bcopy save_obuf
+
+2002-12-20 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03588] include time.h in ftp.c
+ * ftp.c: include <time.h>
+
+2002-12-19 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03583] w3mman
+ * scripts/w3mman/README: W3MMAN_W3M, W3MMAN_MAN
+ * scripts/w3mman/w3mman.1.in: add ENVIRONMENT
+ * scripts/w3mman/w3mman.in: $ENV{'W3MMAN_W3M'}, $ENV{'W3MMAN_MAN'}
+ * scripts/w3mman/w3mman2html.cgi.in: $ENV{'W3MMAN_MAN'}
+ hyphenation
+
+2002-12-19 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03582] add config options graphic_char and use_proxy
+ * NEWS: rc: graphic_char, use_proxy
+ * fm.h (Do_no_use_proxy): macro using use_proxy
+ (use_proxy): added
+ (no_graphic_char): deleted
+ (UseGraphicChar): added
+ * main.c (main): UseGraphicChar, use_proxy
+ * rc.c (CMT_GRAPHIC_CHAR): added
+ (CMT_USE_PROXY): added
+ (params1): graphic_char
+ (params4): use_proxy
+ * terms.c (graph_ok): UseGraphicChar
+
+2002-12-19 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03581] MARK_URL, MARK_WORD
+ * main.c (chkWORD): accept ()[]{}&|;*?$ as anchor
+
+2002-12-19 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03580] Re: clean up displayBuffer()
+ * main.c (main): force redraw
+
+2002-12-19 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03579] Re: clean up displayBuffer()
+ * display.c (displayBuffer): re calcTabPos() when force or image redraw
+ * main.c (_mark): force redraw
+ (reinit): redraw image
+ * search.c (backwardSearch): found_last
+
+2002-12-19 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03584] Re: meta refresh
+ * main.c (DefaultAlarm): fix initialize value
+
+2002-12-19 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03578] meta refresh
+ * file.c (getMetaRefreshParam): do nothing if refresh_interval < 0
+ (HTMLtagproc1): rewrite refresh
+ (HTMLlineproc2body): add HTML_META
+ * fm.h (BP_RELOAD): deleted
+ (Buffer): add event
+ (AL_IMPLICIT_DONE): deleted
+ (AL_ONCE): deleted
+ (AL_RESTORE): deleted
+ (AlarmEvent): added
+ * main.c (AlarmEvent): deleted
+ (PrevAlarm): deleted
+ (DefaultAlarm): added
+ (CurrentAlarm): point to DefaultAlarm
+ (main): CurrentKeyData, CurrentCmdData
+ handle Currentbuf->event
+ (SigAlarm): CurrentAlarm is pointer
+ (copyAlarmEvent): deleted
+ (setAlarm): setAlarmEvent pass &DefaultAlarm
+ (setAlarmEvent): arg event
+ (ldDL): no BP_RELOAD
+ * proto.h (setAlarmEvent): arg event
+
+2002-12-18 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03577] incorrect table width
+ * table.c (dv2sv): fix move direction
+ (set_integered_width): ditto
+ (check_table_height): ditto
+ (feed_table_tag): ditto
+
+2002-12-17 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03576] Re: news support
+ * anchor.c (_put_anchor_news): convert to document code and quote
+ (_put_anchor_all): convert to document code
+ * main.c (chkNMIDBuffer): change url_like_pat
+
+2002-12-15 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * NEWS: rc: preserve_timestamp
+
+2002-12-15 Takahashi Youichirou <nikuq@hk.airnet.ne.jp>
+
+ * [w3m-dev 03574] Re: preserve timestamp
+ * ftp.c (getFtpModtime): don't call localtime,gettime in same expr
+
+2002-12-15 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03573] Re: Bug#172851: w3m: In form, takes hostname as baseref for relative URI action
+ * url.c (parseURL): if empty is URL, base URL is used
+
+2002-12-15 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03571] base=0 -> 10 in toNumber()
+ * parsetagx.c (toNumber): strtol base=10
+
+2002-12-15 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03570] meta tag in frame
+ * frame.c (createFrameFile): fix meta equiv parse in frame
+
+2002-12-15 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03569] Re: preserve timestamp
+ * file.c (loadGeneralFile): PresetveTimestamp
+ (_doFileCopy): is_pipe, PreserveTimestamp
+ (doFileSave): PreserveTImestamp
+ * fm.h (PreserveTimestamp): added
+ * rc.c (CMT_PRESERVE_TIMESTAMP): added
+ (params3): add preserve_timestamp
+
+2002-12-15 Takahashi Youichirou <nikuq@hk.airnet.ne.jp>
+
+ * [w3m-dev 03568] Re: preserve timestamp
+ * etc.c (USE_COOKIE): moved
+ * file.c (utime.h): include
+ (setModtime): added
+ (loadGeneralFile): set f.modtime
+ (_doFileCopy): setModtime()
+ (doFileSave): setModtime()
+ * ftp.c (getFtpModtime): added
+ (openFTP): pass URLFile, set modtime
+ * html.h (URLFile): add modtime
+ * proto.h (openFTP): arg URLFile *uf
+ (mymktime): always
+ * url.c (init_stream): initialize modtime
+ (openFTPStream): pass URLFile
+ (openURL): openFTPStream
+
+2002-12-13 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03567] default keybinding
+ * doc-jp/keymap.default (C-q,C-t,(,),+,-,D,L,T,m,r,{,|,},
+ M-c,M-k,M-l,M-m,M-o,M-t): assign
+ * doc/keymap.default: ditto
+ * keybind.c: ditto
+ * doc-jp/keymap.lynx (C-q,C-t,C-u,(,),,,.,;,D,L,T,W,[,],
+ m,r,w,{,|,},M-<,M->,M-W,M-c,M-g,
+ M-k,M-l,M-m,M-n,M-o,M-p,M-t,M-w): assign
+ * doc/keymap.lynx: ditto
+ * keybind_lynx.c: ditto
+ * doc-jp/menu.default (Main): Select,SelectTab,TAB_LINK
+ * doc/menu.default: ditto
+
+2002-12-13 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03566] configure prefix
+ * configure: add X prefix for expr args
+
+2002-12-13 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03564] clean up displayBuffer()
+ * display.c (delayed_msg): static
+ (drawAnchorCursor): static
+ (redrawBuffer): define
+ (redrawNLine): static
+ (redrawLine): static
+ (redrawLineRegion): static
+ (do_effects): static
+ (do_color): static
+ (make_lastline_link): added
+ (make_lastline_message): added
+ (displayBuffer): rewrite with make_lastline_message()
+ (drawAnchorCursor0): added
+ (drawAnchorCursor): added
+ * main.c (main): remove onA()
+ (keyPressEventProc): remove onA()
+ (disp_srchresult): static
+ disp_message TRUE
+ (isrch): remove onA()
+ (srch): displayBuffer
+ remove onA()
+ (srch_nxtprv): remove onA()
+ (pipeBuf): disp_message TRUE
+ (pipesh): disp_message TRUE
+ (readsh): disp_message TRUE
+ (_mark): dispBuffer
+ (_followForm): break, always dispBuffer
+ (drawAnchorCursor0): deleted
+ (drawAnchorCursor): deleted
+ (onA): deleted
+ (anchorMn): delete onA()
+ (svBuf): displayBuffer B_NORMAL
+ (reload): disp_err_message TRUE
+ displayBuffer
+ (rFrame): displayBuffer
+ (invoke_browser): displayBuffer
+ (extbrz): disp_err_message TRUE
+ (process_mouse): onA -> displayBuffer
+ (movMs): delete onA()
+ (menuMs): onA -> displayBuffer
+ (closeTMs): disp_message TRUE
+ (wrapToggle): disp_message TRUE
+ (execdict): disp_message TRUE
+ (SigAlarm): displayBuffer, delete onA
+ (reinit): displayBuffer
+ * map.c (getCurrentMapLabel): deleted
+ (retrieveCurrentMapArea): added
+ * proto.h (redrawBuffer): deleted
+ (redrawNLine): deleted
+ (redrawLine): deleted
+ (redrawLineRegion): deleted
+ (do_effects): deleted
+ (do_color): deleted
+ (message_list): deleted
+ (getCurrentMapLabel): deleted
+ (retrieveCurrentMapArea): added
+
+2002-12-13 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03563] Directory Traversal Vulnerabilities in FTP Clients
+ * file.c (guess_save_name): pass guess_filename
+
+2002-12-13 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03562] #undef BUFINFO
+ * config.h.dist (BUFINFO): undef
+ * configure (use_bufinfo): n
+ * main.c (saveBufferInfo): ifdef USE_BUFINFO
+ * proto.h (reloadBuffer): if 0
+ (saveBufferInfo): ifdef USE_BUFINFO
+
+2002-12-12 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03559] Re: use select instead of signal for loading images
+ * fm.h (Buffer): add image_loaded
+ * image.c (W3M_SIGIMG): deleted
+ (image_lock): deleted
+ (need_load_image): deleted
+ (load_image_handler): deleted
+ (load_image_next): deleted
+ (getAllImage): check image_loaded
+ (loadImage): delete image_lock
+ delete IMG_FLAG_NEXT
+ * main.c (main): check image_loaded
+ * proto.h (sleep_till_anykey): return int
+ * terms.c (sleep_till_anykey): return int
+
+2002-12-12 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03558] long title is displayed over tab region
+ * display.c (redrawNLine): check l < 0
+ use addnstr
+
+2002-12-11 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03554] Re: Undo/Redo
+ * doc/README.func (REDO): added
+ (UNDO): added
+ * doc-jp/README.func (REDO): added
+ (UNDO): added
+ * scripts/w3mhelp.cgi.in: (Page/Cursor motion): add undoPos, redoPos
+
+2002-12-11 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * NEWS: func: REDO, UNDO
+
+2002-12-11 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03553] Undo/Redo
+ * fm.h (Buffer): add undo
+ (BufferPos): added
+ * funcname.tab (REDO): added
+ (UNDO): added
+ * main.c (save_buffer_position): added
+ (main): save_buffer_position
+ (resetPos): added
+ (undoPos): added
+ (redoPos): added
+ * proto.h (undoPos): added
+ (redoPos): added
+
+2002-12-11 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03552] Re: link list
+ * menu.c (accesskey_menu): check hseq
+ (list_menu): check hseq
+
+2002-12-11 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03551] Re: External URI loader
+ * file.c (loadGeneralFile): fix SCM_UNKNONWN
+
+2002-12-10 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * NEWS: func: LIST, LIST_MENU, MOVE_LIST_MENU
+
+2002-12-10 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03549] link list
+ * anchor.c (addMultirowsImg): add a->slave
+ (getAnchorText): arg AnchorList *al
+ (link_list_panel): added
+ * funcname.tab (LIST): added
+ (LIST_MENU): added
+ (MOVE_LIST_MENU): added
+ * main.c (anchorMn): added
+ (accessKey): use anchorMn()
+ (listMn): added
+ (movlistMn): added
+ (linkLst): added
+ * map.c (searchMapList): not static
+ * menu.c (accesskey_menu): pass AnchorList to getAnchorText()
+ (lmKeys): added
+ (lmKeys2): added
+ (nlmKeys): added
+ (nlmKeys2): added
+ (lmGoto): added
+ (lmSelect): added
+ (list_menu): added
+ * proto.h (linkLst): added
+ (listMn): added
+ (movlistMn): added
+ (list_menu): added
+ (searchMapList): added
+ (getAnchorText): arg AnchorList *al
+ (link_list_panel): added
+ * doc/README.func (LIST): added
+ (LIST_MENU): added
+ (MOVE_LIST_MENU): added
+ * doc-jp/README.func (LINK_MENU): fix message
+ (LIST): added
+ (LIST_MENU): added
+ (MOVE_LIST_MENU): added
+ * scripts/w3mhelp.cgi.in (Page/Cursor motion): add movlistMn
+ (Hyperlink operation): add linkLst linkMn
+
+2002-12-10 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03548] close anchor before <img align=...>
+ * file.c (process_img): use div_int
+ (process_hr): use div_int
+ (process_idattr): don't close_anchor
+ (CLOSE_A): added
+ (HTMLtagproc1): </p> close anchor
+ <dl>,<ul>,<ol>,<blockquote>,<li>,<dt>,<dd> close anchor
+ <noframes> close anchor
+ <pre> close anchor
+ <center> close anchor
+ <div> close anchor
+ add DIV_INT
+ <form> close anchor
+ * html.c (TagMAP): add div_int
+ * html.h (HTML_DIV_INT): added
+ (HTML_N_DIV_INT): added
+ * tagtable.tab (div_int): added
+ (/div_int): added
+
+2002-12-10 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03544] Can't display "1&2" in table
+ * file.c (HTMLlineproc0): continue -> R_ST_NORMAL
+
+2002-12-10 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * file.c (loadGeneralFile): missing `{', fix indent for SCM_UNKNOWN
+ * main.c (set_buffer_environ): unused variables `prev_col'
+
+2002-12-10 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03543] External URI loader (Debian closes: Bug#169962)
+ * file.c (loadGeneralFile): rewrite SCM_UNKNOWN
+
+2002-12-10 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03542] news support
+ * file.c (loadGeneralFile): NNTP as well as NEWS
+ * indep.c (url_unquote_char): check % hex hex
+ (url_unquote): unquote except \0, \n, \r
+
+2002-12-10 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03541] Re: W3M_LINE_NO / W3M_CURRENT_COLUMN
+ * main.c (goLine): check searchKeyData()
+ (set_buffer_environ): W3M_CURRENT_*
+
+2002-12-07 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03536] <del>, <s>
+ * file.c (HTMLtagproc1): <s>..</s> is [S:...:S]
+ (HTMLtagproc0): <del> will delete <table>
+ * fm.h (RB_S): added
+ * html.c (TagMAP): <s>,</s>
+ move <internal>, </internal>
+ * html.h (HTML_S): added
+ (HTML_N_S): added
+ (HTML_INTERNAL): renumed
+ (HTML_N_INTERNAL): ditto
+ (MAX_HTMLTAG): add 2
+ * rc.c (CMT_DISP_INS_DEL): update
+ * table.c (feed_table_tag): add HTML_S, HTML_N_S
+ * table.h (TBLM_S): added
+ (TBLM_ANCHOR): renum
+ * tagtable.tab: (strike, s): HTML_S
+ (/strike, /s): HTML_N_S
+
+2002-12-07 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03535] close anchor, quote <
+ * file.c (HTMLtagproc1): close_anchor
+ * frame.c (createFrameFile): quote <
+
+2002-12-07 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03534] cleanup file.c
+ * file.c (HTMLlineproc2body): cleanup
+
+2002-12-06 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * version.c.in: w3m/0.3.2.2+cvs
+ * NEWS: 0.3.2.2
+
+2002-12-06 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * security fix
+ * file.c (process_img): html_quote()
+
+2002-12-06 Takahashi Youichirou <nikuq@hk.airnet.ne.jp>
+
+ * [w3m-dev 03530] save history
+ * history.c (saveHistory): save tmpfile and rename
+
+2002-12-06 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * NEWS: func: ACCESSKEY, LINK_MENU
+
+2002-12-06 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03529] Support of title, accesskey of anchor
+ * anchor.c (putAnchor): arg title, key
+ initialize slave
+ (registerHref): arg title, key
+ (registerName): title = NULL, key = '\0'
+ (registerForm): title = NULL, key = '\0'
+ (_put_anchor_news): title = NULL, key = '\0'
+ (_put_anchor_all): title = NULL, key = '\0'
+ (addMultirowsImg): register title, accesskey
+ (addMultirowsForm): title = NULL, key = '\0'
+ (getAnchorText): added
+ * display.c (displayBuffer): show title if any
+ * file.c (set_breakpoint): use bcopy
+ (back_to_breakpoint): use bcopy
+ (flushline): s/anchor/anchor.url/
+ s/anchor_hseq/anchor.hseq/
+ s/anchor_target/anchor.target/
+ add anchor.*
+ (close_effect0): s/anchor/anchor.url/
+ s/anchor_hseq/anchor.hseq/
+ (close_anchor): use bzero
+ (process_img): ATTR_TITLE,
+ (HTMLtagproc1): s/anchor/anchor.url/
+ target, referer, title, accesskey, hseq
+ (HTMLlineproc2body): ATTR_TITLE, ATTR_ACCESSKEY
+ (init_henv): use bzero
+ * fm.h (Anchor): add title, accesskey, slave
+ (Breakpoint): use Anchor
+ (struct readbuffer): use Anchor
+ * funcname.tab (ACCESSKEY): added
+ (LINK_MENU): added
+ * html.c (ALST_A): add ATTR_TITLE, ATTR_ACCESSKEY
+ (ALST_IMG): add ATTR_TITLE
+ (ALST_IMG_ALT): add ATTR_TITLE
+ (AttrMAP): add accesskey, renum
+ * html.h (ATTR_ACCESSKEY): added
+ (ATTR_*): renum 50->60
+ * main.c (linkMn): added
+ (accessKey): added
+ * menu.c (LinkMenu): deleted
+ (LinkV): deleted
+ (initLinkMenu): deleted
+ (lmGoURL): deleted
+ (popupMenu): delete initLinkMenu()
+ (initMenu): delete Link
+ (link_menu): added
+ (accesskey_menu): added
+ * proto.h (linkMn): added
+ (link_menu): added
+ (accessKey): added
+ (accesskey_menu): added
+ (putAnchor): arg title, key
+ (registerHref): arg title, key
+ (registerImg): arg title
+ (getAnchorText): added
+ * doc/README.func (ACCESSKEY): added
+ (LINK_MENU): added
+ * doc-jp/README.func (ACCESSKEY): added
+ (LINK_MENU): added
+ * scripts/w3mhelp.cgi.in (Hyperlink operation): add linkMn accessKey
+
+2002-12-06 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03528] area without alt
+ * map.c (getCurrentMapLabel): when a->alt is empty
+
+2002-12-06 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03527] fix frame.c
+ * frame.c (createFrameFile): move need_reconstruct
+
+2002-12-06 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03526] Re: fix doc*/README.func, w3mhelp.cgi.in
+ * scripts/w3mhelp.cgi.in: (load_keymap):
+ always upcase ESC,SPC,TAB,DEL,UP,DOWN,RIGHT,LEFT
+
+2002-12-05 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03525] Re: sync option
+ * func.c (initKeymap): delete check force, keymap_initialized
+
+2002-12-05 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03524] fix doc*/README.func, w3mhelp.cgi.in
+ * doc/README.func (REINIT): added
+ * doc-jp/README.func (REINIT): added
+ * scripts/w3mhelp.cgi.in (Page/Cursor motion):
+ add moveR1 movL1 movD1 movU1 ldown1 lup1
+ (File/Stream operation): add pipeBuf
+ (Miscellany): add dispVer execCmd reinit
+ (load_keymap): rewrite
+ (norm_key): rewrite
+
+2002-12-05 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * NEWS: rc: display_ins_del
+
+2002-12-05 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03523] Re: del/ins
+ * file.c (HTMLtagproc1): check displayInsDel, RB_DEL
+ * fm.h (RB_DEL): added
+ (displayInsDel): added
+ * rc.c (CMT_DISP_INS_DEL): added
+ (display_ins_del): added
+ * table.c (feed_table_tag): check displayInsDel, TBLM_DEL
+ * table.h (TBLM_DEL): added
+ (TBLM_ANCHOR): renum
+ (struct table_mode): unsigned int pre_mode
+
+2002-12-05 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03522] newline around <pre>..</pre>
+ * file.c (HTMLtagproc1): break before <pre>/after </pre> if necessary
+
+2002-12-05 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03521] sync option
+ * display.c (redrawNLine): calcTabPos()
+ * func.c (initKeymap): return if keymap_initialized
+ * main.c (calcTabPos): no more static
+ (main): move sync_with_option, initCookie, setLocalCookie
+ move backend
+ move initKeymap, initMouseAction, initMenu
+ remove calcTabPos
+ add displayBuffer
+ (numTab): static
+ (deleteTab): delete calcTabPos
+ (moveTab): delete calcTabPos
+ * proto.h (calcTabPos): added
+
+2002-12-05 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev-en 00841] Re: w3m segfaults if the terminal is not writable
+ * terms.c (reset_tty): don't close stderr
+
+2002-12-04 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03516] Re: 2 stroke keybinding
+ * func.c (keymap_initialized): initialized to FALSE
+ (setKeymap): push KeyData
+
+2002-12-04 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * NEWS: 2 stroke keybinding
+ func: MULTIMAP
+
+2002-12-04 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03515] 2 stroke keybinding
+ * func.c (setKeymap): add map
+ K_MULTI support
+ (getKey2): added
+ (getKey): rewrite to use getKey2()
+ * func.h (K_MULTI): added
+ (MULTI_KEY): added
+ * funcname.tab (MULTIMAP): added
+ * main.c (escKeyProc): added
+ (escmap): rewrite to use escKeyProc()
+ (escbmap): rewrite to use escKeyProc()
+ (escdmap): rewrite to use escKeyProc()
+ (multimap): added
+ * proto.h (multimap): added
+
+2002-12-04 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03514] Effect of tab title
+ * display.c (redrawNLine): rewrite, do without clrtoeolx()
+
+2002-12-04 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03512] Re: HTML parser
+ * table.c (feed_table_tag): HTML_N_SELECT, HTML_N_CAPTION
+
+2002-12-04 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03510] waiting time when cookie was rejected.
+ * file.c (readHeader): display cookie warnings for only 1 sec
+
+2002-12-04 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03509] HTML parser
+ * file.c (close_textarea): delete
+ (HTMLtagproc1): rewrite
+ delete HTML_EOL
+ move HTML_LISTING, HTML_N_LISTING
+ add HTML_PRE_PLAIN, HTML_N_PRE_PLAIN
+ add HTML_PLAINTEXT
+ end_tag
+ (HTMLlineproc0): s/str/line/
+ rewrite
+ (completeHTMLstream): </textarea> if necessary
+ * fm.h (struct readbuffer): delete ignore_tag
+ add end_tag
+ (RB_XMPMODE): deleted
+ (RB_LSTMODE): deleted
+ (RB_SCRIPT): added
+ (RB_STYLE): added
+ (RB_*): renumber
+ (R_ST_EOL): added
+ (R_ST_*): renumber
+ (ST_IS_TAG): check R_ST_EOL
+ * form.c (form_fputs_decode): remove <eol> handling
+ * frame.c (newFrame): remove_space()
+ (CASE_TABLE_TAG): added
+ (createFrameFile): rewrite
+ * html.c (TagMAP): delete eol
+ add pre_plain, /pre_plain
+ * html.h (HTML_EOL): deleted
+ (HTML_PRE_PLAIN): added
+ (HTML_N_PRE_PLAIN): added
+ * table.c (visible_length): rewrite
+ (visible_length_plain): added
+ (maximum_visible_length_plain): added
+ (do_refill): R_ST_EOL
+ (table_close_select): end_tag
+ (table_close_textarea): end_tag
+ (TAG_ACTION_PLAIN): added
+ (feed_table_tag): rewrite
+ (feed_table): rewrite
+ * table.h (TBLM_*) reassign
+ (struct table_mode): delete ignore_tag
+ add end_tag
+ * tagtable.tab (eol): deleted
+ (pre_plain): added
+ (/pre_plain): added
+
+2002-12-03 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03505] Re: coredump when ssl error
+ * file.c (loadGeneralFile): term_raw(), SIGINT before retry
+
+2002-12-03 AIDA Shinra <aida-s@jcom.home.ne.jp>
+
+ * [w3m-dev 03504] coredump when ssl error
+ * file.c (loadGeneralFile): term_raw, SIGINT
+
+2002-12-03 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * remove ununsed variables
+ * file.c (addLink): unused variable `t'
+ * menu.c (lmGoURL): unused variable `pu'
+
+2002-12-03 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03501] link tag support
+ * buffer.c (reshapeBuffer): initialize formlist, linklist,
+ maplist, hmarklist, imarklist
+ * file.c (addLink): added
+ (HTMLlineproc2body): add HTML_LINK
+ (loadHTMLstream): use HTMLlineproc0 not in R_ST_NORMAL
+ (reloadBuffer): initialize linklist, maplist,
+ hmarklist, imarklist
+ * fm.h (LINK_TYPE_NONE): added
+ (LINK_TYPE_REL): added
+ (LINK_TYPE_REV): added
+ (LinkList): added
+ (Buffer): add linklist
+ * html.c (ALST_LINK): added
+ (TagMAP): add link
+ (AtrMAP): add rel, rev, title
+ * html.h (HTML_LINK): added
+ (ATTR_REL): added
+ (ATTR_REV): added
+ (ATTR_TITLE): added
+ * map.c (append_map_info): anchor
+ (append_link_info): added
+ (page_info_panel): append_link_info
+ * menu.c (LinkMenu): added
+ (linkV): added
+ (initLinkMenu): added
+ (lmGoURL): added
+ (popupMenu): initLinkMenu()
+ (initMenu): w3mMenuList new 4
+ add "Link"
+ * tagtable.tab (link): added
+
+2002-11-29 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m bug] internal tag
+ * display.c (loadHTMLstream): HTMLlineproc0 internal
+
+2002-11-29 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03498] Re: parse <!-- ... --> in <script>
+ * file.c (HTMLlineproc0): tag in textarea
+ * frame.c (createFrameFile): fix comment processing in frame
+
+2002-11-28 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03497] incorrect image size
+ * image.c (getImageSize): invoke w3mimgdiplay -size instead of "5;..."
+ * w3mimgdisplay.c (defined_size): added
+ (main): if defined_size get_image_size()
+ (GetOption): -size
+
+2002-11-28 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03496] parse <!-- ... --> in <script>
+ * etc.c (read_token): check <pre>
+ * file.c (HTMLlineproc0): remove comment processing
+ check pre mode
+ comment processing move
+
+2002-11-28 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03495] local CGI can't work
+ * local.c: #include "hash.h"
+ (set_environ): env string put in hash
+
+2002-11-28 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03494] Number of line is few when pager mode.
+ * display.c (redrawLine): buf->rootY
+
+2002-11-28 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03493] scroll menu
+ * menu.c (mLineU): added
+ (mLineD): added
+ (MenuKeymap): C-r, C-s, J, K
+ (mouse_scroll_line): added
+ (process_mMouse): drag
+ BTN4, BTN5
+ * doc-jp/README.menu: update
+
+2002-11-27 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * version.c.in: w3m/0.3.2.1+cvs
+
+2002-11-27 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03491] Re: case insensitive regexp search
+ * regex.c (matchWhich): tolower
+
+2002-11-27 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * use local_cookie for support local-cgi commands
+ * file.c (loadGeneralFile): pass Local_cookie to DirBufferCommand
+ * fm.h (Local_cookie): Str
+ * local.c (setLocalCookie): Str, set_environ()
+ (set_cgi_environ): remove LOCAL_COOKIE
+ * main.c (ldhelp): pass Local_cookie
+ (adBmark): ditto
+ * rc.c (optionpanel_src1): cookie
+ (load_option_panel): pass Local_cookie
+ * w3mbookmark.c (main): check Local_cookie
+ * w3mhelperpanel (main): ditto
+ * scripts/dirlist.cgi.in: ditto
+ * scripts/w3mhelp.cgi.in: ditto
+ * scripts/multipart/multipart.cgi.in: ditto
+
+2002-11-27 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * frame.c (createFrameFile): html_quote()
+
+2002-11-27 Hiroyuki Ito <hito@crl.go.jp>
+
+ * [w3m-dev 03488] meta refresh in frame
+ * file.c (getMetaRefreshParam): added
+ (HTMLtagproc1): use getMetaRefreshParam()
+ * frame.c (createFrameFile): check meta refresh
+ * proto.h (getMetaRefreshProgram): added
+
+2002-11-27 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * w3m 0.3.2.1 security fix
+ * frame.c (createFrameFile): html_quote()
+
+2002-11-27 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03486] fix of displayLineInfo
+ * display.c (displayBuffer): don't divide by 0
+
+2002-11-26 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03485] fix mouse menu position
+ * main.c (do_mouse_action): use anchor_map is no active_map
+ check top left corner
+ (FRAME_WIDTH): added
+ (menuMs): adjust cursorX using FRAME_WIDTH
+
+2002-11-26 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * NEWS: func: CLOSE_TAB_MOUSE, MENU_MOUSE, MOVE_MOUSE, TAB_MOUSE
+
+2002-11-26 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * doc/README.mouse_menu: deleted
+ * doc/README.mouse: added
+ * doc-jp/README.mouse_menu: deleted
+ * doc-jp/README.mouse: added
+
+2002-11-26 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * map.c (follow_map_menu): MapArea *a is used ifdef MENU_MAP
+ * func.c (initMouseAction): remove unsed variables: x, width, map
+
+2002-11-26 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03478] mouse action configuration
+ * display.c (displayBuffer): mouse_menu -> mouse_action.menu_str
+ mouse_action.lastline_str
+ (redrawNLine): mouse_menu -> mouse_action.menu_str
+ * fm.h (MouseMenuMap): deleted
+ (MouseActionMap): added
+ (MouseAction): added
+ (mouse_action): added
+ * func.c (default_mouse_action): added
+ (setMouseAction0): added
+ (setMouseAction1): added
+ (setMouseAction2): added
+ (initMouseMenu): deleted
+ (initMouseAction): added
+ * funcname.tab (CLOSE_TAB_MOUSE): added
+ (MENU_MOUSE): added
+ (MOVE_MOUSE): added
+ (TAB_MOUSE): added
+ * main.c (main): initMouseMenu() -> initMouseAction()
+ mouse_menu -> mouse_action
+ (posTab): mouse_menu -> mouse_action
+ check y > LastTab->y
+ (mouse_menu_action): deleted
+ (do_mouse_action): added
+ (process_mouse): mouse_menu -> mouse_action
+ do_mouse_action()
+ (movMs): added
+ (menuMs): added
+ (tabMs): added
+ (closeTMs): added
+ (reinit): initMouseMenu() -> initMouseAction()
+ resource: MOUSE_MENU -> MOUSE
+ (calcTabPos): mouse_menu -> mouse_action
+ * menu.c (mainMn): mouse_menu -> mouse_action
+ (selMn): mouse_menu -> mouse_action
+ (tabMn): mouse_menu -> mouse_action
+ (initMenu): add SelectTag to w3mMenuList
+ * proto.h (movMs): added
+ (menuMs): added
+ (tabMs): added
+ (closeTMs): added
+ (initMouseMenu): deleted
+ (initMouseAction): added
+ * rc.c (sync_with_option): initMouseMenu() -> initMouseAction()
+ * doc/README.func (CLOSE_TAB_MOUSE): added
+ (MENU_MOUSE): added
+ (MOVE_MOUSE): added
+ (TAB_MOUSE): added
+ * doc-jp/README.func (CLOSE_TAB_MOUSE): added
+ (MENU_MOUSE): added
+ (MOVE_MOUSE): added
+ (TAB_MOUSE): added
+
+2002-11-26 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03476] Re: Bug#170506: w3m: Unable to use mozilla bugzilla
+ * file.c (HTMLtagproc1): initialize ignore_tag in table_mode
+ (HTMLtagproc0): check table_level
+ * table.c (feed_table_tag): set mode->ignore_tag
+ * table.h (struct table_mode): add ignore_tag
+
+2002-11-25 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03471] Re: SETPGRP()
+ * configure: SETPGRP() always defined
+ * proto.h (close_all_fds): added
+ (myExec): #ifdef HAVE_SETPGRP
+ * etc.c (close_all_fds): added
+ (myExec): #ifdef HAVE_SETPGRP
+ (mySystem): #ifndef -> #ifdef
+ * file.c (_doFileCopy): delete #ifdef HAVE_SETPGRP
+ (doFileSave): ditto
+ * image.c (openImgdisplay): delete #ifdef HAVE_SETPGRP
+ use close_all_fds()
+ * search.c (open_migemo): ditto
+
+2002-11-23 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03466] Re: background download when external viewer
+ * file.c (doExternal): UFclose(&uf);
+
+2002-11-23 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03464] Re: case insensitive regexp search
+ (rewrite [w3m-dev 03462] by Hiroyuki Ito <hito@crl.go.jp>)
+ * regex.c (matchWhich): add int
+ (newRegex0): igncase
+ (regmatch1): matchWhich with re->mode & RE_IGNCASE
+ (matchWhich): add igncase
+
+2002-11-23 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03459] background download when external viewer
+ * etc.c (myExec): added
+ (mySystem): rewrite to use myExec()
+ * file.c (doExternal): run background if BackgroundExtViewer
+ * proto.h (myExec): added
+
+2002-11-23 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * doc/README.mouse_menu: delete column 10 limit
+ * doc-jp/README.mouse_menu: ditto
+
+2002-11-23 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03458] Re: mouse menu
+ * display.c (displayBuffer): nTab2 -> nTab, mouse_menu
+ * fm.h (nTab2): deleted
+ (MouseMenuMap): added
+ (MouseMenu): added
+ (LIMIT_MOUSE_MENU): added
+ * func.c (initMouseMenu): delete mouse_menu_map initialization
+ conv_from_system
+ mouse_menu->width
+ * main.c (main): mouse_menu->in_action = FALSE
+ (posTab): check mouse_menu
+ (mouse_menu_action): add y arg
+ mouse_menu_width check
+ (process_mouse): nTab2 -> nTab, mouse_menu
+ (nTabLine): deleted
+ (calcTabPos): check mouse_menu
+ * menu.c (mainMn): x, y
+ (selMn): mouse_menu check
+ (tabMn): mosue_menu check
+ * proto.h (nTabLine): deleted
+
+2002-11-22 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * NEWS: options: -N
+
+2002-11-22 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03457] open URL of command line on each new tabs
+ * main.c (delBuffer): static
+ (fusage): -N
+ (main): add open_new_tab for -N
+
+2002-11-22 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03456] tiling of tab
+ * display.c (displayBuffer): use LastTab->y
+ (redrawNLine): fix column calculation
+ * fm.h (TabBuffer): add x1, x2, y
+ * main.c (calcTabPos): added
+ (main): calcTabPos()
+ (mouse_scroll_line): rewrite
+ (process_mouse): use LastTab->y
+ (_newT): calcTabPos()
+ (calcTabPos): added
+ (deleteTab): calcTabPos()
+ (moveTab): calcTabPos()
+
+2002-11-22 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * doc/README.mouse_menu: added
+ * doc-jp/README.mouse_menu: added
+
+2002-11-22 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03455] mouse menu
+ * configure (config.h): MOUSE_FILE
+ * display.c (displayBuffer): nTab -> nTab2, N_TAB -> nTabLine()
+ (redrawNLine): nTab -> nTab2, N_TAB -> nTabLine()
+ mouse_menu support
+ * fm.h (nTab2): added
+ (N_TAB): deleted
+ (NO_TABBUFFER): added
+ (struct _MouseMenu): added
+ (mouse_menu_map): added
+ (mouse_menu): added
+ * func.c (initMouseMenu): added
+ * main.c (main): initMouseMenu()
+ (posTab): mouse_menu support
+ (mouse_menu_action): added
+ (process_mouse): mouse_menu support
+ (reinit): initMouseMenu()
+ (nTabLine): added
+ (moveTab): check NO_TABBUFFER
+ * proto.h (nTabLine): added
+ (initMouseMenu): added
+ * rc.c (sync_with_option): initMouseMenu()
+
+2002-11-22 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * NEWS: func: NEXT, PREV
+
+2002-11-22 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03454] next / previous buffer
+ * funcname.tab (NEXT): added
+ (PREV): added
+ * main.c (nextBf): added
+ (prevBf): added
+ * proto.h (nextBf): added
+ (prevBf): added
+ * doc/README.func (NEXT): added
+ (PREV): added
+ * doc-jp/README.func (NEXT): added
+ (PREV): added
+ * scripts/w3mhelp.cgi.in (Buffer operation): nextBf prevBf
+
+2002-11-20 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * NEWS: rc: image_map_list
+
+2002-11-20 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03452] image map
+ * display.c (displayBuffer): use getCurrentMapLabel()
+ * fm.h (MapArea): delete ifdef MENU_MAP
+ (image_map_list): added
+ * main.c (followA): don't call retrieveCurrentImg() ifdef USE_IMAGE
+ use retrieveCurrentMap() ifndef USE_IMAGE
+ (_followForm): indent
+ (drawAnchorCursor0): add AnchorList
+ (drawAnchorCuror): pass AnchorList to drawAnchorCursor0
+ (follow_map): follow_map_panel
+ * map.c (searchMapList): added
+ (nearestMapArea): n, min default value to -1
+ (searchMapArea): added
+ (getCurrentMapLabel): added
+ (getMapXY): moved
+ (retrieveCurrentMap): added
+ (follow_map_menu): parsed_tagarg -> name
+ rewrite to search map list/area
+ (follow_map_panel): parsed_tagarg -> name
+ rewrite to search map list/area
+ (newMapArea): delete ifdef MENU_MAP
+ (append_map_info): added
+ (page_info_panel): append_map_info
+ * proto.h (follow_map_menu): parsed_tagarg -> name
+ (follow_map_panel): parsed_tagarg -> name
+ (getCurrentMapLabel): added
+ (retrieveCurrentMap): added
+ * rc.c (CMT_IMAGE_MAP_LIST): added
+ (image_map_list): added
+
+2002-11-20 Yoshinobu Sakane <sakane@d4.bsd.nes.nec.co.jp>
+
+ * [w3m-dev 03450] Re: cygwin console on Win9X
+ * terms.c (mouse_init): ifdef __CYGWIN__
+ (mouse_end): ditto
+
+2002-11-19 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * ftp.c (ftp_fclose): void return
+
+2002-11-19 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03444] download from ftp.
+ * file.c (FTPhalfclose: static
+ (loadGeneralFile): UFclose
+ FTPhalfclose for SCM_FTP
+ UFclose before signal back
+ (loadImageBuffer): UFclose before signal back
+ (openGeneralPagerBuffer): UFclose
+ * ftp.c (ftp_fclose): added
+ (Ftpfclose): dont read response(), but ftp_fclose()
+ (FtpBye): ftp_fclose()
+
+2002-11-19 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03449] Add DOWNLOAD_LIST to doc*/README.func and scripts/w3mhelp.cgi.in
+ * doc-jp/README.func (DOWNLOAD_LIST): added
+ * doc/README.func (DOWNLOAD_LIST): added
+ * scripts/w3mhelp.cgi.in (Miscellany): add ldDL
+
+2002-11-19 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03448] Some fixes
+ * url.c (KeyAbort): SIGNAL_RETURN
+ * .cvsginore: delete w3mimgsize
+ * scripts/.cvsignore: delete xface2xbm
+ * scripts/xface2xbm.in: deleted
+
+2002-11-19 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03447] Re: Open download list panel on new tab
+ * main.c (download_action): buffer management deleted
+ (ldDL): buffer management moved here
+
+2002-11-19 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * NEWS: rc: open_tab_dl_list
+
+2002-11-19 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03446] Open download list panel on new tab
+ * fm.h (open_tab_dl_list): added
+ * main.c (download_action): buffer delete when download done
+ (ldDL): open buf in new tab if open_tab_dl_list
+ * rc.c (CMT_OPEN_TAB_DL_LIST): added
+ (open_tab_dl_list): added
+
+2002-11-19 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03445] download list for "w3m foo.tar.gz"
+ * main.c (main): display download list
+
+2002-11-19 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03443] Can't display "echo only_one_line | w3m"
+ * display.c (redrawNLine): check 1st line
+
+2002-11-16 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03442] Re: setting form on loading
+ * form.c (preFormUpdateBuffer): ifdef MENU_SELECT
+
+2002-11-16 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03441] charset of save file
+ * file.c (_doFileCopy): use conv_from_system()
+ (doFileSave): conv_from_system()
+ * main.c (DownloadListBuffer): conv_from_system()
+
+2002-11-16 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03440] Re: restore alarm event
+ * fm.h (BP_RELOAD): added
+ (DOWNLOAD_LIST_TITLE): added
+ * main.c (main): if BP_RELOAD, do reload
+ (reload): if buffer is DOWNLOAD_LIST, ldDL()
+ (DownloadListBuffer): rewrite with DOWNLOAD_LIST_TITLE
+ (download_action): delete "update"
+ don't delete prev buffer
+ (ldDL): rewrite to do reload
+
+2002-11-16 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03439] restore alarm event
+ * fm.h (AL_RESTORE): added
+ * main.c (alarm_sec): deleted
+ (alarm_status): deleted
+ (alarm_buffer): deleted
+ (alarm_event): deleted
+ (AlarmEvent): added
+ (CurrentAlarm): added
+ (PrevAlarm): added
+ (main): rewrite with CurrentAlarm
+ (SigAlarm): rewrite with CurrentAlarm
+ (copyAlarmEvent): added
+ (setAlarm): if AL_RESTORE, copy back from PrevAlarm
+ rewrite with CurrentAlarm
+
+2002-11-16 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03438] Re: segmentation fault by large complex table.
+ * table.c (check_table_height): check MAXROWCELL
+ * table.h (MAXROWCELL): added
+
+2002-11-16 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03437] Re: Check image size
+ * fm.h (MAX_IMAGE_SIZE): changed to 2048
+
+2002-11-16 Hiroyuki Ito <hito@crl.go.jp>
+
+ * [w3m-dev 03436] Check image size
+ * file.c (process_img): check w > MAX_IMAGE_SIZE
+ (HTMLlineproc2body): check w,h > MAX_IMAGE_SIZE
+ * fm.h (MAX_IMAGE_SIZE): added
+ * image.c (getImageSize): check w,h,width,height > MAX_IMAGE_SIZE
+
+2002-11-16 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03435] save image with SAVE
+ * buffer.c (discardBuffer): check image
+ * file.c (loadImageBuffer): add st
+ IMG_FLAG_DONE_REMOVE
+ s/sourcefile/mailcap_source/
+ * fm.h (IMG_FLAG_DONT_REMOVE): added
+ * image.c (drawImage): & IMG_FLAG_LOADED
+ (deleteImage): & IMG_FLAG_DONT_REMOVE
+ (showImageProgress): & IMG_FLAG_LOADED
+ (getImage): & IMG_FLAG_LOADED
+ (getImageSize): & IMG_FLAG_LOADED
+ * main.c (vmSrc): delete ifdef USE_IMAGE
+
+2002-11-16 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03434] Re: cygwin console on Win9X
+ * terms.c (cygwin_mouse_btn_swapped): ifdef USE_MOUSE
+ (lastConMouse): deleted
+ (check_win9x): static
+ (read_win32_console): static
+ (GetConsoleHwnd): static
+ (cygwin_version): ifdef USE_MOUSE, static
+ (check_cygwin_console): static
+ (NEED_XTERM_ON): added
+ (NEED_XTERM_OFF): added
+ (NEED_CYGWIN_ON): added
+ (NEED_CYGWIN_OFF): added
+ (XTERM_TITLE): static char[]
+ (SCREEN_TITLE): static char[]
+ (CYGWIN_TITLE): static char[]
+ (term_title): check title_str
+ * terms.h (LASTLINE): added
+ (is_xterm): deleted
+ (enable_win9x_console_input): extern
+ (disable_win9x_console_input): extern
+ (NEED_XTERM_ON): deleted
+ (NEED_XTERM_OFF): deleted
+
+2002-11-16 WATANABE Katsuyuki <katsuyuki_1.watanabe@toppan.co.jp>
+
+ * [w3m-dev 03433] cygwin console on Win9X
+ * configure (config.h): SUPPORT_WIN9X_CONSOLE_MBCS
+ * linein.c (inputLineHistSearch): enable_win9x_console_input()
+ disable_win9x_console_input()
+ * main.c (mouse): cygin_mouse_btn_swapped
+ * terms.c (is_xterm): static
+ (isLocalConsole): added
+ (cygwin_mouse_btn_swapped): added
+ (check_win32_console): deleted
+ (check_win9x): added
+ (init_win32_console_handle): check ttyslot()
+ (enable_win9x_console_input): added
+ (disable_win9x_console_input): added
+ (read_win32_console_input): delete ifdef MOUSE
+ (cmp_tv): deleted
+ (subtract_tv): deleted
+ (GetConsoleHwnd): added
+ (cygwin_version): added
+ (select_or_poll_win32_console): deleted
+ (check_cygwin_console): added
+ (select_win32_console): deleted
+ (set_tty): check_cygin_console()
+ (term_title): SetConsoleTitle()
+ (CYGWIN_ON): added
+ (CYGIN_OFF): added
+ (mouse_init): NEED_CYGWIN_ON
+ (mouse_end): NEED_CYGWIN_OFF
+ * terms.h (cygwin_mouse_btn_swapped): added
+ (enable_win9x_console_input): added
+ (disable_win9x_console_input): added
+ (NEED_CYGWIN_ON): added
+ (NEED_CYGWIN_OFF): added
+
+2002-11-16 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03432] Re: tab browser
+ * display.c (displayBuffer): s/buf->LINES/LASTLINES/ in cygwin
+
+2002-11-16 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * NEWS: func: DOWNLOAD_LIST
+
+2002-11-16 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03431] save file by background process
+ * file.c (loadGeneralFile): use _doFileCopy()
+ (_doFileCopy): renamed from doFileCopy()
+ lock
+ fork & save
+ (doFileSave): lock
+ fork & save
+ * fm.h (DownloadList): added
+ (FirstDL): added
+ (LastDL): added
+ * form.c (struct internal_action): add download
+ * funcname.tab (DOWNLOAD_LIST): added
+ * html.h (URLFile): add url
+ * main.c (dump_extra): add add_download_list
+ (main): add_download_list, ldDL()
+ (_quitfm): added
+ (quitfm): rewrite with _quitfm()
+ (qquitfm): ditto
+ (w3m_exit): stopDownload()
+ (addDownloadList): added
+ (checkDownloadList): added
+ (convert_size3): added
+ (DownloadListBuffer): added
+ (download_action): added
+ (stopDownload): added
+ (ldDL): added
+ * proto.h (ldDL): added
+ (convert_size): added
+ (convert_size2): added
+ (doFileCopy): deleted
+ (_doFileCopy): added
+ (addDownloadList): added
+ (stopDownload): added
+ (checkDownloadList): added
+ (download_action): added
+ * url.c (openURL): save url in uf
+
+2002-11-15 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03430] disable display of alarm command
+ * main.c (SigAlarm): remove display_message_nsec()
+ (setAlarm): show sec
+
+2002-11-15 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * NEWS: env,rc: https_proxy
+
+2002-11-15 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03429] https proxy
+ * fm.h (HTTPS_proxy): added
+ (HTTPS_proxy_parsed): added
+ * main.c (main): check https_proxy
+ * rc.c (CMT_HTTPS_PROXY): added
+ (https_proxy): added
+ (parse_proxy): HTTPS_proxy
+ * url.c (openURL): for HTTPS, use HTTPS_proxy
+ (schemeToProxy): HTTPS_proxy_parsed
+
+2002-11-14 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03428] install manual as w3m.exe.1 on Cygwin
+ * XMakefile (MAN1_TARGET): added
+ (HELP_TARGET): added
+ (install): use MAN1_TARGET, HELP_TARGET
+ (uninstall): use MAN1_TARGET, uninstall HELP_TARGET
+
+2002-11-14 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03427] Re: Select the nearest map area as default.
+ * map.c (newMapArea): accept sign chars
+ if points is not enough, return as SHAPE_UNKNOWN
+
+2002-11-14 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03425] charset of title
+ * display.c (displayBuffer): buffername converted to system coding
+ for term title
+
+2002-11-14 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03424] Content length
+ * file.c (loadGeneralFile): current_content_length before do_download
+ (save2tmp): current_content_length move before return
+
+2002-11-12 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03422] Re: setting form on loading
+ * form.c (loadPreForm): initialize name
+ check textarea, name for /textarea
+
+2002-11-12 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03418] Re: tab browser
+ * display.c (redrawNLine): s/clrtoeol/clrtoeolx/
+ move rootY
+
+2002-11-12 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03417] install_w3mimgdisplay
+ * configure: define install_w3mimgdisplay
+ after use_w3mimg_fb determined
+
+2002-11-12 Akira TAGOH <at@gclab.org>
+
+ * [w3m-dev 03415] fix a build issue for 64bit arch
+ * gcmain.c: deleted
+ * main.c: no need gcmain.c
+ s/MAIN/main/
+ * mktable.c: ditto
+ * w3mbookmark.c: ditto
+ * w3mhelperpanel.c: ditto
+
+2002-11-12 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * doc/w3m.1: update
+ * doc-jp/w3m.1: update
+ * NEWS: update: -show-option
+
+2002-11-12 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03414] Re: show parameter
+ * main.c (fusage): add -show-option
+ (MAIN): check -show-option
+
+2002-11-12 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03413] Re: setting form on loading
+ * form.c (loadPreForm): add textarea
+ (preFormUpdateBuffer): submit if value is matched as well
+ case FORM_TEXTAREA
+ case FORM_SELECT ifdef MENU_SELECT
+
+2002-11-12 Yuji Abe <cbo46560@pop12.odn.ne.jp>
+
+ * [w3m-dev 03411] do AUXBIN_TARGETS
+ * scripts/Makefile (all): add AUXBIN_TARGETS
+ (clean): add AUXBIN_TARGETS
+
+2002-11-12 AIDA Shinra <aida-s@jcom.home.ne.jp>
+
+ * [w3m-dev 03408] edit From in w3mail.cgi
+ * scripts/w3mmail.cgi.in: edit from as well
+
+2002-11-12 AIDA Shinra <aida-s@jcom.home.ne.jp>
+
+ * [w3m-dev 03408] fix Bug#87472
+ MOUSE_SCROLL_LINE should be a run-time option
+ * fm.h (relative_wheel_scroll): added
+ (fixed_wheel_scroll_count): added
+ (relative_wheel_scroll_ratio): added
+ * main.c (mouse_scroll_line): added
+ (process_mouse): s/MOUSE_SCROLL_LINE/mouse_scroll_line()/
+ * menu.c (MOUSE_SCROLL_LINE): deleted
+ * terms.h (MOUSE_SCROLL_LINE): deleted
+ * rc.c (CMT_RELATIVE_WHEEL_SCROLL): added
+ (CMT_RELATIVE_WHEEL_SCROLL_RATIO): added
+ (CMT_FIXED_WHEEL_SCROLL_COUNT): added
+ (wheelmode): added
+ (params3): add relative_wheel_scroll,
+ relative_wheel_scroll_ratio,
+ fixed_wheel_scroll_count
+ * NEWS: updated
+
+2002-11-12 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03407] char GlobalKeymap -> unsigned char GlobalKeymap
+ * fm.h (GlobalKeymap): char->unsigned char
+ (EscKeymap): ditto
+ (EscBKeymap): ditto
+ (EscDKeymap): ditto
+ (PcKeymap): ditto
+ * keybind.c: ditto
+ * keybind_lynx.c: ditto
+
+2002-11-12 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03406]
+ * scripts/Makefile: add AUXBIN_DIR
+ update LIB_DIR, HELP_DIR
+ xface2xpm installed in AUXBIN_DIR
+ * scripts/multipart/Makefile: update LIB_DIR
+ * scripts/w3mman/Makefile: update LIB_DIR
+
+2002-11-12 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03405] Re: tab browser
+ * main.c (moveTab): B_FORCE_REDRAW
+
+2002-11-10 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03401] w3mhelp.cgi
+ * proto.h (tabMn): nulcmd ifndef USE_MENU
+ * scripts/w3mhelp-funcdesc.en.pl.in: add LINEEDIT:EDITOR
+ * scripts/w3mhelp-funcdesc.ja.pl.in: add LINEEDIT:EDITOR
+ Tab operation
+ * scripts/w3mhelp-funcname.pl.in: add LINEEDIT:EDITOR C-o
+ * scripts/w3mhelp.cgi.in: add tabA in Hyperlink operation
+ add tabURL, tabrURL in File/Stream operation
+ add Tab operation
+ add lineedit_editor in Line edit mode
+
+2002-11-10 NOMIYA Masaru <nomiya@ttmy.ne.jp>
+
+ * [w3m-dev 03399]
+ * XMakefile: ;; -> ;
+
+2002-11-10 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03398] auxbindir
+ * XMakefile: EXT_TARGETS -> LIB_TARGETS, AUXBIN_TARGETS
+ * config.h.dist: add AUXBIN_DIR
+ LIB_DIR is cgi-bin
+ * configure: add -auxbindir
+ add AUXBIN_DIR
+ LIB_DIR is cgi-bin
+ EXT_TARGETS -> LIB_TARGETS, AUXBIN_TARGETS
+ * file.c (compression_decoder): libfile_p -> auxbin_p
+ (check_command): libfile_p -> auxbin_p
+ use w3m_auxbin_dir() instead of w3m_lib_dir()
+ (acceptableEncoding): libfile_p -> auxbin_p
+ (xface2xpm): use auxbinFile() instead of libFile()
+ (uncompress_stream): libfile_p -> auxbin_p
+ use auxbinFile() instead of libFile()
+ * image.c (getCharSize): use w3m_auxbin_dir() instead of w3m_lib_dir()
+ (openImgdisplay): use w3m_auxbin_dir() instead of w3m_lib_dir()
+ * indep.c (w3m_auxbin_dir): added
+ * indep.h (w3m_auxbin_dir): added
+ * proto.h (auxbinFile): added
+ * rc.c (auxbinFile): added
+ (libFile): #if 0, no longer used
+ (helpFile): used only #ifndef USE_HELP_CGI
+ * NEWS: separate auxbindir and libdir (local-CGI, file:///$LIB/)
+
+2002-11-09 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03396] Re: meta refresh problem
+ * main.c (MAIN): AL_IMPLICIT -> alarm_status
+ (SigAlarm): AL_IMPLICIT -> alarm_status
+
+2002-11-09 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03391] use editor when input at last line
+ * linein.c (_editor): added
+
+2002-11-09 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03390] some fixes related with form
+ * form.c (input_textarea): goto input_end
+ unlink(tmpf);
+ * main.c (_followForm): s/TEXT/Password/
+
+2002-11-09 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03388] meta refresh problem
+ * fm.h (AL_IMPLICIT_DONE): 3->4
+ (AL_ONCE): 8
+ (AL_IMPLICIT_ONCE): (AL_IMPLICIT|AL_ONCE)
+ * main.c (MAIN): & AL_IMPLICIT, & AL_IMPLICIT_DONE
+ (SigAlarm): & AL_IMPLICIT, & AL_IMPLICIT_DONE, & AL_ONCE
+ (setAlaramEvent): & AL_IMPLICIT
+
+2002-11-09 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03387] Re: tab browser
+ * buffer.c (newBuffer): buf->LINES initialize
+ (gotoLine): use buf->LINES
+ (gotoRealLine): use buf->LINES
+ * display.c (displayBuffer): check by buf->LINES
+ (redrawNLine): buf->LINES
+ (redrawLine): buf->LINES
+ (redrawLineImage): no need buf->rootY
+ (cursorDown): buf->LINES
+ (arrangeCursor): buf->LINES
+ * etc.c (columnSkip): buf->LINES
+ (lineSkip): buf->LINES
+ (currentLineSkip): buf->LINES
+ * fm.h (Buffer): add LINES
+ * main.c (nscroll): Currentbuf->LINES
+ (pgFore): Currentbuf->LINES
+ (pgBack): Currentbuf->LINES
+ (ctrCsrV): Currentbuf->LINES
+ (movD): Currentbuf->LINES
+ (movU): Currentbuf->LINES
+ (_goLine): Currentbuf->LINES
+ (drawAnchorCursor): Currentbuf->LINES
+ (setOpt): B_REDRAW_IMAGE
+ (newT): B_REDRAW_IMAGE
+ (closeT): B_REDRAW_IMAGE
+ (nextT): B_REDRAW_IMAGE
+ (prevT): B_REDRAW_IMAGE
+ (moveTab): B_NORMAL
+
+2002-11-09 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03386] Re: Interrupt in no_proxy_check()
+ * file.c (getAuthCookie): term_cbreak()
+ (loadGeneralFile): term_cbreak()
+ term_raw()
+ preFormUpdateBuffer() before term_raw()
+ (loadHTMLstream): term_raw()
+
+2002-11-07 Katsumi@yamaoka.cc
+
+ * [w3m-dev 03385] install-sh typo
+ * install-sh: s/'/"/
+
+2002-11-07 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03383] Select the nearest map area as default.
+ * fm.h (MapArea): add center_x, center_y
+ * map.c (nearestMapArea): added
+ (follow_map_menu): initial by nearestMapArea()
+ (newMapArea): set center_x, center_y
+
+2002-11-07 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03382] Interrupt in no_proxy_check()
+ * url.c (check_no_proxy): SIGINT trap by KeyAbort
+
+2002-11-06 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03380] fix configure
+ * configure: s/INSTALL_W3MIMGDISPLAY/install_w3mimgdisplay/
+ already define
+ * config.h.dist (INSTALL_W3MIMGDISPLAY): added
+
+2002-11-06 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03379] setuid w3mimgdisplay and check console tty
+ * XMakefile: w3mimgdisplay install by INSTALL_W3MIMGDISPLAY
+ * configure: ask setuid w3mimgdisplay
+ (w3mimgdisplay_setuid): added
+ (INSTALL_W3MIMGDISPLAY): added
+ * etc.c (mySystem): close until FOPEN_MAX
+ * image.c (openImgdisplay): setenv W3M_TTY
+ stderr to /dev/null
+ close until FOPEN_MAX
+ * install-sh: -o, -g for owner, group
+ * proto.h (ttyname_tty): added
+ * search.c (open_migemo): stderr to /dev/null
+ close until FOPEN_MAX
+ * terms.c (ttyname_tty): added
+ * w3mimgdisplay.c: include <sys/types.h>, <unistd.h>
+ W3MIMGDISPLAY_SETUID
+ stderr to /dev/null
+ * w3mimg/w3mimg.c: include <sys/types.h>, <unistd.h>
+ W3MIMGDISPLAY_SETUID
+ * w3mimg/fb/fb_w3mimg.c (check_tty_console): added
+
+2002-11-06 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03377] sync_with_option
+ * etc.c (loadPassword): reset passwords
+ * form.c (loadPreForm): reset PreForm
+ * main.c (option_assigned): deleted
+ (parse_proxy): deleted
+ (MAIN): move initCookie(), setLocalCookie()
+ after sync_with_option()
+ delete parseURL for *_proxy
+ s/WrapSearch/WrapDefault/
+ move initKeymap(), initMenu() after setupscreen()
+ sync_with_option() after init_rc()
+ * rc.c (pre_form_file): move in params9 (network settting)
+ (sync_with_option): initKeymap(), initMenu() is done
+ if fmInitialized
+ (init_rc): delete sync_with_option()
+
+2002-11-06 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03375] NULL check of CurrentTab
+ * display.c (disp_message_nsec): check CurrentTab
+ * file.c (doExternal): check CurrentTab
+ * image.c (loadImage): check CurrentTab
+
+2002-11-06 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03374] disable_secret_security_check
+ * etc.c (openSecurityFile): disable_secret_security_check
+ * fm.h (disable_secret_security_check): added
+ * rc.c (CMT_DISABLE_SECRET_SECURITY_CHECK): added
+ (disable_secret_security_check): added
+ * NEWS: rc: disable_secret_security_check
+
+2002-11-06 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * NEWS: update
+
+2002-11-06 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * rc.c (CMT_PRE_FORM_FILE): added
+ (pre_form_file): added
+
+2002-11-06 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * doc-jp/README.tab: added [w3m-dev 03372]
+ * doc/README.tab: brief translation
+
+2002-11-06 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03372] tab browser
+ * display.c (displayBuffer): add ny
+ rootY offset by tab
+ tab line
+ (cursorDown): offset rootY
+ (arrangeCursor): offset rootY
+ * etc.c (columnSkip): offset rootY
+ (lineSkip): offset rootY
+ (currentLineSkip): offset rootY
+ * file.c (HTMLlineproc2body): ATTR_TARGET
+ * fm.h (MapArea): add target
+ (Buffer): add rootY
+ (TabBuffer): added
+ (Currentbuf): comment out
+ (Firstbuf): comment out
+ (CurrentTab): added
+ (FirstTab): added
+ (LastTab): added
+ (open_tab_blank): added
+ (close_tab_back): added
+ (nTab): added
+ (TabCols): added
+ (N_TAB): added
+ (Currentbuf): CurrentTab->currentBuffer
+ (Firstbuf): CurrentTab->firstBuffer
+ * funcname.tab (CLOSE_TAB): added
+ (NEW_TAB): added
+ (NEXT_TAB): added
+ (PREV_TAB): added
+ (TAB_GOTO): added
+ (TAB_GOTO_RELATIVE): added
+ (TAB_LEFT): added
+ (TAB_LINK): added
+ (TAB_MENU): added
+ (TAB_RIGHT): added
+ * html.c (ALST_AREA): add ATTR_TARGET
+ * image.c (showImageProgress): offset rootY
+ * main.c (_newT): added
+ (followTab): added
+ (moveTab): added
+ (check_target): added
+ (MAIN): init tab related values
+ buf => tab
+ (nscroll): offset rootY
+ (pgFore): offset rootY
+ (pgBack): offset rootY
+ (ctrCsrV): offset rootY
+ (_movD): offset rootY
+ (_movU): offset rootY
+ (_goLine): offset rootY
+ (_mark): offset rootY
+ (followA): check target
+ (_followForm): offset rootY
+ (drawAnchorCursor0): offset rootY
+ (drawAnchorCursor): offset rootY
+ (backBf): check close_tab_back
+ (follow_map): rewrite for tab, check target
+ (posTab): added
+ (process_mouse): tab operation
+ offset rootY
+ (deleteFiles): for all buffers in all tabs
+ (newTab): added
+ (newT): added
+ (numTab): added
+ (deleteTab): added
+ (closeT): added
+ (nextT): added
+ (prevT): added
+ (followTab): added
+ (tabA): added
+ (tabURL0): added
+ (tabURL): added
+ (tabrURL): added
+ (moveTab): added
+ (tabR): added
+ (tabL): added
+ * map.c (follow_map_menu): return MapArea
+ (newMapArea): add target args
+ * menu.c (SelTabMenu): added
+ (SelTabV): added
+ (initSelTabMenu): added
+ (smChTab): added
+ (smDelTab): added
+ (MainMenuItem): add Select Tab
+ on New Tab
+ (popupMenu): add initSelTabMenu()
+ offset rootY
+ (mainMn): offset rootY
+ (selMn): offset rootY
+ (initSelectMenu): offset rootY
+ (tabMn): added
+ * proto.h (newT): added
+ (closeT): added
+ (nextT): added
+ (prevT): added
+ (tabA): added
+ (tabURL): added
+ (tabrURL): added
+ (tabR): added
+ (tabL): added
+ (newTab): added
+ (deleteTab): added
+ (follow_map_menu): return MapArea
+ (newMapArea): add target arg
+ (tabMn): added
+ * rc.c (CMT_OPEN_TAB_BLANK): added
+ (CMT_CLOSE_TAB_BACK): added
+ (open_tab_blank): added
+ (close_tab_back): added
+ * doc/README.func (CLOSE_TAB): added
+ (NEW_TAB): added
+ (NEXT_TAB): added
+ (PREV_TAB): added
+ (TAB_GOTO): added
+ (TAB_GOTO_RELATIVE): added
+ (TAB_LEFT): added
+ (TAB_LINK): added
+ (TAB_MENU): added
+ (TAB_RIGHT): added
+ * doc-jp/README.func: ditto doc/README.func
+
+2002-11-06 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * doc-jp/README.pre_form: added [w3m-dev 03373]
+ * doc/README.pre_form: brief translation
+
+2002-11-06 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * etc.c (PASS_IS_READABLE_MSG): deleted
+ (FILE_IS_READABLE_MSG): added
+ (openPasswdFile): deleted
+ (openSecretFile): delete error_msg arg
+ (loadPasswd): use openSecretFile()
+ * form.c (next_token): delete unused static decl
+ (FILE_IS_READABLE_MSG): deleted
+ (loadPreForm): no need pass error_msg
+ * proto.h (openSecretFile): delete error_msg arg
+
+2002-11-06 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03373] setting form on loading
+ * config.h.dist (PRE_FORM_FILE): added
+ * configure (PRE_FORM_FILE): added
+ * etc.c (openPasswdFile): define by openSecretFile()
+ (openSecretFile): renamed, not static
+ * file.c (loadGeneralFile): preFOrmUpdateBuffer()
+ * fm.h (Buffer): add submit
+ (pre_form_file): added
+ * form.c (struct pre_form_item): added
+ (struct pre_form): added
+ (next_token): added
+ (PreForm): added
+ (add_pre_form): added
+ (add_pre_form_item): added
+ (loadPreForm): added
+ (preFormUpdateBuffer): added
+ * frame.c (renderFrame): add preFormUpdateBuffer()
+ * main.c (MAIN): buf->submit check
+ * proto.h (preFormUpdateBuffer): added
+ (openSecretFile): added
+ (loadPreForm): added
+ * rc.c (sync_with_option): add loadPreForm()
+
+2002-11-06 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03371] segmentation fault by large complex table.
+ * table.c (bsearch_2short): indexarry char to short
+ (bsearch_double): ditto
+ (dv2sv): ditto
+ (table_rule_width): ditto
+ (set_integrated_width): ditto
+ (check_table_height): ditto
+ (feed_table_tag): ditto
+ * table.h (struct table_cell): index, eindex char to short
+
+2002-11-05 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * w3m 0.3.2
+ * version.c.in: update
+ * doc/README: version 0.3.2, release date
+ * doc-jp/README: ditto
+ * NEWS: update
+
+2002-11-05 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * scripts/w3mhelp.cgi.in: add chkWORD
+
+2002-11-04 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev-en 00827] Re: w3m-cvs segfaults on news://<mid> URLs
+ * url.c (openURL): check pu->file for news:
+
+2002-10-31 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * fix compilation warnings
+ * w3mimgdisplay.c: add #include <string.h> for strlen, strcmp
+ * w3mimg/fb/fb.c: add #include <string.h> for memset
+ * w3mimg/fb/fb_w3mimg.c: add #include <string.h> for memset
+
+2002-10-31 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * 0.3.2 release candidate 4
+ * version.c.in: update
+
+2002-10-31 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03365] ~/.netrc support
+ * etc.c (add_auth_pass_entry): add netrc arg
+ add new entry to tail
+ (find_auth_pass_entry): ent->host == NULL is "default"
+ (loadPasswd): rewrite with next_token, parsePasswd,
+ openPasswdFile
+ load ~/.netrc
+ (next_token): added
+ (parsePasswd): added
+ (openPasswdFile): added
+ * ftp.c (openFTP): use find_auth_user_passwd
+ * NEWS: ~/.netrc
+
+2002-10-31 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03363] refresh download
+ * file.c (HTMLtagproc1): alarm is implicit once
+ * fm.h (AL_IMPLICIT_ONCE): added
+ * main.c (searchKeyData): reset CurrentKeyData, CurrentCmdData
+ (SigAlarm): CurrentCmdData is saved to data
+ message displayed on AL_EXPLICIT
+ clear alarm when AL_IMPLICIT_ONCE
+ (setAlarmEvent): AL_IMPLICIT_ONCE
+
+2002-10-31 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03362] Re: support for http://user:pass@www.url.com
+ * etc.c (loadPasswd): accept host, passwd
+
+2002-10-31 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03359] support for http://user:pass@www.url.com
+ * etc.c (find_auth_user_passwd): use ParsedURL for args
+ use user and passwd if these are defined in ParsedURL
+ * file.c (getAuthCookie): change find_auth_user_passwd()
+ * proto.h (find_auth_user_passwd): change prototype
+ * NOTE: http://user:pass@www.url.com is NOT RECOMMENDED
+ for security reasons.
+
+2002-10-30 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03357] tab in <pre> in <ul>,<ol>,...
+ * file.c (HTMLlineproc2): check indent for tabstop
+
+2002-10-30 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03354] display current line number
+ * display.c (displayBuffer): %3d -> %d
+
+2002-10-29 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * 0.3.2 release candidate 3
+ * version.c.in: update
+
+2002-10-29 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03352] w3mimgsize is not necessary.
+ * XMakefile (IMGSIZE): removed
+ * config.h.dist (IMGSIZE): removed
+ * configure (imgtarget): remove IMGSIZE
+ (config.h): remove IMGSIZE
+ * rc.c (CMT_IMGSIZE): removed
+ * doc/README.img: remove imgsize
+ * w3mimgsize.c: removed
+
+2002-10-28 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03351] w3m core dump
+ * table.c (feed_table_tag): fix rendering problem (maybe security hole?)
+
+2002-10-28 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev-en 00796]
+ * configure: expand here. ($var in Makefile is $v + ar)
+ * XMakefile: clean w3mimg/**/*.o
+
+2002-10-28 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev-en 00795]
+ * configure: IMLIB_CONFIG, IMLIB2_CONFIG, GDKPIXBUF_CONFIG
+ * rc.c (CMT_DISP_IMAGE): need if not defined USE_IMAGE
+
+2002-10-27 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * 0.3.2 release candidate 2
+ * version.c.in: update
+
+2002-10-26 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev-en 00788]
+ * fm.h (displayImage): FALSE ifndef USE_IMAGE
+ * rc.c (displayImage): display_image even if USE_IMAGE undefined
+ (sync_with_options): display_image is forced to be FALSE
+ ifndef USE_IMAGE
+
+2002-10-26 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev-en 00783] hsaka@mth.biglobe.ne.jp (Hironori SAKAMOTO)
+ add display_lineinfo option
+ * display.c (displayBuffer): check displayLineInfo
+ * fm.h (displayLineInfo): added
+ * rc.c (CMT_DISPLINEINFO): added
+ (display_lineinfo): added
+ * NEWS (rc: display_lineinfo): add
+
+2002-10-26 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev-en 00781] "Clemens Fischer" <ino-waiting@gmx.net>
+ zope doesn't recognize implied *LWS in accept-language
+ * rc.c (sync_with_option): remove optional LWS
+
+2002-10-26 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev-en 00780] "Carlo E. Prelz" <fluido@fluido.as>
+ always print on screen the relative position
+ * display.c (displayBuffer): relative position
+
+2002-10-26 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * 0.3.2 release candidate 1
+ * version.c.in: update
+
+2002-10-26 Gary Johnson <garyjohn@spk.agilent.com>
+
+ * [w3m-dev-en 00777] patch to fix w3m-0.3.1 word break problem
+ * file.c (is_period_char):
+ 0x203A - SINGLE RIGHT-POINTING ANGLE QUOTATION MARK
+ (is_beginning_char):
+ 0x2018 - LEFT SINGLE QUOTATION MARK
+ 0x2039 - SINGLE LEFT-POINTING ANGLE QUOTATION MARK
+ (is_word_char): add several chars ifndef JP_CHARSET
+ add ':' and '*'
+
+2002-10-17 Hiroyuki Ito <hito@crl.go.jp>
+
+ * [w3m-dev 03342]
+ * doc/README.img: updated
+ * doc-jp/README.img: updated
+
+2002-10-17 Daiki Ueno <ueno@unixuser.org>
+
+ * [w3m-dev 03341] white space is needed to close an empty-element tag
+ * parsetagx.c (parse_tag): extract tagname until '/'
+
+2002-10-11 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03339] Re: Debian Bug#164098 w3m: <sup> is not properly supported
+ * file.c (HTMLtagproc1): HTML_SUP, HTML_N_SUP, HTML_SUB, HTML_N_SUB
+ * html.c (TagMAP): sup, /sup, sub, /sub
+ * html.c (HTML_SUP): added
+ (HTML_N_SUP): added
+ (HTML_SUB): added
+ (HTML_N_SUB): added
+ * table.c (feed_table_tag): HTML_SUP, HTML_N_SUP, HTML_SUB, HTML_N_SUB
+ * tagtable.tab (sup): added
+ (/sup): added
+ (sub): added
+ (/sub): added
+
+2002-10-11 Hiroyuki Ito <hito@crl.go.jp>
+
+ * [w3m-dev 03337] delete unused functions in fb.c etc. (Re: canna patch)
+ * w3mimg/fb/fb.c (fb_image_rotate): delete
+ (fb_frame_rotate): delete
+ (fb_pset): delete
+ (fb_get_color): delete
+ (fb_clear): delete
+ (fb_cmap_disp): delete
+ (fb_fscrn_disp): delete
+ (fb_vscrn_disp): delete
+ * w3mimg/fb/fb.h (fb_image_rotate): delete
+ (fb_frame_rotate): delete
+ (fb_pset): delete
+ (fb_get_color): delete
+ (fb_clear): delete
+ (fb_cmap_disp): delete
+ (fb_fscrn_disp): delete
+ (fb_vscrn_disp): delete
+ * w3mimg/fb/fb_img.c (fb_image_draw_simple): delete
+ * w3mimg/fb/fb_img.h (fb_image_draw_simple): delete
+
+ * w3mimg/fb/license.txt: removed, follow w3m license
+
+2002-10-09 AIDA Shinra <aida-s@jcom.home.ne.jp>
+
+ * [w3m-dev 03336] proxy check for https authorization:
+ * url.c (HTTPrequest): check CONNECT request for ssl
+
+2002-10-06 Hiroyuki Ito <hito@crl.go.jp>
+
+ * [w3m-dev 03333] x11 image animation
+ * w3mimg/x11/x11_w3mimg.c (struct x11_image): added
+ (x11_img_new): added
+ (resize_image): added
+ (x11_load_image): rewrite GdkPixbuf
+ (x11_show_image): rewrite GdkPixbuf
+ (x11_free_image): rewrite GdkPixbuf
+
+2002-10-02 Yuji Abe <cbo46560@pop12.odn.ne.jp>
+
+ * [w3m-dev 03332] Re: hang up when seeing web page that contains xbm file
+ * w3mimg/x11/x11_w3mimg.c (x11_load_image): transparent support
+
+2002-10-02 Yoshinobu Sakane <sakane@d4.bsd.nes.nec.co.jp>
+
+ * [w3m-dev 03331] Re: hang up when seeing web page that contains xbm file
+ * configure: check gdk-pixbuf-config existence
+
+2002-10-01 Yuji Abe <cbo46560@pop12.odn.ne.jp>
+
+ * [w3m-dev 03330] Re: hang up when seeing web page that contains xbm file
+ * w3mimg/x11/x11_w3mimg.c (x11_load_image): scaling
+
+2002-09-30 Yuji Abe <cbo46560@pop12.odn.ne.jp>
+
+ * [w3m-dev 03327] gdk-pixbuf support for w3m-img/x11
+ * configure (use_w3mimg_x11) Imlib1 or GdkPixbuf
+ check gdkpixbuf
+ * w3mimg/x11/x11_w3mimg.c (USE_GDKPIXBUF): added
+ (x11_init): USE_GDKPIXBUF
+ (x11_load_image): USE_GDKPIXBUF
+ (x11_get_image_size): USE_GDKPIXBUF
+
+2002-09-30 qhwt@myrealbox.com
+
+ * [w3m-dev 03325] Re: hang up when seeing web page that contains xbm file
+ * w3mimgdisplay.c (main): always return response
+ even if size is unknown
+
+2002-09-29 Hiroaki Shimotsu <shim@d5.bs1.fc.nec.co.jp>
+
+ * [w3m-dev 03323] EDITOR
+ * main.c (MAIN): use not_null()
+
+2002-09-29 AIDA Shinra <aida-s@jcom.home.ne.jp>
+
+ * Re: [w3m-dev 03320] Re: Passwords
+ * etc.c (dir_under): same path is ok
+ * file.c (loadGeneralFile): if missing, return NULL
+ ssl cert already checked
+ * html.h (URLFILE): add ssl_certificate
+ * istream.c (ssl_get_certificate): change args
+ * istream.h (ssl_get_certificate): ditto
+ * url.c (openSSLHandle): add p_cert
+ ssl certificate check here
+ (HTTPrequest): auth_cookie fix
+
+2002-09-25 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03321] Bug#162104: file descriptors 1 and 2 are closed rather than reopened to /dev/null
+ * etc.c (mySystem): fd 0,1,2 redirect /dev/null, close all other fds
+
+2002-09-25 AIDA Shinra <aida-s@jcom.home.ne.jp>
+
+ * [w3m-dev 03319] mailto
+ * main.c (followA): mailto
+ * main.c (cmd_loadURL): mailto
+ * url.c (_parsedURL2Str): mailto: query
+
+2002-09-25 AIDA Shinra <aida-s@jcom.home.ne.jp>
+
+ * [w3m-dev 03318] Re: Passwords
+ * etc.c (struct auth_path): added
+ (passwords): added
+ (dir_under): added
+ (add_auth_pass_entry): added
+ (find_auth_pass_entry): added
+ (find_auth_user_passwd): added
+ (loadPasswd): added
+ (find_auth): dir_under()
+ (add_auth_cookie): check file
+ * file.c (find_auth_user_passwd): removed
+ (getAuthCookie): use delText()
+ check proxy
+ (get_auth_cookie): removed
+ (loadGeneralFile): auth_pu
+ * proto.h (schemeToProxy): added
+ (get_auth_cookie): removed
+ (loadPasswd): added
+ (find_auth_user_passwd): added
+ * rc.c (sync_with_option): loadPasswd()
+ * textlist.c (delValue): added
+ * textlist.h (delValue): added
+ (delText): added
+ * url.c (HTTPrequest): seen_www_auth
+ (schemeToProxy): added
+
+2002-09-11 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03312] Re: Passwords
+ * config.h.dist: PASSWD_FILE
+ * file.c (find_auth_user_passwd): return if passwd_file == NULL
+
+2002-09-11 Yuuichi Teranishi <teranisi@gohome.org>
+
+ * [w3m-dev 03311] Re: Passwords
+ * configure (config.h): default PASSWD_FILE
+ * fm.h (passwd_file): default PASSWD_FILE
+
+2002-09-11 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03307] add password_file support
+ * file.c (find_auth_user_passwd): added
+ * fm.h (passwd_file): added
+ * rc.c (CMT_PASSWDFILE): added
+ (passwdfile): added
+
+2002-09-09 Hiroyuki Ito <hito@crl.go.jp>
+
+ * [w3m-dev 03300] framebuffer: 8bit color support
+ * w3mimg/fb/fb.c: support FB_VISUAL_PSEUDOCOLOR 256 colors
+
+2002-09-09 Hironori SAKAMOTO <h-saka@lsi.nec.co.jp>
+
+ * [w3m-dev 03299] remove file before copying (install-sh)
+ * install-sh: remove file before copying
+
+2002-09-09 Hironori SAKAMOTO <h-saka@lsi.nec.co.jp>
+
+ * [w3m-dev 03298] [ -f instead of [ -e (configure)
+ * configure: use test -f instead of test -e
+
+2002-09-09 Hironori SAKAMOTO <h-saka@lsi.nec.co.jp>
+
+ * [w3m-dev 03297] TERM=mlterm
+ * terms.c (w3m_term_info_list): add mlterm
+
+2002-09-09 Hironori SAKAMOTO <h-saka@lsi.nec.co.jp>
+
+ * [w3m-dev 03296] fix configure (strtoq)
+ * configure (strtoq): fix missing semicolon
+
+2002-09-06 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03292] Re: load file at cursor
+ * anchor.c (reAnchorPos): added
+ (reAnchorWord): added
+ (reAnchorAny): rewrite to use reAnchorPos()
+ * funcname.tab (MARK_WORD): added
+ * keybind.c (;) MARK_WORD
+ * main.c (getCurWord): added
+ (chkWORD): added
+ (is_wordchar): added
+ (getCurWord): added
+ (GetWord): rewrite to use getCurWord()
+ * proto.h (chkWORD): added
+ (reAnchorWord): added
+ * doc/README.func: add MARK_WORD
+ * doc/keymap.default: add MARK_WORD
+ * doc-jp/README.func: add MARK_WORD
+ * doc-jp/keymap.default: add MARK_WORD
+ * NEWS: add MARK_WORD
+
+2002-08-28 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
+
+ * [w3m-dev 03291] parsetagx.c:toNumber()
+ * parsetagx.c (toNumber): don't parse non-number value as 0,
+ just ignore
+
+2002-08-28 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
+
+ * [w3m-dev 03290] Re: Forward: Bug#157098: wrong file presentation on large files
+ * indep.c (strtoclen): need defined()
+
+2002-08-21 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * Debian Bug#157098: wrong file presentation on large files
+ from "Eduard Bloch" <blade@debian.org>
+ * configure (clen_t): added
+ (HAVE_STRTOLL): added
+ (HAVE_STRTOQ): added
+ (HAVE_ATOLL): added
+ (HAVE_ATOQ): added
+ * config.h.dist: ditto
+ * file.c (current_content_length): s/int/clen_t/
+ (loadGeneralFile): s/atoi/strtoclen/
+ (convert_size): s/int/clen_t/
+ (convert_size2): s/int/clen_t/
+ (showProgress): s/int/clen_t/
+ (loadHTMLstream): s/int/clen_t/ linelen, trbyte
+ (loadBuffer): ditto
+ (getNextPage): s/int/clen_t/ linelen
+ (save2tmp): s/int/clen_t/ linelen, trbye
+ (_MoveFile): s/int/clen_t/ linelen, trbye
+ * fm.h (_Buffer): s/int/clen_t/ linelen, trbye
+ * ftp.c (size_int2str): s/long/clen_t/
+ (ex_ftpdir_name_size_date): s/long/clen_t/
+ * indep.c (strtoclen): added
+ * indep.h (strtoclen): added
+ * proto.h (showProgress): s/int/clen_t/
+
+2002-07-31 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * Debian Bug#154766: w3m-img: support DirectColor framebuffer visuals?
+ from Colin Watson <cjwatson@debian.org>
+ * w3mimg/fb/fb.c (fb_open): accept FB_VISUAL_DIRECTCOLOR
+
+2002-07-30 Hiroyuki Ito <hito@crl.go.jp>
+
+ * [w3m-dev 03282] Re: w3m-img for framebuffer update
+ * w3mimg/fb/fb.c (fb_image_new): ignore no image
+ calloc multiple images
+ (fb_image_fill): added
+ (fb_image_draw): width, height fix
+ (fb_image_rotate): fix typo
+ (fb_image_copy): added
+ (fb_frame_new): added
+ (fb_freme_free): added
+ (fb_frame_rotate): added
+ * w3mimg/fb/fb.h (FB_IMAGE): add num, id, delay
+ (fb_frame_new): added
+ (fb_frame_free): added
+ (fb_frame_rotate): added
+ * w3mimg/fb/fb_gdkpixbuf.c (get_image_size): animation support
+ (fb_image_load): animation support
+ (draw): add bg, x, y, w, h args
+ * w3mimg/fb/fb_img.h (fb_image_load): return FB_IMAGE**
+ * w3mimg/fb/fb_imlib2.c (fb_image_load): return FB_IMAGE**
+ * w3mimg/fb/fb_w3mimg.c (w3mfb_show_image): animation support
+
+2002-07-23 Hiroyuki Ito <hito@crl.go.jp>
+
+ * [w3m-dev 03280] w3m-img without w3mimgsize
+ * fm.h (Imagesize): deleted
+ * image.c (getImageSize): rewrite to use w3mimgdisplay
+ instead of w3mimgsize
+ * rc.c (params1): remove imgsize, merged to imgdisplay
+
+2002-07-23 Hiroyuki Ito <hito@crl.go.jp>
+
+ * [w3m-dev 03279] w3m-img for framebuffer update
+ http://homepage3.nifty.com/slokar/fb/w3mfb.patch.gz
+ * w3mimg/fb/readme.txt: update
+ * w3mimg/fb/fb.c: update
+ * w3mimg/fb/fb.h: update
+ * w3mimg/fb/fb_gdkpixbuf.c: update
+ * w3mimg/fb/fb_img.c: update
+ * w3mimg/fb/fb_img.h: update
+ * w3mimg/fb/fb_imlib2.c: update
+ * w3mimg/fb/fb_w3mimg.c: update
+ * w3mimg/fb/fb_gdkpixbuf.h: deleted
+ * w3mimg/fb/fb_imlib2.h: deleted
+ * w3mimg/w3mimg.h (w3mimg_op): add get_image_size()
+ * w3mimg/x11/x11_w3mimg.c: update
+ * w3mimgdisplay.c (main): use get_image_size()
+ * w3mimgsize.c (main): use get_image_size()
+
+2002-07-19 Hideyuki SHIRAI <shirai@rdmg.mgcs.mei.co.jp>
+
+ * [w3m-dev 03277] compile error on Solaris7
+ * w3mimg/w3mimg.c: include <stdio.h> for NULL
+
+2002-07-19 Yoshinobu Sakane <sakane@d4.bsd.nes.nec.co.jp>
+
+a * [w3m-dev 03276] compile error on EWS4800
+ * file.c (extract_auth_val): fix warnings
+ * w3mimg/w3mimg.c: include <stdlib.h>
+
+2002-07-18 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03275] fix of multipart.cgi
+ * scripts/multipart/multipart.cgi.in: check REQUEST_METHOD first
+ need $count for POST
+
+2002-07-18 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * w3mimgdisplay.c (main): '5' for w3mimgsize
+
+2002-07-18 Yoshinobu Sakane <sakane@d4.bsd.nes.nec.co.jp>
+
+ * [w3m-dev 03270] Re: w3m-img for framebuffer merged
+ * w3mimg/x11/x11_w3mimg.c (w3mimg_x11open): unsigned int nchildren
+
+2002-07-18 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * XMakefile (w3mimg/w3mimg): added
+ (w3img/fb) fixed
+ * w3mimg/w3mimg.h (w3mimg_open): deleted to avoid compilation warnings
+ * w3mimg/w3mimg.c: added
+ * configure (imgobjs): add w3mimg/w3mimg.o
+
+2002-07-18 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03272] Re: w3m-img for framebuffer merged (Re: Re: w3m-img for framebuffer)
+ * XMakefile (w3mimg/x11): chdir
+ (w3mimg/fb): chdir
+
+2002-07-18 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03273] Re: w3m-img for framebuffer merged
+ * configure (use_w3mimg_fb): check linux, use test -c
+
+2002-07-18 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * merge w3m-img for framebuffer support
+ * w3mimg/w3mimg.h: created
+ * w3mimg/x11/x11_w3mimg.c: created
+ * w3mimg/fb/fb_w3mimg.c: created
+ * w3mimgsize.c w3mimgdisplay.c: modified
+ * configure: modified
+ * XMakefile: modified
+ * config.h.dist: updated
+
+2002-07-18 ZXB01226@nifty.com
+
+ * w3m-img for framebuffer support
+ * http://homepage3.nifty.com/slokar/fb/
+ * w3mimg/fb/fb.c w3mimg/fb/fb.h
+ w3mimg/fb/fb_img.c w3mimg/fb/fb_img.h
+ w3mimg/fb/fb_gdkpixbuf.c w3mimg/fb/fb_gdkpixbuf.h
+ w3mimg/fb/fb_imlib2.c w3mimg/fb/fb_imlib.h
+ w3mimg/fb/readme.txt w3mimg/fb/license.txt: added
+
+2002-07-18 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03263] fix lastA segfault
+ * main.c (lastA): fix lastA segfault when no anchor found
+
+2002-07-18 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * version.c.in: cvs version
+
+2002-07-16 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * w3m 0.3.1
+ * version.c.in: update
+ * doc/README: version 0.3, release date
+ * doc-jp/README: ditto
+ * NEWS: update
+
+2002-07-12 WATANABE Katsuyuki <katsuyuki_1.watanabe@toppan.co.jp>
+
+ * [w3m-dev 03255] update cygwin info
+ * doc-jp/README: update
+ * doc/README: update
+ * doc-jp/README.cygwin: deleted
+ * doc/README.cygwin: deleted
+
+2002-07-10 SAKAI Kiyotaka <ksakai@kso.netwk.ntt-at.co.jp>
+
+ * [w3m-dev 03240] doc-jp update
+ * doc-jp/MANUAL.html: update
+ * doc-jp/README: update
+ * doc-jp/README.SSL: update
+ * doc-jp/README.img: update
+
+2002-07-10 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * gc/: import gc6.1alpha5
+
+2002-07-09 Dai Sato <satodai@dog.intcul.tohoku.ac.jp>
+
+ * delete old mail addresses of aito-san from docs
+ * delete old ftp site from w3m-doc/install.html.in
+
+2002-07-01 Dai Sato <satodai@dog.intcul.tohoku.ac.jp>
+
+ * [w3m-dev 03235] topA/lastA with prec_num
+ * main.c: add prec_num to topA() and lastA()
+
+2002-06-24 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03233] "obuf->flag |= RB_IGNORE_P" after <body> tag
+ * file.c (HTMLtagproc1): no need RB_IGNORE_P after <body> tag
+
+2002-06-18 Dai Sato <satodai@dog.intcul.tohoku.ac.jp>
+
+ * [w3m-dev 03215] Re: Boehm GC 6.1alpha5
+ * XMakefile: add "base_lib gc.a" for making GC
+
+2002-06-18 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
+
+ * [w3m-dev 03212] lstat() in form.c
+ * form.c: define lstat unless HAVE_LSTAT
+ (form_write_from_file): always check lstat()
+
+2002-06-17 Dai Sato <satodai@dog.intcul.tohoku.ac.jp>
+
+ * [w3m-dev 03214] strtoul() in frame.c
+ * frame.c (parseFrameSetLength): strtoul() -> strtol()
+
+2002-06-10 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
+
+ * [w3m-dev-en 00752] Re: tab completion weirdness in w3m 0.3
+ * file.c (doFileCopy): same fix as [w3m-dev-en 00751]
+
+2002-06-10 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
+
+ * [w3m-dev-en 00751] Re: tab completion weirdness in w3m 0.3
+ * main.c (svBuf): unescape spaces when input is filename
+ * proto.h (unescape_spaces): added
+
+2002-06-08 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
+
+ * [w3m-dev 03207] strchr(), strcasecmp(), and strncasecmp()
+ * etc.c (strchr): removed
+ (strcasecmp): removed
+ (strncasecmp): removed
+ * indep.c (strchr): moved, cast
+ (strcasecmp): moved, fix the case that s1 = ""
+ (strncasecmp): moved, fix the case that s1 is shorter than s2
+ * indep.h (strchr): added
+ (strcasecmp): added
+ (strncasecmp): added
+
+2002-06-06 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03206] Re: dict
+ * main.c (execdict): quote word
+
+2002-06-06 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03204] INET6
+ * main.c (fversion): s/USE_INET6/INET6/
+
+2002-06-06 Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03203] dict
+ * main.c (execdict): fix loadGeneralFile()
+
+2002-06-02 Tushar Samant <scribble@pobox.com>
+
+ * [w3m-dev-en 00748] PATCH: Reinitialize w3m while running
+ * funcname.tab (INIT_MAILCAP): deleted
+ (REINIT): added
+ * main.c (config_filename): added
+ (reinit): added
+ * proto.h (reinit): added
+ * rc.c (rc_initialized): deleted
+ * w3mhelperpanel.c (editMailcap): use REINIT MAILCAP
+
+2002-06-02 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
+
+ * [w3m-dev 03200] Re: New configuration option ``keymap_file'' and new command ``DEFINE_KEY''
+ * fm.h: add <sts/stat.h>, unistd.h>
+ * fm.h (keymap_file): added
+ * func.c (keymap_initialized): added
+ (current_keymap_file): added
+ (setKeymap): added
+ (initKeymap): rewrite to use setKeymap()
+ * funcname.tab (DEFINE_KEY): added
+ * main.c (MAIN): initKeymap(TRUE)
+ (defKey): added
+ * proto.h (defKey): added
+ (setKeymap): added
+ (initKeymap): add force param
+ * rc.c (CMT_KEYMAP_FILE): added
+ (params3): add keymap_file
+ (sync_with_option): add initKeymap(FALSE)
+ * doc/README.func (DEFINE_KEY): added
+ * doc-jp/README.func: (DEFINE_KEY): added
+ * scripts/w3mhelp.cgi.in: add defKey
+ * NEWS:
+ func: DEFINE_KEY
+ rc: keymap_file
+
+2002-06-02 Hiroaki Shimotsu <shim@d5.bs1.fc.nec.co.jp>
+
+ * [w3m-dev 03196] C-w
+ * linein.c (inputLineHistSearch) move_word changed
+ * linein.c (setStrType): add space to termchar
+
+2002-05-15 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
+
+ * [w3m-dev 03191] typo in file.c:extract_auth_val()?
+ * file.c (extract_auth_val): s/177/0177/
+
+2002-05-15 Tsutomu OKADA <okada@furuno.co.jp>
+
+ * [w3m-dev 03190] a tiny patch for configure
+ * configure (ask_choice): reset default value
+
+2002-04-27 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
+
+ * [w3m-dev 03185] Re: cmd_mark in main.c, rev 1.60 broke unmark?
+ * main.c (cmd_mark): deleted
+ (_mark): xor PE_MARK
+ (reMark): or PE_MARK
+
+2002-04-27 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * scripts/.cvsignore: add xface2xpm
+
+2002-04-26 Tushar Samant <scribble@pobox.com>
+
+ * [w3m-dev-en 00733] Submission: "English" patch
+ * rc.c: update english
+
+2002-04-25 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev-en 00730] Re: Patch for a more flexible dictionary lookup
+ * NEWS: rc: use_dictcommand, dictcommand
+ * main.c (execdict): use url_quote_conv() instead of cURLcode()
+ * proto.h (cURLcode): deleted
+ * doc-jp/README.dict: updated
+
+2002-04-25 Tushar Samant <scribble@pobox.com>
+
+ * [w3m-dev-en 00729] Re: Patch for a more flexible dictionary lookup
+ * config.h.dist (DICT): define
+ * configure (use_dict): default y
+ * fm.h (DICTCMD): deleted
+ (UseDictCommand): added
+ (DictCommand): added
+ * main.c (execdict): rewrite to use DictCommand, loadGeneralFile()
+ * rc.c (CMT_USE_DICTCOMMAND): added
+ (CMT_DICTCOMMAND): added
+ (params1): use_dictcommand, dictcommand added
+ * doc/README.dict: updated
+
+2002-04-21 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
+
+ * [w3m-dev 03181] KEYBIND_SRC was not passed to scripts/Makefile
+ * Makefile (all-scripts): pass KEYBIND_SRC
+
+2002-04-17 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
+
+ * [w3m-dev 03178] Parser of ``cols'' and ``rows''
+ * frame.c (parseFrameSetLength): added
+ (newFrameSet): use parseFrameSetLength()
+
+2002-04-17 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
+
+ * [w3m-dev 03177] SIGUSR1 --> W3M_SIGIMG in image.c
+ * image.c (W3M_SIGIMG): added
+ (load_image_handler): s/SIGUSR1/W3M_SIGIMG/
+ (load_image_next): ditto
+ (loadImage): ditto
+
+2002-04-17 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
+
+ * [w3m-dev 03176] no Content-Type in http response header
+ * file.c (loadGeneralFile): guess content-type from filename
+
+2002-04-09 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03169] Can't calculate table height if number of cells > 20.
+ * table.c (check_table_height): change row, rowspan, indexarray, height
+ from array to pointer
+
+2002-04-09 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03167] xface2xbm -> xface2xpm (current imlib can't handle XBM)
+ * configure: s/XFACE2XBM/XFACE2XPM/
+ * config.h.dist: ditto
+ * file.c (xface2xpm): renamed from xface2xbm
+ modified for xpm
+ (readHeader): s/xface2xbm/xface2xpm/
+ * scripts/Makefile (LIB_TARGETS): s/xface2xbm/xface2xpm/
+ * scripts/xface2xpm.in: added
+
+2002-03-30 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03162] Re: "ttp:" is marked instead of "http:" by MARL_URL
+ * main.c (chkURLBuffer): "mailto" removed when USE_W3MMAILER
+ in this case, chkExternalURIBuffer() will mark mailto: URL.
+
+2002-03-30 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03160] Re: "ttp:" is marked instead of "http:" by MARL_URL
+ * NEWS: mark_all_pages
+ * anchor.c (reAnchorAny): check MarkAllPages
+ * fm.h (MarkAllPages): added
+ * rc.c (CMT_MARK_ALL_PAGES): added
+ (mark_all_pages): added
+
+2002-03-30 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03159] "ttp:" is marked instead of "http:" by MARL_URL
+ * main.c (chkURLBuffer): check internal URLs first
+
+2002-03-28 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * terms.c (set_tty): s/term_info/w3m_term_info/g;
+ struct term_info is defined in FreeBSD's sys/consio.h
+ reported by KOIE Hidetaka <hide@koie.org>
+
+2002-03-28 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03146] Re: header option
+ * main.c (make_optional_header_string): cleanups
+
+2002-03-28 Yuuichi Teranishi <teranisi@gohome.org>
+
+ * [w3m-dev 03145] header option
+ * main.c (MAIN): hide args for security
+
+2002-03-23 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
+
+ * [w3m-dev 03140] Forward: Bug#139305:
+ w3m: EXTERN_LINK does not work if href ends with ampersand
+ * main.c (invoke_browser): check bg by browser
+
+2002-03-21 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * terms.c (term_title): use ttyf instead of stderr
+
+2002-03-20 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03137] Re: w3mman.1
+ * XMakefile (MAN1): added
+ (MAN1_JA): added
+ (install-core): install man
+ (install-scripts): pass MAN_DIR
+ (uninstall): uninstall man, pass MAN_DIR to subdirs
+ * config.h.dist (MAN_DIR): added
+ (MAN1_DIR): added
+ (MAN1_JA_DIR): added
+ * configure: -mandir
+ (config.h): add MAN_DIR, MAN1_DIR, MAN1_JA_DIR
+ * scripts/w3mman/Makefile (MAN1_DIR): added
+
+2002-03-20 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03136] Add COMMAND to execute multiple commands
+ * fm.h (CurrentMenuData): deleted
+ (CurrentCmdData): added
+ * func.c (getKey): check next char of ^
+ (getWord): get word until ';'
+ (getQWord): rewrite using Str
+ * funcname.tab (COMMAND): added
+ * main.c (MAIN): delete CurrentMenuData
+ initialize CurrentCmdData
+ (searchKeyData): use CurrentCmdData
+ (execCmd): added
+ (SigAlarm): delete CurrentMenuData, use CurrentCmdData
+ * menu.c (action_menu): delete CurrentMenuData, use CurrentCmdData
+ * proto.h (execCmd): added
+ * doc/README.func (ALARM): capitalize
+ (COMMAND): added
+ * doc-jp/README.func (COMMAND): added
+
+2002-03-20 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03135] commit of [w3m-dev 03006] is incomplete.
+ * file.c (HTMLlineproc2body): check form_int fid attr
+ update forms[]
+ fix buf->formlist
+
+2002-03-16 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * part of [w3m-dev-en 00713] contrib: unofficial "current page info" patch, updated for w3m-0.3
+ by Moritz Barsnick <barsnick@gmx.net>
+ * map.c (page_info_panel): s/line/lines/
+ s/byte/bytes/
+ anchor for URL of current anchor
+
+2002-03-16 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * -title support
+ modified [w3m-dev-en 00710] contrib: unofficial "xterm title" patch, updated for w3m-0.3
+ by Moritz Barsnick <barsnick@gmx.net>
+ * NEWS: -title
+ * fm.h (displayTitleTerm): added
+ * proto.h (term_title): added
+ * main.c (fusage): add -title
+ (MAIN): add -title
+ (quitfm): term_title("")
+ * display.c (displayBuffer): term_title()
+ * terms.c (title_str): added
+ (TERM_INFO): added
+ (term_info): modified from mouse_term_info
+ (term_info_list): modified from xterm_mouse_term
+ add "screen"
+ (set_tty): check displayTitleTerm
+ (term_title): added
+
+2002-03-16 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03132] Re: Reload image
+ * file.c (loadGeneralFile): b->type = "text/html"
+ * file.c (loadImageBuffer): comment out getImageSize()
+ image_flag = IMG_FLAG_AUTO
+ * file.c (openGeneralPagerBuffer): buf->type = "text/html"
+ * frame.c (resetFrameElement): if (buf->mailcap_source) ...
+ * frame.c (frame_download_source): if (buf->mailcap_source) ...
+ * main.c (vwSrc): #ifdef USE_IMAGE
+
+2002-03-16 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03133] Re: w3mman.1
+ * scripts/w3mman/Makefile (MAN1_TARGETS): added
+ (MAN_TARGETS): use $(MAN_TARGETS)
+ (INSTALL_MAN): added
+ (install): use $MAN1_TARGETS, $(INSTALL_MAN)
+ * scripts/w3mman/w3mman2html.cgi.in: $PAGER='cat'
+
+2002-03-15 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * scripts/.cvsignore: add xface2xbm
+
+2002-03-15 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03130] w3mman.1
+ * scripts/w3mman/.cvsignore: add w3mman.1
+ * scripts/w3mman/Makefile (MAN_DIR): added
+ (MAN_TARGETS): added
+ (all): add $(MAN_TARGETS)
+ (.in): replace @LIB_DIR@
+ (install): install $(MAN_TARGETS)
+ (uninstall): uninstall $(MAN_TARGETS)
+ (clean): clean $(MAN_TARGETS)
+ * scripts/w3mman/w3mman.1.in: added
+ * scripts/w3mman/w3mman2html.cgi.in: undef $PAGER
+
+2002-03-15 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03129] Re: X-Face
+ * configure (use_xface): ask
+ * fm.h (_Buffer): add header_source
+ * buffer.c (reshapeBuffer): fix reshape when reading stdin with image
+ fix disappearing header when reading stdin
+ * file.c (xface2xbm): check file existence
+ * file.c (readHeader): save to tmp file
+ X-Face when activeImage & displayImage
+ * main.c (dispI): comment out checking content type
+ * main.c (stopI): ditto
+ * scripts/xface2xbm.in: update compface URL
+ read from file $XF
+ write to file $XBM
+
+2002-03-15 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * proto.h (readHeader): added
+
+2002-03-14 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03127] X-Face
+ * NEWS: X-Face support
+ * configure (use_xface): added
+ * config.h.dist (USE_XFACE): added
+ (XFACE2XBM): added
+ * file.c (xface2xbm): added
+ (readHeader): X-Face: handling
+ * scripts/Makefile (LIB_TARGETS): add xface2xbm
+ * scripts/xface2xbm.in: added
+
+2002-03-14 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03126] reshapeBuffer() and -m option
+ * buffer.c (reshapeBuffer): fix reshapeBuffer() in case of -m option
+
+2002-03-14 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03125] w3m -m < image
+ * file.c (openGeneralPagerBuffer): use internal viewer for -m option
+
+2002-03-13 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03116] Re: aligned block in <td align="center">
+ * file.c (flushline): align if align="align"
+ * fm.h (RB_LEFT): change value
+ (RB_ALIGN): include RB_LEFT
+ (RB_INTABLE): added
+ * table.c (do_refill): obuf.flag |= RB_INTABLE
+
+2002-03-11 WATANABE Katsuyuki <katsuyuki_1.watanabe@toppan.co.jp>
+
+ * [w3m-dev 03110] Re: gopher broken
+ * file.c (loadGeneralFile): #ifdef USE_GOPHER
+
+2002-03-11 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03106] Re: displayBuffer
+ * display.c (displayBuffer): revert previous changes
+ * file.c (process_img): remove space in src attribute
+
+2002-03-10 Rei FURUKAWA <furukawa@tcp-ip.or.jp>
+
+ * [w3m-dev 03096] displayBuffer
+ * display.c (displayBuffer): buf->need_reshape = 0 to prevent recursive
+ displayBuffer calls
+
+2002-03-09 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03095] Re: gopher broken
+ (Re: Bug#137287: w3m: segfault on gopher://xxxx.xxx URI)
+ * file.c (loadGopherDir): html_quote(url_quote_conv())
+
+2002-03-09 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03092] Reload image
+ * file.c (loadImageBuffer): cache->index = 0
+
+2002-03-09 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03093] Re: gopher broken
+ (Re: Bug#137287: w3m: segfault on gopher://xxxx.xxx URI)
+ * file.c (loadGopherDir): fix ->ptr
+ q should be url_quote()
+ * url.c (openURL): url_unquote() for gopher selector
+
+2002-03-09 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03090] Re: gopher broken
+ (Re: Bug#137287: w3m: segfault on gopher://xxxx.xxx URI)
+ * file.c (loadGeneralFile): if loadGopherDir, type is real_type
+ * file.c (loadGopherDir): rewrite to use loadHTMLstream()
+
+2002-03-08 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03088] gopher broken
+ (Re: Bug#137287: w3m: segfault on gopher://xxxx.xxx URI)
+ * file.c (form_max): initial value should be -1
+ * file.c (loadGopherDir): </A>
+
+2002-03-08 YAMAMOTO Takashi <yamt@mwd.biglobe.ne.jp>
+
+ * [w3m-dev 03087] vi +1 emptyfile
+ * etc.c (myEditor): line > 1
+
+2002-03-06 Christian Weisgerber <w3m-dev-en@mips.inka.de>
+
+ * [w3m-dev-en 00699]
+ * configure: define SETPGRP() instead of setpgrp()
+ * etc.c (mySystem): use SETPGRP() instead of setpgrp()
+ * image.c (openImgdisplay): ditto
+ * search.c (open_migemo): ditto
+ * url.c: revert changes by Dai Sato on 2002-02-01
+ since stdio.h and config.h is included with this order
+ in fm.h
+
+2002-03-06 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * version.c.in: 0.3+cvs
+
+2002-03-06 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * w3m 0.3
+ * version.c.in: update
+ * doc/README: version 0.3, release date
+ * doc-jp/README: ditto
+ * NEWS: update
+
+2002-03-06 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03084] A temporary file remains when pipe + 'v'
+ * proto.h (saveBufferDelNum): deleted
+ * file.c (saveBufferDelNum): deleted
+ * file.c (saveBuffer): saveBufferDelNum() renamed
+ * main.c (vwSrc): tmpfname() recorded as fileToDelete
+ use saveBuffer() instead of saveBufferDelNum()
+
+2002-03-04 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * doc-jp/MANUAL.html: add note about file:/cgi-bin
+ * doc/MANUAL.html: ditto
+
+2002-03-01 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03073] frame + image
+ * file.c (loadGeneralFile): w3m_dump & ~DUMP_FRAME
+ * file.c (loadImageBuffer): comment out if (frame_source)
+
+2002-03-01 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03072] Proxy-Authorization (Re: Re: https through proxy)
+ * file.c (loadGeneralFile) delete Proxy-Authorization set here
+ * fm.h (HR_FLAG_PROXY): added
+ * main.c (MAIN): need "Basic " for proxy_auth_cookie
+ * url.c (HTTPrequest): add seen_proxy_auth
+ if proxy and no Proxy-Authorization: header seen and
+ has proxy_auth_cookie, use it
+ * url.c (openURL): hr->flag |= HR_FLAG_PROXY
+
+ * file.c (loadGeneralFile) comment indent fix
+ * html.c (TagMAP): ditto
+
+2002-02-28 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03070] Re: https through proxy
+ * url.c (openURL): pass extra_header (Proxy-Authorization:)
+
+2002-02-26 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03067] Re: https through proxy
+ * file.c (loadGeneralFile): comment out ssl_get_certificate here
+
+2002-02-26 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev-en 00691] Re: w3m 0.2.5.1 fails to recognize '<dt id="XXX">'
+ * html.c: ATTR_CORE for dt, dd, blockquote, caption
+
+2002-02-26 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03064] Re: SELECTED form value
+ * form.c (formResetBuffer): set inititial value
+
+2002-02-23 HIDAI Ken-ichi <hidai@nmn.jp>
+
+ * [w3m-dev 03060] doc-jp/README.migemo
+ * doc-jp/README.migemo: added
+
+2002-02-23 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03059] table + hborder + rowspan + valign=bottom
+ * table.c (renderTable): add case BORDER_NOWIN:
+
+2002-02-20 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03057] Re: Bug#134350: w3m: Forgets (http auth) login information upon reload (or almost anything else)
+ * etc.c (find_auth): add `file'
+ check file as well
+ * etc.c (find_auth_cookie): add `file'
+ * etc.c (add_auth_cookie): add `file'
+ * file.c (AuthBasicCred): add "Basic "
+ * file.c (AuthDigestCred): add "Digest "
+ * file.c (getAuthCookie): if h_auth == NULL, get recorded cookie
+ * file.c (get_auth_cookie): get recorded cookie
+ * file.c (loadGeneralFile): don't clear add_auth_cookie_flag
+ by redirection
+ add_auth_cookie if authorization is required and passed
+ * fm.h (auth_cookie): add file
+ * ftp.c (openFTP): follow change auth_cookie
+ * proto.h (get_auth_cookie): added
+ * proto.h (find_auth_cookie): add `file'
+ * proto.h (add_auth_cookie): add `file'
+ * url.c (openURL): get_auth_cookie
+
+2002-02-20 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03058] mailer
+ * NEWS: rc: mailer
+ * fm.h (Mailer): change default
+ * main.c (MAIN): $MAILER will be used as "mailer"
+ * main.c (followA): if "mailer" defined & simple mailto: URL,
+ use mailer instead of w3mmail.cgi
+ * main.c (cmd_loadURL): ditto
+ * rc.c (params6): remove ifndef USE_W3MMAILER
+
+2002-02-15 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03056] DISPLAY_IMAGE, STOP_IMAGE don't work.
+ * main.c (dispI): fix DISPLAY_IMAGE
+ * main.c (stopI): fix STOP_IMAGE
+
+2002-02-14 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03055] LIB_DIR -> w3m_lib_dir()
+ * image.c (getCharSize): s/LIB_DIR/w3m_lib_dir()/
+ * image.c (openImgdisplay): ditto
+ * image.c (getImageSize): ditto
+
+2002-02-14 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03048] garbage of images on the right edge of termical.
+ * display.c (redrawLineImage): fix width calculation
+
+2002-02-14 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03053] Re: SSL indicator
+ * main.c (dump_extra): Output SSL certificate.
+
+2002-02-12 Katsumi Yamaoka <yamaoka@jpl.org>
+
+ * [w3m-dev 03038] LDFLAGS
+ * XMakefile: refer to LDFLAGS when linking
+ * configure: add -ldflags=*
+
+2002-02-12 Yoshinobu Sakane <sakane@d4.bsd.nes.nec.co.jp>
+
+ * [w3m-dev 03036]
+ * display.c (displayBuffer): ifdef USE_SSL
+
+2002-02-10 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03034] check buf
+ * frame.c (frame_download_source): buf->ssl_certificate can be used
+ only if buf != NULL && buf != NO_BUFFER
+
+2002-02-10 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03033] SSL indicator
+ * display.c (displayBuffer): show SSL indicator
+
+2002-02-08 Yoshinobu Sakane <sakane@d4.bsd.nes.nec.co.jp>
+
+ * [w3m-dev 03025] fix image loading on EWS4800
+ * image.c (loadImage): exit if symlink failed
+ exit if fopen failed
+
+2002-02-08 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03022] SSL certificates of frame body
+ * frame.h (frame_body): add ssl_certificate
+ * frame.c (frame_download_source): save ssl_certificate
+ * map.c (append_frame_info): display ssl_certificate of frame_body
+
+2002-02-08 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03021] Bug#132934: w3m should recognize file:/uris
+ in chkURLBuffer function
+ * main.c (chkURLBuffer): add "file:"
+
+2002-02-08 Yuji Abe <cbo46560@pop12.odn.ne.jp>
+
+ * [w3m-dev 03017] URI scheme is case insensitive
+ * url.c (searchURIMethods): s/strcmp/strcasecmp/
+
+2002-02-08 Tsutomu Okada <okada@furuno.co.jp>
+
+ * [w3m-dev 03011] segmentation fault on <input> tag without <form>
+ * file.c (process_input): tmp initialization fix
+
+2002-02-07 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [emacs-w3m:02733] for emacs-w3m better rendering with inline image
+ * main.c (MAIN): activeImage = TRUE when -halfdump & display_image=1
+
+2002-02-07 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 03006] fix form order in table
+ * file.c (process_form): static
+ fix form index order
+ method should be quoted
+ * file.c (process_form): added
+ * file.c (HTMLlineproc2body): add form_id
+ * html.c (ALST_FORM_INT): added
+ * html.c (form_int): update
+
+2002-02-07 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 03005] fix Bad cert ident
+ * istream.c (ssl_match_cert_ident): added
+ * istream.c (ssl_check_cert_ident): use ssl_match_cert_ident()
+
+2002-02-07 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02999] don't ask accept bad cert when background downloading
+ * file.c (getAuthCookie): if QuietMessage, return NULL
+ * file.c (inputAnswer): if QuietMessage, input "n"
+
+2002-02-05 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02991] form support in w3m -halfdump foo.html|w3m -halfload
+ * fm.h (DUMP_HALFEXTRA): deleted
+ * proto.h (process_select): return Str
+ * file.c (process_img): process_form() fix
+ * file.c (process_input): process_form() fix
+ * file.c (process_select): return Str
+ process_form() fix
+ * file.c (process_textarea): process_form() fix
+ * file.c (process_form): support -halfdump
+ * file.c (HTMLtagproc1): delete case HTML_FORM_INT, HTML_N_FORM_INT
+ process_{form,select,textarea}() fix
+ * file.c (HTMLlineproc2body): support -halfload
+ HTML_INTERNAL, HTML_N_INTERNAL,
+ HTML_FORM_INT, HTML_FORM_INT,
+ HTML_TEXTAREA_INT, HTML_N_TEXTAREA_INT,
+ HTML_SELECT_INT, HTML_N_SELECT_INT,
+ HTML_OPTION_INT, HTML_TITLE_ALT
+ * file.c (print_internal_information): fix -halfdump
+ * file.c (loadHTMLstream): no DUMP_HALFEXTRA
+ * html.h: add HTML_INTERNAL, HTML_N_INTERNAL,
+ HTML_SELECT_INT, HTML_N_SELECT_INT,
+ HTML_OPTION_INT, HTML_TEXTAREA_INT, HTML_N_TEXTAREA_INT
+ * html.c (ALST_TEXTAREA_INT): added
+ * html.c (ALST_SELECT_INT): added
+ * html.c: add <internal>, </internal>, <select_int>, </select_int>
+ <option_int>, <textarea_int>, </textarea_int>
+ * main.c (MAIN): delete -halfdump_extra
+ dont output <pre> by -halfdump
+ * table.c (feed_table_tag): process_{form,select}() fix
+ add case HTML_INTERNAL, HTML_N_INTERNAL,
+ HTML_SELECT_INT, HTML_N_SELECT_INT,
+ HTML_OPTION_INT, HTML_TEXTAREA_INT, HTML_N_TEXTAREA_INT,
+ * tagtable.tab: add internal, /internal, select_int, /select_int
+ option_int, textarea_int, /textarea_int
+
+2002-02-05 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02990]
+ * file.c (doFileCopy): use Strfgets() instead of fgets()
+ * file.c (doFileSave): ditto
+
+2002-02-05 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02989]
+ * file.c (inputAnswer): use Strfgets() instead of fgets()
+
+2002-02-04 TSUCHIYA Masatoshi <tsuchiya@pine.kuee.kyoto-u.ac.jp>
+
+ * [w3m-dev 02986]
+ * file.c (print_internal_information): Don't print boundaries.
+ Use henv->f instead of stdout.
+
+2002-02-04 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02984] inline image improvements and cleanups
+ * config.h.dist (HAVE_SYMLINK) added
+ * config.h.dist (HAVE_LSTAT): added
+ * configure: symlink() check
+ * configure: lstat() check
+ * fm.h (maxLoadImage): added
+ * form.c (form_write_from_file): s/HAVE_READLINK/HAVE_LSTAT/
+ * image.c: include <sys/stat.h>
+ * image.c (MAX_LOAD_IMAGE): default 8
+ * image.c (max_load_image): deleted
+ * image.c (n_load_image): added
+ * image.c (showImageProgress): added
+ * image.c (loadImage): check load image count
+ s/HAVE_READLINK/HAVE_LSTAT/ (HAVE_SYMLINK)
+ showImageProgress
+ * local.c: include <sys/stat.h>
+ s/HAVE_READLINK/HAVE_LSTAT/
+ * rc.c (CMT_MAX_LOAD_IMAGE): added
+ * rc.c (max_load_image): added
+ * doc/README.img: update
+ * doc-jp/README.img: update
+
+ * file.c (process_img): pre_int fix
+
+2002-02-04 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02985] inputAnswer() and no "ssl_forbid_method"
+ * file.c (inputAnswer): buf size is 80
+ * url.c (openSSLHandle): if old_ssl_forbid_method == ssl_forbid_method
+ ssl path is not modified
+
+2002-02-04 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02980] Re: code_to_str not found ifndef JP_CHARSET
+ * backend.c (get_mime_charset_name): used only ifdef JP_CHARSET
+
+2002-02-04 Kazuhiko <kazuhiko@archi.kyoto-u.ac.jp>
+
+ * [w3m-dev 02979] code_to_str not found ifndef JP_CHARSET
+ * file.c (print_internal_information): ifdef JP_CHARSET
+
+2002-02-03 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02967] parallel image downloading
+ * fm.h (ImageCache): add touch, pid
+ * image.c (getCharSize): retry fscanf
+ * image.c (drawImage): retry fflush
+ * image.c (MAX_LOAD_IMAGE): added, default 4
+ * image.c (image_cache): change to ImageCache**
+ * image.c (image_lock): added
+ * image.c (load_image_handler): signal SIGUSR1
+ * image.c (load_image_next): signal SIGUSR1
+ * image.c (loadImage): parallel image downloading
+ * image.c (getImage): initialize touch, pid
+ * image.c (getImageSize): return value is TRUE or FALSE
+ retry fscanf
+
+2002-02-03 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02970] multiple -lnsl -lsocket
+ * configure: merge bsdlib and extlib detection, use extlib only
+ add ldflags to extlib
+ (SYS_LIBRARIES): remove extlib
+ (LOCAL_LIBRARIES): exlib only
+
+2002-02-03 TSUCHIYA Masatoshi <tsuchiya@pine.kuee.kyoto-u.ac.jp>
+
+ * [w3m-dev 02964] Print data of forms when halfdump option is set
+ * backend.c (print_headers): print w3m-current-url and w3m-base-url
+ * backend.c (print_formlist): deleted
+ * backend.c (internal_get): remove "if (buf->formlist) {}"
+ * file.c (print_internal_information): added
+ * file.c (loadHTMLstream): if halfdump, print_internal_information
+ if w3m_backend, print_internal_information
+ * fm.h (DUMP_HALFEXTRA): added
+ * main.c (-halfdump_extra): added
+
+2002-02-01 Dai Sato <satodai@dog.intcul.tohoku.ac.jp>
+
+ * [w3m-dev 02972] #include "config.h"
+ * url.c, mktable.c: fix the order of including files
+
+2002-02-01 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02968] fix problem with Netscape-Enterprise WWW-authenticate
+ * file.c (findAuthentication): token is case insensitive
+
+2002-02-01 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02961] halfdump image is not consistent
+ * file.c (flushline): check f
+ * file.c (do_blankline): fix blanklink conditions
+
+2002-02-01 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * gcc -Wall -Werror safe
+ * anchor.c (addMultirowsImg): unused variable: fi
+ * display.c (redrawLineImage): unused variable: ncol
+ * file.c (process_img): uninitialized variables: r2, ni, w0, i0, ismap
+ unused variable: url, ext
+ * file.c (loadHTMLstream): need volatile image_flag
+ * image.c (image_index): int
+ * image.c (getCharSize): need prototype
+ * image.c (getImage): uninitialized variable: key
+ return NULL
+ * map.c (follow_map_menu): used only USE_IMAGE: px, py, map
+ * map.c (newMapArea): used only USE_IMAGE: p, i, max
+ * proto.h (addMultirowsImg): added
+ * w3mimgdisplay.c (main): format string fix
+ * w3mimgdisplay.c (DrawImage): need (Pixmap) cast
+
+ * inflate.c: indent
+
+2002-02-01 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * w3m-img merge (w3m-0.2.4+cvs-1.278-img-2.2.patch.gz)
+ * NEWS: w3m-img merge
+ * .cvsignore: add w3mimgdisplay, w3mimgsize
+ * XMakefile: add image.c to SRCS
+ add image.o to OBJS
+ add IMGDISPLAY, IMGSIZE
+ * config.h.dist: USE_IMAGE, IMGSIZE, IMGDISPLAY
+ * configure: add find_imlib
+ ask use_image
+ (config.h) add $imgtarget to EXT_TARGETS
+ $def_use_image
+ IMGSIZE, IMGDISPLAY
+ * fm.h (MAX_IMAGE): added
+ * fm.h (DEFAULT_PIXEL_PER_CHAR): fix for USE_IMAGE
+ * fm.h (DEFAULT_PIXEL_PER_LINE): added
+ * fm.h (B_REDRAW_IMAGE): added
+ * fm.h (IMG_FLAG_SKIP): added
+ * fm.h (IMG_FLAG_AUTO): added
+ * fm.h (IMG_FLAG_START): added
+ * fm.h (IMG_FLAG_STOP): added
+ * fm.h (IMG_FLAG_NEXT): added
+ * fm.h (IMG_FLAG_UNLOADED): added
+ * fm.h (IMG_FLAG_LOADED): added
+ * fm.h (IMG_FLAG_ERROR): added
+ * fm.h (MapArea): added
+ * fm.h (MapList): s/urls/alts/, add area
+ * fm.h (ImageCache): added
+ * fm.h (Image): added
+ * fm.h (Anchor): add image
+ * fm.h (Buffer): add imarklist, image_flag, need_reshape
+ * fm.h (RG_FRAME_SRC): added
+ * fm.h (ALIGN_MIDDLE): added
+ * fm.h (ALIGN_TOP): added
+ * fm.h (ALIGN_BOTTOM): added
+ * fm.h (QuietMessage): added
+ * fm.h (Imgdisplay): added
+ * fm.h (Imgsize): added
+ * fm.h (activeImage): added
+ * fm.h (displayImage): added
+ * fm.h (autoImage): added
+ * fm.h (useExtImageViewer): added
+ * fm.h (image_source): added
+ * fm.h (view_unseenobject): change default if USE_IMAGE
+ * fm.h (set_pixel_per_char): added
+ * fm.h (pixel_per_line): added
+ * fm.h (set_pixel_per_line): added
+ * fm.h (image_scale): added
+ * proto.h (dispI): added
+ * proto.h (stopI): added
+ * proto.h (deleteImage): added
+ * proto.h (getAllImage): added
+ * proto.h (loadImage): added
+ * proto.h (getImage): added
+ * proto.h (getImageSize): added
+ * proto.h (process_img): add width arg
+ * proto.h (loadImageBuffer): added
+ * proto.h (follow_map_menu): add a_img arg
+ * proto.h (getMapXY): added
+ * proto.h (newMapArea): added
+ * proto.h (touch_cursor): added
+ * proto.h (cURLcode): added
+ * proto.h (initImage): added
+ * proto.h (termImage): added
+ * proto.h (addImage): added
+ * proto.h (drawImage): added
+ * proto.h (clearImage): added
+ * anchor.c (addMultirowsImg): added
+ * buffer.c (discardBuffer): deleteImage if USE_IMAGE
+ * buffer.c (reshapeBuffer): buf->need_reshape check
+ * display.c (fmTerm): if activeImage, stop load image
+ * display.c (fmInit): if displayImage, initImage
+ * display.c (image_touch): added
+ * display.c (draw_image_flag): added
+ * display.c (redrawLineImage): added
+ * display.c (displayBuffer): buf->need_reshape = TRUE
+ mode == B_REDRAW_IMAGE
+ image flag checks
+ force redraw image in mode == B_REDRAW_IMAGE
+ displayBuffer if need reshape
+ drawImage
+ * display.c (redrawNLine): redrawLineImage
+ * display.c (redrawLineImage): added
+ * display.c (disp_message_nsec): return immediately if QuietMessage
+ * etc.c (reset_signals): ignore SIGUSR1
+ * file.c (frame_source): added
+ * file.c (_MoveFile): added
+ * file.c (cur_baseURL): added
+ * file.c (cur_document_code): added
+ * file.c (cur_iseq): added
+ * file.c (loadGeneralFile): fix fmInitialized and prevtrap checks
+ save cur_baseURL
+ image_source load
+ loadImageBuffer for "image/*"
+ frame_source flag
+ fix b->type when proc is loadImageBuffer
+ * file.c (process_img): add width arg
+ parse height and width attr, align
+ fix for inline-image
+ * file.c (process_input): fix for form <input type="image">
+ * file.c (HTMLtagproc1): pass h_env->limit to process_img()
+ fix <img_alt> for inline-image
+ save cur_baseURL
+ * file.c (HTMLlineproc2body): fix <img_alt> for inline-image
+ * file.c (loadHTMLstream): fix for inline-image
+ fix fmInitialized and prevtrap checks
+ save cur_document_code
+ save image_flag
+ * file.c (loadGopherDir): save cur_document_code
+ fix fmInitialized and prevtrap checks
+ * file.c (loadImageBuffer): added for inline-image
+ * file.c (save2tmp): fix fmInitialized and prevtrap checks
+ * frame.c (frame_download_source): set RG_FRAME_SRC flag
+ image check
+ * funcname.tab (DISPLAY_IMAGE): added
+ * funcname.tab (STOP_IMAGE): added
+ * html.c (ALST_IMG): add align, ismap
+ * html.c (ALST_AREA): add shape, coords
+ * html.c (ALST_IMG_ALT): add width, height, usemap, ismap, hseq,
+ xoffset, yoffset, top_margin, bottom_margin
+ * html.c (AttrMap): add shape, coords, ismap, xoffset, yoffset
+ * html.h (ATTR_SHAPE): added
+ * html.h (ATTR_COORDS): added
+ * html.h (ATTR_ISMAP): added
+ * html.h (ATTR_XOFFSET): added
+ * html.h (ATTR_YOFFSET): added
+ * html.h (ATTR_TOP_MARGIN): added
+ * html.h (ATTR_BOTTOM_MARGIN): added
+ * html.h (SHAPE_UNKNOWN): added
+ * html.h (SHAPE_DEFAULT): added
+ * html.h (SHAPE_RECT): added
+ * html.h (SHAPE_CIRCLE): added
+ * html.h (SHAPE_POLY): added
+ * image.c: added
+ * main.c (fversion): add USE_IMAGE
+ * main.c (fusage): -ppl option
+ * main.c (MAIN): set_pixel_per_char if ppc specified
+ -ppl option
+ loadImage
+ * main.c (pushBuffer): deleteImage
+ * main.c (quitfm): termImage
+ * main.c (selBuf): deleteImage
+ * main.c (followA): fix for inline-image and map area
+ * main.c (query_from_followform): getMapXY()
+ * main.c (setOpt): displayBuffer B_REDRAW_IMAGE
+ * main.c (follow_map): fix calculate x, y
+ * main.c (dispI): added
+ * main.c (stopI): added
+ * map.c: include <math.h>
+ * map.c (inMapArea): added
+ * map.c (follow_map_menu): add a_img arg to handle inline-image
+ * map.c (follow_map_panel): use MapArea
+ * map.c (getMapXY): added
+ * map.c (newMapArea): added
+ * menu.c (smChBuf): deleteImage
+ * parsetagx.c (toAlign): align top, bottom, middle
+ * rc.c (P_SCALE): added
+ * rc.c (CMT_PIXEL_PER_LINE): added
+ * rc.c (CMT_DISP_IMAGE): added
+ * rc.c (CMT_AUTO_IMAGE): added
+ * rc.c (CMT_EXT_IMAGE_VIEWER): added
+ * rc.c (CMT_IMAGE_SCALE): added
+ * rc.c (CMT_IMGDISPLAY): added
+ * rc.c (CMT_IMGSIZE): added
+ * rc.c (show_param): P_PIXELS
+ * rc.c (set_param): P_PIXELS
+ * rc.c (sync_with_option): initImage
+ * rc.c (to_str): P_PIXELS
+ * table.c (feed_table_tag): fix <img> for inline-image
+ * tagtable.tab (image): added
+ * terms.c (wgetch): retry read when EINTR or EAGAIN
+ * terms.c (touch_cursor): added
+ * w3mimgdisplay.c: added
+ * w3mimgsize.c: added
+ * doc/README.func (DISPLAY_IMAGE): added
+ * doc/README.func (STOP_IMAGE): added
+ * doc/README.img: added
+ * doc-jp/README.func (DISPLAY_IMAGE): added
+ * doc-jp/README.func (STOP_IMAGE): added
+ * doc-jp/README.img: added
+ * scripts/w3mhelp.cgi.in: show dispI, stopI
+ * scripts/multipart/multipart.cgi.in: inline image support
+
+2002-02-01 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * version.c.in: 0.2.5+cvs
+
+2002-01-31 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * w3m 0.2.5
+ * version.c.in: update
+ * doc/README: version 0.2.5, release date
+ * doc-jp/README: ditto
+ * NEWS: update
+
+2002-01-31 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02960] inflate without memmove()
+ * inflate.c: rewrite without memmove()
+
+2002-01-31 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
+
+ * inflate.c: support raw deflate without zlib header
+
+2002-01-31 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02955] compression_decoders error message
+ * file.c (uncompress_stream): redirect stderr
+ * inflate.c (main): print error message
+
+2002-01-31 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02949] fix for #undef USE_MIGEMO
+ * main.c (dispincsrch): need #ifdef USE_MIGEMO
+
+2002-01-31 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02946] toggle migemo
+ * fm.h (migemo_active): added
+ * proto.h (inputLineHistSearch): add arg `prop' to incrfunc()
+ * linein.c (inputLineHistSearch): ditto
+ * main.c (isrch): ditto
+ * main.c (dispincsrch): ditto
+ C-\ toggle migemo
+ underline when migemo is active
+ * search.c (migemo_active): deleted
+ * search.c (migemo_running): added
+ * search.c (init_migemo): migemo_running
+ * search.c (migemostr): ditto
+ * search.c (forwardSearch): migemo_active > 0
+ * search.c (backwardSearch): ditto
+
+2002-01-31 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02942] Digest qop=auth support
+ * file.c (http_auth): add request to cred() arg
+ * file.c (AuthBasicCred): ditto
+ * file.c (AuthDigestCred): ditto
+ * file.c (AuthDigestCred): support algorithm=MD5, MD5-sess
+ qop=auth, auth-int
+ * file.c (qstr_unquote): return NULL if input is NULL
+ * file.c (none_auth_param): added
+ * file.c (findAuthentication): skip weak or unknown auth
+ * file.c (getAuthCookie): add request to arg
+ * file.c (loadGeneralFile): add request to getAuthCookie()
+
+2002-01-31 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02934] add auth cookie with unquoted realm
+ * file.c (loadGeneralFile): need unquote realm
+
+2002-01-31 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02933] segmentation fault when w3m -dump https:
+ * file.c (readHeader): use inputAnswer()
+ * file.c (getAuthCookie): remove term_cbreak()
+ * file.c (checkOverWrite): use inputAnswer()
+ * file.c (inputAnswer): added
+ * istream.c (ssl_get_certificate): use inputAnswer()
+ * main.c (qquitfm): change prompt
+ * proto.h (inputAnswer): added
+
+2002-01-30 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02931] use POST in multipart.cgi
+ * scripts/multipart/multipart.cgi.in: support POST method
+
+2002-01-30 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02930] Re: fixed w3mmail.cgi
+ * scripts/w3mmail.cgi.in (lang_header_default): [=_?] should be encoded
+ * scripts/w3mmail.cgi.in (lang_body_default): '=' should be encoded
+
+2002-01-30 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02929] Re: fixed w3mmail.cgi
+ * file.c (openPagerBuffer): use content_charset as document_code
+ * file.c (getNextPage): code is document_code or DocumentCode
+
+2002-01-30 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02928] RFC2617: HTTP Digest authentication
+ * NEWS: RFC2617: HTTP Digest authentication
+ * config.h.dist (USE_DIGEST_AUTH): added
+ * configure (use_digest_auth): added, enabled when openssl found
+ (because it used openssl/md5.h)
+ * file.c (auth_param): added
+ * file.c (http_auth): added
+ * file.c (extract_auth_val): added
+ * file.c (qstr_unquote): added
+ * file.c (extract_auth_param): added
+ * file.c (get_auth_param): added
+ * file.c (AuthBasicCred): added
+ * file.c (digest_hex): added
+ * file.c (AuthDigestCred): added
+ * file.c (basic_auth_param): added
+ * file.c (digest_auth_param): added
+ * file.c (www_auth): added
+ * file.c (findAuthentication): added
+ * file.c (getAuthCookie): rewrite, use http_auth
+ * file.c (loadGeneralFile): HRequest hr
+ * file.c (loadGeneralFile): use findAuthentication, new getAuthCookie
+ * proto.h (HTTPrequestMethod): added
+ * proto.h (HTTPrequestURI): added
+ * proto.h (openURL): add `hr' arg
+ * url.c (HTTPrequestMethod): added
+ * url.c (HTTPrequestURI): added
+ * url.c (HTTPrequest): use HTTPrequestMethod and HTTPrequestURI
+ * url.c (openURL): add `hr' arg
+
+2002-01-30 SASAKI Takeshi <sasaki@ct.sakura.ne.jp>
+
+ * [w3m-dev 02927] mailto: POST method with w3mmail.cgi
+ * file.c (loadGeneralFile): pass request even if SCM_UNKNOWN
+ (for external URI loader)
+ * scripts/w3mmail.cgi.in: support POST method
+
+2002-01-30 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02926] fixed w3mmail.cgi
+ * scripts/w3mmail.cgi.in: dont MIME encode for preview
+ * scripts/w3mmail.cgi.in (lang_body): add 7bit/8bit flag arg
+ * scripts/w3mmail.cgi.in: fix hidden from value
+ * scripts/w3mmail.cgi.in (lang_setup): check $LC_ALL, $LC_CTYPE
+ * scripts/w3mmail.cgi.in (lang_header_default): fix MIME encode word
+
+2002-01-30 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02920] don't use inttypes.h and/or stdint.h
+ * mktable.c: remove inttypes.h, uintptr_t, use unsigned long instead
+ * configure: remove inttypes.h detection
+ * config.h.dist: remove HAVE_INTTYPES_H
+
+2002-01-29 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02921] use inttypes.h instead of stdint.h
+ * configure: check inttypes.h instead of stdint.h
+ * config.h.dist: s/STDINT_H/INTTYPES_H/
+ * mktable.c: use inttypes.h instead of stdint.h
+
+2002-01-28 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02919] no need of width
+ * scripts/w3mmail.cgi.in: no need width=80 for header field name
+
+2002-01-28 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02919] wrong table width calculation
+ * table.c (set_table_matrix0): refine width calculation
+
+2002-01-28 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02918] fixed scripts/w3mmail.cgi.in
+ * scripts/w3mmail.cgi.in: add width=80 for header field name
+ * scripts/w3mmail.cgi.in (url_unquote): use pack instead of chr
+
+2002-01-27 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02914]
+ * history.c (copyHist): added
+ * history.h (copyHist): ditto
+ * main.c (goURL0): copyHist(URLHist), push current and anchor URLs
+ default set by DefaultURLString
+
+2002-01-26 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02913] wrong table width calculation
+ * table.c (set_table_matrix0): refine width calculation
+
+2002-01-26 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02875] rendering a table with inconsistent colspan,rowspan
+ * table.c (feed_table_tag): don't clear HTT_X|HTT_Y
+ instead, if set these flags, break the loop
+
+2002-01-26 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02909] wrong table width calculation (sf.net Bug#506949)
+ * table.c (correct_table_matrix4): added
+ * table.c (set_table_matrix0): use correct_table_matrix4()
+
+2002-01-25 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02908] document code of frame
+ * frame.c (renderFrame): save document_code if JP_CHARSET
+
+2002-01-25 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02904]
+ * rc.c (N_STR): use cpp stringification
+
+2002-01-25 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02902] mouse inactive after calling some command with ALARM.
+ * main.c (SigAlarm): mouse_inactive() and mouse_active()
+
+2002-01-25 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02901] Default URL for GOTO*
+ * fm.h (DEFAULT_URL_*): added
+ * fm.h (DefaultURLString): added
+ * main.c (cmd_loadURL): add arg `referer'
+ * main.c (goURL0): 2nd arg is `relative' flag
+ check DefaultURLString
+ if relative, then current and referer is set
+ * main.c (ldhelp): cmd_loadURL arg changes
+ * main.c (deletePrevBuf): ditto
+ * main.c (cmd_loadBuffer): ditto
+ * main.c (adBmark): ditto
+ * main.c (follow_map): ditto
+ * rc.c (CMT_DEFAULT_URL): added
+ * rc.c (defaulturls): added
+ * rc.c (params9): add "default_url"
+
+2002-01-25 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02901] DNS_ORDER_*
+ * fm.h (DNS_ORDER_*): added
+ * rc.c (dnsorders): use N_S(DNS_ORDER_*)
+
+2002-01-25 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02901] ACCEPT_BAD_COOKIE_*
+ * file.c (readHeader): accept_bad_cookie is one of ACCEPT_BAD_COOKIE_*
+ * fm.h (PERHAPS): deleted
+ * fm.h (ACCEPT_BAD_COOKIE_*): added
+ * rc.c (n_s): added
+ * rc.c (N_S): added
+ * rc.c (badcookiestr): use N_S(ACCEPT_BAD_COOKIE_*)
+
+2002-01-24 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02896] fid attr value should be in sequence
+ * table.c (feed_table_tag): s/line/""/ for HTML_FORM,HTML_N_FORM
+
+2002-01-24 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02894] Re: goURL
+ * file.c (HTMLtagproc1): s/goURL/gorURL/
+ * keybind.c (EscKeymap): M-u = GOTO_RELATIVE
+ * keybind_lynx.c (EscKeymap): ditto
+ * doc/keymap.default: ditto
+ * doc/keymap.lynx: ditto
+ * doc-jp/keymap.default: ditto
+ * doc-jp/keymap.lynx: ditto
+ * main.c (MAIN): add $HTTP_HOME or $WWW_HOME to history
+ * main.c (MAIN): add history even if it is local file or local cgi
+ * main.c (goURL0): change args, def_url -> current
+ * main.c (goURL0): delete ParsedURL *b_url
+ * main.c (goURL0): add Buffer *cur_buf
+ * main.c (goURL0): if current is supplied, use its URL as default
+ * main.c (goURL0): add URL to history if loadURL succeeded
+ * main.c (goURL): change args for goURL0()
+ * main.c (gorURL): ditto
+
+2002-01-23 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02889] fix scripts/multipart/multipart.cgi.in
+ * scripts/multipart/multipart.cgi.in: return "" instead of next
+
+2002-01-23 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02885] Re: goURL
+ * funcname.tab (GOTO_RELATIVE): added
+ * main.c (goURL0): renamed from goURL
+ don't add http:// here, if base URL is NULL, cmd_loadURL()
+ will add http:// when necessary
+ * main.c (goURL): go to URL with current URL
+ * main.c (gorURL): go to relative URL
+ * proto.h (gorURL): added
+ * doc/README.func (GOTO_RELATIVE): added
+ * doc-jp/README.func (GOTO_RELATIVE): ditto
+
+2002-01-22 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev-en 00670] GOTO behavior change
+ * main.c (goURL): default URL is current URL
+ if retry_http specified, and inputed URL is not absolute URL
+ add http:// to top of url
+
+ * linein.c (InputKeymap): C-w as backword-kill-word
+
+2002-01-22 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02880] URI_PATTERN
+ * url.c (URI_PATTERN): better match for % hex hex
+ * url.c (chkExternalURIBuffer): don't use URI_PATTERN as format string
+
+2002-01-22 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02879] reset signals
+ * etc.c (reset_signals): added
+ * etc.c (mySystem): use reset_signals()
+ * file.c (uncompress_stream): use reset_signals()
+ * proto.h (reset_signals): added
+ * search.c (init_migemo): kill by SIGKILL
+ * search.c (open_migemo): use reset_signals()
+
+2002-01-22 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * url.c (URI_PATTERN): remove \
+
+2002-01-22 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02878] fix regexp [-...], [...-], []...]
+ * regexp.c (newRegex0): if first char is `-' or ']' after '[',
+ it isn't meta char.
+ if last char in [..] is `-', it isn't meta char.
+
+2002-01-22 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02877] some fixes for urimethodmap
+ * config.h.dist (RC_DIR): remove tailing /
+ * configure (mailer): if use_w3mmailer = y, don't ask mailer
+ * configure (RC_DIR): remove tailing /
+ * fm.h (Mailer): ifndef USE_W3MMAILER
+ * main.c (MAIN): ifndef USE_W3MMAILER getenv("MAILER")
+ * rc.c ("mailer"): ifndef USE_W3MMAILER
+ * regex.c (newRegex0): \ escape kanji chars
+ * url.c (searchURIMethods): need escape for -
+ * scripts/w3mmail.cgi.in: move $url, $qurl
+ * scripts/w3mmail.cgi.in: url_unquote $to
+
+2002-01-21 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02876] w3mmail.cgi.in backport from w3mmee
+ * action='file://$0'
+ * don't add \n to $body's tail
+ * $body =~ s/\r+\n/\n/g;
+ * s/@cmd/@opt/
+ * url_unquote: + should be unquote too
+
+2002-01-18 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02873] delete "decode MIME-body" in doc{,-jp}/README
+ * doc-jp/README: delete "decode MIME-body"
+ * doc/README: ditto
+
+2002-01-18 Yoshinobu Sakane <sakane@d4.bsd.nes.nec.co.jp>
+
+ * [w3m-dev 02872] EWS4800 sh doesn't work ${param-word}
+ * configure (use_migemo): change migemo URL
+ * configure (def_migemo_command): fix for EWS4800
+ * configure (def_image_viewer): ditto
+ * configure (def_audio_player): ditto
+
+2002-01-18 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02871] ignore SIGCHLD (for at least EWS4800)
+ * search.c (open_migemo): signal(SIGCHLD, SIG_IGN);
+
+2002-01-18 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02870] don't kill migemo by SIGINT
+ * main.c (w3m_exit): init_migemo() to kill migemo
+ * search.c: #include <unistd.h>
+ * search.c (migemo_active): added
+ * search.c (migemo_pid): added
+ * search.c (init_migemo): migemo_active = use_migemo
+ * search.c (init_migemo): kill migemo_pid
+ * search.c (open_migemo): s/pid/migemo_pid/
+ * search.c (open_migemo): setpgrp()
+ * search.c (open_migemo): s/use_migemo/migemo_active/
+ * search.c (migemostr): ditto
+ * search.c (forwardSearch): ditto
+ * search.c (backwardSearch): ditto
+
+2002-01-17 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02867] mark URL for external URIs
+ * main.c (chkURLBuffer): chkExternalURIBuffer()
+ * proto.h (chkExternalURIBuffer): added
+ * url.c (chkExternalURIBuffer): added
+
+2002-01-17 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02866]
+ * search.c: #include <signal.h>
+ * search.c (open_migemo): ignore SIG_INT for migemo process
+ * search.c (open_migemo): close_tty()
+ * search.c (open_migemo): use execl() instead of system()
+
+2002-01-17 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02865]
+ * search.c (open_migemo): add flush_tty()
+
+2002-01-17 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02864] def_migemo_command
+ * configure (def_migemo_command): default is
+ migemo -t egrep /usr/local/share/migemo/migemo-dict
+
+2002-01-17 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02863] discard migemo error message
+ * search.c (open_migemo): close stderr
+
+2002-01-17 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02862] SIGPIPE for migemo support
+ * main.c (SigPipe): added
+ * main.c (MAIN): signal(SIGPIPE, )
+ * search.c: #include <errno.h>
+ * search.c (migemostr): check fflush() error
+ * search.c (migemostr): check result string (empty is err)
+ * search.c (migemostr): if error occured, disable use_migemo
+
+2002-01-17 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02861] IPv6 configuration check
+ * configure: force "#define INET6" if socket(AF_INET6, SOCK_STREAM, 0)
+ failed but use_ipv6=y in config.param
+
+2002-01-17 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02859]
+ * config.h.dist (DEF_MIGEMO_COMMAND): added
+ * configure (DEF_MIGEMO_COMMAND): added
+ * fm.h (migemo_command): initial value is DEF_MIGEMO_COMMAND
+ * main.c (migemostr): remove here, move search.c
+ * main.c (srchcore): dont migemostr() here
+ * proto.h (init_migemo): added
+ * rc.c (sync_with_option): init_migemo()
+ * search.c (init_migemo): added
+ * search.c (open_migemo): added
+ * search.c (migemostr): communicate background migemo
+ * search.c (forwardSearch): if regexCompile for migemostr failed,
+ try original str
+ * search.c (backwardSearch): ditto
+
+2002-01-17 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02855]
+ * main.c (dispincsrch): for C-s C-s, revert some changes
+
+2002-01-17 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02854] highlight for incremental search
+ * NEWS: highlight for incremental search
+ * display.c (EFFECT_MARK_START): added
+ * display.c (EFFECT_MARK_END): added
+ * display.c (EFFECT_MARK_START_C): added
+ * display.c (EFFECT_MARK_END_C): added
+ * display.c (EFFECT_MARK_START_M): added
+ * display.c (EFFECT_MARK_END_M): added
+ * display.c: define_effect for MARK_{START,END}
+ * display.c (mark_mode): added
+ * display.c (redrawLine): if mark_mode
+ * display.c (do_effects): do_effect2(PE_MARK, ...)
+ * display.c (do_effects): do_effect1(PE_MARK, ...)
+ * fm.h (P_EFFECT): changed to 0x01ff
+ * fm.h (PE_MARK): moved
+ * fm.h (mark_color): added
+ * linein.c (inputLineHistSearch): incrfunc(int ch, Str str)
+ * main.c (clear_mark): added
+ * main.c (dispincsrch): remove arg `x', `y'
+ * main.c (dispincsrch): move SAVE_BUFPOSITION()
+ * main.c (srch): if (result & SR_FOUND) clear_mark()
+ * main.c (cmd_mark): PE_MARK
+ * main.c (nextMk): s/PM_MARK/PE_MARK/
+ * main.c (prevMk): s/PM_MARK/PE_MARK/
+ * proto.h (inputLineHistSearch): change prototype incfunc()
+ * rc.c (CMT_MARK_COLOR): added
+ * rc.c (params2): add "mark_color"
+ * search.c (set_mark): added
+ * search.c (forwardSearch): use set_mark()
+ * search.c (backwardSearch): use set_mark()
+
+2002-01-16 Tsutomu Okada <okada@furuno.co.jp>
+
+ * [w3m-dev 02851]
+ * regex.c (newRegex0): fix return NULL;
+
+2002-01-16 Yoshinobu Sakane <sakane@d4.bsd.nes.nec.co.jp>
+
+ * [w3m-dev 02847]
+ * menu.c (initSelectMenu): use /* */ instead of //
+
+2002-01-16 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02846]
+ * regex.c (newRegex0): check msg
+
+2002-01-16 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02845]
+ * regex.c (newRegex0): check regex->storage[STORAGE_MAX]
+
+2002-01-16 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02843] w3mmail.cgi.in update
+ * scripts/w3mmail.cgi.in: add $SENDMAIL_OPT
+ change html
+
+2002-01-16 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02841] migemo patch
+ * NEWS: migemo support
+ * config.h.dist (USE_MIGEMO): added
+ * configure: add use_migemo
+ * fm.h (use_migemo): added
+ * fm.h (migemo_command: added
+ * main.c (fversion): add "migemo"
+ * main.c (migemostr): added
+ * main.c (srchcore): if use_migemo, use migemostr
+ * rc.c (CMT_USE_MIGEMO): added
+ * rc.c (CMT_MIGEMO_COMMAND): added
+ * rc.c (params3): add use_migemo, migemo_command
+
+2002-01-16 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * main.c (fversion): add "external-uri-loader,w3mmailer"
+
+2002-01-16 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02840]
+ * scripts/w3mmail.cgi.in: use LOCAL_COOKIE
+ * scripts/w3mmail.cgi.in: no need HTTP response header
+ * scripts/w3mmail.cgi.in: fix typo $nkf_NKF
+ * scripts/w3mmail.cgi.in: eval { use NKF; } is perl5ism
+ * scripts/multipart/multipart.cgi.in: ditto
+
+2002-01-16 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02835]
+ * rc.c: move label_topline, nextpage_topline from param3 to param1
+ param7 is SSL Setting
+
+2002-01-15 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02834] mailto: use external program
+ * NEWS: use w3mmail.cgi for mailto: URL
+ * configure: add use_w3mmailer
+ * frame.c (createFrameFile): ifndef USE_W3MMAILER
+ * main.c (followA): ifndef USE_W3MMAILER
+ * main.c (cmd_loadURL): ifndef USE_W3MMAILER
+ * url.c (schemetable): ifndef USE_W3MMAILER, mailto: become SCM_UNKNOWN
+ * url.c (parseURL2): ifndef USE_W3MMAILER
+ * url.c (_parsedURL2Str): ifndef USE_W3MMAILER
+ * url.c (default_urimethods): added
+ * url.c (searchURIMethods): check default_urimethods
+ * scripts/Makefile: add w3mmail.cgi
+ * scritps/w3mmail.cgi.in: added
+ * scripts/.cvsignore: ignore w3mmail.cgi
+
+2002-01-15 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * file.c (loadGeneralFile): return NULL, not NO_BUFFER
+
+2002-01-15 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02833] ssl_forbid_method in SSL Setting
+ * rc.c (params7): ssl_forbid_method moved here
+ * rc.c (params8): ssl_forbid_method removed here
+ * rc.c (sections): params7 ifdef USE_SSL
+
+2002-01-15 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02832] external URI loader support
+ * NEWS: support external URI loader
+ * config.h.dist (USE_EXTERNAL_URI_LOADER): added
+ * config.h.dist (USER_URIMETHODMAP): added
+ * config.h.dist (SYS_URIMETHODMAP): added
+ * configure: ask use_external_uri_loader
+ * file.c (loadGeneralFile): return NO_BUFFER, not NULL
+ * file.c (loadGeneralFile): add SCM_UNKNOWN for USE_EXTERNAL_URI_LOADER
+ * fm.h (urimethodmap_files): added
+ * menu.c (initSelectMenu): SCM_UNKNOWN comment out
+ * proto.h (initURIMethods): added
+ * proto.h (searchURIMethods): added
+ * rc.c (CMT_URIMETHODMAP): added
+ * rc.c (params6): add urimethodmap
+ * rc.c (sync_with_option): add initURIMethods()
+ * url.c (parseURL): if SCM_UNKNOWN, url is saved in pu->file
+ * url.c (_parsedURL2Str): if SCM_UNKNOWN, url is in pu->file
+ * url.c (urimethods): added
+ * url.c (loadURIMethods): added
+ * url.c (initURIMethods): added
+ * url.c (searchURIMethods): added
+
+2002-01-13 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02828]
+ * url.c (_parsedURL2Str): add '/' at the end when scheme is SCM_FTPDIR
+
+2002-01-12 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02829]
+ * file.c (loadGeneralFile): return NO_BUFFER
+ * file.c (loadGeneralFile): if ssl_get_certificate() fails,
+ no buffer created
+ * istream.c (ssl_certificate_validity): deleted
+ * istream.c (ssl_set_certificate_validity): ditto
+ * istream.c (accept_this_site): added
+ * istream.c (ssl_accept_this_site): ditto
+ * istream.c (ssl_check_cert_ident): 1st arg is `X509 *'
+ * istream.c (ssl_get_certificate): 2nd arg is `char *hostname'
+ cert check code moved here from openSSLHandle()
+ * url.c (free_ssl_ctx): accept_this_site initialized
+ * url.c (openSSLHandle): remove cert check code here
+
+2002-01-12 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02827]
+ * scripts/Makefile: use sed instead of /bin/sh while read; echo loop
+
+2002-01-12 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02823]
+ * scripts/Makefile: don't use read -r
+ because Solaris 8 for x86 doesn't work
+
+2002-01-12 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02822] Print FTP directory list for -dump_extra option
+ * file.c (loadGeneralFile): remove FTPDIRtmp, use readFTPDir() instead
+ save to buf->sourcefile for -dump_extra
+ * ftp.c (FTPDIRtmp): deleted
+ * ftp.c (openFTP): delete readFTPDir() part
+ * ftp.c (readFTPDir): added
+ * proto.h (readFTPDir): added
+
+2002-01-11 Akinori Ito <aito@fw.ipsj.or.jp>
+
+ * [w3m-dev 02819]
+ * regex.c (RegexMatch): loop condition changed (from < to <= )
+ * regex.c (regmatch_iter): end condition changed (from >= to >)
+ * search.c (forwardSearch): next search fix
+
+2002-01-11 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02818]
+ * regex.c (regmatch_iter): return 0 if out of range
+
+2002-01-11 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02817]
+ * menu.c (menuBackwardSearch): new regexMatch()
+
+2002-01-11 aito@fw.ipsj.or.jp
+
+ * [w3m-dev 02815]
+ * cookie.c (domain_match): use new regex
+ * main.c (chkURLBuffer): use new regex
+ * main.c (chkNMIDBuffer): use new regex
+ * menu.c (menuForwardSearch): new regexMatch()
+ * regex.c (RegexMatch): negative length means whole string
+ * regex.c (RegexMatch): new regmatch()
+ * regex.c (regmatch_sub_anytime): add 5th arg `char *'
+ * regex.c (regmatch_iter): add 4th arg `char *'
+ * regex.c (regmatch): add 3rd arg `char *'
+ * url.c (openSocket): use new regex
+
+2002-01-10 aito@fw.ipsj.or.jp
+
+ * [w3m-dev 02811] new regexp implementation
+ * regex.h: remove defines
+ * regex.h: struct regexchar, struct regex
+ * regex.c: include stdio.h, stdlib.h, string.h, config.h
+ * regex.c: remove include fm.h
+ * regex.c (NULL JP_CHARSET IS_ALPHA IS_KANJI1): define unless defined
+ * regex.c (RE_*) define
+ * regex.c (st_ptr): deleted
+ * regex.c (regmatch): remove 4th arg `int'
+ * regex.c (newRegex0): rewrite, based on old newRegex
+ * regex.c (newRegex): use newRegex0()
+ * regex.c (RegexMatch): rewrite
+ * regex.c (struct MatchingContext1): added
+ * regex.c (struct MatchingContext2): added
+ * regex.c (YIELD): added
+ * regex.c (regmatch_sub_anytime): added
+ * regex.c (regmatch_iter): added
+ * regex.c (regmatch): use regmatch_iter()
+ * regex.c (regmatch1): rewrite
+ * regex.c (lc2c): add 2nd arg `len', rewrite
+
+2002-01-10 Yoshinobu Sakane <sakane@d4.bsd.nes.nec.co.jp>
+
+ * [w3m-dev 02810]
+ * scripts/Makefile: read -r
+ * scripts/w3mhelp.cgi.in: fix bugs displaying "C-" only in some case
+
+2002-01-08 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02794]
+ * url.c (parseURL): cleanup
+ * url.c (parseURL2): file_unquote(pu->file)
+
+2002-01-07 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * version.c.in: 0.2.4+cvs
+
+2002-01-07 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * w3m 0.2.4
+ * version.c.in: update
+ * doc/README: version 0.2.4, release date
+ * doc-jp/README: ditto
+ * NEWS: update
+
+2002-01-06 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02781] Re: Bug#127883: w3m tries to use xv as default
+ * config.h.dist (DEF_IMAGE_VIEWER): added
+ * config.h.dist (DEF_AUDIO_PLAYER): added
+ * configure (def_image_viewer): added
+ * configure (def_audio_player): added
+ * configure (DEF_IMAGE_VIEWER): added
+ * configure (DEF_AUDIO_PLAYER): added
+ * mailcap.c (DefaultMailcap): use DEF_IMAGE_VIEWER, DEF_AUDIO_PLAYER
+
+2002-01-05 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02779] `;' is valid in URL
+ * main.c (chkURLBuffer): add ;
+
+2001-12-28 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02772]
+ * istream.c (ssl_get_certificate): show certificate subject and issuer
+ * istream.c (ssl_check_cert_ident): add missing NULL for Strcat_m_charp
+ * url.c (openSSLHandle): close(sock) and SSL_free(handle) on failure
+
+2001-12-28 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02770] form element outside <form>..</form>
+ * main.c (_followForm): check whether parent action is "none"
+ * form.c (internal_action): add "none"
+ * form.c (do_internal): check internal_action[i].rout
+ * file.c (process_input): check cur_form_id
+ * file.c (process_select): ditto
+ * file.c (process_textarea): ditto
+
+2001-12-28 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02769] <form>..</form> as block element
+ * file.c (HTMLtagproc1): CLOSE_P for <form>...</form>
+ * table.c (feed_table_tag): add feed_table_block_tag for <form></form>
+
+2001-12-28 Hironori Sakamoto <h-saka@lsi.nec.co.jp>
+
+ * [w3m-dev 02765] backend
+ * backend.c (internal_get): cleanups
+ * file.c (flushline): remove w3m_backend checks
+ * file.c (loadHTMLstream): add w3m_backend check
+ * fm.h (backend_halfdump_str): deleted
+ * fm.h (backend_halfdump_buf): added
+
+2001-12-28 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
+
+ * [w3m-dev 02761]
+ * file.c (loadcmdout): remove unnecessary buf check
+
+2001-12-28 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02760]
+ * file.c (getshell): check buf == NULL
+ * main.c (execdict): check buf == NULL
+ buf->type == NULL, then buf->type is set as "text/plain"
+
+2001-12-28 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02759] fold textarea
+ * fm.h (FoldTextarea): added
+ * form.c (formUpdateBuffer): check FoldTextarea
+ * rc.c (CMT_FOLD_TEXTAREA): added
+ * rc.c (params1): add "fold_textarea"
+
+2001-12-28 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02757]
+ * main.c (execdict): w = conv_from_system(word)
+ * main.c (dictword): call execdict() only
+
+2001-12-27 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * url.c (openSSLHandle): accept_this_file is out of
+ #ifdef USE_SSL_VERIFY
+
+2001-12-27 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02753]
+ * url (ssl_verify_error_string): deleted
+ * url.c (openSSLHandle): use X509_verify_cert_error_string()
+
+2001-12-27 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02750] RFC2818 server identity check
+ * istream.c (ssl_certificate_validity): added
+ * istream.c (ssl_set_certificate_validity): added
+ * istream.c (ssl_get_certificate): use ssl_certificate_validity
+ * istream.h (ssl_set_certificate_validity): added
+ * url.c (ssl_verity_error_string): added
+ * url.c (openSSLHandle): add accept_this_site
+ * url.c (openSSLHandle): dont check by SSL_VERIFY_PEER,
+ use SSL_get_verify_result() instead
+ * url.c (openSSLHandle): check peer_certificate() and then
+ SSL_get_verify_result()
+
+2001-12-27 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02749] cleanup code for editor,mailer,extbrowser
+ * etc.c (myExtCommand): added
+ * etc.c (myEditor): added
+ * form.c (input_textarea): use myEditor()
+ * main.c (pipeBuf): use myExtCommand()
+ * main.c (editBf): use myEditor()
+ * main.c (editScr): use myEditor()
+ * main.c (followA): use myExtCommand()
+ * main.c (cmd_loadURL): use myExtCommand()
+ * main.c (invoke_browser): use myExtCommand()
+ * main.c (execdict): use myExtCommand()
+ * proto.h (myExtCommand): added
+ * proto.h (myEditor): added
+
+2001-12-27 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02748] cleanup code for restoring cursor position
+ * buffer.c (reshapeBuffer): delete top, linenum, cursorY, pos,
+ currentColumn, formitem
+ * buffer.c (reshapeBuffer): add sbuf and
+ use copyBuffer(), restorePosition()
+ * buffer.c (reshapeBuffer): use chkURLBuffer(), chkNMIDBuffer()
+ * display.c (in_check_url): deleted
+ * display.c (displayBuffer): ditto
+ * display.c (displayBuffer): s/Currentbuf/buf/
+ * display.c (arrangeLine): ditto
+ * display.c (restorePosition): added
+ * fm.h (TOP_LINENUMBER): added
+ * fm.h (CUR_LINENUMBER): added
+ * main.c (editBf): delete type, top, linenum, cursorY, pos,
+ currentColumn
+ * main.c (editBf): add sbuf and use copyBuffer(), restorePosition()
+ * main.c (reload): delete type, top, linenum, cursorY, pos,
+ currentColumn
+ * main.c (reload): add sbuf and use copyBuffer(), restorePosition()
+ * main.c (chkURLBuffer): added
+ * main.c (chkURL): chkRULBuffer on Currentbuf
+ * main.c (chkNMIDBuffer): added
+ * main.c (chkNMID): chkNMIDBuffer on Currentbuf
+ * proto.h (chkURLBuffer): added
+ * proto.h (chkNMIDBuffer): added
+ * proto.h (restorePosition): added
+
+2001-12-27 "OMAE, jun" <jun-o@dai.meta.ne.jp>
+
+ * [w3m-dev 02735]
+ * indep.c (bcopy): need (chat *) cast
+ * indep.c (bzero): use char * instead of void *
+
+2001-12-26 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02745]
+ * istream.h: #include <x509v3.h> deleted
+ * istream.c: #include <x509v3.h>
+ * istream.c (ssl_check_cert_ident): if subjectAltName dNSName found,
+ don't try commonName
+
+2001-12-26 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02743] RFC2818 server identity check
+ * NEWS: RFC2818 server identity check
+ * istream.c (ssl_check_cert_ident): added
+ * istream.h (ssl_check_cert_ident): ditto
+ * istream.h: #include <x509v3.h>
+ * url.c (free_ssl_ctx): ssl_ctx = NULL
+ * url.c (openSSLHandle): arg hostname to check cert id
+ * url.c (openSSLHandle): check SSL_get_verify_result
+ if ssl_verify_server
+ * url.c (openSSLHandle): check server identity by ssl_check_cert_ident
+ * url.c (openURL): openSSLHandle with pu->host
+
+2001-12-26 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02715] bugfix in scripts/multipart/multipart.cgi.in
+ was not applied
+ * scripts/multipart/multipart.cgi: fix "use NKF" check
+
+2001-12-26 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
+
+ * [w3m-dev 02732] fix Debian Bug#126381
+ - Passwords entered for HTTPS are used for HTTP
+ * etc.c (find_auth): add port arg
+ * etc.c (find_auth_cookie): add port arg
+ * etc.c (add_auth_cookie): add port arg
+ * file.c (getAuthCookie): find_auth_cookie(host, port, realm)
+ * file.c (loadGeneralFile): add_auth_cookie(host, port, realm, ss)
+ * fm.h (struct auth_cookie): add port
+ * ftp.c (openFTP): find_auth_cookie(host, port, user)
+ * ftp.c (openFTP): add_auth_cookie(host, port, user, pwd)
+ * proto.h (find_auth_cookie): add port
+ * proto.h (add_auth_cookie): add port
+
+2001-12-26 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02729]
+ * doc-jp/README.func (DOWNLOAD): update
+ * doc-jp/README.func (EDIT): ditto
+ * doc-jp/README.func (EDIT_SCREEN): ditto
+ * doc-jp/README.func (SAVE): ditto
+ * doc/README.func (DOWNLOAD): ditto
+ * doc/README.func (SAVE): ditto
+ * doc/README.func (SUBMIT): ditto
+ * scripts/w3mhelp.cgi.in: $key is normalized by &norm_key
+ * scripts/w3mhelp.cgi.in: keyfunc update
+ * scripts/w3mhelp.cgi.in (load_keymap): check data, &norm_key
+ * scripts/w3mhelp.cgi.in (norm_key): added
+
+2001-12-26 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [#496613] LASTLINE in terms.c
+ by Kazuhiro NISHIYAMA (znz)
+ * terms.c (LASTLINE): defined(__CYGWIN__) instead of defined(CYGWIN)
+ * terms.c (setlinescols): ditto
+
+2001-12-26 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [#496610] #include <sys/wait.h>
+ by Kazuhiro NISHIYAMA (znz)
+ * main.c: #if defined(HAVE_WAITPID) || defined(HAVE_WAIT3)
+ * etc.c: ditto
+ * file.c: ditto
+
+2001-12-26 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
+
+ * [w3m-dev 02725] bcopy, bzero
+ * etc.c (bcopy): deleted
+ * etc.c (bzero): deleted
+ * indep.c (bcopy): added
+ * indep.c (bzero): added
+ * indep.c (bcopy): src should be const
+ * fm.h (bcopy): ditto
+
+2001-12-25 Kazuhiko <kazuhiko@archi.kyoto-u.ac.jp>
+
+ * [w3m-dev 02727]
+ * doc-jp/keymap.default (C-r): ISEARCH_BACK
+ * doc-jp/keymap.default (C-s): ISEARCH
+ * doc-jp/README.func: fix typo
+
+2001-12-25 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02726] incremental search
+ * NEWS: incremental search
+ * fm.h (inputLineHist) define by inputLineHistSearch
+ * fm.h (COPY_BUFPOTISION): added
+ * fm.h (SAVE_BUFPOSITION): ditto
+ * fm.h (RESTORE_BUFPOSITION): ditto
+ * funcname.tab (ISEARCH): added
+ * funcname.tab (ISEARCH_BACK): added
+ * keybind.c (GlobalKeymap): C-s = ISEARCH, C-r = ISEARCH_BACK
+ * linein.c (inputLineHistSearch): renamed from inputLineHist,
+ new arg incrfunc() for increment search
+ * linein.c (inputLineHistSearch): add cursorX, cursorY
+ * main.c (srchcore): remove displayBuffer, onA
+ * main.c (dispincsrch): added
+ * main.c (isrch): ditto
+ * main.c (isrchfor): ditto
+ * main.c (isrchbak): ditto
+ * main.c (srch): add displayBuffer, onA
+ * main.c (srch_nxtprv): ditto
+ * proto.h (isrchfor): added
+ * proto.h (isrchbak): ditto
+ * proto.h (inputLineHistSearch): renamed
+ * doc/keymap.default (C-r): ISEARCH_BACK
+ * doc/keymap.default (C-s): ISEARCH
+ * doc/README.func (ISEARCH): added
+ * doc/README.func (ISEARCH_BACK): ditto
+ * doc-jp/README.func (ISEARCH): added
+ * doc-jp/README.func (ISEARCH_BACK): ditto
+
+2001-12-25 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02723] cleanup resizing
+ * main.c (resized): renamed to need_resize_screen
+ * main.c (need_resize_screen): added
+ * main.c (resize_hook): prototype here
+ * main.c (resize_handler): ditto
+ * main.c (MAIN): move signal initialization
+ * main.c (MAIN): remove duplicate signal initialization
+ * main.c (resize_screen): added
+ * proto.h (resize_hook): deleted
+ * terms.c (mouse_init): remove signal
+
+2001-12-25 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02721]
+ * main.c (resize_handler): added
+ * main.c (MAIN): use resize_handler in getch()
+
+2001-12-25 WATANABE Katsuyuki <katsuyuki_1.watanabe@toppan.co.jp>
+
+ * [w3m-dev 02714]
+ * scripts/w3mhelp.cgi.in: $helpdir should be handled by cygwin_pathconv
+ when $CYGPATH=1
+
+2001-12-25 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02715] bugfix in scripts/multipart/multipart.cgi.in
+ * scripts/multipart/multipart.cgi: fix "use NKF" check
+
+2001-12-25 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02719] (based on [w3m-dev 02708] comments)
+ * resize_hook: set resized flag only
+ * main.c (MAIN): in key input loop, process resize
+ when resized flag is set
+
+2001-12-24 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02702] fix problem with emacs-w3m in [w3m-dev 02699]
+ * main.c (MAIN): remove some flag initialization, its too early?
+ this code caused problem with emacs-w3m.
+
+2001-12-23 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02700] search refactoring
+ * based on http://www.nmn.jp/~hidai/software/w3m/
+ * fm.h: add SR_* constants, result value for search
+ * main.c (srchcore): added
+ * main.c (disp_srchresult): added
+ * main.c (srch): added
+ * main.c (srchfor): use srch()
+ * main.c (srchbak): use srch()
+ * main.c (srch_nxtprv): use srchcore() & disp_srch_result()
+ * search.c (forwardSearch): return SR_* result value
+ * search.c (backwardSearch): ditto
+
+2001-12-23 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02699] initialization too late
+ * main.c (MAIN): initializations moved before arg processing
+ * debian bug closes: Bug##102445: ignores SIGWINCH while downloading
+
+2001-12-22 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
+
+ * [w3m-dev 02696]
+ * configure: fix bashism of w3mhelp-{lynx,w3m}_{en,ja} expansion
+
+2001-12-22 Dai Sato <satodai@dog.intcul.tohoku.ac.jp>
+
+ * [w3m-dev 02687] version number in w3mhelp-*.html (+[w3m-dev 02689])
+ * configure (cur_ver): w3mhelp*.html version subst
+ * w3mhelp*.html: deleted
+ * w3mhelp*.html.in: added
+
+2001-12-22 Tsutomu Okada <okada@furuno.co.jp>
+
+ * [w3m-dev 02682]
+ * doc/README: remove README.dj
+ * doc-jp/README.hp: deleted
+
+2001-12-22 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02692] w3m on linux/ia64
+ * mktable.c: #include "config.h"
+ * mktable.c: #include "stdint.h" or uintptr_t typedef
+ * mktable.c: use uintptr_t instead of unsigned int
+ * configure: check pthread on linux
+ * configure: add gc_cflags for linux/ia64,alpha,s390
+ * configure: check stdint.h
+ * configure (config.h): add $pthreadlib to GCLIB
+ * configure (config.h): add $def_have_stdint_h
+ * config.h.dist (HAVE_STDINT_H): added
+ * Str.c: add #include <stdlib.h> for exit() on some platform (ia64)
+
+2001-12-22 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02690] RC_DIR in scripts
+ * configure (config.h): add RC_DIR
+ * config.h.dist: ditto
+ * XMakefile: pass RC_DIR
+ * scripts/Makefile: subst RC_DIR
+ * scripts/dirlist.cgi.in: $RC_DIR initial value
+ * scripts/w3mhelp.cgi.in: ditto
+ * scripts/w3mhelp.cgi.in (cygwin_pathconv): added
+
+2001-12-22 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * version.c.in: 0.2.3.2+cvs
+
+2001-12-22 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * w3m 0.2.3.2 - Security fix in w3m/scripts
+ * version.c.in: update
+ * w3mhelp-*.html: version 0.2.3.2
+ * doc/README: version 0.2.3.2, release date
+ * doc-jp/README: ditto
+ * NEWS: added
+
+2001-12-22 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * scripts/w3mhelp.cgi.in: lang=[a-z][a-z] only
+
+2001-12-22 Hironori Sakamoto <h-saka@lsi.nec.co.jp>
+
+ * Security hole in multipart.cgi.in, w3mman2html.cgi.in
+ * scripts/w3mhelp.cgi.in: open(F, "< $var") instead of open(F, $var)
+ * scripts/w3mhelp.cgi.in: fix eval qq{require ...};
+ * scripts/multipart/multipart.cgi.in: ditto
+ * scripts/w3mman/w3mman2html.cgi.in: validate $keyword, $section, $man
+
+2001-12-21 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev-en 00656]
+ * helpdir default is PREFIX/share/w3m
+
+2001-12-20 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * version.c.in: 0.2.3.1-cvs
+
+2001-12-20 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * w3m 0.2.3.1
+ * version.c.in: update
+ * w3mhelp-*.html: version 0.2.3.1
+ * doc/README: version 0.2.3.1, release date
+ * doc-jp/README: ditto
+
+2001-12-20 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02683]
+ * configure (def_param): fix wrong behavior unless variable initialized
+ * configure (def_param): fix unnecessary eval
+ * configure (ask_choice): ditto
+
+2001-12-20 Dai Sato <satodai@dog.intcul.tohoku.ac.jp>
+
+ * w3mhelp-*.html, doc/README, doc-jp/README:
+ * fix version number to 0.2.3.
+
+2001-12-20 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * version.c.in: 0.2.3-cvs
+
+2001-12-20 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * w3m 0.2.3 release
+ * version.c.in: update
+
+2001-12-20 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * w3m 0.2.3 release condidate 3
+ * configure (use_bundled_gclib): added
+
+2001-12-20 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * w3m 0.2.3 release candidate 2
+ * [w3m-dev 02678]
+ * configure: get mygcversion from gc/version.h
+ * Makefile: update GCLIBTGZ
+
+2001-12-20 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * w3m 0.2.3 release candidate 1
+ * gc/: sync with w3m-0.2.2-inu-1.1/gc
+ * Patches/ews4800: deleted
+ * configure: comment out Patches/ews4800
+
+2001-12-20 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02655] print version and compile options
+ * configure: change order of questions
+ * main.c (fversion): added
+ * main.c (fusage): use fversion()
+ * main.c (fusage): add -help, -version
+ * main.c (MAIN): add -help, -version
+
+2001-12-20 Tsutomu Okada <okada@furuno.co.jp>
+
+ * [w3m-dev 02672]
+ * main.c (wrap_GC_warn_proc): msg_ring initial value
+ * main.c (SigAlarm): not need #ifdef USE_ALARM, already guarded
+
+2001-12-18 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [#493911] too few arguments to function `longjmp'
+ by Kazuhiro NISHIYAMA (znz)
+ * configure (LONGJMP): need val argument
+
+2001-12-18 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [#493906] missing #ifdef by Kazuhiro NISHIYAMA (znz)
+ * main.c (sig_chld): #ifdef SIGCHLD
+ * main.c (SigAlarm): #ifdef USE_ALARM
+
+2001-12-18 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
+
+ * [w3m-dev 02670]
+ * table.c (maximum_visible_length): use strchr()
+ * table.c (do_refill): use force==2 mode for flushline()
+
+2001-12-18 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02669] delete cURLcode()
+ * main.c (cURLcode): deleted
+ * main.c (loadNormalBuf): no need to use cURLcode()
+ * main.c (followI): ditto
+ * main.c (query_from_followform): need conv_form_encoding()
+
+2001-12-18 Rin Okuyama <okuyama@cna.ne.jp>
+
+ * [w3m-dev 02668] install-sh: -e option of sh(1)
+ * install-sh: add set -e
+
+2001-12-18 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02667]
+ * terms.c (mouse_init): #ifdef SIGWINCH guard
+
+2001-12-16 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02666] resizing on xterm with gpm support
+ * terms.c (mouse_init): check Gpm_Open return value, signal(SIGWINCH)
+
+2001-12-16 Rin Okuyama <okuyama@cna.ne.jp>
+
+ * [w3m-dev 02664] install-sh -s option
+ * XMakefile: install-sh -s
+ * install-sh: support strip option
+
+2001-12-15 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02663] fix prevA() cause loop
+ * table.c (do_refill): force flushline
+ * table.c (feed_table_tag): push line if <a> has no href attr
+
+2001-12-15 Rin Okuyama <okuyama@cna.ne.jp>
+
+ * [w3m-dev 02659] rc.c (show_srch_str)
+ * fm.h (show_srch_str): added
+ * main.c (srch_nxtprv): check show_srch_str
+ * rc.c (CMT_SHOW_SRCH_STR): added
+
+2001-12-15 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
+
+ * [w3m-dev 02657]
+ * main.c (chkURL): accept URL ending with '='
+
+2001-12-15 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
+
+ * [w3m-dev 02656]
+ * XMakefile (clean): remove functable.c
+ * anchor.c (_put_anchor_new): use Strnew_size() and Strcat_charp_n()
+ * indep.c (getescapechar): use GET_MYCDIGIT
+
+2001-12-13 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
+
+ * [w3m-dev 02541] mouse support on cygwin
+ * linein.c (_esc): ignore ESC M <ch> <ch> <ch> on cygwin
+ * terms.c (is_xterm): not static on cygwin
+ * terms.c (ConInV): INPUT_RECORD * -> char *
+ * terms.c (MouseConToXTerm): deleted
+ * terms.c (iMouseConXTerm): deleted
+ * terms.c (expand_win32_console_input_buffer): added
+ * terms.c (read_win32_console_input): use PeekConsoleInput
+ and ReadConsole
+ * terms.c (read_win32_console): use read_win32_console_input()
+ * terms.c (cmp_tv): added
+ * terms.c (subtract_tv): added
+ * terms.c (select_or_poll_win32_console): added
+ * terms.c (select_win32_console): added
+ * terms.c (xterm_mouse_term): deleted
+ * terms.c (mouse_term_info): added
+ * terms.c (set_tty): modified to use mouse_term_info
+ * terms.c (sleep_till_anykey): use select_win32_console on cygwin
+ * terms.c (mouse_init): check is_xterm flag
+ * terms.c (mouse_end): check is_xterm flag
+ * terms.h (is_xterm): if cygwin
+ * terms.h (NEED_XTERM_ON): added
+ * terms.h (NEED_XTERM_OFF): added
+
+2001-12-11 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02651] search keymap using hash
+ * XMakefile (func.c): depends functable.c funcname1.h
+ * XMakefile (functable.c): generated from funcname.tab
+ * functable.awk: added
+ * fm.h (w3mKeyList): deleted
+ * func.c (w3mKeyList): ditto
+ * file.c (readHeader): change getFuncList()
+ * func.c (w3mNFuncList): deleted
+ * func.c (functable.c): include
+ * func.c (initKeymap): no need to count w3mFuncList
+ * func.c (initKeymap): change getFuncList()
+ * func.c (initKeymap): put data to keyData hashtable
+ * func.c (countFuncList): deleted
+ * func.c (getFuncList): use getHash_si()
+ * func.c (getKeyData): use getHash_iv()
+ * func.c (addKeyList): deleted
+ * func.c (searchKeyList): deleted
+ * func.h (textlist.h): include
+ * func.h (hash.h): include
+ * func.h (KEY_HASH_SIZE): added
+ * func.h (KeyListItem): deleted
+ * func.h (KeyList): deleted
+ * hash.c: s/hist/sv/
+ * hash.c: add defhashfunc_i(int, void *, iv)
+ * hash.h: s/hist/sv/
+ * hash.h: defhash(int, void *, iv)
+ * hash.h (putHash_*): added
+ * hash.h (getHash_*): added
+ * hash.h (defhashfunc_i): added
+ * history.c (pushHashHist): s/hist/sv/
+ * history.c (getHashHist): s/hist/sv/
+ * history.h (Hist): s/hist/sv/
+ * main.c (searchKeyData): item deleted
+ * main.c (searchKeyData): data added
+ * main.c (searchKeyData): use getKayData() instead of searchKeyList()
+ * main.c (setAlarm): w3mNFuncList deleted
+ * main.c (setAlarm): change getFuncList()
+ * menu.c (w3mNFuncList): deleted
+ * menu.c (w3mFuncList): deleted
+ * menu.c (initMenu): no need to count w3mFuncList
+ * menu.c (setMenuItem): change getFuncList()
+ * proto.h (countFuncList): deleted
+ * proto.h (getFuncList): change args
+ * proto.h (addKeyList): deleted
+ * proto.h (searchKeyList): deleted
+ * proto.h (getKeyData): added
+
+2001-12-11 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
+
+ * [w3m-dev 02650]
+ * file.c (readHeader): Strnew_charp_n() should be used
+
+2001-12-11 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02647]
+ * proto.h (arg_is): deleted
+ * etc.c (arg_is): ditto
+ * etc.c (searchAnchorArg): ditto
+
+2001-12-11 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02648] rewrite strCmp() with strcmp()
+ * indep.c (strCmp): use strcmp()
+
+2001-12-11 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
+
+ * [w3m-dev 02441] A patch against functions *_(un)?quote()
+ * indep.c (url_unquote_char): use GET_MYCDIGIT, instead of sscanf
+ * indep.c (url_quote): use xdigit[] instead of sprintf()
+ * myctype.c (MYCTYPE_DIGITMAP): added
+ * myctype.h (MYCTYPE_DIGITMAP): ditto
+ * myctype.h (GET_MYCDIGIT): added
+
+2001-12-11 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02647]
+ * proto.h (getAnchor): deleted
+ * etc.c (getAnchor): deleted
+
+2001-12-09 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
+
+ * [w3m-dev 02646] Some code cleanups
+ * configure: use host libgc instead of gc/gc.a on Linux and/or AIX
+ if possible
+ * etc.c (get_cmd): deleted, merged into gethtmlcmd()
+ * etc.c (gethtmlcmd): merge get_cmd() code
+ * file.c (uncompressed_file_type): initialize slen
+ * file.c (passthrough): status deleted
+ * file.c (HTMLlineproc0): istr deleted, gethtmlcmd() argument fix
+ * fm.h (_GNU_SOURCE): ifndef _GNU_SOURCE
+ * proto.h (gethtmlcmd): fix prototypes
+ * terms.c: include <sys/ioctl.h> always
+
+2001-12-09 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02645]
+ * configure: fix to prevent rcsid expansion
+
+2001-12-08 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02641]
+ * configure: generate version.c from version.c.in
+ * version.c.in: added
+ * version.c: deleted, autogenerated from version.c.in
+ * .cvsignore (version.c): added
+
+2001-12-07 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02642]
+ * linein.c (next_dcompl): fix ifdef EMACS_LIKE_LINEEDIT
+
+2001-12-07 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02640]
+ * linein.c (escape_spaces): rewrite
+ * linein.c (unescape_spaces): rewrite
+
+2001-12-07 Tsutomu Okada <okada@furuno.co.jp>
+
+ * [w3m-dev 02638] completion for ! and/or @
+ * linein.c (next_compl): check "\\ ", "\\\t"
+ * linein.c (escape_spaces): added
+ * linein.c (unescape_spaces): added
+ * linein.c (doComplete): use unescape_spaces, escape_spaces
+
+2001-12-07 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02637]
+ * url.c (openSocket): hostname volatile -> const
+ * url.c (openSocket): add hname
+ * url.c (openSocket): copy hostname to hname to be modified safely
+ * url.c (otherinfo): revert previous change
+
+2001-12-07 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02635] dirlist
+ * file.c (loadGeneralFile): use pu.file instead of pu.real_file
+ * scripts/dirlist.cgi.in: modified for perl4
+
+2001-12-07 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [#489463] Host: header is wrong IPv6 literal addr
+ * url.c (otherinfo): IPv6 address should be quoted with bracket
+
+2001-12-07 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02629]
+ * linein.c (next_compl): completion for name including space
+
+2001-12-07 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02633]
+ * url.c (parseURL2): filename should be quoted here, because
+ it will be unquote() soon
+
+2001-12-07 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * rename install.sh to install-sh
+ * XMakefile: s/install.sh/install-sh/
+
+2001-12-07 Tsutomu Okada <okada@furuno.co.jp>
+
+ * [w3m-dev 02622]
+ * tagtable.tab (noframes): added
+ * tagtable.tab (/noframes): added
+ * fm.h (RB_NOFRAMES): added
+ * html.h (HTML_NOFRAMES): added
+ * html.h (HTML_N_NOFRAMES): added
+ * html.c (ALST_NOFRAMES): added
+ * html.c (98 HTML_NOFRAMES): added
+ * html.c (99 HTML_N_NOFRAMES): added
+ * file.c (HTMLtagproc1): add HTML_NOFRAMES, HTML_N_NOFRAMES
+ * file.c (HTMLtagproc1): don't meta refresh if it is in noframes and
+ auto frame rendering
+ * main.c (MAIN): use setAlarmEvent()
+ * main.c (SigAlarm): ditto
+ * main.c (setAlarm): ditto
+ * main.c (setAlarmEvent): check if status == AL_UNSET
+
+2001-12-06 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02619]
+ * file.c (loadHTMLString): set document type
+
+2001-12-05 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02618]
+ * configure: fix typo in --mimetypes
+
+2001-12-05 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02617]
+ * scripts/Makefile (HELP_LIBS): added
+ * scripts/Makefile (all): depends $(HELP_LIBS)
+ * scripts/Makefile (install): depends $(HELP_LIBS)
+ * scripts/Makefile (w3mhelp-funcname.pl): split from helplibs
+ * scripts/Makefile (w3mhelp-funcdesc.pl): split from helplibs, touch
+ * scripts/Makefile (clean): clean *-stamp
+ * scripts/.cvsignore: add w3mhelp-funcdesc-stamp
+
+2001-12-05 Tsutomu Okada <okada@furuno.co.jp>
+
+ * [w3m-dev 02616]
+ * buffer.c (gotoLine): use set_delayed_message instead of disp_message
+ * buffer.c (gotoRealLine): ditto
+ * display.c (delayed_msg): added
+ * display.c (displayBuffer): display deleyed_msg if it is set
+ * display.c (set_delayed_message): added
+ * proto.h (set_delayed_message): added
+
+2001-12-05 Tsutomu Okada <okada@furuno.co.jp>
+
+ * [w3m-dev 02615]
+ * main.c (goLine): _goLine() called twice when prec_num was set
+
+2001-12-05 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02614]
+ * XMakefile (HELP_ALLFILES): added
+ * XMakefile (INSTALL_PROGRAM): ditto
+ * XMakefile (INSTALL_SCRIPT): ditto
+ * XMakefile (INSTALL_DATA): ditto
+ * XMakefile (install) use INSTALL_{PROGRAM,DATA}
+ * XMakefile (install-helpfile): cleanup
+ * XMakefile (install-scripts): pass MKDIR
+ * XMakefile (uninstall): cleanup
+ * XMakefile (clean): cleanup
+ * scripts/Makefile (MKDIR): added
+ * scripts/Makefile (INSTALL_DATA): added
+ * scripts/Makefile (install): mkdir, use INSTALL_DATA
+ * scripts/Makefile (uninstall): added
+ * scripts/Makefile (clean): ignore errors
+ * scripts/multipart/Makefile (MKDIR): added
+ * scripts/multipart/Makefile (install): mkdir
+ * scripts/multipart/Makefile (uninstall): added
+ * scripts/multipart/Makefile (clean): ignore errors
+ * scripts/multipart/Makefile (dist): cleanup
+ * scripts/w3mman/Makefile (MKDIR): added
+ * scripts/w3mman/Makefile (install): mkdir
+ * scripts/w3mman/Makefile (uninstall): added
+ * scripts/w3mman/Makefile (clean): ignore errors
+ * scripts/w3mman/Makefile (dist): cleanup
+
+2001-12-04 Tsutomu Okada <okada@furuno.co.jp>
+
+ * [w3m-dev 02611] a improvement of find_cookie()
+ * cookie.c (make_cookie): domainname is passed as argument
+ * cookie.c (find_cookie): FQDN(pu->host) done only once
+ * func.c (getQWord): comment reformat
+ * local.c (check_local_cgi): ditto
+
+2001-12-04 Tsutomu Okada <okada@furuno.co.jp>
+
+ * [w3m-dev 02609]
+ * proto.h: remove duplicate prototypes
+
+2001-12-04 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02608]
+ * local.c (localcgi_get): request == NULL means no ? in URL
+ * url.c (openURL): ditto
+
+2001-12-03 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02606]
+ * XMakefile (install-scripts): run pwd outside for loop
+
+2001-12-03 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
+
+ * [w3m-dev 02605] $(PWD) / allocStr()
+
+ * XMakefile (install-scripts): use $$TOPDIR instead of $(PWD)
+
+ * indep.c (allocStr): if len is negative, it will copy string in `s'
+ * display.c (record_err_message): pass -1 as length to allocStr
+ * etc.c (lastFileName): ditto
+ * etc.c (mybasename): ditto
+ * etc.c (FQDN): ditto
+ * file.c (push_tag): ditto
+ * func.c (addKeyList): ditto
+ * history.c (unshiftHist): ditto
+ * history.c (pushHist): ditto
+ * indep.c (cleanupName): ditto
+ * linein.c (inputLineHist): ditto
+ * local.c (dirBuffer): ditto
+ * main.c (gotoLabel): ditto
+ * main.c (searchKeyData): ditto
+ * parsetagx.c (parsedtag_set_value): ditto
+ * terms.c (GETSTR): ditto
+ * textlist.h (pushText): ditto
+ * url.c (DefaultFile): ditto
+ * url.c (parseURL): ditto
+ * url.c (ALLOC_STR): ditto
+ * url.c (parseURL2): ditto
+ * url.c (openURL): ditto
+ * w3mhelperpanel.c (extractMailcapEntry): ditto
+
+2001-12-02 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02604]
+ * configure: kanji_symbols=n if lang=EN
+ * file.c (HTMLlineproc2body): initialize rule
+
+2001-12-02 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02603]
+ * scripts/w3mhelp.cgi.in: modified for perl4
+
+2001-12-01 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02601]
+ * Makefile (install-core): added
+ * Makefile (install-helpfile): added
+ * configure (use_help_cgi): default yes if perl found
+ * configure (config.h): add HELP_CGI
+ * configure (config.h): add $def_use_help_cgi
+ * main.c (ldhelp): add USE_HELP_CGI code
+ * scripts/Makefile: use w3mhelp*.pl.in
+ * scripts/w3mhelp-funcname.pl.in: added
+ * scripts/w3mhelp-funcdesc.en.pl.in: added
+ * scripts/w3mhelp-funcdesc.ja.pl.in: added
+ * scripts/w3mhelp.cgi.in: use %buf_*, %lineedit_*
+ * scripts/w3mhelp.cgi.in: use %title
+
+ * [w3m-dev 02660] (based on [w3m-dev 02577]
+ by Kiyokazu SUTO <suto@ks-and-ks.ne.jp>)
+ * scripts/.cvsignore: add w3mhelp.cgi w3mhelp-*.pl
+ * scripts/Makefile (HELP_DIR): added
+ * scripts/Makefile (LIB_TARGETS): add w3mhelp.cgi
+ * scripts/Makefile (DOCDIRS): added
+ * scripts/Makefile (all): add helplibs
+ * scripts/Makefile (.in): subst HELP_DIR, DOCDIRS
+ * scripts/Makefile (helplibs): added
+ * scripts/Makefile (install): s/DISTDIR/DESTDIR/
+ * scripts/Makefile (install): install w3mhelp-*.pl
+
+ * scripts/w3mhelp.cgi.in: added
+
+ * XMakefile (INSTALL2): deleted
+ * XMakefile (install): split
+ * XMakefile (install-core): added
+ * XMakefile (install-helpfile): added
+ * XMakefile (all-scripts): HELP_DIR
+ * XMakefile (install-scripts): HELP_DIR
+
+ * doc/REAMDE.func: add ALARM, SUSPEND
+ * doc-jp/README.func: ditto
+
+ * config.h.dist: updated
+
+2001-11-30 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * url.c (otherinfo): use AcceptLang
+ * rc.c (sync_with_option): initialize AcceptLang
+
+2001-11-30 Tsutomu Okada <okada@furuno.co.jp>
+
+ * [w3m-dev 02599]
+ * main.c comment reformat
+
+2001-11-30 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02598]
+ * url.c (otherinfo): add missing NULL
+
+2001-11-30 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02597] (based on [w3m-dev 02594] by aito@fw.ipsj.or.jp)
+ * fm.h (AcceptLang): added
+ * fm.h (AcceptMedia): added
+ * rc.c (CMT_ACCEPTENCODING): added
+ * rc.c (CMT_ACCEPTMEDIA): added
+ * rc.c (params9): add accept_encoding, accept_media
+ * rc.c (sync_with_option): initialize AcceptEncoding and AcceptMedia
+ * url.c (otherinfo): use Strcat_m_charp()
+
+2001-11-30 aito@fw.ipsj.or.jp
+
+ * [w3m-dev 02594]
+ * configure: s/dcode/display_code/
+
+2001-11-30 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02596]
+ * file.c (acceptableEncoding): fix segfault if no decoder found
+
+2001-11-30 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02595]
+ * file.c (compression_decoder): add encodings
+ * file.c (readHeader): use compression_decoder->encodings
+
+2001-11-30 Tsutomu Okada <okada@furuno.co.jp>
+
+ * [w3m-dev 02593]
+ * form.h: comment reformat
+ * matrix.c: ditto
+ * menu.c: ditto
+ * regex.c: ditto
+ * table.h: ditto
+ * terms.c: ditto
+
+2001-11-30 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02592] Accept: and AcceptEncoding:
+ * url.c (otherinfo): use acceptableEncoding() acceptableMimeTypes()
+
+ * file.c: add compression_decoder
+ * file.c (check_compress): rewrite by using compression_decoder
+ * file.c (compress_application_type): ditto
+ * file.c (uncompressed_file_type): ditto
+ * file.c (check_command): added
+ * file.c (acceptableEncoding): added
+ * proto.h (acceptableEncoding): ditto
+ * file.c (uncompress_stream): renamed from gunzip_stream
+ * file.c (uncompress_stream): rewrite by using compression_decoder
+ * configure: add PATH_SEPARATOR
+
+ * mailcap.c (extractMailcapEntry): static
+ * mailcap.c (loadMailcap): static
+ * proto.h (loadMailcap): removed
+ * mailcap.c (acceptableMimeTypes): added
+ * proto.h (acceptableMimeTypes): added
+
+ * configure: #define USE_PATH_ENVVAR for __EMX__
+ * file.c: GUNZIP_*, BUNZIP2_*, INFLATE_* removed here -> config.h
+ * file.c (gunzip_stream): s/(GUNZIP|BUNZIP2|INFLATE)_CMD/\1_CMDNAME/
+ * configure (config.h): GUNZIP_*, BUNZIP2_*, INFLATE_* moved here
+ * fm.h (DirBufferCommand): use CGI_EXTENSION
+ * fm.h (mailcap_list): removed from global -> mailcap.c
+ * fm.h (UserMailcap): removed from global -> mailcap.c
+ * mailcap.c: static mailcap_list
+ * mailcap.c: static UserMailcap
+ * proto.h (initMimeTypes): moved
+ * proto.h (get_os2_dft): removed
+ * rc.c (loadMimeTypes): removed here -> url.c
+ * rc.c (initMimeTypes): removed here -> url.c
+ * fm.h (mimetypes_list): removed from global -> url.c
+ * fm.h (UserMimeTypes): removed from global -> url.c
+ * url.c: static mimetypes_list
+ * url.c: static UserMimeTypes
+ * url.c (loadMimeTypes): moved here
+ * url.c (initMimeTypes): moved here
+
+2001-11-30 Tsutomu Okada <okada@furuno.co.jp>
+
+ * [w3m-dev 02590]
+ * main.c (_peekURL): peek URL on <input type="image">
+
+2001-11-30 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02589]
+ * rc.c (params1): remove #ifdef VIEW_UNSEENOBJECTS
+
+2001-11-29 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02588]
+ * configure: fix alarm() check
+
+2001-11-29 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02587]
+ * file.c (gunzip_stream): s/__CYGWIN__/USE_BINMODE_STREAM/
+
+ * [w3m-dev 02586]
+ * configure: typo s/_zdmachdep.c/zmachdep.c/
+
+ * fix shadow variable
+ * main.c (HTMLtagproc1): s/refresh/refresh_interval/
+ * matrix.c (LUfactor): s/index/indexarray/
+ * matrix.c (LUsolve): ditto
+ * matrix.c (m_inverse): ditto
+ * matrix.c (LUinverse): ditto
+ * table.c (bsearch_2short): ditto
+ * table.c (bsearch_double): ditto
+ * table.c (dv2sv): ditto
+ * table.c (check_cell_width): ditto
+ * table.c (set_integered_width): ditto
+ * table.c (set_table_width): ditto
+ * table.c (check_table_height): ditto
+ * ftp.c: s/ftp/current_ftp/
+ * ftp.c (Ftpfclose): ditto
+ * ftp.c (openFTP): ditto
+ * ftp.c (closeFTP): ditto
+ * ftp.c (FtpLogin): save to current_ftp
+ * ftp.c (openFTP): s/realpath/realpathname/
+ * ftp.c (openFTP): remove i
+
+ * ftp.c (ftp_pasv): s/sin/sockaddr/
+
+ * [w3m-dev 02584] code cleanup
+
+ * linein.c (_esc): fix #ifdef EMACS_LIKE_LINEEDIT
+
+ * fix shadow variables (partially)
+ * version.c: s/version/w3m_version/
+ * configure: ditto
+ * fm.h: ditto
+ * local.c (set_environ): ditto
+ * main.c (fusage): ditto
+ * main.c (MAIN): ditto
+ * main.c (dispVer): ditto
+ * rc.c (load_option_panel): ditto
+ * url.c (otherinfo): ditto
+ * file.c (readHeader): s/tmp/tmp2/
+ * file.c (loadGeneralFile): s/tmp/cmd/
+ * file.c (flushline): s/f/df/
+ * file.c (doExternal): s/stat/mc_stat/
+ * proto.h: ditto
+ * mailcap.c (unquote_mailcap_loop): ditto
+ * mailcap.c (unquote_mailcap): ditto
+ * main.c (cmd_loadBuffer): s/link/linkid/
+ * main.c (sig_chld): s/stat/p_stat/
+ * fm.h: remove config_file
+ * main.c (MAIN): s/config_file/config_filename/
+ * rc.c (init_rc): ditto
+ * proto.h: ditto
+ * rc.c: add config_file
+ * menu.c (goem_menu): s/select/mselect/
+ * menu.c (draw_menu_item): ditto
+ * menu.c (select_menu): ditto
+ * menu.c (goto_menu): ditto
+ * menu.c (action_menu): ditto
+ * menu.c (mNext): ditto
+ * menu.c (mPrev): ditto
+ * menu.c (mOk): ditto
+ * menu.c (mSrchF): ditto
+ * menu.c (mSrchB): ditto
+ * menu.c (mSrchN): ditto
+ * menu.c (mSrchP): ditto
+ * menu.c (process_mMouse): ditto
+ * menu.c (smDelBuf): ditto
+ * proto.h: ditto
+
+ * printf format
+ * display.c (redrawLine): use %*ld instead of %*d
+
+ * require parentheses
+ * ftp.c (FtpLogin): add paren
+
+ * fix variable might be clobbered by `longjmp' or `vfork'
+ * file.c (loadGeneralFile): add volatile
+ * file.c (loadHTMLString): ditto
+ * file.c (loadBuffer): ditto
+ * file.c (doExternal): ditto
+ * frame.c (createFrameFile): ditto
+ * main.c (srchfor): ditto
+ * main.c (srchbak): ditto
+ * main.c (srch_nxtprv): ditto
+ * url.c (openSocket): ditto
+
+ * fix unused variables
+ * file.c (readHeader): emssg if USE_COOKIE defined
+ * file.c (HTMLlineproc2body: remove tmp
+ * file.c (saveBufferDelNum): remove p
+ * linein.c (_esc): c2 if JP_CHARSET defined
+
+ * fix uninitialized variables
+ * Str.c (Sprintf): initialize p
+ * buffer.c (readBufferCache): initialize prevl
+ * conv.c (cConvSE): initialize ub
+ * conv.c (_cConvEE): initialize ub
+ * conv.c (cConvES): initialize ub
+ * file.c (loadGeneralFile): initialize proc, t, prevtral, ss, realm
+ * file.c (HTMLlineproc2body): initialize debug
+ * file.c (HTMLlineproc0): initialize tbl_mode, tbl_width
+ * file.c (loadHTMLstream): initialize prevtrap
+ * file.c (loadHTMLString): initialize prevtrap
+ * file.c (loadBuffer): initialize prevtrap
+ * form.c (formUpdateBuffer): initialize col
+ * ftp.c (openFTP): initialize pwd
+ * local.c (dirBuffer): initialize nrow
+ * main.c (gpm_process_mouse): initialize btn
+ * menu.c (gpm_process_menu_mouse): ditto
+ * menu.c (initMenu): initialize nmenu, nitem, item
+ * parsetagx.c (parse_tag): initialize attr_id
+ * rc.c (show_params): initialize t
+ * table.c (visible_length): initialize amp_len
+ * table.c (set_integered_width): initialize x
+ * table.c (check_table_height): initialize space
+ * table.c (renderTable): initialize vrulea, vruleb, vrulec
+ * terms.c (putchars): initialize s
+ * url.c (openSocket): initialize trap, result
+ * url.c (openURL): initialize sslh
+
+2001-11-28 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02579]
+ * configure: Use environment variables CC, CFLAGS, LDFLAGS
+
+2001-11-28 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02574] sysconfdir
+ * configure: add -bindir=* -libdir=* -helpdir=* -sysconfdir=*
+ * configure: add ETC_DIR
+ * indep.c (w3m_etc_dir): added
+ * indep.h: ditto
+ * rc.c (init_rc): use etcFile() instead of libFile()
+ * rc.c (etcFile): added
+ * proto.h: ditto
+
+2001-11-28 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02578]
+ * file.c (process_anchor): support <input type="image">
+ * html.c (ALST_INPUT): add ATTR_SRC, ATTR_WIDTH, ATTR_HEIGHT
+ * html.c (MAXA_INPUT): +3
+
+ * conv.c (checkShiftCode): fix comments for indent(1)
+ * main.c (loadLink): ditto
+ * fm.h: ditto
+ * file.c (process_anchor); ditto
+ * file.c (HTMLlineproc2body): ditto
+
+2001-11-28 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02576]
+ * url.c (openURL): remove pu->file = p; which cause segfault
+ because p is not initialized
+
+2001-11-28 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02571] MAXPATHLEN
+ * indep.c (currentdir): #ifdef MAXPATHLEN for GNU Hurd
+ * configure: ditto
+
+2001-11-27 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02572]
+ * main.c (_peekURL): initialize s when anchor not found
+
+2001-11-27 aito@fw.ipsj.or.jp
+ * Error correction on doc-jp/FAQ.html
+
+2001-11-27 sakane@d4.bsd.nes.nec.co.jp (Yoshinobu Sakane)
+ * w3m-doc update.
+
+2001-11-26 Tsutomu Okada <okada@furuno.co.jp>
+
+ * [w3m-dev 02537]
+ * configure: s/$def_egd/def_use_egd/
+
+2001-11-26 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02556]
+ * indep.c (strcasestr): strcasestr("", "") should not return NULL
+
+ * [w3m-dev 02555]
+ * configure: check strcasestr
+ * fm.h (_GNU_SOURCE): requires for strcasestr()
+ * indep.c (strcasestr): #ifdef HAVE_STRCASESTR
+ * indep.c (strcasestr): check whether s2 is NULL
+ * indep.h: add #include "config.h"
+ * indep.h: #ifdef HAVE_STRCASESTR
+ * indep.h: strcasestr() takes const char *
+
+2001-11-26 Yoshinobu Sakane <sakane@d4.bsd.nes.nec.co.jp>
+
+ * [w3m-dev 02553]
+ * configure: SysV's tr requires '[a-z]' '[A-Z]'
+
+2001-11-26 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
+
+ * [w3m-dev 02547] "message/*" as a kind of text type
+ * file.c (is_text_type): add message/*
+
+2001-11-25 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
+
+ * [w3m-dev 02535] Name conflicts in configure
+ * configure: s/libdir/tlibdir/ for loop variables
+
+2001-11-25 Dai Sato <satodai@dog.intcul.tohoku.ac.jp>
+
+ * display.c: call of init_win32_console_handle is deleted
+
+2001-11-25 Rin Okuyama <okuyama@cna.ne.jp>
+
+ * [w3m-dev 02533] setpgrp bug in configure
+ * configure: s/have_setpgrp/def_have_setpgrp/
+ s/setpgrp/def_setpgrp/
+
+2001-11-24 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * Makefile (indent): indent
+ * run make indent
+
+2001-11-24 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02530]
+ * file.c (readHeader): NULL check for domain
+
+2001-11-24 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02529]
+ * configure (ask_choice): fix bugs
+ * configure (include_opt): disable as much as if baby model
+ * configure: ask/def parameter after model selected
+
+ * fm.h (use_mark): runtime option use_mark
+ * main.c (_mark): ditto
+ * main.c (cmd_mark): ditto
+ * main.c (nextMk): ditto
+ * main.c (prevMk): ditto
+ * main.c (reMk): ditto
+ * rc.c (CMT_USE_MARK): ditto
+ * rc.c (params3): ditto
+
+ * fm.h (nextpage_topline): runtime option nextpage_topline
+ * etc.c (lineSkip): ditto
+ * main.c (nscroll): ditto
+ * rc.c (CMT_NEXTPAGE_TOPLINE): ditto
+ * rc.c (params3): ditto
+
+ * fm.h (label_topline): runtime option label_topline
+ * file.c (loadGeneralFile): ditto
+ * main.c (loadLink): ditto
+ * rc.c (CMT_LABEL_TOPLINE): ditto
+ * rc.c (params3): ditto
+
+ * fm.h (vi_prec_num): runtime option vi_prec_num
+ * main.c (pgFore): ditto
+ * main.c (pgBack): ditto
+ * rc.c (CMT_VI_PREC_NUM): ditto
+ * rc.c (params3): ditto
+
+ * fm.h (emacs_like_lineedit): runtime option emacs_like_lineedit
+ * linein.c (inputLineHist): ditto
+ * linein.c (_esc): ditto
+ * linein.c (next_dcompl): ditto
+ * rc.c (CMT_EMACS_LIKE_LINEEDIT): ditto
+ * rc.c (params3): ditto
+
+ * fm.h (ftppass_hostnamegen): runtime option ftppass_hostnamegen
+ * ftp.c (FtpLogin): ditto
+ * rc.c (CMT_FTPPASS_HOSTNAMEGEN): ditto
+ * rc.c (params9): ditto
+
+2001-11-24 Akihiro Sagawa <sagawa@sohgoh.net>
+
+ * [w3m-dev 02528] RFC2732 URL Patch
+ * main.c (chkURL): check RFC2732 style URLs
+ * url.c (parseURL): remove RFC2732 address check here,
+ move to openSocket()
+ * url.c (openSocket): check RFC2732 style hostname
+ * url.c (openSocket): check IPv4 address strictly
+
+2001-11-24 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02526]
+ * .cvsignore: add inflate mktable w3m w3mbookmark w3mhelperpanel
+ _zdmachdep.c
+ * configure:
+ pref_lang -> lang={JA|EN}
+ dcode -> display_code
+ scode -> system_code
+ remove save_params()
+ add def_param(), ask_choice() ask_param()
+ all confiration parameters can be read from config.param
+ s/DICT/USE_DICT/
+ s/BUFINFO/USE_BUFINFO/
+ * fm.h: s/DICT/USE_DICT/
+ * proto.h: ditto
+ * doc/README.dict: ditto
+ * doc-jp/README.dict: ditto
+ * display.c: s/BUFINFO/USE_BUFINFO/
+ * main.c: s/DICT/USE_DICT/ s/BUFINFO/USE_BUFINFO/
+
+2001-11-24 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
+
+ * [w3m-dev 02523]
+ * table.c (feed_table_tag):
+ fix problem of anchor tag with name attribute only
+
+2001-11-23 Tsutomu Okada <okada@furuno.co.jp>
+
+ * [w3m-dev 02511]
+ * terms.c (isWinConsole): added
+
+2001-11-22 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
+
+ * [w3m-dev 02509] ([w3m-dev 02499] [w3m-dev 02508])
+ * terms.c (setlinescols): initialize LASTLINE
+ * terms.c: add LASTLINE
+ * fm.h: extern int LASTLINE
+ * linein.c: remove defined(__CYGWIN__) && defined(JP_CHARSET)
+ * main.c: remove MOUSE_* definition
+ * terms.h: move MOUSE_* definition from main.c
+ * terms.c: add tty
+ * terms.c (check_win32_console): added
+ * terms.c (init_win32_console_handle): ditto
+ * terms.c (read_win32_console_input): ditto
+ * terms.c (read_win32_console): ditto
+ * terms.c (set_tty) add call init_win32_console
+ * terms.c (getch) use read_win32_console
+ * terms.c (mouse_init): check hConIn
+ * terms.c (mouse_end): ditto
+
+2001-11-22 aito@fw.ipsj.or.jp
+
+ * [w3m-dev 02503]
+ * indep.c (getescapechar): allow incomplete entity references in URL
+ closes: Debian Bug#120540
+
+2001-11-22 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02506]
+ * anchor.c (putHmarker): remove #ifdef __CYGWIN__ for bzero()
+ * matrix.h (m_copy): ditto
+ * table.c (pushTable): ditto
+
+2001-11-22 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02505]
+ * configure (alarm): check alarm if USE_ALARM
+
+2001-11-22 Tsutomu Okada <okada@furuno.co.jp>
+
+ * [w3m-dev 02501]
+ * .cvsignore: add funcname.c funcname1.h funcname2.h tagtable.c
+ * scripts/.cvsignore: added, dirlist.cgi
+ * scripts/multipart/.cvsignore: added, multipart.cgi
+ * scripts/w3mman/.cvsignore: added, w3mman w3mman2html.cgi
+ * doc-jp/README.kokb: deleted
+ * gc/makefile.depend: deleted
+
+2001-11-22 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * table.c (feed_table): fix the following table
+ <table border=1><tr><td>&lt &lt;</table>
+
+2001-11-22 WATANABE Katsuyuki <katsuyuki_1.watanabe@toppan.co.jp>
+
+ * [w3m-dev 02497]
+ * url.c (parseURL2): fix #ifdef __EMX__ code
+ * indep.c (cleanupName): remove #if 0 /* SUPPORT_NETBIOS_SHARE */ code
+
+2001-11-22 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02494]
+ * configure (MIME_TYPES): check if mimetypes is empty
+ * configure (label_topline): add missing =
+ * configure (nextpage_topline): ditto
+
+2001-11-22 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02493]
+ * scripts/multipart/Makefile: s/DISTDIR/DESTDIR/
+
+2001-11-21 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02481]
+ * s/BG_COLOR/USE_BG_COLOR/
+ * s/ANSI_COLOR/USE_ANSI_COLOR/
+ * s/COLOR/USE_COLOR/
+ * s/MENU/USE_MENU/
+ * s/MOUSE/USE_MOUSE/
+
+ * [w3m-dev 02480] new configure
+ * config.h.dist: updated
+ * configure: $def_emacs_like_lineedit, $def_vi_prec_num
+ $def_label_topline, $def_nextpage_topline
+ $def_use_mark, $def_use_gopher, $def_use_alarm
+ * configure: add --{ssl,gc}-{include,lib}dir, --mimetypes
+ * configure: BoehmGC Debian hack
+ * XMakefile: add $(OPTS)
+ * terms.c: use HAVE_SYS_SELECT_H
+ * configure: add sys/select.h detection
+ * configure: no_float_h -> float_h
+ * configure: add chdir() detection
+ * local.c (localcgi_post): use HAVE_CHDIR instead of __EMX__
+ * local.c (localcgi_get): ditto
+ * main.c: <time.h> no need for #ifdef __EMX__
+ other files already do #include <time.h>
+
+ [w3m-dev 02479]
+ * rc.c (init_rc): remove #ifdef __EMX__ for tmpdir
+ * config.h.dit: updated
+ * url.c (openURL): use CGI_EXTENSION
+ add extlen
+ * rc.c (helpFile): remove #ifdef __EMX__
+ use w3m_help_dir()
+ * w3mbookmark.c (lib_dir): removed
+ * w3mbookmark.c (print_bookmark_panel): use w3m_lib_dir()
+ * rc.c (libFile): remove #ifdef __EMX__
+ use w3m_lib_dir()
+ * local.c (get_os2_dft): removed
+ * local.c (check_local_cgi): use w3m_lib_dir() instead of lib_dir
+ * local.c (cgi_filename): ditto
+ * indep.c (w3m_dir): added
+ * indep.c (w3m_lib_dir w3m_help_dir): ditto
+ * indep.h (w3m_lib_dir w3m_help_dir): ditto
+ * terms.c (set_tty): remove #ifdef __EMX__
+ use DEV_TTY_PATH
+ * local.c (localcgi_get): use DEV_NULL_PATH
+ * w3mhelperpanel.c (printMailcapPanal): remove #ifdef __EMX__
+ use W3mHELPERPANEL_CMDNAME
+ * rc.c (optionpanel_src1): ditto
+ * w3mbookmark.c (bkmark_src1): remove #ifdef __EMX__
+ use W3MBOOKMARK_CMDNAME
+ * main.c (adBmark): ditto
+ use w3m_lib_dir()
+ * terms.c (getTCstr): remove #ifdef __DJGPP__
+ use DEFAULT_TERM
+ check ent is NULL
+ * main.c (fusage): remove #ifdef SHOW_PARAMS
+ * main.c (MAIN): ditto
+ * rc.c (show_params): ditto
+ * fm.h (view_unseenobject): remove #ifdef VIEW_UNSEENOBJECTS
+ * url.c (check_no_proxy): remove #ifdef NOPROXY_NETADDR
+ * configure (show_params): removed
+ * configure (config.h):
+ - fix comment for USE_MARK
+ - add MENU_THIN_FRAME
+ - move $def_nntp (USE_NNTP), $def_ansi_color (ANSI_COLOR)
+ - remove VIEW_UNSEENOBJECTS
+ - remove $def_show_params (SHOW_PARAMS)
+ - define DEFAULT_TERM
+ - define W3MBOOKMARK_CMDNAME
+ - define W3MHELPERPANEL_CMDNAME
+ - define DEV_NULL_PATH
+ - define DEV_TTY_PATH
+ - define CGI_EXTENSION
+
+ [w3m-dev 02478]
+ * Makefile: make -> $(MAKE)
+
+2001-11-21 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02473]
+ * scripts/Makefile: chmod +x
+ * scripts/Makefile: add clean target
+ * scripts/multipart/Makefile: ditto
+ * scripts/w3mman/Makefile: ditto
+ * XMakefile: clean scripts
+ * scripts/dirlist.cgi: removed from CVS
+ * Makefile (install-scripts): added
+ * XMakefile: (install-scripts): depends all-scripts
+
+2001-11-21 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02470]
+ * XMakefile: all of scripts are generated by this instead of configure
+ * configure: add PERL, remove scripts/dirlist.cgi generation
+ * config.h.dist: add PERL
+ * scripts/Makefile: added
+ * scripts/multipart/Makefile scripts/w3mman/Makefile:
+ new scripts generation and installation
+ * scripts/multipart/README scripts/w3mman/README: update
+
+2001-11-21 Tsutomu Okada <okada@furuno.co.jp>
+
+ * [w3m-dev 02472] cleanup CYGWIN macro
+ * display.c (displayBuffer): use __CYGWIN__ macro
+ * fm.h: ditto
+ * terms.c (refresh): add condition for isWinConsole which
+ defined only japanese cygwin environment
+
+2001-11-21 Akinori Ito <aito@fw.ipsj.or.jp>
+
+ * [w3m-dev 02466]
+ Homepage URLs and author's mail addresses in the documents
+ are changed.
+
+2001-11-21 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02459]
+ * XMakefile: update scripts/dirlist.cgi generation
+ * scripts/multipart/multipart.cgi: removed
+ * scripts/w3mman/w3mman scripts/w3mman/w3mman2html.cgi: removed
+
+ * [w3m-dev 02462]
+ * scripts/dirlist.in scripts/dirlist.cgi: removed
+ * scripts/dirlist.cgi.in: added
+
+2001-11-21 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * add rcsids
+
+2001-11-21 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02454]
+ * buffer.c (newBuffer): set COLS
+ * display.c (displayBuffer redrawLine redrawLineRegion
+ cursorRight arrangeCursor cursorXY):
+ new showLineNumber implementation
+ * main.c (ctrCsrH shiftvisualpos shiftl shiftr _movL _movR
+ _followForm follow_map process_mouse):
+ use buf->COLS, buf->rootX
+ * menu.c (popupMenu mainMn initSelectMenu):
+ use buf->rootX
+ * etc.c (columnSkip): use buf->COLS
+ * file.c (HTMLlineproc2body loadBuffer saveBufferDelNum getNextPage)
+ remove old showLineNumber codes
+ * fm.h (Buffer): add rootX, COLS
+
+2001-11-21 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * XMakefile (clean): rm tagtable.c
+ * .cvsignore: XXMakefile config.h config.param
+
+2001-11-20 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02455]
+ * XMakefile.dist deflate.c: removed, not used
+ * tagtable.c: removed, autogenerated files
+ * XMakefile (mktable w3mbookmark w3mhelperpanel): use LIBS2
+ * configure: add $bsdlib
+
+2001-11-20 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
+
+ * frame.c (newFrameSet): fix possible buffer overrun
+
+2001-11-20 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * XXMakefile config.h: removed from CVS
+ these are autogenerated files.
+ config.h is moved to config.h.dist as sample config file.
+
+2001-11-20 Tsutomu Okada <okada@furuno.co.jp>
+
+ * [w3m-dev 02449]
+ * file.c (HTMLtagproc1): reimplement meta refresh with
+ setAlarmEvent()
+ * fm.h: put back alarm related variables to main.c
+ add alarm related status flags
+ * main.c: put back alarm related variables from fm.h
+ alarm_once was renamed alarm_status
+ add alarm_buffer and setAlarmEvent()
+ * main.c (MAIN): cancel the alarm event if the buffer was
+ changed
+ * main.c (SigAlarm): ditto
+ * main.c (setAlarm): use setAlarmEvent()
+ * proto.h: add setAlarmEvent()
+
+2001-11-20 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * w3mhelperpanel.c (extractMailcapEntry): remove unused variables
+ * istream.c (StrISgets): add parentheses around assignment used
+ as truth value
+
+ * XMakefile (clean): remove funcname.c funcname1.h funcname2.h
+ these are autogenerated files.
+ * funcname.c funcname1.h funcname2.h: removed from CVS
+
+ * main.c (MAIN): add braces to avoid ambiguous `else'
+ * main.c (set_buffer_environ): remove unused variables
+ * linein.c (_rcompl): not EMACS_LIKE_LINEEDIT only
+ * local.c (localcgi_get): remove unused variables
+ * mailcap.c (unquote_mailcap_loop): remove unused variables
+ * url.c (init_PRNG) add parentheses around assignment used as true value
+ * url.c (parseURL): remove unsed label
+ * url.c (parseURL2): remove unused variables
+ * ftp.c (ftp_escape_str ftp_restore_str): remove not used functions
+ * indep.c (getescapechar): remove unused variable
+
+ * proto.h: add missing prototypes
+
+2001-11-20 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
+
+ * [w3m-dev 02447]
+ * terms.c (skip_escseq): is_xterm && ESC [ M <ch> <ch> <ch>
+
+2001-11-20 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02448]
+ * terms.c (mouse_init): Gpm_Close() is required.
+ closes: Debian Bug#120221: w3m-ssl: trashes terminal on exit
+
+2001-11-20 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
+
+ * [w3m-dev 02444]
+ * XMakefile (funcname1.h funcname2.h): sort as well as funcname.c
+
+2001-11-19 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02439]
+ * terms.c (xterm_mouse_term set_tty): add cygwin as xterm-style
+ mouse terminal
+
+2001-11-19 Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
+
+ * [w3m-dev 02436]
+ * main.c (GetWord): closes: #482763 segmentation fault in main.c
+
+2001-11-19 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * gc/.cvsignore:
+ remove gctest, if_mach, if_not_there, threadlibs
+ closes: #482765 i386 binaries in gc directory
+
+2001-11-17 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02432]
+ * configure: follow autoconf conventions
+ STRCASECMP -> HAVE_STRCASECMP
+ STRCHR -> HAVE_STRCHR
+ STRERROR -> HAVE_STRERROR
+ SYS_ERRLIST -> HAVE_SYS_ERRLIST
+ NOBCOPY -> HAVE_BCOPY
+ GETCWD -> HAVE_GETCWD
+ GETWD -> HAVE_GETWD
+ READLINK -> HAVE_READLINK (HAVE_LSTAT?)
+ TERMIO -> HAVE_TERMIO_H
+ TERMIOS -> HAVE_TERMIOS_H
+ SGTTY -> HAVE_SGTTY_H
+ DIRENT -> HAVE_DIRENT_H
+ NO_FLOAT_H -> HAVE_FLOAT_H
+ * etc.c fm.h config.h: HAVE_STRCASECMP
+ * etc.c config.h file.c: HAVE_STRCHR
+ strchr() moved from file.c to etc.c
+ * etc.c config.h: HAVE_STRERROR
+ * etc.c config.h main.c (MAIN): HAVE_SYS_ERRLIST
+ * etc.c fm.h: HAVE_BCOPY
+ * etc.c indep.c (currentdir) config.h: HAVE_GETCWD
+ * indep.c (currentdir) config.h: HAVE_GETWD
+ * form.c (form_write_from_file) local.c (dirBuffer)
+ config.h: HAVE_READLINK
+ * config.h terms.c: HAVE_TERMIO_H, HAVE_TERMIOS_H, HAVE_SGTTY_H
+ * config.h local.h: HAVE_DIRENT_H
+ * config.h matric.c: HAVE_FLOAT_H
+
+ * anchor.c cookie.c file.c parsetagx.c regex.c table.c url.c:
+ remove include <strings.h> ifdef __EMX__
+ it will be included in fm.h
+ * frame.c: remove include <strings.h> for bzero() and bcopy()
+ these are declared in fm.h
+ * indep.c: remove include <strings.h> for bcopy()
+ this is declared in fm.h
+ * istream.c mailcap.c: remove include <strings.h> for bzero()
+ this is declared in fm.h
+ * parsetag.c: remove include <strings.h> for bzero()
+ no bzero() used in this file
+
+ * [w3m-dev 02431]
+ * terms.c (set_tty): "rxvt" is xterm
+ (getTCstr): tgetstr("Km", &pt) is not xterm, removed
+ (mouse_init): check Gpm_Open() == -2 to detect xterm when USE_GPM
+
+2001-11-16 Tsutomu Okada <okada@furuno.co.jp>
+
+ * [w3m-dev 02418]
+ * main.c (chkURL): add mailto: like pattern to mark as anchor
+ * search.c (forwardSearch): check whether currentLine is NULL
+ * search.c (backwardSearch): ditto
+
+2001-11-16 Dai Sato <satodai@dog.intcul.tohoku.ac.jp>
+
+ * [w3m-dev-en 00641] Re: w3m-0.2.1-inu-1.6
+ * configure: add some dirs for zlib and mime.types
+
+2001-11-16 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ * [w3m-dev 02417]
+ * terms.c (mouse_init): fix mouse handling on TERM=linux
+ if Gpm_Open() successed, set is_xterm = 0 so that
+ w3m uses gpm functions.
+
+2001-11-16 Tsutomu Okada <okada@furuno.co.jp>
+
+ * [w3m-dev 02408] meta refresh
+ * file.c (HTMLtagproc1):
+ use MetaRefresh
+ add case refresh > 0
+ * fm.h:
+ add MetaRefresh
+ move alarm related definition from main.c
+ * main.c:
+ move alarm releated definition to fm.h
+ (SigAlarm): alarm_once
+ * rc.c:
+ add CMT_META_REFRESH
+
+ * [w3m-dev 02415]
+ * file.c (loadHTMLBuffer):
+ pushText() to clean up temporary files
+
+ * [w3m-dev 02414]
+ * file.c (loadHTMLstream):
+ SETJMP and signal after buffer is initialized
+
+ * [w3m-dev 02413]
+ * main.c (reMark):
+ don't save invalid regexp to MarkString
+
+2001-11-15 aito@eie.yz.yamagata-u.ac.jp
+
+ * release-0-2-2
+ * Update to w3m-0.2.1-inu-1.6
+
+2001-11-09 aito@eie.yz.yamagata-u.ac.jp
+
+ * release-0-2-1-inu-1-5
+ * Updates from 0.2.1 into 0.2.1-inu-1.5
+
+2001-11-08 aito@eie.yz.yamagata-u.ac.jp
+
+ * release-0-2-1
+ * import w3m-0.2.1
+
+$Id: ChangeLog,v 1.1055 2012/05/22 10:20:45 inu Exp $
diff --git a/Makefile.in b/Makefile.in
index 7d692f9..77b9ecc 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -111,6 +111,7 @@ IMGDISPLAY=w3mimgdisplay$(EXT)
MAN1_TARGET=$(PACKAGE).1
MAN1=$(top_srcdir)/doc/w3m.1
MAN1_JA=$(top_srcdir)/doc-jp/w3m.1
+MAN1_DE=$(top_srcdir)/doc-de/w3m.1
LIB_TARGETS=$(BOOKMARKER) $(HELPER)
AUXBIN_TARGETS=@AUXBIN_TARGETS@
@@ -150,7 +151,7 @@ parsetagx.o: html.c
funcname.tab: $(DEFUNS)
(echo '#define DEFUN(x,y,z) x y';\
- sed -ne '/^DEFUN/{p;n;/^[ ]/p;}' $(DEFUNS)) | $(CPP) - | \
+ sed -ne '/^DEFUN/{p;n;/^[ ]/p;}' $(DEFUNS)) | $(CPP) $(CPPFLAGS) - | \
awk '$$1 ~ /^[_A-Za-z]/ { \
for (i=2;i<=NF;i++) { print $$i, $$1} \
}' > $@.tmp
@@ -220,10 +221,12 @@ install-core: $(TARGETS)
-$(MKDIR) $(DESTDIR)$(HELP_DIR)
-$(MKDIR) $(DESTDIR)$(mandir)/man1
-$(MKDIR) $(DESTDIR)$(mandir)/ja/man1
+ -$(MKDIR) $(DESTDIR)$(mandir)/de/man1
$(INSTALL_PROGRAM) $(TARGET) $(DESTDIR)$(bindir)/$(TARGET)
$(INSTALL_DATA) $(HELP_FILE) $(DESTDIR)$(HELP_DIR)/$(HELP_TARGET)
$(INSTALL_DATA) $(MAN1) $(DESTDIR)$(mandir)/man1/$(MAN1_TARGET)
$(INSTALL_DATA) $(MAN1_JA) $(DESTDIR)$(mandir)/ja/man1/$(MAN1_TARGET)
+ $(INSTALL_DATA) $(MAN1_DE) $(DESTDIR)$(mandir)/de/man1/$(MAN1_TARGET)
targets="$(AUXBIN_TARGETS)"; for file in $$targets; \
do \
case $$file in \
@@ -250,7 +253,7 @@ install-po:
(cd $$subdir && $(MAKE) install); \
done
-all-scripts:
+all-scripts: funcname.tab
for dir in $(SCRIPTSUBDIRS); \
do \
(cd $$dir && $(MAKE) $(MAKE_ARGS)); \
@@ -280,6 +283,7 @@ uninstall:
-$(RM) -f $(HELP_DIR)/$(HELP_TARGET)
-$(RM) -f $(mandir)/man1/$(MAN1_TARGET)
-$(RM) -f $(mandir)/ja/man1/$(MAN1_TARGET)
+ -$(RM) -f $(mandir)/de/man1/$(MAN1_TARGET)
-for dir in $(SCRIPTSUBDIRS); \
do \
(cd $$dir && $(MAKE) $(MAKE_ARGS) uninstall); \
@@ -318,7 +322,7 @@ depend:
makedepend $(CFLAGS) *.c
dist:
- cd ..; tar cvfz w3m-$(VERSION).tar.gz w3m
+ git archive --format=tar --prefix=w3m-$(VERSION)/ HEAD | xz -9 > ../w3m-$(VERSION).tar.xz
bindist:
cd ..; tar cvfz w3m-$(VERSION)-$(MODEL).tar.gz w3m/w3m* w3m/doc* w3m/Bonus* w3m/README w3m/scripts
diff --git a/NEWS b/NEWS
index 66e309d..7a215e8 100644
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,121 @@
+Debian's w3m 0.5.3+git20210102
+
+* new features
+ - support links containing divs for HTML5
+ - rudimentary support for HTML5 tags: figure, figcaption, and section
+ - enhance the behaviour of the q tag when m17n and Unicode are configured
+ - support for file://hostname/... URLs
+ - new commands CURSOR_TOP, CURSOR_MIDDLE, and CURSOR_BOTTOM
+ - new option space_autocomplete, disabled by default
+* bug fixes
+ - fix and improve broken Gopher support, enabled by default
+ - change the encoding of the Japanese document files to UTF-8
+ - use the default ciphers without SSL_CTX_set_cipher_list for OpenSSL 1.1
+ - fix compilation errors due to sys_errlist and longjmp
+ - define X_DISPLAY_MISSING when configure --without-x for Imlib2
+ - avoid the -l option of the man command for w3mman
+ - fix some source formatting in the manual
+ - show keyboard shortcuts in a consistent order in help
+ - fix traditional Chinese translation
+ - drop obsolete w3m-doc
+
+Debian's w3m 0.5.3+git20200502
+
+* bug fixes
+ - support &apos; entity
+ - prevent multiple User-Agent with -header
+ - fix -Wchar-subscripts
+* new features
+ - support setting user_agent in siteconf
+ - new command GOTO_HOME
+ - extend ssl_forbid_method for TLSv1.2 and TLSv1.3
+
+Debian's w3m 0.5.3+git20190105
+
+* bug fixes
+ - do not use deprecated features with OpenSSL 1.1
+ - fix dependency for Imlib2
+ - fix that the mark_all_pages option works
+ - respect the simple_preserve_space option for table cells
+ - fix error handling for ~/.w3m/request.log and localcgi_post()
+* new feature
+ - w3mman supports specifying a section number during a keyword search
+
+Debian's w3m 0.5.3+git20180125
+
+* bug fixes
+ - fix stack overflow with malformed text [CVE-2018-6196]
+ - fix null deref with malformed text [CVE-2018-6197]
+ - fix /tmp file races only when ~/.w3m is unwritable [CVE-2018-6198]
+ - do not remove w3mdict.cgi when "make distclean"
+ - do not turn a form's GET into POST
+ - correct <base ...> parsing
+ - accept TERM=fbterm
+* new feature
+ - extend ssl_forbid_method to disable TLSv1.1
+
+Debian's w3m 0.5.3+git20170102
+
+* bug fixes
+ - fix multiple flaws with malformed text
+ (buffer overflow, use after free, infinite loop)
+ - fix uninitialized variable when not USE_IMAGE
+
+Debian's w3m 0.5.3+git20161120
+
+* bug fixes
+ - fix multiple flaws with malformed text
+ (stack overflow, buffer overflow, null deref, out of memory)
+ [CVE-2016-9622], [CVE-2016-9623], [CVE-2016-9624], [CVE-2016-9625],
+ [CVE-2016-9626], [CVE-2016-9627], [CVE-2016-9628], [CVE-2016-9629],
+ [CVE-2016-9630], [CVE-2016-9631], [CVE-2016-9632], [CVE-2016-9633]
+ - fix stack overflow with nested table and textarea [CVE-2016-9439]
+ - fix suspend (^Z) behavior
+
+Debian's w3m 0.5.3+git20161031
+
+* new features
+ - support OSC 5379 remote imaging and sixel graphics
+ - support SGR style mouse handler
+ - support 32-bit color images
+ - support FreeBSD framebuffer
+ - support button element
+ - support meta charset
+ - include w3mdict.cgi to use a dictd dictionary query
+ - add extbrowser4..9
+ - add display_borders to display 0 pixel table borders
+ - add siteconf feature
+ - add German translation for options setting panel
+ - add translations for de, zh_CN and zh_TW
+* bug fixes
+ - fix multiple flaws with malformed text
+ [CVE-2016-9422], [CVE-2016-9423], [CVE-2016-9424], [CVE-2016-9425],
+ [CVE-2016-9426], [CVE-2016-9428], [CVE-2016-9429], [CVE-2016-9430],
+ [CVE-2016-9431], [CVE-2016-9432], [CVE-2016-9433], [CVE-2016-9434],
+ [CVE-2016-9435], [CVE-2016-9436], [CVE-2016-9437], [CVE-2016-9438],
+ [CVE-2016-9440], [CVE-2016-9441], [CVE-2016-9443], [CVE-2016-9621]
+ - fix potential heap buffer corruption due to Strgrow [CVE-2016-9442]
+ - disable SSLv2 and SSLv3 by default [CVE-2014-3566]
+ - set ssl_verify_server to 1 by default
+ - disable RC4, export ciphers, and keys < 128 bits
+ - use SSL_OP_NO_COMPRESSION due to "CRIME attack" [CVE-2012-4929]
+ - use SSL_MODE_RELEASE_BUFFERS
+ - disable USE_EGD for LibreSSL
+ - appease gcc -Werror=format-security
+ - option -s is now "squeeze multiple blank lines" to work as pager, and
+ -j and -e are obsolete, so use -O{s|j|e} to specify display charset
+ - accept single quoted meta refresh URL
+ - assume "text" if a form input type is unknown
+ - accept cookies by default
+ - set use_dictcommand to 1 by default
+ - set default_url to 1 by default
+ - set argv_is_url to 1 by default
+ - set alt_entity to 0 by default
+ - fix build problems with Boehm GC 7.2, imlib2 1.4.6 and glibc 2.14
+ - fix parallel make failure
+ - fix incorrect ucs_ambwidth_map
+ - and many fixes
+
w3m 0.5.3 - 2011-01-15
* security fix
diff --git a/README b/README
index 8778d80..8dcef06 100644
--- a/README
+++ b/README
@@ -1,3 +1,12 @@
+w3m: WWW wo Miru Tool
+=====================
+
+w3m is a pager with WWW capability. It IS a pager, but it can be used
+as a text-mode WWW browser.
+
+This package is maintained for Debian <https://www.debian.org>,
+forked from the original version <https://sourceforge.net/projects/w3m/>.
+
If you can read English, see doc/*.
If you can read Japanese, see doc-jp/*.
If you can read both, read both and correct English. :-)
diff --git a/Str.c b/Str.c
index e5a0982..61fe3ca 100644
--- a/Str.c
+++ b/Str.c
@@ -48,6 +48,8 @@ Str
Strnew_size(int n)
{
Str x = GC_MALLOC(sizeof(struct _Str));
+ if (n < 0)
+ n = 0;
x->ptr = GC_MALLOC_ATOMIC(n + 1);
x->ptr[0] = '\0';
x->area_size = n + 1;
@@ -56,7 +58,7 @@ Strnew_size(int n)
}
Str
-Strnew_charp(char *p)
+Strnew_charp(const char *p)
{
Str x;
int n;
@@ -73,7 +75,7 @@ Strnew_charp(char *p)
}
Str
-Strnew_m_charp(char *p, ...)
+Strnew_m_charp(const char *p, ...)
{
va_list ap;
Str r = Strnew();
@@ -87,7 +89,7 @@ Strnew_m_charp(char *p, ...)
}
Str
-Strnew_charp_n(char *p, int n)
+Strnew_charp_n(const char *p, int n)
{
Str x;
@@ -140,7 +142,7 @@ Strcopy(Str x, Str y)
}
void
-Strcopy_charp(Str x, char *y)
+Strcopy_charp(Str x, const char *y)
{
int len;
@@ -160,7 +162,7 @@ Strcopy_charp(Str x, char *y)
}
void
-Strcopy_charp_n(Str x, char *y, int n)
+Strcopy_charp_n(Str x, const char *y, int n)
{
int len = n;
@@ -180,7 +182,7 @@ Strcopy_charp_n(Str x, char *y, int n)
}
void
-Strcat_charp_n(Str x, char *y, int n)
+Strcat_charp_n(Str x, const char *y, int n)
{
int newlen;
@@ -209,7 +211,7 @@ Strcat(Str x, Str y)
}
void
-Strcat_charp(Str x, char *y)
+Strcat_charp(Str x, const char *y)
{
if (y == NULL)
return;
@@ -232,8 +234,8 @@ Strgrow(Str x)
{
char *old = x->ptr;
int newlen;
- newlen = x->length * 6 / 5;
- if (newlen == x->length)
+ newlen = x->area_size * 6 / 5;
+ if (newlen == x->area_size)
newlen += 2;
x->ptr = GC_MALLOC_ATOMIC(newlen);
x->area_size = newlen;
@@ -278,8 +280,8 @@ void
Strchop(Str s)
{
STR_LENGTH_CHECK(s);
- while ((s->ptr[s->length - 1] == '\n' || s->ptr[s->length - 1] == '\r') &&
- s->length > 0) {
+ while (s->length > 0 &&
+ (s->ptr[s->length - 1] == '\n' || s->ptr[s->length - 1] == '\r')) {
s->length--;
}
s->ptr[s->length] = '\0';
@@ -301,7 +303,7 @@ Strinsert_char(Str s, int pos, char c)
}
void
-Strinsert_charp(Str s, int pos, char *p)
+Strinsert_charp(Str s, int pos, const char *p)
{
STR_LENGTH_CHECK(s);
while (*p)
@@ -530,11 +532,8 @@ Str
Strfgets(FILE * f)
{
Str s = Strnew();
- char c;
- while (1) {
- c = fgetc(f);
- if (feof(f) || ferror(f))
- break;
+ int c;
+ while ((c = fgetc(f)) != EOF) {
Strcat_char(s, c);
if (c == '\n')
break;
@@ -546,11 +545,8 @@ Str
Strfgetall(FILE * f)
{
Str s = Strnew();
- char c;
- while (1) {
- c = fgetc(f);
- if (feof(f) || ferror(f))
- break;
+ int c;
+ while ((c = fgetc(f)) != EOF) {
Strcat_char(s, c);
}
return s;
diff --git a/Str.h b/Str.h
index f345c74..248815d 100644
--- a/Str.h
+++ b/Str.h
@@ -30,22 +30,22 @@ typedef struct _Str {
Str Strnew(void);
Str Strnew_size(int);
-Str Strnew_charp(char *);
-Str Strnew_charp_n(char *, int);
-Str Strnew_m_charp(char *, ...);
+Str Strnew_charp(const char *);
+Str Strnew_charp_n(const char *, int);
+Str Strnew_m_charp(const char *, ...);
Str Strdup(Str);
void Strclear(Str);
void Strfree(Str);
void Strcopy(Str, Str);
-void Strcopy_charp(Str, char *);
-void Strcopy_charp_n(Str, char *, int);
-void Strcat_charp_n(Str, char *, int);
+void Strcopy_charp(Str, const char *);
+void Strcopy_charp_n(Str, const char *, int);
+void Strcat_charp_n(Str, const char *, int);
void Strcat(Str, Str);
-void Strcat_charp(Str, char *);
+void Strcat_charp(Str, const char *);
void Strcat_m_charp(Str, ...);
Str Strsubstr(Str, int, int);
void Strinsert_char(Str, int, char);
-void Strinsert_charp(Str, int, char *);
+void Strinsert_charp(Str, int, const char *);
void Strdelete(Str, int, int);
void Strtruncate(Str, int);
void Strlower(Str);
diff --git a/acinclude.m4 b/acinclude.m4
index e4ccc3d..b09f4e6 100644
--- a/acinclude.m4
+++ b/acinclude.m4
@@ -6,7 +6,8 @@ dnl w3m autoconf macros
AC_DEFUN([AC_W3M_VERSION],
[AC_SUBST(CURRENT_VERSION)
cvsver=`$AWK '\$[1] ~ /Id:/ { print \$[3]}' $srcdir/ChangeLog`
- sed -e 's/define CURRENT_VERSION "\(.*\)+cvs/define CURRENT_VERSION "\1+cvs-'$cvsver'/' $srcdir/version.c.in > version.c
+ ymdver=`sed -e 's/ .*//;s/-//g;q' $srcdir/ChangeLog`
+ sed -e 's/define CURRENT_VERSION "\(.*\)YYYYMMDD/define CURRENT_VERSION "\1'$ymdver'/;s/define CURRENT_VERSION "\(.*\)+cvs/define CURRENT_VERSION "\1+cvs-'$cvsver'/' $srcdir/version.c.in > version.c
CURRENT_VERSION=`sed -n 's/.*define CURRENT_VERSION *"w3m\/\(.*\)".*$/\1/p' version.c`])
#
# ----------------------------------------------------------------
@@ -124,8 +125,8 @@ AC_DEFUN([AC_W3M_GOPHER],
[AC_SUBST(USE_GOPHER)
AC_MSG_CHECKING(if gopher is enabled)
AC_ARG_ENABLE(gopher,
- [ --enable-gopher enable GOPHER],,
- [enable_gopher="no"])
+ [ --disable-gopher disable GOPHER],,
+ [enable_gopher="yes"])
test x"$enable_gopher" = xyes && AC_DEFINE(USE_GOPHER)
AC_MSG_RESULT($enable_gopher)])
#
@@ -330,10 +331,10 @@ AC_DEFINE_UNQUOTED(DEF_MAILER, "$w3m_mailer")])
# ----------------------------------------------------------------
AC_DEFUN([AC_W3M_EXT_BROWSER],
[AC_SUBST(DEF_EXT_BROWSER)
-w3m_browser="/usr/bin/mozilla"
+w3m_browser="/usr/bin/firefox"
AC_MSG_CHECKING(which external browser is used by default)
AC_ARG_WITH(browser,
- [ --with-browser=BROWSER default browser (/usr/bin/mozilla)],
+ [ --with-browser=BROWSER default browser (/usr/bin/firefox)],
[w3m_browser="$with_browser"])
AC_MSG_RESULT($w3m_browser)
AC_DEFINE_UNQUOTED(DEF_EXT_BROWSER, "$w3m_browser")])
@@ -400,10 +401,10 @@ AC_DEFUN([AC_W3M_TERMLIB],
AC_ARG_WITH(termlib,
[ --with-termlib[=LIBS] terminal library
LIBS is space separated list of:
- terminfo mytinfo termcap ncurses curses],,
+ terminfo mytinfo termcap tinfo ncurses curses],,
[with_termlib="yes"])
AC_MSG_RESULT($with_termlib)
- test x"$with_termlib" = xyes && with_termlib="terminfo mytinfo termlib termcap ncurses curses"
+ test x"$with_termlib" = xyes && with_termlib="terminfo mytinfo termlib termcap tinfo ncurses curses"
for lib in $with_termlib; do
AC_CHECK_LIB($lib, tgetent, [W3M_LIBS="$W3M_LIBS -l$lib"; break])
done
@@ -600,7 +601,7 @@ AC_DEFUN([AC_W3M_IMAGE],
if test x"$enable_image" = xyes; then
enable_image=x11
case "`uname -s`" in
- Linux|linux|LINUX)
+ Linux|linux|LINUX|FreeBSD|freebsd|FREEBSD)
if test -c /dev/fb0; then
enable_image=x11,fb
fi;;
@@ -649,6 +650,9 @@ AC_DEFUN([AC_W3M_IMAGE],
fi;;
imlib2)
with_imlib2="yes"
+ if test x"$PKG_CONFIG" = x; then
+ PKG_CONFIG=pkg-config
+ fi
if test x"$IMLIB2_CONFIG" = x; then
IMLIB2_CONFIG=imlib2-config
fi;;
@@ -661,8 +665,6 @@ AC_DEFUN([AC_W3M_IMAGE],
with_gtk2="yes"
if test x"$PKG_CONFIG" = x; then
PKG_CONFIG=pkg-config
- else
- PKG_CONFIG=:
fi;;
esac
done
@@ -705,8 +707,8 @@ AC_DEFUN([AC_W3M_IMAGE],
IMGTARGETS="x11"
AC_DEFINE(USE_GDKPIXBUF)
AC_DEFINE(USE_GTK2)
- IMGX11CFLAGS="`${PKG_CONFIG} --cflags gdk-pixbuf-2.0 gdk-pixbuf-xlib-2.0 gtk+-2.0`"
- IMGX11LDFLAGS="`${PKG_CONFIG} --libs gdk-pixbuf-2.0 gdk-pixbuf-xlib-2.0 gtk+-2.0`"
+ IMGX11CFLAGS="`${PKG_CONFIG} --cflags gdk-pixbuf-2.0 gdk-pixbuf-xlib-2.0`"
+ IMGX11LDFLAGS="-lX11 `${PKG_CONFIG} --libs gdk-pixbuf-2.0 gdk-pixbuf-xlib-2.0`"
elif test x"$have_gdkpixbuf" = xyes; then
AC_DEFINE(USE_W3MIMG_X11)
IMGOBJS="$IMGOBJS x11/x11_w3mimg.o"
@@ -728,7 +730,7 @@ AC_DEFUN([AC_W3M_IMAGE],
IMGTARGETS="x11"
AC_DEFINE(USE_IMLIB2)
IMGX11CFLAGS="`${IMLIB2_CONFIG} --cflags`"
- IMGX11LDFLAGS="`${IMLIB2_CONFIG} --libs`"
+ IMGX11LDFLAGS="-lX11 `${PKG_CONFIG} --libs imlib2`"
else
AC_MSG_WARN([unable to build w3mimgdisplay with X11 support])
fi
@@ -740,8 +742,8 @@ AC_DEFUN([AC_W3M_IMAGE],
IMGTARGETS="${IMGTARGETS} fb"
AC_DEFINE(USE_GDKPIXBUF)
AC_DEFINE(USE_GTK2)
- IMGFBCFLAGS="`${PKG_CONFIG} --cflags gdk-pixbuf-2.0 gtk+-2.0`"
- IMGFBLDFLAGS="`${PKG_CONFIG} --libs gdk-pixbuf-2.0 gtk+-2.0`"
+ IMGFBCFLAGS="`${PKG_CONFIG} --cflags gdk-pixbuf-2.0`"
+ IMGFBLDFLAGS="`${PKG_CONFIG} --libs gdk-pixbuf-2.0`"
elif test x"$have_gdkpixbuf" = xyes; then
AC_DEFINE(USE_W3MIMG_FB)
IMGOBJS="$IMGOBJS fb/fb_w3mimg.o fb/fb.o fb/fb_img.o"
@@ -756,7 +758,7 @@ AC_DEFUN([AC_W3M_IMAGE],
AC_DEFINE(USE_IMLIB2)
IMGOBJS="$IMGOBJS fb/fb_w3mimg.o fb/fb.o fb/fb_img.o"
IMGFBCFLAGS="`${IMLIB2_CONFIG} --cflags`"
- IMGFBLDFLAGS="`${IMLIB2_CONFIG} --libs`"
+ IMGFBLDFLAGS="`${PKG_CONFIG} --libs imlib2`"
else
AC_MSG_WARN([unable to build w3mimgdisplay with FB support])
fi
@@ -858,21 +860,6 @@ if test x"$enable_ipv6" = xyes; then
fi])
#
# ----------------------------------------------------------------
-# AC_W3M_SYS_ERRLIST
-# ----------------------------------------------------------------
-AC_DEFUN([AC_W3M_SYS_ERRLIST],
-[AC_SUBST(HAVE_SYS_ERRLIST)
-AC_MSG_CHECKING(for sys_errlist)
-AC_TRY_COMPILE(
-changequote(<<,>>)dnl
-<<extern char *sys_errlist[];>>,
-<<printf(sys_errlist[0]);>>,
-changequote([,])dnl
-[have_sys_errlist="yes"; AC_DEFINE(HAVE_SYS_ERRLIST)],
-[have_sys_errlist="no"])
-AC_MSG_RESULT($have_sys_errlist)])
-#
-# ----------------------------------------------------------------
# AC_W3M_SIGSETJMP
# ----------------------------------------------------------------
AC_DEFUN([AC_W3M_SIGSETJMP],
diff --git a/alloc.h b/alloc.h
new file mode 100644
index 0000000..fa0d391
--- /dev/null
+++ b/alloc.h
@@ -0,0 +1,39 @@
+/*
+ * by Scarlett. public domain.
+ * replacements for w3m's allocation macros which add overflow
+ * detection and concentrate the macros in one file
+ */
+#ifndef W3_ALLOC_H
+#define W3_ALLOC_H
+#include <gc.h>
+#include <stdlib.h>
+#include <stdio.h>
+#include <limits.h>
+
+static inline size_t
+z_mult_no_oflow_(size_t n, size_t size)
+{
+ if (size != 0 && n > ULONG_MAX / size) {
+ fprintf(stderr,
+ "w3m: overflow in malloc, %lu*%lu\n", (unsigned long)n, (unsigned long)size);
+ exit(1);
+ }
+ return n * size;
+}
+
+#define New(type) \
+ (GC_MALLOC(sizeof(type)))
+
+#define NewAtom(type) \
+ (GC_MALLOC_ATOMIC(sizeof(type)))
+
+#define New_N(type, n) \
+ (GC_MALLOC(z_mult_no_oflow_((n), sizeof(type))))
+
+#define NewAtom_N(type, n) \
+ (GC_MALLOC_ATOMIC(z_mult_no_oflow_((n), sizeof(type))))
+
+#define New_Reuse(type, ptr, n) \
+ (GC_REALLOC((ptr), z_mult_no_oflow_((n), sizeof(type))))
+
+#endif /* W3_ALLOC_H */
diff --git a/anchor.c b/anchor.c
index 27bbd56..b6d121c 100644
--- a/anchor.c
+++ b/anchor.c
@@ -11,7 +11,7 @@ putAnchor(AnchorList *al, char *url, char *target, Anchor **anchor_return,
{
int n, i, j;
Anchor *a;
- BufferPoint bp;
+ BufferPoint bp = { 0 };
if (al == NULL) {
al = New(AnchorList);
al->anchors = NULL;
@@ -200,10 +200,11 @@ _put_anchor_news(Buffer *buf, char *p1, char *p2, int line, int pos)
if (*(p2 - 1) == '>')
p2--;
}
- tmp = wc_Str_conv_strict(Strnew_charp_n(p1, p2 - p1), InnerCharset,
- buf->document_charset);
- tmp = Sprintf("news:%s", file_quote(tmp->ptr));
- return registerHref(buf, tmp->ptr, NULL, NO_REFERER, NULL, '\0', line,
+ tmp = Strnew_charp("news:");
+ Strcat_charp_n(tmp, p1, p2 - p1);
+ return registerHref(buf, url_encode(tmp->ptr, baseURL(buf),
+ buf->document_charset),
+ NULL, NO_REFERER, NULL, '\0', line,
pos);
}
#endif /* USE_NNTP */
@@ -213,9 +214,10 @@ _put_anchor_all(Buffer *buf, char *p1, char *p2, int line, int pos)
{
Str tmp;
- tmp = wc_Str_conv_strict(Strnew_charp_n(p1, p2 - p1), InnerCharset,
- buf->document_charset);
- return registerHref(buf, url_quote(tmp->ptr), NULL, NO_REFERER, NULL,
+ tmp = Strnew_charp_n(p1, p2 - p1);
+ return registerHref(buf, url_encode(tmp->ptr, baseURL(buf),
+ buf->document_charset),
+ NULL, NO_REFERER, NULL,
'\0', line, pos);
}
@@ -549,7 +551,8 @@ shiftAnchorPosition(AnchorList *al, HmarkerList *hl, int line, int pos,
break;
if (a->start.pos > pos) {
a->start.pos += shift;
- if (hl->marks[a->hseq].line == line)
+ if (hl && hl->marks &&
+ a->hseq >= 0 && hl->marks[a->hseq].line == line)
hl->marks[a->hseq].pos = a->start.pos;
}
if (a->end.pos >= pos)
@@ -641,7 +644,6 @@ addMultirowsForm(Buffer *buf, AnchorList *al)
{
int i, j, k, col, ecol, pos;
Anchor a_form, *a;
- FormItemList *fi;
Line *l, *ls;
if (al == NULL || al->nanchor == 0)
@@ -668,7 +670,6 @@ addMultirowsForm(Buffer *buf, AnchorList *al)
if (!ls)
continue;
}
- fi = (FormItemList *)a_form.url;
col = COLPOS(ls, a_form.start.pos);
ecol = COLPOS(ls, a_form.end.pos);
for (j = 0; l && j < a_form.rows; l = l->next, j++) {
@@ -685,6 +686,8 @@ addMultirowsForm(Buffer *buf, AnchorList *al)
a->hseq = a_form.hseq;
a->y = a_form.y;
a->end.pos = pos + ecol - col;
+ if (pos < 1 || a->end.pos >= l->size)
+ continue;
l->lineBuf[pos - 1] = '[';
l->lineBuf[a->end.pos] = ']';
for (k = pos; k < a->end.pos; k++)
@@ -756,7 +759,7 @@ link_list_panel(Buffer *buf)
p = parsedURL2Str(&pu)->ptr;
u = html_quote(p);
if (DecodeURL)
- p = html_quote(url_unquote_conv(p, buf->document_charset));
+ p = html_quote(url_decode2(p, buf));
else
p = u;
}
@@ -787,7 +790,7 @@ link_list_panel(Buffer *buf)
p = parsedURL2Str(&pu)->ptr;
u = html_quote(p);
if (DecodeURL)
- p = html_quote(url_unquote_conv(p, buf->document_charset));
+ p = html_quote(url_decode2(p, buf));
else
p = u;
t = getAnchorText(buf, al, a);
@@ -809,16 +812,13 @@ link_list_panel(Buffer *buf)
p = parsedURL2Str(&pu)->ptr;
u = html_quote(p);
if (DecodeURL)
- p = html_quote(url_unquote_conv(p, buf->document_charset));
+ p = html_quote(url_decode2(p, buf));
else
p = u;
if (a->title && *a->title)
t = html_quote(a->title);
- else if (DecodeURL)
- t = html_quote(url_unquote_conv
- (a->url, buf->document_charset));
else
- t = html_quote(a->url);
+ t = html_quote(url_decode2(a->url, buf));
Strcat_m_charp(tmp, "<li><a href=\"", u, "\">", t, "</a><br>", p,
"\n", NULL);
a = retrieveAnchor(buf->formitem, a->start.line, a->start.pos);
@@ -842,19 +842,13 @@ link_list_panel(Buffer *buf)
p = parsedURL2Str(&pu)->ptr;
u = html_quote(p);
if (DecodeURL)
- p = html_quote(url_unquote_conv(p,
- buf->
- document_charset));
+ p = html_quote(url_decode2(p, buf));
else
p = u;
if (m->alt && *m->alt)
t = html_quote(m->alt);
- else if (DecodeURL)
- t = html_quote(url_unquote_conv(m->url,
- buf->
- document_charset));
else
- t = html_quote(m->url);
+ t = html_quote(url_decode2(m->url, buf));
Strcat_m_charp(tmp, "<li><a href=\"", u, "\">", t,
"</a><br>", p, "\n", NULL);
}
diff --git a/buffer.c b/buffer.c
index 5afc26a..e70cffe 100644
--- a/buffer.c
+++ b/buffer.c
@@ -47,6 +47,8 @@ newBuffer(int width)
#ifdef USE_M17N
n->auto_detect = WcOption.auto_detect;
#endif
+ n->check_url = MarkAllPages; /* use default from -o mark_all_pages */
+ n->need_reshape = 1; /* always reshape new buffers to mark URLs */
return n;
}
@@ -705,6 +707,7 @@ readBufferCache(Buffer *buf)
cache = fopen(buf->savecache, "r");
if (cache == NULL || fread1(clnum, cache) || fread1(tlnum, cache)) {
+ fclose(cache);
buf->savecache = NULL;
return -1;
}
@@ -760,8 +763,10 @@ readBufferCache(Buffer *buf)
}
#endif
}
- buf->lastLine = prevl;
- buf->lastLine->next = NULL;
+ if (prevl) {
+ buf->lastLine = prevl;
+ buf->lastLine->next = NULL;
+ }
fclose(cache);
unlink(buf->savecache);
buf->savecache = NULL;
diff --git a/config.guess b/config.guess
index 51fab47..f50dcdb 100755
--- a/config.guess
+++ b/config.guess
@@ -1,13 +1,12 @@
#! /bin/sh
# Attempt to guess a canonical system name.
-# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-# 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+# Copyright 1992-2018 Free Software Foundation, Inc.
-timestamp='2004-03-12'
+timestamp='2018-02-24'
# This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
+# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful, but
@@ -16,24 +15,22 @@ timestamp='2004-03-12'
# General Public License for more details.
#
# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+# along with this program; if not, see <https://www.gnu.org/licenses/>.
#
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-# Originally written by Per Bothner <per@bothner.com>.
-# Please send patches to <config-patches@gnu.org>. Submit a context
-# diff and a properly formatted ChangeLog entry.
+# the same distribution terms that you use for the rest of that
+# program. This Exception is an additional permission under section 7
+# of the GNU General Public License, version 3 ("GPLv3").
+#
+# Originally written by Per Bothner; maintained since 2000 by Ben Elliston.
#
-# This script attempts to guess a canonical system name similar to
-# config.sub. If it succeeds, it prints the system name on stdout, and
-# exits with 0. Otherwise, it exits with 1.
+# You can get the latest version of this script from:
+# https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess
#
-# The plan is that this can be called by configure scripts if you
-# don't specify an explicit build system type.
+# Please send patches to <config-patches@gnu.org>.
+
me=`echo "$0" | sed -e 's,.*/,,'`
@@ -42,7 +39,7 @@ Usage: $0 [OPTION]
Output the configuration name of the system \`$me' is run on.
-Operation modes:
+Options:
-h, --help print this help, then exit
-t, --time-stamp print date of last modification, then exit
-v, --version print version number, then exit
@@ -53,8 +50,7 @@ version="\
GNU config.guess ($timestamp)
Originally written by Per Bothner.
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
-Free Software Foundation, Inc.
+Copyright 1992-2018 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@@ -66,11 +62,11 @@ Try \`$me --help' for more information."
while test $# -gt 0 ; do
case $1 in
--time-stamp | --time* | -t )
- echo "$timestamp" ; exit 0 ;;
+ echo "$timestamp" ; exit ;;
--version | -v )
- echo "$version" ; exit 0 ;;
+ echo "$version" ; exit ;;
--help | --h* | -h )
- echo "$usage"; exit 0 ;;
+ echo "$usage"; exit ;;
-- ) # Stop option processing
shift; break ;;
- ) # Use stdin as input.
@@ -104,16 +100,16 @@ set_cc_for_build='
trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
: ${TMPDIR=/tmp} ;
- { tmp=`(umask 077 && mktemp -d -q "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
+ { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
{ test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
{ tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
{ echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
dummy=$tmp/dummy ;
tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
case $CC_FOR_BUILD,$HOST_CC,$CC in
- ,,) echo "int x;" > $dummy.c ;
+ ,,) echo "int x;" > "$dummy.c" ;
for c in cc gcc c89 c99 ; do
- if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
+ if ($c -c -o "$dummy.o" "$dummy.c") >/dev/null 2>&1 ; then
CC_FOR_BUILD="$c"; break ;
fi ;
done ;
@@ -123,7 +119,7 @@ case $CC_FOR_BUILD,$HOST_CC,$CC in
;;
,,*) CC_FOR_BUILD=$CC ;;
,*,*) CC_FOR_BUILD=$HOST_CC ;;
-esac ;'
+esac ; set_cc_for_build= ;'
# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
# (ghazi@noc.rutgers.edu 1994-08-24)
@@ -136,12 +132,40 @@ UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
+case "$UNAME_SYSTEM" in
+Linux|GNU|GNU/*)
+ # If the system lacks a compiler, then just pick glibc.
+ # We could probably try harder.
+ LIBC=gnu
+
+ eval "$set_cc_for_build"
+ cat <<-EOF > "$dummy.c"
+ #include <features.h>
+ #if defined(__UCLIBC__)
+ LIBC=uclibc
+ #elif defined(__dietlibc__)
+ LIBC=dietlibc
+ #else
+ LIBC=gnu
+ #endif
+ EOF
+ eval "`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^LIBC' | sed 's, ,,g'`"
+
+ # If ldd exists, use it to detect musl libc.
+ if command -v ldd >/dev/null && \
+ ldd --version 2>&1 | grep -q ^musl
+ then
+ LIBC=musl
+ fi
+ ;;
+esac
+
# Note: order is significant - the case branches are not exclusive.
-case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
+case "$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in
*:NetBSD:*:*)
# NetBSD (nbsd) targets should (where applicable) match one or
- # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
+ # more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*,
# *-*-netbsdecoff* and *-*-netbsd*. For targets that recently
# switched to ELF, *-*-netbsd* would select the old
# object file format. This provides both forward
@@ -151,22 +175,33 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
# Note: NetBSD doesn't particularly care about the vendor
# portion of the name. We always set it to "unknown".
sysctl="sysctl -n hw.machine_arch"
- UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
- /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
- case "${UNAME_MACHINE_ARCH}" in
+ UNAME_MACHINE_ARCH=`(uname -p 2>/dev/null || \
+ "/sbin/$sysctl" 2>/dev/null || \
+ "/usr/sbin/$sysctl" 2>/dev/null || \
+ echo unknown)`
+ case "$UNAME_MACHINE_ARCH" in
armeb) machine=armeb-unknown ;;
arm*) machine=arm-unknown ;;
sh3el) machine=shl-unknown ;;
sh3eb) machine=sh-unknown ;;
- *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
+ sh5el) machine=sh5le-unknown ;;
+ earmv*)
+ arch=`echo "$UNAME_MACHINE_ARCH" | sed -e 's,^e\(armv[0-9]\).*$,\1,'`
+ endian=`echo "$UNAME_MACHINE_ARCH" | sed -ne 's,^.*\(eb\)$,\1,p'`
+ machine="${arch}${endian}"-unknown
+ ;;
+ *) machine="$UNAME_MACHINE_ARCH"-unknown ;;
esac
# The Operating System including object format, if it has switched
- # to ELF recently, or will in the future.
- case "${UNAME_MACHINE_ARCH}" in
+ # to ELF recently (or will in the future) and ABI.
+ case "$UNAME_MACHINE_ARCH" in
+ earm*)
+ os=netbsdelf
+ ;;
arm*|i386|m68k|ns32k|sh3*|sparc|vax)
- eval $set_cc_for_build
+ eval "$set_cc_for_build"
if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
- | grep __ELF__ >/dev/null
+ | grep -q __ELF__
then
# Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
# Return netbsd for either. FIX?
@@ -176,7 +211,14 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
fi
;;
*)
- os=netbsd
+ os=netbsd
+ ;;
+ esac
+ # Determine ABI tags.
+ case "$UNAME_MACHINE_ARCH" in
+ earm*)
+ expr='s/^earmv[0-9]/-eabi/;s/eb$//'
+ abi=`echo "$UNAME_MACHINE_ARCH" | sed -e "$expr"`
;;
esac
# The OS release
@@ -184,83 +226,62 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
# thus, need a distinct triplet. However, they do not need
# kernel version information, so it can be replaced with a
# suitable tag, in the style of linux-gnu.
- case "${UNAME_VERSION}" in
+ case "$UNAME_VERSION" in
Debian*)
release='-gnu'
;;
*)
- release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
+ release=`echo "$UNAME_RELEASE" | sed -e 's/[-_].*//' | cut -d. -f1,2`
;;
esac
# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
# contains redundant information, the shorter form:
# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
- echo "${machine}-${os}${release}"
- exit 0 ;;
- amd64:OpenBSD:*:*)
- echo x86_64-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
- amiga:OpenBSD:*:*)
- echo m68k-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
- arc:OpenBSD:*:*)
- echo mipsel-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
- cats:OpenBSD:*:*)
- echo arm-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
- hp300:OpenBSD:*:*)
- echo m68k-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
- mac68k:OpenBSD:*:*)
- echo m68k-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
- macppc:OpenBSD:*:*)
- echo powerpc-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
- mvme68k:OpenBSD:*:*)
- echo m68k-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
- mvme88k:OpenBSD:*:*)
- echo m88k-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
- mvmeppc:OpenBSD:*:*)
- echo powerpc-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
- pegasos:OpenBSD:*:*)
- echo powerpc-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
- pmax:OpenBSD:*:*)
- echo mipsel-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
- sgi:OpenBSD:*:*)
- echo mipseb-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
- sun3:OpenBSD:*:*)
- echo m68k-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
- wgrisc:OpenBSD:*:*)
- echo mipsel-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
+ echo "$machine-${os}${release}${abi}"
+ exit ;;
+ *:Bitrig:*:*)
+ UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'`
+ echo "$UNAME_MACHINE_ARCH"-unknown-bitrig"$UNAME_RELEASE"
+ exit ;;
*:OpenBSD:*:*)
- echo ${UNAME_MACHINE}-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
+ UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
+ echo "$UNAME_MACHINE_ARCH"-unknown-openbsd"$UNAME_RELEASE"
+ exit ;;
+ *:LibertyBSD:*:*)
+ UNAME_MACHINE_ARCH=`arch | sed 's/^.*BSD\.//'`
+ echo "$UNAME_MACHINE_ARCH"-unknown-libertybsd"$UNAME_RELEASE"
+ exit ;;
+ *:MidnightBSD:*:*)
+ echo "$UNAME_MACHINE"-unknown-midnightbsd"$UNAME_RELEASE"
+ exit ;;
*:ekkoBSD:*:*)
- echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
- exit 0 ;;
+ echo "$UNAME_MACHINE"-unknown-ekkobsd"$UNAME_RELEASE"
+ exit ;;
+ *:SolidBSD:*:*)
+ echo "$UNAME_MACHINE"-unknown-solidbsd"$UNAME_RELEASE"
+ exit ;;
macppc:MirBSD:*:*)
- echo powerppc-unknown-mirbsd${UNAME_RELEASE}
- exit 0 ;;
+ echo powerpc-unknown-mirbsd"$UNAME_RELEASE"
+ exit ;;
*:MirBSD:*:*)
- echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
- exit 0 ;;
+ echo "$UNAME_MACHINE"-unknown-mirbsd"$UNAME_RELEASE"
+ exit ;;
+ *:Sortix:*:*)
+ echo "$UNAME_MACHINE"-unknown-sortix
+ exit ;;
+ *:Redox:*:*)
+ echo "$UNAME_MACHINE"-unknown-redox
+ exit ;;
+ mips:OSF1:*.*)
+ echo mips-dec-osf1
+ exit ;;
alpha:OSF1:*:*)
case $UNAME_RELEASE in
*4.0)
UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
;;
*5.*)
- UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
+ UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
;;
esac
# According to Compaq, /usr/sbin/psrinfo has been available on
@@ -270,76 +291,73 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1`
case "$ALPHA_CPU_TYPE" in
"EV4 (21064)")
- UNAME_MACHINE="alpha" ;;
+ UNAME_MACHINE=alpha ;;
"EV4.5 (21064)")
- UNAME_MACHINE="alpha" ;;
+ UNAME_MACHINE=alpha ;;
"LCA4 (21066/21068)")
- UNAME_MACHINE="alpha" ;;
+ UNAME_MACHINE=alpha ;;
"EV5 (21164)")
- UNAME_MACHINE="alphaev5" ;;
+ UNAME_MACHINE=alphaev5 ;;
"EV5.6 (21164A)")
- UNAME_MACHINE="alphaev56" ;;
+ UNAME_MACHINE=alphaev56 ;;
"EV5.6 (21164PC)")
- UNAME_MACHINE="alphapca56" ;;
+ UNAME_MACHINE=alphapca56 ;;
"EV5.7 (21164PC)")
- UNAME_MACHINE="alphapca57" ;;
+ UNAME_MACHINE=alphapca57 ;;
"EV6 (21264)")
- UNAME_MACHINE="alphaev6" ;;
+ UNAME_MACHINE=alphaev6 ;;
"EV6.7 (21264A)")
- UNAME_MACHINE="alphaev67" ;;
+ UNAME_MACHINE=alphaev67 ;;
"EV6.8CB (21264C)")
- UNAME_MACHINE="alphaev68" ;;
+ UNAME_MACHINE=alphaev68 ;;
"EV6.8AL (21264B)")
- UNAME_MACHINE="alphaev68" ;;
+ UNAME_MACHINE=alphaev68 ;;
"EV6.8CX (21264D)")
- UNAME_MACHINE="alphaev68" ;;
+ UNAME_MACHINE=alphaev68 ;;
"EV6.9A (21264/EV69A)")
- UNAME_MACHINE="alphaev69" ;;
+ UNAME_MACHINE=alphaev69 ;;
"EV7 (21364)")
- UNAME_MACHINE="alphaev7" ;;
+ UNAME_MACHINE=alphaev7 ;;
"EV7.9 (21364A)")
- UNAME_MACHINE="alphaev79" ;;
+ UNAME_MACHINE=alphaev79 ;;
esac
# A Pn.n version is a patched version.
# A Vn.n version is a released version.
# A Tn.n version is a released field test version.
# A Xn.n version is an unreleased experimental baselevel.
# 1.2 uses "1.2" for uname -r.
- echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
- exit 0 ;;
- Alpha*:OpenVMS:*:*)
- echo alpha-hp-vms
- exit 0 ;;
- Alpha\ *:Windows_NT*:*)
- # How do we know it's Interix rather than the generic POSIX subsystem?
- # Should we change UNAME_MACHINE based on the output of uname instead
- # of the specific Alpha model?
- echo alpha-pc-interix
- exit 0 ;;
- 21064:Windows_NT:50:3)
- echo alpha-dec-winnt3.5
- exit 0 ;;
+ echo "$UNAME_MACHINE"-dec-osf"`echo "$UNAME_RELEASE" | sed -e 's/^[PVTX]//' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`"
+ # Reset EXIT trap before exiting to avoid spurious non-zero exit code.
+ exitcode=$?
+ trap '' 0
+ exit $exitcode ;;
Amiga*:UNIX_System_V:4.0:*)
echo m68k-unknown-sysv4
- exit 0;;
+ exit ;;
*:[Aa]miga[Oo][Ss]:*:*)
- echo ${UNAME_MACHINE}-unknown-amigaos
- exit 0 ;;
+ echo "$UNAME_MACHINE"-unknown-amigaos
+ exit ;;
*:[Mm]orph[Oo][Ss]:*:*)
- echo ${UNAME_MACHINE}-unknown-morphos
- exit 0 ;;
+ echo "$UNAME_MACHINE"-unknown-morphos
+ exit ;;
*:OS/390:*:*)
echo i370-ibm-openedition
- exit 0 ;;
+ exit ;;
+ *:z/VM:*:*)
+ echo s390-ibm-zvmoe
+ exit ;;
*:OS400:*:*)
- echo powerpc-ibm-os400
- exit 0 ;;
+ echo powerpc-ibm-os400
+ exit ;;
arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
- echo arm-acorn-riscix${UNAME_RELEASE}
- exit 0;;
+ echo arm-acorn-riscix"$UNAME_RELEASE"
+ exit ;;
+ arm*:riscos:*:*|arm*:RISCOS:*:*)
+ echo arm-unknown-riscos
+ exit ;;
SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
echo hppa1.1-hitachi-hiuxmpp
- exit 0;;
+ exit ;;
Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
# akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
if test "`(/bin/universe) 2>/dev/null`" = att ; then
@@ -347,32 +365,51 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
else
echo pyramid-pyramid-bsd
fi
- exit 0 ;;
+ exit ;;
NILE*:*:*:dcosx)
echo pyramid-pyramid-svr4
- exit 0 ;;
+ exit ;;
DRS?6000:unix:4.0:6*)
echo sparc-icl-nx6
- exit 0 ;;
- DRS?6000:UNIX_SV:4.2*:7*)
+ exit ;;
+ DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
case `/usr/bin/uname -p` in
- sparc) echo sparc-icl-nx7 && exit 0 ;;
+ sparc) echo sparc-icl-nx7; exit ;;
esac ;;
+ s390x:SunOS:*:*)
+ echo "$UNAME_MACHINE"-ibm-solaris2"`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`"
+ exit ;;
sun4H:SunOS:5.*:*)
- echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
- exit 0 ;;
+ echo sparc-hal-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"
+ exit ;;
sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
- echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
- exit 0 ;;
- i86pc:SunOS:5.*:*)
- echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
- exit 0 ;;
+ echo sparc-sun-solaris2"`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`"
+ exit ;;
+ i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*)
+ echo i386-pc-auroraux"$UNAME_RELEASE"
+ exit ;;
+ i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
+ eval "$set_cc_for_build"
+ SUN_ARCH=i386
+ # If there is a compiler, see if it is configured for 64-bit objects.
+ # Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
+ # This test works for both compilers.
+ if [ "$CC_FOR_BUILD" != no_compiler_found ]; then
+ if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
+ (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
+ grep IS_64BIT_ARCH >/dev/null
+ then
+ SUN_ARCH=x86_64
+ fi
+ fi
+ echo "$SUN_ARCH"-pc-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"
+ exit ;;
sun4*:SunOS:6*:*)
# According to config.sub, this is the proper way to canonicalize
# SunOS6. Hard to guess exactly what SunOS6 will be like, but
# it's likely to be more like Solaris than SunOS4.
- echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
- exit 0 ;;
+ echo sparc-sun-solaris3"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"
+ exit ;;
sun4*:SunOS:*:*)
case "`/usr/bin/arch -k`" in
Series*|S4*)
@@ -380,26 +417,26 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
;;
esac
# Japanese Language versions have a version number like `4.1.3-JL'.
- echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
- exit 0 ;;
+ echo sparc-sun-sunos"`echo "$UNAME_RELEASE"|sed -e 's/-/_/'`"
+ exit ;;
sun3*:SunOS:*:*)
- echo m68k-sun-sunos${UNAME_RELEASE}
- exit 0 ;;
+ echo m68k-sun-sunos"$UNAME_RELEASE"
+ exit ;;
sun*:*:4.2BSD:*)
UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
- test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
+ test "x$UNAME_RELEASE" = x && UNAME_RELEASE=3
case "`/bin/arch`" in
sun3)
- echo m68k-sun-sunos${UNAME_RELEASE}
+ echo m68k-sun-sunos"$UNAME_RELEASE"
;;
sun4)
- echo sparc-sun-sunos${UNAME_RELEASE}
+ echo sparc-sun-sunos"$UNAME_RELEASE"
;;
esac
- exit 0 ;;
+ exit ;;
aushp:SunOS:*:*)
- echo sparc-auspex-sunos${UNAME_RELEASE}
- exit 0 ;;
+ echo sparc-auspex-sunos"$UNAME_RELEASE"
+ exit ;;
# The situation for MiNT is a little confusing. The machine name
# can be virtually everything (everything which is not
# "atarist" or "atariste" at least should have a processor
@@ -409,44 +446,44 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
# MiNT. But MiNT is downward compatible to TOS, so this should
# be no problem.
atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
- echo m68k-atari-mint${UNAME_RELEASE}
- exit 0 ;;
+ echo m68k-atari-mint"$UNAME_RELEASE"
+ exit ;;
atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
- echo m68k-atari-mint${UNAME_RELEASE}
- exit 0 ;;
+ echo m68k-atari-mint"$UNAME_RELEASE"
+ exit ;;
*falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
- echo m68k-atari-mint${UNAME_RELEASE}
- exit 0 ;;
+ echo m68k-atari-mint"$UNAME_RELEASE"
+ exit ;;
milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
- echo m68k-milan-mint${UNAME_RELEASE}
- exit 0 ;;
+ echo m68k-milan-mint"$UNAME_RELEASE"
+ exit ;;
hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
- echo m68k-hades-mint${UNAME_RELEASE}
- exit 0 ;;
+ echo m68k-hades-mint"$UNAME_RELEASE"
+ exit ;;
*:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
- echo m68k-unknown-mint${UNAME_RELEASE}
- exit 0 ;;
+ echo m68k-unknown-mint"$UNAME_RELEASE"
+ exit ;;
m68k:machten:*:*)
- echo m68k-apple-machten${UNAME_RELEASE}
- exit 0 ;;
+ echo m68k-apple-machten"$UNAME_RELEASE"
+ exit ;;
powerpc:machten:*:*)
- echo powerpc-apple-machten${UNAME_RELEASE}
- exit 0 ;;
+ echo powerpc-apple-machten"$UNAME_RELEASE"
+ exit ;;
RISC*:Mach:*:*)
echo mips-dec-mach_bsd4.3
- exit 0 ;;
+ exit ;;
RISC*:ULTRIX:*:*)
- echo mips-dec-ultrix${UNAME_RELEASE}
- exit 0 ;;
+ echo mips-dec-ultrix"$UNAME_RELEASE"
+ exit ;;
VAX*:ULTRIX*:*:*)
- echo vax-dec-ultrix${UNAME_RELEASE}
- exit 0 ;;
+ echo vax-dec-ultrix"$UNAME_RELEASE"
+ exit ;;
2020:CLIX:*:* | 2430:CLIX:*:*)
- echo clipper-intergraph-clix${UNAME_RELEASE}
- exit 0 ;;
+ echo clipper-intergraph-clix"$UNAME_RELEASE"
+ exit ;;
mips:*:*:UMIPS | mips:*:*:RISCos)
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
+ eval "$set_cc_for_build"
+ sed 's/^ //' << EOF > "$dummy.c"
#ifdef __cplusplus
#include <stdio.h> /* for printf() prototype */
int main (int argc, char *argv[]) {
@@ -455,94 +492,95 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
#endif
#if defined (host_mips) && defined (MIPSEB)
#if defined (SYSTYPE_SYSV)
- printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
+ printf ("mips-mips-riscos%ssysv\\n", argv[1]); exit (0);
#endif
#if defined (SYSTYPE_SVR4)
- printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
+ printf ("mips-mips-riscos%ssvr4\\n", argv[1]); exit (0);
#endif
#if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
- printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
+ printf ("mips-mips-riscos%sbsd\\n", argv[1]); exit (0);
#endif
#endif
exit (-1);
}
EOF
- $CC_FOR_BUILD -o $dummy $dummy.c \
- && $dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \
- && exit 0
- echo mips-mips-riscos${UNAME_RELEASE}
- exit 0 ;;
+ $CC_FOR_BUILD -o "$dummy" "$dummy.c" &&
+ dummyarg=`echo "$UNAME_RELEASE" | sed -n 's/\([0-9]*\).*/\1/p'` &&
+ SYSTEM_NAME=`"$dummy" "$dummyarg"` &&
+ { echo "$SYSTEM_NAME"; exit; }
+ echo mips-mips-riscos"$UNAME_RELEASE"
+ exit ;;
Motorola:PowerMAX_OS:*:*)
echo powerpc-motorola-powermax
- exit 0 ;;
+ exit ;;
Motorola:*:4.3:PL8-*)
echo powerpc-harris-powermax
- exit 0 ;;
+ exit ;;
Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
echo powerpc-harris-powermax
- exit 0 ;;
+ exit ;;
Night_Hawk:Power_UNIX:*:*)
echo powerpc-harris-powerunix
- exit 0 ;;
+ exit ;;
m88k:CX/UX:7*:*)
echo m88k-harris-cxux7
- exit 0 ;;
+ exit ;;
m88k:*:4*:R4*)
echo m88k-motorola-sysv4
- exit 0 ;;
+ exit ;;
m88k:*:3*:R3*)
echo m88k-motorola-sysv3
- exit 0 ;;
+ exit ;;
AViiON:dgux:*:*)
- # DG/UX returns AViiON for all architectures
- UNAME_PROCESSOR=`/usr/bin/uname -p`
- if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
+ # DG/UX returns AViiON for all architectures
+ UNAME_PROCESSOR=`/usr/bin/uname -p`
+ if [ "$UNAME_PROCESSOR" = mc88100 ] || [ "$UNAME_PROCESSOR" = mc88110 ]
then
- if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
- [ ${TARGET_BINARY_INTERFACE}x = x ]
+ if [ "$TARGET_BINARY_INTERFACE"x = m88kdguxelfx ] || \
+ [ "$TARGET_BINARY_INTERFACE"x = x ]
then
- echo m88k-dg-dgux${UNAME_RELEASE}
+ echo m88k-dg-dgux"$UNAME_RELEASE"
else
- echo m88k-dg-dguxbcs${UNAME_RELEASE}
+ echo m88k-dg-dguxbcs"$UNAME_RELEASE"
fi
else
- echo i586-dg-dgux${UNAME_RELEASE}
+ echo i586-dg-dgux"$UNAME_RELEASE"
fi
- exit 0 ;;
+ exit ;;
M88*:DolphinOS:*:*) # DolphinOS (SVR3)
echo m88k-dolphin-sysv3
- exit 0 ;;
+ exit ;;
M88*:*:R3*:*)
# Delta 88k system running SVR3
echo m88k-motorola-sysv3
- exit 0 ;;
+ exit ;;
XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
echo m88k-tektronix-sysv3
- exit 0 ;;
+ exit ;;
Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
echo m68k-tektronix-bsd
- exit 0 ;;
+ exit ;;
*:IRIX*:*:*)
- echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
- exit 0 ;;
+ echo mips-sgi-irix"`echo "$UNAME_RELEASE"|sed -e 's/-/_/g'`"
+ exit ;;
????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
- echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id
- exit 0 ;; # Note that: echo "'`uname -s`'" gives 'AIX '
+ echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id
+ exit ;; # Note that: echo "'`uname -s`'" gives 'AIX '
i*86:AIX:*:*)
echo i386-ibm-aix
- exit 0 ;;
+ exit ;;
ia64:AIX:*:*)
if [ -x /usr/bin/oslevel ] ; then
IBM_REV=`/usr/bin/oslevel`
else
- IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
+ IBM_REV="$UNAME_VERSION.$UNAME_RELEASE"
fi
- echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
- exit 0 ;;
+ echo "$UNAME_MACHINE"-ibm-aix"$IBM_REV"
+ exit ;;
*:AIX:2:3)
if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
+ eval "$set_cc_for_build"
+ sed 's/^ //' << EOF > "$dummy.c"
#include <sys/systemcfg.h>
main()
@@ -553,128 +591,143 @@ EOF
exit(0);
}
EOF
- $CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0
- echo rs6000-ibm-aix3.2.5
+ if $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"`
+ then
+ echo "$SYSTEM_NAME"
+ else
+ echo rs6000-ibm-aix3.2.5
+ fi
elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
echo rs6000-ibm-aix3.2.4
else
echo rs6000-ibm-aix3.2
fi
- exit 0 ;;
- *:AIX:*:[45])
+ exit ;;
+ *:AIX:*:[4567])
IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
- if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
+ if /usr/sbin/lsattr -El "$IBM_CPU_ID" | grep ' POWER' >/dev/null 2>&1; then
IBM_ARCH=rs6000
else
IBM_ARCH=powerpc
fi
- if [ -x /usr/bin/oslevel ] ; then
- IBM_REV=`/usr/bin/oslevel`
+ if [ -x /usr/bin/lslpp ] ; then
+ IBM_REV=`/usr/bin/lslpp -Lqc bos.rte.libc |
+ awk -F: '{ print $3 }' | sed s/[0-9]*$/0/`
else
- IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
+ IBM_REV="$UNAME_VERSION.$UNAME_RELEASE"
fi
- echo ${IBM_ARCH}-ibm-aix${IBM_REV}
- exit 0 ;;
+ echo "$IBM_ARCH"-ibm-aix"$IBM_REV"
+ exit ;;
*:AIX:*:*)
echo rs6000-ibm-aix
- exit 0 ;;
- ibmrt:4.4BSD:*|romp-ibm:BSD:*)
+ exit ;;
+ ibmrt:4.4BSD:*|romp-ibm:4.4BSD:*)
echo romp-ibm-bsd4.4
- exit 0 ;;
+ exit ;;
ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and
- echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to
- exit 0 ;; # report: romp-ibm BSD 4.3
+ echo romp-ibm-bsd"$UNAME_RELEASE" # 4.3 with uname added to
+ exit ;; # report: romp-ibm BSD 4.3
*:BOSX:*:*)
echo rs6000-bull-bosx
- exit 0 ;;
+ exit ;;
DPX/2?00:B.O.S.:*:*)
echo m68k-bull-sysv3
- exit 0 ;;
+ exit ;;
9000/[34]??:4.3bsd:1.*:*)
echo m68k-hp-bsd
- exit 0 ;;
+ exit ;;
hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
echo m68k-hp-bsd4.4
- exit 0 ;;
+ exit ;;
9000/[34678]??:HP-UX:*:*)
- HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
- case "${UNAME_MACHINE}" in
- 9000/31? ) HP_ARCH=m68000 ;;
- 9000/[34]?? ) HP_ARCH=m68k ;;
+ HPUX_REV=`echo "$UNAME_RELEASE"|sed -e 's/[^.]*.[0B]*//'`
+ case "$UNAME_MACHINE" in
+ 9000/31?) HP_ARCH=m68000 ;;
+ 9000/[34]??) HP_ARCH=m68k ;;
9000/[678][0-9][0-9])
if [ -x /usr/bin/getconf ]; then
sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
- sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
- case "${sc_cpu_version}" in
- 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
- 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
- 532) # CPU_PA_RISC2_0
- case "${sc_kernel_bits}" in
- 32) HP_ARCH="hppa2.0n" ;;
- 64) HP_ARCH="hppa2.0w" ;;
- '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20
- esac ;;
- esac
+ sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
+ case "$sc_cpu_version" in
+ 523) HP_ARCH=hppa1.0 ;; # CPU_PA_RISC1_0
+ 528) HP_ARCH=hppa1.1 ;; # CPU_PA_RISC1_1
+ 532) # CPU_PA_RISC2_0
+ case "$sc_kernel_bits" in
+ 32) HP_ARCH=hppa2.0n ;;
+ 64) HP_ARCH=hppa2.0w ;;
+ '') HP_ARCH=hppa2.0 ;; # HP-UX 10.20
+ esac ;;
+ esac
fi
- if [ "${HP_ARCH}" = "" ]; then
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
+ if [ "$HP_ARCH" = "" ]; then
+ eval "$set_cc_for_build"
+ sed 's/^ //' << EOF > "$dummy.c"
- #define _HPUX_SOURCE
- #include <stdlib.h>
- #include <unistd.h>
+ #define _HPUX_SOURCE
+ #include <stdlib.h>
+ #include <unistd.h>
- int main ()
- {
- #if defined(_SC_KERNEL_BITS)
- long bits = sysconf(_SC_KERNEL_BITS);
- #endif
- long cpu = sysconf (_SC_CPU_VERSION);
+ int main ()
+ {
+ #if defined(_SC_KERNEL_BITS)
+ long bits = sysconf(_SC_KERNEL_BITS);
+ #endif
+ long cpu = sysconf (_SC_CPU_VERSION);
- switch (cpu)
- {
- case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
- case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
- case CPU_PA_RISC2_0:
- #if defined(_SC_KERNEL_BITS)
- switch (bits)
- {
- case 64: puts ("hppa2.0w"); break;
- case 32: puts ("hppa2.0n"); break;
- default: puts ("hppa2.0"); break;
- } break;
- #else /* !defined(_SC_KERNEL_BITS) */
- puts ("hppa2.0"); break;
- #endif
- default: puts ("hppa1.0"); break;
- }
- exit (0);
- }
+ switch (cpu)
+ {
+ case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
+ case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
+ case CPU_PA_RISC2_0:
+ #if defined(_SC_KERNEL_BITS)
+ switch (bits)
+ {
+ case 64: puts ("hppa2.0w"); break;
+ case 32: puts ("hppa2.0n"); break;
+ default: puts ("hppa2.0"); break;
+ } break;
+ #else /* !defined(_SC_KERNEL_BITS) */
+ puts ("hppa2.0"); break;
+ #endif
+ default: puts ("hppa1.0"); break;
+ }
+ exit (0);
+ }
EOF
- (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
+ (CCOPTS="" $CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null) && HP_ARCH=`"$dummy"`
test -z "$HP_ARCH" && HP_ARCH=hppa
fi ;;
esac
- if [ ${HP_ARCH} = "hppa2.0w" ]
+ if [ "$HP_ARCH" = hppa2.0w ]
then
- # avoid double evaluation of $set_cc_for_build
- test -n "$CC_FOR_BUILD" || eval $set_cc_for_build
- if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E -) | grep __LP64__ >/dev/null
+ eval "$set_cc_for_build"
+
+ # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
+ # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler
+ # generating 64-bit code. GNU and HP use different nomenclature:
+ #
+ # $ CC_FOR_BUILD=cc ./config.guess
+ # => hppa2.0w-hp-hpux11.23
+ # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
+ # => hppa64-hp-hpux11.23
+
+ if echo __LP64__ | (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) |
+ grep -q __LP64__
then
- HP_ARCH="hppa2.0w"
+ HP_ARCH=hppa2.0w
else
- HP_ARCH="hppa64"
+ HP_ARCH=hppa64
fi
fi
- echo ${HP_ARCH}-hp-hpux${HPUX_REV}
- exit 0 ;;
+ echo "$HP_ARCH"-hp-hpux"$HPUX_REV"
+ exit ;;
ia64:HP-UX:*:*)
- HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
- echo ia64-hp-hpux${HPUX_REV}
- exit 0 ;;
+ HPUX_REV=`echo "$UNAME_RELEASE"|sed -e 's/[^.]*.[0B]*//'`
+ echo ia64-hp-hpux"$HPUX_REV"
+ exit ;;
3050*:HI-UX:*:*)
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
+ eval "$set_cc_for_build"
+ sed 's/^ //' << EOF > "$dummy.c"
#include <unistd.h>
int
main ()
@@ -699,360 +752,364 @@ EOF
exit (0);
}
EOF
- $CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0
+ $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"` &&
+ { echo "$SYSTEM_NAME"; exit; }
echo unknown-hitachi-hiuxwe2
- exit 0 ;;
- 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
+ exit ;;
+ 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:*)
echo hppa1.1-hp-bsd
- exit 0 ;;
+ exit ;;
9000/8??:4.3bsd:*:*)
echo hppa1.0-hp-bsd
- exit 0 ;;
+ exit ;;
*9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
echo hppa1.0-hp-mpeix
- exit 0 ;;
- hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
+ exit ;;
+ hp7??:OSF1:*:* | hp8?[79]:OSF1:*:*)
echo hppa1.1-hp-osf
- exit 0 ;;
+ exit ;;
hp8??:OSF1:*:*)
echo hppa1.0-hp-osf
- exit 0 ;;
+ exit ;;
i*86:OSF1:*:*)
if [ -x /usr/sbin/sysversion ] ; then
- echo ${UNAME_MACHINE}-unknown-osf1mk
+ echo "$UNAME_MACHINE"-unknown-osf1mk
else
- echo ${UNAME_MACHINE}-unknown-osf1
+ echo "$UNAME_MACHINE"-unknown-osf1
fi
- exit 0 ;;
+ exit ;;
parisc*:Lites*:*:*)
echo hppa1.1-hp-lites
- exit 0 ;;
+ exit ;;
C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
echo c1-convex-bsd
- exit 0 ;;
+ exit ;;
C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
if getsysinfo -f scalar_acc
then echo c32-convex-bsd
else echo c2-convex-bsd
fi
- exit 0 ;;
+ exit ;;
C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
echo c34-convex-bsd
- exit 0 ;;
+ exit ;;
C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
echo c38-convex-bsd
- exit 0 ;;
+ exit ;;
C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
echo c4-convex-bsd
- exit 0 ;;
+ exit ;;
CRAY*Y-MP:*:*:*)
- echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
- exit 0 ;;
+ echo ymp-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
+ exit ;;
CRAY*[A-Z]90:*:*:*)
- echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
+ echo "$UNAME_MACHINE"-cray-unicos"$UNAME_RELEASE" \
| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
-e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
-e 's/\.[^.]*$/.X/'
- exit 0 ;;
+ exit ;;
CRAY*TS:*:*:*)
- echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
- exit 0 ;;
+ echo t90-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
+ exit ;;
CRAY*T3E:*:*:*)
- echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
- exit 0 ;;
+ echo alphaev5-cray-unicosmk"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
+ exit ;;
CRAY*SV1:*:*:*)
- echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
- exit 0 ;;
+ echo sv1-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
+ exit ;;
*:UNICOS/mp:*:*)
- echo nv1-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
- exit 0 ;;
+ echo craynv-cray-unicosmp"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
+ exit ;;
F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
- FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
- FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
- FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
- echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
- exit 0 ;;
+ FUJITSU_PROC=`uname -m | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`
+ FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'`
+ FUJITSU_REL=`echo "$UNAME_RELEASE" | sed -e 's/ /_/'`
+ echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
+ exit ;;
5000:UNIX_System_V:4.*:*)
- FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
- FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
- echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
- exit 0 ;;
+ FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'`
+ FUJITSU_REL=`echo "$UNAME_RELEASE" | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/ /_/'`
+ echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
+ exit ;;
i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
- echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
- exit 0 ;;
+ echo "$UNAME_MACHINE"-pc-bsdi"$UNAME_RELEASE"
+ exit ;;
sparc*:BSD/OS:*:*)
- echo sparc-unknown-bsdi${UNAME_RELEASE}
- exit 0 ;;
+ echo sparc-unknown-bsdi"$UNAME_RELEASE"
+ exit ;;
*:BSD/OS:*:*)
- echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
- exit 0 ;;
+ echo "$UNAME_MACHINE"-unknown-bsdi"$UNAME_RELEASE"
+ exit ;;
*:FreeBSD:*:*)
- # Determine whether the default compiler uses glibc.
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
- #include <features.h>
- #if __GLIBC__ >= 2
- LIBC=gnu
- #else
- LIBC=
- #endif
-EOF
- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=`
- # GNU/KFreeBSD systems have a "k" prefix to indicate we are using
- # FreeBSD's kernel, but not the complete OS.
- case ${LIBC} in gnu) kernel_only='k' ;; esac
- echo ${UNAME_MACHINE}-unknown-${kernel_only}freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`${LIBC:+-$LIBC}
- exit 0 ;;
+ UNAME_PROCESSOR=`/usr/bin/uname -p`
+ case "$UNAME_PROCESSOR" in
+ amd64)
+ UNAME_PROCESSOR=x86_64 ;;
+ i386)
+ UNAME_PROCESSOR=i586 ;;
+ esac
+ echo "$UNAME_PROCESSOR"-unknown-freebsd"`echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`"
+ exit ;;
i*:CYGWIN*:*)
- echo ${UNAME_MACHINE}-pc-cygwin
- exit 0 ;;
- i*:MINGW*:*)
- echo ${UNAME_MACHINE}-pc-mingw32
- exit 0 ;;
+ echo "$UNAME_MACHINE"-pc-cygwin
+ exit ;;
+ *:MINGW64*:*)
+ echo "$UNAME_MACHINE"-pc-mingw64
+ exit ;;
+ *:MINGW*:*)
+ echo "$UNAME_MACHINE"-pc-mingw32
+ exit ;;
+ *:MSYS*:*)
+ echo "$UNAME_MACHINE"-pc-msys
+ exit ;;
i*:PW*:*)
- echo ${UNAME_MACHINE}-pc-pw32
- exit 0 ;;
- x86:Interix*:[34]*)
- echo i586-pc-interix${UNAME_RELEASE}|sed -e 's/\..*//'
- exit 0 ;;
- [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
- echo i${UNAME_MACHINE}-pc-mks
- exit 0 ;;
- i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
- # How do we know it's Interix rather than the generic POSIX subsystem?
- # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
- # UNAME_MACHINE based on the output of uname instead of i386?
- echo i586-pc-interix
- exit 0 ;;
+ echo "$UNAME_MACHINE"-pc-pw32
+ exit ;;
+ *:Interix*:*)
+ case "$UNAME_MACHINE" in
+ x86)
+ echo i586-pc-interix"$UNAME_RELEASE"
+ exit ;;
+ authenticamd | genuineintel | EM64T)
+ echo x86_64-unknown-interix"$UNAME_RELEASE"
+ exit ;;
+ IA64)
+ echo ia64-unknown-interix"$UNAME_RELEASE"
+ exit ;;
+ esac ;;
i*:UWIN*:*)
- echo ${UNAME_MACHINE}-pc-uwin
- exit 0 ;;
- p*:CYGWIN*:*)
- echo powerpcle-unknown-cygwin
- exit 0 ;;
+ echo "$UNAME_MACHINE"-pc-uwin
+ exit ;;
+ amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
+ echo x86_64-unknown-cygwin
+ exit ;;
prep*:SunOS:5.*:*)
- echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
- exit 0 ;;
+ echo powerpcle-unknown-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"
+ exit ;;
*:GNU:*:*)
# the GNU system
- echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
- exit 0 ;;
+ echo "`echo "$UNAME_MACHINE"|sed -e 's,[-/].*$,,'`-unknown-$LIBC`echo "$UNAME_RELEASE"|sed -e 's,/.*$,,'`"
+ exit ;;
*:GNU/*:*:*)
# other systems with GNU libc and userland
- echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
- exit 0 ;;
+ echo "$UNAME_MACHINE-unknown-`echo "$UNAME_SYSTEM" | sed 's,^[^/]*/,,' | tr "[:upper:]" "[:lower:]"``echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`-$LIBC"
+ exit ;;
i*86:Minix:*:*)
- echo ${UNAME_MACHINE}-pc-minix
- exit 0 ;;
+ echo "$UNAME_MACHINE"-pc-minix
+ exit ;;
+ aarch64:Linux:*:*)
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+ exit ;;
+ aarch64_be:Linux:*:*)
+ UNAME_MACHINE=aarch64_be
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+ exit ;;
+ alpha:Linux:*:*)
+ case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
+ EV5) UNAME_MACHINE=alphaev5 ;;
+ EV56) UNAME_MACHINE=alphaev56 ;;
+ PCA56) UNAME_MACHINE=alphapca56 ;;
+ PCA57) UNAME_MACHINE=alphapca56 ;;
+ EV6) UNAME_MACHINE=alphaev6 ;;
+ EV67) UNAME_MACHINE=alphaev67 ;;
+ EV68*) UNAME_MACHINE=alphaev68 ;;
+ esac
+ objdump --private-headers /bin/sh | grep -q ld.so.1
+ if test "$?" = 0 ; then LIBC=gnulibc1 ; fi
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+ exit ;;
+ arc:Linux:*:* | arceb:Linux:*:*)
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+ exit ;;
arm*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit 0 ;;
+ eval "$set_cc_for_build"
+ if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
+ | grep -q __ARM_EABI__
+ then
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+ else
+ if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
+ | grep -q __ARM_PCS_VFP
+ then
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"eabi
+ else
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"eabihf
+ fi
+ fi
+ exit ;;
+ avr32*:Linux:*:*)
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+ exit ;;
cris:Linux:*:*)
- echo cris-axis-linux-gnu
- exit 0 ;;
+ echo "$UNAME_MACHINE"-axis-linux-"$LIBC"
+ exit ;;
+ crisv32:Linux:*:*)
+ echo "$UNAME_MACHINE"-axis-linux-"$LIBC"
+ exit ;;
+ e2k:Linux:*:*)
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+ exit ;;
+ frv:Linux:*:*)
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+ exit ;;
+ hexagon:Linux:*:*)
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+ exit ;;
+ i*86:Linux:*:*)
+ echo "$UNAME_MACHINE"-pc-linux-"$LIBC"
+ exit ;;
ia64:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit 0 ;;
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+ exit ;;
+ k1om:Linux:*:*)
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+ exit ;;
m32r*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit 0 ;;
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+ exit ;;
m68*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit 0 ;;
- mips:Linux:*:*)
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+ exit ;;
+ mips:Linux:*:* | mips64:Linux:*:*)
+ eval "$set_cc_for_build"
+ sed 's/^ //' << EOF > "$dummy.c"
#undef CPU
- #undef mips
- #undef mipsel
+ #undef ${UNAME_MACHINE}
+ #undef ${UNAME_MACHINE}el
#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
- CPU=mipsel
+ CPU=${UNAME_MACHINE}el
#else
#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
- CPU=mips
+ CPU=${UNAME_MACHINE}
#else
CPU=
#endif
#endif
EOF
- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
- test x"${CPU}" != x && echo "${CPU}-unknown-linux-gnu" && exit 0
+ eval "`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^CPU'`"
+ test "x$CPU" != x && { echo "$CPU-unknown-linux-$LIBC"; exit; }
;;
- mips64:Linux:*:*)
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
- #undef CPU
- #undef mips64
- #undef mips64el
- #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
- CPU=mips64el
- #else
- #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
- CPU=mips64
- #else
- CPU=
- #endif
- #endif
-EOF
- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
- test x"${CPU}" != x && echo "${CPU}-unknown-linux-gnu" && exit 0
- ;;
- ppc:Linux:*:*)
- echo powerpc-unknown-linux-gnu
- exit 0 ;;
- ppc64:Linux:*:*)
- echo powerpc64-unknown-linux-gnu
- exit 0 ;;
- alpha:Linux:*:*)
- case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
- EV5) UNAME_MACHINE=alphaev5 ;;
- EV56) UNAME_MACHINE=alphaev56 ;;
- PCA56) UNAME_MACHINE=alphapca56 ;;
- PCA57) UNAME_MACHINE=alphapca56 ;;
- EV6) UNAME_MACHINE=alphaev6 ;;
- EV67) UNAME_MACHINE=alphaev67 ;;
- EV68*) UNAME_MACHINE=alphaev68 ;;
- esac
- objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null
- if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
- echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
- exit 0 ;;
+ mips64el:Linux:*:*)
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+ exit ;;
+ openrisc*:Linux:*:*)
+ echo or1k-unknown-linux-"$LIBC"
+ exit ;;
+ or32:Linux:*:* | or1k*:Linux:*:*)
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+ exit ;;
+ padre:Linux:*:*)
+ echo sparc-unknown-linux-"$LIBC"
+ exit ;;
+ parisc64:Linux:*:* | hppa64:Linux:*:*)
+ echo hppa64-unknown-linux-"$LIBC"
+ exit ;;
parisc:Linux:*:* | hppa:Linux:*:*)
# Look for CPU level
case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
- PA7*) echo hppa1.1-unknown-linux-gnu ;;
- PA8*) echo hppa2.0-unknown-linux-gnu ;;
- *) echo hppa-unknown-linux-gnu ;;
+ PA7*) echo hppa1.1-unknown-linux-"$LIBC" ;;
+ PA8*) echo hppa2.0-unknown-linux-"$LIBC" ;;
+ *) echo hppa-unknown-linux-"$LIBC" ;;
esac
- exit 0 ;;
- parisc64:Linux:*:* | hppa64:Linux:*:*)
- echo hppa64-unknown-linux-gnu
- exit 0 ;;
+ exit ;;
+ ppc64:Linux:*:*)
+ echo powerpc64-unknown-linux-"$LIBC"
+ exit ;;
+ ppc:Linux:*:*)
+ echo powerpc-unknown-linux-"$LIBC"
+ exit ;;
+ ppc64le:Linux:*:*)
+ echo powerpc64le-unknown-linux-"$LIBC"
+ exit ;;
+ ppcle:Linux:*:*)
+ echo powerpcle-unknown-linux-"$LIBC"
+ exit ;;
+ riscv32:Linux:*:* | riscv64:Linux:*:*)
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+ exit ;;
s390:Linux:*:* | s390x:Linux:*:*)
- echo ${UNAME_MACHINE}-ibm-linux
- exit 0 ;;
+ echo "$UNAME_MACHINE"-ibm-linux-"$LIBC"
+ exit ;;
sh64*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit 0 ;;
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+ exit ;;
sh*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit 0 ;;
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+ exit ;;
sparc:Linux:*:* | sparc64:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit 0 ;;
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+ exit ;;
+ tile*:Linux:*:*)
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+ exit ;;
+ vax:Linux:*:*)
+ echo "$UNAME_MACHINE"-dec-linux-"$LIBC"
+ exit ;;
x86_64:Linux:*:*)
- echo x86_64-unknown-linux-gnu
- exit 0 ;;
- i*86:Linux:*:*)
- # The BFD linker knows what the default object file format is, so
- # first see if it will tell us. cd to the root directory to prevent
- # problems with other programs or directories called `ld' in the path.
- # Set LC_ALL=C to ensure ld outputs messages in English.
- ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \
- | sed -ne '/supported targets:/!d
- s/[ ][ ]*/ /g
- s/.*supported targets: *//
- s/ .*//
- p'`
- case "$ld_supported_targets" in
- elf32-i386)
- TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu"
- ;;
- a.out-i386-linux)
- echo "${UNAME_MACHINE}-pc-linux-gnuaout"
- exit 0 ;;
- coff-i386)
- echo "${UNAME_MACHINE}-pc-linux-gnucoff"
- exit 0 ;;
- "")
- # Either a pre-BFD a.out linker (linux-gnuoldld) or
- # one that does not give us useful --help.
- echo "${UNAME_MACHINE}-pc-linux-gnuoldld"
- exit 0 ;;
- esac
- # Determine whether the default compiler is a.out or elf
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
- #include <features.h>
- #ifdef __ELF__
- # ifdef __GLIBC__
- # if __GLIBC__ >= 2
- LIBC=gnu
- # else
- LIBC=gnulibc1
- # endif
- # else
- LIBC=gnulibc1
- # endif
- #else
- #ifdef __INTEL_COMPILER
- LIBC=gnu
- #else
- LIBC=gnuaout
- #endif
- #endif
- #ifdef __dietlibc__
- LIBC=dietlibc
- #endif
-EOF
- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=`
- test x"${LIBC}" != x && echo "${UNAME_MACHINE}-pc-linux-${LIBC}" && exit 0
- test x"${TENTATIVE}" != x && echo "${TENTATIVE}" && exit 0
- ;;
+ if objdump -f /bin/sh | grep -q elf32-x86-64; then
+ echo "$UNAME_MACHINE"-pc-linux-"$LIBC"x32
+ else
+ echo "$UNAME_MACHINE"-pc-linux-"$LIBC"
+ fi
+ exit ;;
+ xtensa*:Linux:*:*)
+ echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
+ exit ;;
i*86:DYNIX/ptx:4*:*)
# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
# earlier versions are messed up and put the nodename in both
# sysname and nodename.
echo i386-sequent-sysv4
- exit 0 ;;
+ exit ;;
i*86:UNIX_SV:4.2MP:2.*)
- # Unixware is an offshoot of SVR4, but it has its own version
- # number series starting with 2...
- # I am not positive that other SVR4 systems won't match this,
+ # Unixware is an offshoot of SVR4, but it has its own version
+ # number series starting with 2...
+ # I am not positive that other SVR4 systems won't match this,
# I just have to hope. -- rms.
- # Use sysv4.2uw... so that sysv4* matches it.
- echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
- exit 0 ;;
+ # Use sysv4.2uw... so that sysv4* matches it.
+ echo "$UNAME_MACHINE"-pc-sysv4.2uw"$UNAME_VERSION"
+ exit ;;
i*86:OS/2:*:*)
# If we were able to find `uname', then EMX Unix compatibility
# is probably installed.
- echo ${UNAME_MACHINE}-pc-os2-emx
- exit 0 ;;
+ echo "$UNAME_MACHINE"-pc-os2-emx
+ exit ;;
i*86:XTS-300:*:STOP)
- echo ${UNAME_MACHINE}-unknown-stop
- exit 0 ;;
+ echo "$UNAME_MACHINE"-unknown-stop
+ exit ;;
i*86:atheos:*:*)
- echo ${UNAME_MACHINE}-unknown-atheos
- exit 0 ;;
- i*86:syllable:*:*)
- echo ${UNAME_MACHINE}-pc-syllable
- exit 0 ;;
- i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
- echo i386-unknown-lynxos${UNAME_RELEASE}
- exit 0 ;;
+ echo "$UNAME_MACHINE"-unknown-atheos
+ exit ;;
+ i*86:syllable:*:*)
+ echo "$UNAME_MACHINE"-pc-syllable
+ exit ;;
+ i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
+ echo i386-unknown-lynxos"$UNAME_RELEASE"
+ exit ;;
i*86:*DOS:*:*)
- echo ${UNAME_MACHINE}-pc-msdosdjgpp
- exit 0 ;;
- i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
- UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
+ echo "$UNAME_MACHINE"-pc-msdosdjgpp
+ exit ;;
+ i*86:*:4.*:*)
+ UNAME_REL=`echo "$UNAME_RELEASE" | sed 's/\/MP$//'`
if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
- echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
+ echo "$UNAME_MACHINE"-univel-sysv"$UNAME_REL"
else
- echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
+ echo "$UNAME_MACHINE"-pc-sysv"$UNAME_REL"
fi
- exit 0 ;;
- i*86:*:5:[78]*)
+ exit ;;
+ i*86:*:5:[678]*)
+ # UnixWare 7.x, OpenUNIX and OpenServer 6.
case `/bin/uname -X | grep "^Machine"` in
*486*) UNAME_MACHINE=i486 ;;
*Pentium) UNAME_MACHINE=i586 ;;
*Pent*|*Celeron) UNAME_MACHINE=i686 ;;
esac
- echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
- exit 0 ;;
+ echo "$UNAME_MACHINE-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}{$UNAME_VERSION}"
+ exit ;;
i*86:*:3.2:*)
if test -f /usr/options/cb.name; then
UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
- echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
+ echo "$UNAME_MACHINE"-pc-isc"$UNAME_REL"
elif /bin/uname -X 2>/dev/null >/dev/null ; then
UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
(/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
@@ -1062,369 +1119,333 @@ EOF
&& UNAME_MACHINE=i686
(/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
&& UNAME_MACHINE=i686
- echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
+ echo "$UNAME_MACHINE"-pc-sco"$UNAME_REL"
else
- echo ${UNAME_MACHINE}-pc-sysv32
+ echo "$UNAME_MACHINE"-pc-sysv32
fi
- exit 0 ;;
+ exit ;;
pc:*:*:*)
# Left here for compatibility:
- # uname -m prints for DJGPP always 'pc', but it prints nothing about
- # the processor, so we play safe by assuming i386.
- echo i386-pc-msdosdjgpp
- exit 0 ;;
+ # uname -m prints for DJGPP always 'pc', but it prints nothing about
+ # the processor, so we play safe by assuming i586.
+ # Note: whatever this is, it MUST be the same as what config.sub
+ # prints for the "djgpp" host, or else GDB configure will decide that
+ # this is a cross-build.
+ echo i586-pc-msdosdjgpp
+ exit ;;
Intel:Mach:3*:*)
echo i386-pc-mach3
- exit 0 ;;
+ exit ;;
paragon:*:*:*)
echo i860-intel-osf1
- exit 0 ;;
+ exit ;;
i860:*:4.*:*) # i860-SVR4
if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
- echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
+ echo i860-stardent-sysv"$UNAME_RELEASE" # Stardent Vistra i860-SVR4
else # Add other i860-SVR4 vendors below as they are discovered.
- echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4
+ echo i860-unknown-sysv"$UNAME_RELEASE" # Unknown i860-SVR4
fi
- exit 0 ;;
+ exit ;;
mini*:CTIX:SYS*5:*)
# "miniframe"
echo m68010-convergent-sysv
- exit 0 ;;
+ exit ;;
mc68k:UNIX:SYSTEM5:3.51m)
echo m68k-convergent-sysv
- exit 0 ;;
+ exit ;;
M680?0:D-NIX:5.3:*)
echo m68k-diab-dnix
- exit 0 ;;
- M68*:*:R3V[567]*:*)
- test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;;
- 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0)
+ exit ;;
+ M68*:*:R3V[5678]*:*)
+ test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
+ 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0)
OS_REL=''
test -r /etc/.relid \
&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
- && echo i486-ncr-sysv4.3${OS_REL} && exit 0
+ && { echo i486-ncr-sysv4.3"$OS_REL"; exit; }
/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
- && echo i586-ncr-sysv4.3${OS_REL} && exit 0 ;;
+ && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;;
3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
- /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
- && echo i486-ncr-sysv4 && exit 0 ;;
+ /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
+ && { echo i486-ncr-sysv4; exit; } ;;
+ NCR*:*:4.2:* | MPRAS*:*:4.2:*)
+ OS_REL='.3'
+ test -r /etc/.relid \
+ && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
+ /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
+ && { echo i486-ncr-sysv4.3"$OS_REL"; exit; }
+ /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
+ && { echo i586-ncr-sysv4.3"$OS_REL"; exit; }
+ /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
+ && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;;
m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
- echo m68k-unknown-lynxos${UNAME_RELEASE}
- exit 0 ;;
+ echo m68k-unknown-lynxos"$UNAME_RELEASE"
+ exit ;;
mc68030:UNIX_System_V:4.*:*)
echo m68k-atari-sysv4
- exit 0 ;;
+ exit ;;
TSUNAMI:LynxOS:2.*:*)
- echo sparc-unknown-lynxos${UNAME_RELEASE}
- exit 0 ;;
+ echo sparc-unknown-lynxos"$UNAME_RELEASE"
+ exit ;;
rs6000:LynxOS:2.*:*)
- echo rs6000-unknown-lynxos${UNAME_RELEASE}
- exit 0 ;;
- PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*)
- echo powerpc-unknown-lynxos${UNAME_RELEASE}
- exit 0 ;;
+ echo rs6000-unknown-lynxos"$UNAME_RELEASE"
+ exit ;;
+ PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
+ echo powerpc-unknown-lynxos"$UNAME_RELEASE"
+ exit ;;
SM[BE]S:UNIX_SV:*:*)
- echo mips-dde-sysv${UNAME_RELEASE}
- exit 0 ;;
+ echo mips-dde-sysv"$UNAME_RELEASE"
+ exit ;;
RM*:ReliantUNIX-*:*:*)
echo mips-sni-sysv4
- exit 0 ;;
+ exit ;;
RM*:SINIX-*:*:*)
echo mips-sni-sysv4
- exit 0 ;;
+ exit ;;
*:SINIX-*:*:*)
if uname -p 2>/dev/null >/dev/null ; then
UNAME_MACHINE=`(uname -p) 2>/dev/null`
- echo ${UNAME_MACHINE}-sni-sysv4
+ echo "$UNAME_MACHINE"-sni-sysv4
else
echo ns32k-sni-sysv
fi
- exit 0 ;;
- PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
- # says <Richard.M.Bartel@ccMail.Census.GOV>
- echo i586-unisys-sysv4
- exit 0 ;;
+ exit ;;
+ PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
+ # says <Richard.M.Bartel@ccMail.Census.GOV>
+ echo i586-unisys-sysv4
+ exit ;;
*:UNIX_System_V:4*:FTX*)
# From Gerald Hewes <hewes@openmarket.com>.
# How about differentiating between stratus architectures? -djm
echo hppa1.1-stratus-sysv4
- exit 0 ;;
+ exit ;;
*:*:*:FTX*)
# From seanf@swdc.stratus.com.
echo i860-stratus-sysv4
- exit 0 ;;
+ exit ;;
+ i*86:VOS:*:*)
+ # From Paul.Green@stratus.com.
+ echo "$UNAME_MACHINE"-stratus-vos
+ exit ;;
*:VOS:*:*)
# From Paul.Green@stratus.com.
echo hppa1.1-stratus-vos
- exit 0 ;;
+ exit ;;
mc68*:A/UX:*:*)
- echo m68k-apple-aux${UNAME_RELEASE}
- exit 0 ;;
+ echo m68k-apple-aux"$UNAME_RELEASE"
+ exit ;;
news*:NEWS-OS:6*:*)
echo mips-sony-newsos6
- exit 0 ;;
+ exit ;;
R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
if [ -d /usr/nec ]; then
- echo mips-nec-sysv${UNAME_RELEASE}
+ echo mips-nec-sysv"$UNAME_RELEASE"
else
- echo mips-unknown-sysv${UNAME_RELEASE}
+ echo mips-unknown-sysv"$UNAME_RELEASE"
fi
- exit 0 ;;
+ exit ;;
BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only.
echo powerpc-be-beos
- exit 0 ;;
+ exit ;;
BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only.
echo powerpc-apple-beos
- exit 0 ;;
+ exit ;;
BePC:BeOS:*:*) # BeOS running on Intel PC compatible.
echo i586-pc-beos
- exit 0 ;;
+ exit ;;
+ BePC:Haiku:*:*) # Haiku running on Intel PC compatible.
+ echo i586-pc-haiku
+ exit ;;
+ x86_64:Haiku:*:*)
+ echo x86_64-unknown-haiku
+ exit ;;
SX-4:SUPER-UX:*:*)
- echo sx4-nec-superux${UNAME_RELEASE}
- exit 0 ;;
+ echo sx4-nec-superux"$UNAME_RELEASE"
+ exit ;;
SX-5:SUPER-UX:*:*)
- echo sx5-nec-superux${UNAME_RELEASE}
- exit 0 ;;
+ echo sx5-nec-superux"$UNAME_RELEASE"
+ exit ;;
SX-6:SUPER-UX:*:*)
- echo sx6-nec-superux${UNAME_RELEASE}
- exit 0 ;;
+ echo sx6-nec-superux"$UNAME_RELEASE"
+ exit ;;
+ SX-7:SUPER-UX:*:*)
+ echo sx7-nec-superux"$UNAME_RELEASE"
+ exit ;;
+ SX-8:SUPER-UX:*:*)
+ echo sx8-nec-superux"$UNAME_RELEASE"
+ exit ;;
+ SX-8R:SUPER-UX:*:*)
+ echo sx8r-nec-superux"$UNAME_RELEASE"
+ exit ;;
+ SX-ACE:SUPER-UX:*:*)
+ echo sxace-nec-superux"$UNAME_RELEASE"
+ exit ;;
Power*:Rhapsody:*:*)
- echo powerpc-apple-rhapsody${UNAME_RELEASE}
- exit 0 ;;
+ echo powerpc-apple-rhapsody"$UNAME_RELEASE"
+ exit ;;
*:Rhapsody:*:*)
- echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
- exit 0 ;;
+ echo "$UNAME_MACHINE"-apple-rhapsody"$UNAME_RELEASE"
+ exit ;;
*:Darwin:*:*)
- case `uname -p` in
- *86) UNAME_PROCESSOR=i686 ;;
- powerpc) UNAME_PROCESSOR=powerpc ;;
- esac
- echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
- exit 0 ;;
+ UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
+ eval "$set_cc_for_build"
+ if test "$UNAME_PROCESSOR" = unknown ; then
+ UNAME_PROCESSOR=powerpc
+ fi
+ if test "`echo "$UNAME_RELEASE" | sed -e 's/\..*//'`" -le 10 ; then
+ if [ "$CC_FOR_BUILD" != no_compiler_found ]; then
+ if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
+ (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
+ grep IS_64BIT_ARCH >/dev/null
+ then
+ case $UNAME_PROCESSOR in
+ i386) UNAME_PROCESSOR=x86_64 ;;
+ powerpc) UNAME_PROCESSOR=powerpc64 ;;
+ esac
+ fi
+ # On 10.4-10.6 one might compile for PowerPC via gcc -arch ppc
+ if (echo '#ifdef __POWERPC__'; echo IS_PPC; echo '#endif') | \
+ (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
+ grep IS_PPC >/dev/null
+ then
+ UNAME_PROCESSOR=powerpc
+ fi
+ fi
+ elif test "$UNAME_PROCESSOR" = i386 ; then
+ # Avoid executing cc on OS X 10.9, as it ships with a stub
+ # that puts up a graphical alert prompting to install
+ # developer tools. Any system running Mac OS X 10.7 or
+ # later (Darwin 11 and later) is required to have a 64-bit
+ # processor. This is not true of the ARM version of Darwin
+ # that Apple uses in portable devices.
+ UNAME_PROCESSOR=x86_64
+ fi
+ echo "$UNAME_PROCESSOR"-apple-darwin"$UNAME_RELEASE"
+ exit ;;
*:procnto*:*:* | *:QNX:[0123456789]*:*)
UNAME_PROCESSOR=`uname -p`
- if test "$UNAME_PROCESSOR" = "x86"; then
+ if test "$UNAME_PROCESSOR" = x86; then
UNAME_PROCESSOR=i386
UNAME_MACHINE=pc
fi
- echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
- exit 0 ;;
+ echo "$UNAME_PROCESSOR"-"$UNAME_MACHINE"-nto-qnx"$UNAME_RELEASE"
+ exit ;;
*:QNX:*:4*)
echo i386-pc-qnx
- exit 0 ;;
- NSR-?:NONSTOP_KERNEL:*:*)
- echo nsr-tandem-nsk${UNAME_RELEASE}
- exit 0 ;;
+ exit ;;
+ NEO-*:NONSTOP_KERNEL:*:*)
+ echo neo-tandem-nsk"$UNAME_RELEASE"
+ exit ;;
+ NSE-*:NONSTOP_KERNEL:*:*)
+ echo nse-tandem-nsk"$UNAME_RELEASE"
+ exit ;;
+ NSR-*:NONSTOP_KERNEL:*:*)
+ echo nsr-tandem-nsk"$UNAME_RELEASE"
+ exit ;;
+ NSV-*:NONSTOP_KERNEL:*:*)
+ echo nsv-tandem-nsk"$UNAME_RELEASE"
+ exit ;;
+ NSX-*:NONSTOP_KERNEL:*:*)
+ echo nsx-tandem-nsk"$UNAME_RELEASE"
+ exit ;;
*:NonStop-UX:*:*)
echo mips-compaq-nonstopux
- exit 0 ;;
+ exit ;;
BS2000:POSIX*:*:*)
echo bs2000-siemens-sysv
- exit 0 ;;
+ exit ;;
DS/*:UNIX_System_V:*:*)
- echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
- exit 0 ;;
+ echo "$UNAME_MACHINE"-"$UNAME_SYSTEM"-"$UNAME_RELEASE"
+ exit ;;
*:Plan9:*:*)
# "uname -m" is not consistent, so use $cputype instead. 386
# is converted to i386 for consistency with other x86
# operating systems.
- if test "$cputype" = "386"; then
+ if test "$cputype" = 386; then
UNAME_MACHINE=i386
else
UNAME_MACHINE="$cputype"
fi
- echo ${UNAME_MACHINE}-unknown-plan9
- exit 0 ;;
+ echo "$UNAME_MACHINE"-unknown-plan9
+ exit ;;
*:TOPS-10:*:*)
echo pdp10-unknown-tops10
- exit 0 ;;
+ exit ;;
*:TENEX:*:*)
echo pdp10-unknown-tenex
- exit 0 ;;
+ exit ;;
KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
echo pdp10-dec-tops20
- exit 0 ;;
+ exit ;;
XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
echo pdp10-xkl-tops20
- exit 0 ;;
+ exit ;;
*:TOPS-20:*:*)
echo pdp10-unknown-tops20
- exit 0 ;;
+ exit ;;
*:ITS:*:*)
echo pdp10-unknown-its
- exit 0 ;;
+ exit ;;
SEI:*:*:SEIUX)
- echo mips-sei-seiux${UNAME_RELEASE}
- exit 0 ;;
+ echo mips-sei-seiux"$UNAME_RELEASE"
+ exit ;;
*:DragonFly:*:*)
- echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
- exit 0 ;;
+ echo "$UNAME_MACHINE"-unknown-dragonfly"`echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`"
+ exit ;;
+ *:*VMS:*:*)
+ UNAME_MACHINE=`(uname -p) 2>/dev/null`
+ case "$UNAME_MACHINE" in
+ A*) echo alpha-dec-vms ; exit ;;
+ I*) echo ia64-dec-vms ; exit ;;
+ V*) echo vax-dec-vms ; exit ;;
+ esac ;;
+ *:XENIX:*:SysV)
+ echo i386-pc-xenix
+ exit ;;
+ i*86:skyos:*:*)
+ echo "$UNAME_MACHINE"-pc-skyos"`echo "$UNAME_RELEASE" | sed -e 's/ .*$//'`"
+ exit ;;
+ i*86:rdos:*:*)
+ echo "$UNAME_MACHINE"-pc-rdos
+ exit ;;
+ i*86:AROS:*:*)
+ echo "$UNAME_MACHINE"-pc-aros
+ exit ;;
+ x86_64:VMkernel:*:*)
+ echo "$UNAME_MACHINE"-unknown-esx
+ exit ;;
+ amd64:Isilon\ OneFS:*:*)
+ echo x86_64-unknown-onefs
+ exit ;;
esac
-#echo '(No uname command or uname output not recognized.)' 1>&2
-#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
+echo "$0: unable to guess system type" >&2
-eval $set_cc_for_build
-cat >$dummy.c <<EOF
-#ifdef _SEQUENT_
-# include <sys/types.h>
-# include <sys/utsname.h>
-#endif
-main ()
-{
-#if defined (sony)
-#if defined (MIPSEB)
- /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed,
- I don't know.... */
- printf ("mips-sony-bsd\n"); exit (0);
-#else
-#include <sys/param.h>
- printf ("m68k-sony-newsos%s\n",
-#ifdef NEWSOS4
- "4"
-#else
- ""
-#endif
- ); exit (0);
-#endif
-#endif
-
-#if defined (__arm) && defined (__acorn) && defined (__unix)
- printf ("arm-acorn-riscix"); exit (0);
-#endif
-
-#if defined (hp300) && !defined (hpux)
- printf ("m68k-hp-bsd\n"); exit (0);
-#endif
+case "$UNAME_MACHINE:$UNAME_SYSTEM" in
+ mips:Linux | mips64:Linux)
+ # If we got here on MIPS GNU/Linux, output extra information.
+ cat >&2 <<EOF
-#if defined (NeXT)
-#if !defined (__ARCHITECTURE__)
-#define __ARCHITECTURE__ "m68k"
-#endif
- int version;
- version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
- if (version < 4)
- printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
- else
- printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
- exit (0);
-#endif
-
-#if defined (MULTIMAX) || defined (n16)
-#if defined (UMAXV)
- printf ("ns32k-encore-sysv\n"); exit (0);
-#else
-#if defined (CMU)
- printf ("ns32k-encore-mach\n"); exit (0);
-#else
- printf ("ns32k-encore-bsd\n"); exit (0);
-#endif
-#endif
-#endif
-
-#if defined (__386BSD__)
- printf ("i386-pc-bsd\n"); exit (0);
-#endif
-
-#if defined (sequent)
-#if defined (i386)
- printf ("i386-sequent-dynix\n"); exit (0);
-#endif
-#if defined (ns32000)
- printf ("ns32k-sequent-dynix\n"); exit (0);
-#endif
-#endif
-
-#if defined (_SEQUENT_)
- struct utsname un;
-
- uname(&un);
-
- if (strncmp(un.version, "V2", 2) == 0) {
- printf ("i386-sequent-ptx2\n"); exit (0);
- }
- if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
- printf ("i386-sequent-ptx1\n"); exit (0);
- }
- printf ("i386-sequent-ptx\n"); exit (0);
-
-#endif
-
-#if defined (vax)
-# if !defined (ultrix)
-# include <sys/param.h>
-# if defined (BSD)
-# if BSD == 43
- printf ("vax-dec-bsd4.3\n"); exit (0);
-# else
-# if BSD == 199006
- printf ("vax-dec-bsd4.3reno\n"); exit (0);
-# else
- printf ("vax-dec-bsd\n"); exit (0);
-# endif
-# endif
-# else
- printf ("vax-dec-bsd\n"); exit (0);
-# endif
-# else
- printf ("vax-dec-ultrix\n"); exit (0);
-# endif
-#endif
-
-#if defined (alliant) && defined (i860)
- printf ("i860-alliant-bsd\n"); exit (0);
-#endif
-
- exit (1);
-}
+NOTE: MIPS GNU/Linux systems require a C compiler to fully recognize
+the system type. Please install a C compiler and try again.
EOF
-
-$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && $dummy && exit 0
-
-# Apollos put the system type in the environment.
-
-test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit 0; }
-
-# Convex versions that predate uname can use getsysinfo(1)
-
-if [ -x /usr/convex/getsysinfo ]
-then
- case `getsysinfo -f cpu_type` in
- c1*)
- echo c1-convex-bsd
- exit 0 ;;
- c2*)
- if getsysinfo -f scalar_acc
- then echo c32-convex-bsd
- else echo c2-convex-bsd
- fi
- exit 0 ;;
- c34*)
- echo c34-convex-bsd
- exit 0 ;;
- c38*)
- echo c38-convex-bsd
- exit 0 ;;
- c4*)
- echo c4-convex-bsd
- exit 0 ;;
- esac
-fi
+ ;;
+esac
cat >&2 <<EOF
-$0: unable to guess system type
-This script, last modified $timestamp, has failed to recognize
-the operating system you are using. It is advised that you
-download the most up to date version of the config scripts from
+This script (version $timestamp), has failed to recognize the
+operating system you are using. If your script is old, overwrite *all*
+copies of config.guess and config.sub with the latest versions from:
- ftp://ftp.gnu.org/pub/gnu/config/
+ https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess
+and
+ https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub
-If the version you run ($0) is already up to date, please
-send the following data and any information you think might be
-pertinent to <config-patches@gnu.org> in order to provide the needed
-information to handle your system.
+If $0 has already been updated, send the following data and any
+information you think might be pertinent to config-patches@gnu.org to
+provide the necessary information to handle your system.
config.guess timestamp = $timestamp
@@ -1443,16 +1464,16 @@ hostinfo = `(hostinfo) 2>/dev/null`
/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null`
/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
-UNAME_MACHINE = ${UNAME_MACHINE}
-UNAME_RELEASE = ${UNAME_RELEASE}
-UNAME_SYSTEM = ${UNAME_SYSTEM}
-UNAME_VERSION = ${UNAME_VERSION}
+UNAME_MACHINE = "$UNAME_MACHINE"
+UNAME_RELEASE = "$UNAME_RELEASE"
+UNAME_SYSTEM = "$UNAME_SYSTEM"
+UNAME_VERSION = "$UNAME_VERSION"
EOF
exit 1
# Local variables:
-# eval: (add-hook 'write-file-hooks 'time-stamp)
+# eval: (add-hook 'write-file-functions 'time-stamp)
# time-stamp-start: "timestamp='"
# time-stamp-format: "%:y-%02m-%02d"
# time-stamp-end: "'"
diff --git a/config.h.dist b/config.h.dist
index 844a555..4f31fea 100644
--- a/config.h.dist
+++ b/config.h.dist
@@ -9,10 +9,10 @@
/* User Configuration */
/*
- If you define DICT, you can use dictionary look-up function
+ If you define USE_DICT, you can use dictionary look-up function
in w3m. See README.dict for detail.
*/
-#define DICT
+#define USE_DICT
/*
If you want to load and save URL history.
@@ -138,6 +138,7 @@ INSTALL_W3MIMGDISPLAY=$(INSTALL_PROGRAM)
#undef USE_W3MIMG_FB
#undef USE_IMLIB
#undef USE_GDKPIXBUF
+#undef X_DISPLAY_MISSING
#undef USE_IMLIB2
#define USE_HELP_CGI
#undef USE_XFACE
@@ -194,7 +195,6 @@ typedef long clen_t;
#define HAVE_STRCASESTR
#define HAVE_STRCHR
#define HAVE_STRERROR
-#define HAVE_SYS_ERRLIST
#define HAVE_BCOPY
#define HAVE_WAITPID
#define HAVE_WAIT3
@@ -210,6 +210,7 @@ typedef long clen_t;
#define HAVE_SRANDOM
#undef HAVE_GETPASSPHRASE
#define HAVE_CHDIR
+#define HAVE_MKDTEMP
#define SETJMP(env) sigsetjmp(env,1)
diff --git a/config.h.in b/config.h.in
index 2f41eed..6bb0ee0 100644
--- a/config.h.in
+++ b/config.h.in
@@ -25,6 +25,7 @@
#define PASSWD_FILE RC_DIR "/passwd"
#define PRE_FORM_FILE RC_DIR "/pre_form"
+#define SITECONF_FILE RC_DIR "/siteconf"
#define USER_MAILCAP RC_DIR "/mailcap"
#define SYS_MAILCAP CONF_DIR "/mailcap"
#define USER_MIMETYPES "~/.mime.types"
@@ -74,6 +75,7 @@
#undef USE_IMLIB
#undef USE_GDKPIXBUF
#undef USE_GTK2
+#undef X_DISPLAY_MISSING
#undef USE_IMLIB2
#undef USE_XFACE
#undef USE_DICT
@@ -84,7 +86,7 @@
#undef INET6
#undef HAVE_SOCKLEN_T
#undef HAVE_OLD_SS_FAMILY
-#define USE_EGD
+#undef USE_EGD
#define ENABLE_REMOVE_TRAILINGSPACES
#undef MENU_THIN_FRAME
#undef USE_RAW_SCROLL
@@ -126,7 +128,6 @@ typedef long clen_t;
#undef HAVE_STRCASESTR
#undef HAVE_STRCHR
#undef HAVE_STRERROR
-#undef HAVE_SYS_ERRLIST
#undef HAVE_BCOPY
#undef HAVE_WAITPID
#undef HAVE_WAIT3
@@ -142,6 +143,7 @@ typedef long clen_t;
#undef HAVE_SRANDOM
#undef HAVE_GETPASSPHRASE
#undef HAVE_CHDIR
+#undef HAVE_MKDTEMP
#undef HAVE_SETPGRP
#undef HAVE_SETLOCALE
#undef HAVE_LANGINFO_CODESET
@@ -179,7 +181,7 @@ typedef RETSIGTYPE MySignalHandler;
#endif /* __MINGW32_VERSION */
#else
# define SETJMP(env) setjmp(env)
-# define LONGJMP(env,val) longjmp(env)
+# define LONGJMP(env,val) longjmp(env, val)
# define JMP_BUF jmp_buf
#endif
@@ -209,6 +211,10 @@ typedef RETSIGTYPE MySignalHandler;
#define SUPPORT_WIN9X_CONSOLE_MBCS 1
#endif
+#if defined(__CYGWIN__) && defined(__x86_64__)
+#define DONT_CALL_GC_AFTER_FORK
+#endif
+
#if defined(__DJGPP__)
#define DEFAULT_TERM "dosansi"
#else
diff --git a/config.sub b/config.sub
index ba33103..1d8e98b 100755
--- a/config.sub
+++ b/config.sub
@@ -1,42 +1,40 @@
#! /bin/sh
# Configuration validation subroutine script.
-# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-# 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+# Copyright 1992-2018 Free Software Foundation, Inc.
-timestamp='2004-03-12'
+timestamp='2018-02-22'
-# This file is (in principle) common to ALL GNU software.
-# The presence of a machine in this file suggests that SOME GNU software
-# can handle that machine. It does not imply ALL GNU software can.
-#
-# This file is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
+# This file is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
#
# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330,
-# Boston, MA 02111-1307, USA.
-
+# along with this program; if not, see <https://www.gnu.org/licenses/>.
+#
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
+# the same distribution terms that you use for the rest of that
+# program. This Exception is an additional permission under section 7
+# of the GNU General Public License, version 3 ("GPLv3").
-# Please send patches to <config-patches@gnu.org>. Submit a context
-# diff and a properly formatted ChangeLog entry.
+
+# Please send patches to <config-patches@gnu.org>.
#
# Configuration subroutine to validate and canonicalize a configuration type.
# Supply the specified configuration type as an argument.
# If it is invalid, we print an error message on stderr and exit with code 1.
# Otherwise, we print the canonical config type on stdout and succeed.
+# You can get the latest version of this script from:
+# https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub
+
# This file is supposed to be the same for all GNU packages
# and recognize all the CPU types, system types and aliases
# that are meaningful with *any* GNU software.
@@ -55,12 +53,11 @@ timestamp='2004-03-12'
me=`echo "$0" | sed -e 's,.*/,,'`
usage="\
-Usage: $0 [OPTION] CPU-MFR-OPSYS
- $0 [OPTION] ALIAS
+Usage: $0 [OPTION] CPU-MFR-OPSYS or ALIAS
Canonicalize a configuration name.
-Operation modes:
+Options:
-h, --help print this help, then exit
-t, --time-stamp print date of last modification, then exit
-v, --version print version number, then exit
@@ -70,8 +67,7 @@ Report bugs and patches to <config-patches@gnu.org>."
version="\
GNU config.sub ($timestamp)
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
-Free Software Foundation, Inc.
+Copyright 1992-2018 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@@ -83,11 +79,11 @@ Try \`$me --help' for more information."
while test $# -gt 0 ; do
case $1 in
--time-stamp | --time* | -t )
- echo "$timestamp" ; exit 0 ;;
+ echo "$timestamp" ; exit ;;
--version | -v )
- echo "$version" ; exit 0 ;;
+ echo "$version" ; exit ;;
--help | --h* | -h )
- echo "$usage"; exit 0 ;;
+ echo "$usage"; exit ;;
-- ) # Stop option processing
shift; break ;;
- ) # Use stdin as input.
@@ -98,8 +94,8 @@ while test $# -gt 0 ; do
*local*)
# First pass through any local machine types.
- echo $1
- exit 0;;
+ echo "$1"
+ exit ;;
* )
break ;;
@@ -116,17 +112,24 @@ esac
# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
# Here we must recognize all the valid KERNEL-OS combinations.
-maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
+maybe_os=`echo "$1" | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
case $maybe_os in
- nto-qnx* | linux-gnu* | linux-dietlibc | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | \
- kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | storm-chaos* | os2-emx* | rtmk-nova*)
+ nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \
+ linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
+ knetbsd*-gnu* | netbsd*-gnu* | netbsd*-eabi* | \
+ kopensolaris*-gnu* | cloudabi*-eabi* | \
+ storm-chaos* | os2-emx* | rtmk-nova*)
os=-$maybe_os
- basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
+ basic_machine=`echo "$1" | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
+ ;;
+ android-linux)
+ os=-linux-android
+ basic_machine=`echo "$1" | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown
;;
*)
- basic_machine=`echo $1 | sed 's/-[^-]*$//'`
- if [ $basic_machine != $1 ]
- then os=`echo $1 | sed 's/.*-/-/'`
+ basic_machine=`echo "$1" | sed 's/-[^-]*$//'`
+ if [ "$basic_machine" != "$1" ]
+ then os=`echo "$1" | sed 's/.*-/-/'`
else os=; fi
;;
esac
@@ -145,10 +148,13 @@ case $os in
-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
- -apple | -axis)
+ -apple | -axis | -knuth | -cray | -microblaze*)
os=
basic_machine=$1
;;
+ -bluegene*)
+ os=-cnk
+ ;;
-sim | -cisco | -oki | -wec | -winbond)
os=
basic_machine=$1
@@ -163,54 +169,65 @@ case $os in
os=-chorusos
basic_machine=$1
;;
- -chorusrdb)
- os=-chorusrdb
+ -chorusrdb)
+ os=-chorusrdb
basic_machine=$1
- ;;
+ ;;
-hiux*)
os=-hiuxwe2
;;
+ -sco6)
+ os=-sco5v6
+ basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
+ ;;
-sco5)
os=-sco3.2v5
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+ basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
;;
-sco4)
os=-sco3.2v4
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+ basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
;;
-sco3.2.[4-9]*)
os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+ basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
;;
-sco3.2v[4-9]*)
# Don't forget version if it is 3.2v4 or newer.
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+ basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
+ ;;
+ -sco5v6*)
+ # Don't forget version if it is 3.2v4 or newer.
+ basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
;;
-sco*)
os=-sco3.2v2
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+ basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
;;
-udk*)
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+ basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
;;
-isc)
os=-isc2.2
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+ basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
;;
-clix*)
basic_machine=clipper-intergraph
;;
-isc*)
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+ basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
+ ;;
+ -lynx*178)
+ os=-lynxos178
+ ;;
+ -lynx*5)
+ os=-lynxos5
;;
-lynx*)
os=-lynxos
;;
-ptx*)
- basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
- ;;
- -windowsnt*)
- os=`echo $os | sed -e 's/windowsnt/winnt/'`
+ basic_machine=`echo "$1" | sed -e 's/86-.*/86-sequent/'`
;;
-psos*)
os=-psos
@@ -227,56 +244,114 @@ case $basic_machine in
# Some are omitted here because they have special meanings below.
1750a | 580 \
| a29k \
+ | aarch64 | aarch64_be \
| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
| am33_2.0 \
- | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \
- | c4x | clipper \
+ | arc | arceb \
+ | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \
+ | avr | avr32 \
+ | ba \
+ | be32 | be64 \
+ | bfin \
+ | c4x | c8051 | clipper \
| d10v | d30v | dlx | dsp16xx \
- | fr30 | frv \
+ | e2k | epiphany \
+ | fido | fr30 | frv | ft32 \
| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
- | i370 | i860 | i960 | ia64 \
+ | hexagon \
+ | i370 | i860 | i960 | ia16 | ia64 \
| ip2k | iq2000 \
- | m32r | m32rle | m68000 | m68k | m88k | mcore \
+ | k1om \
+ | le32 | le64 \
+ | lm32 \
+ | m32c | m32r | m32rle | m68000 | m68k | m88k \
+ | maxq | mb | microblaze | microblazeel | mcore | mep | metag \
| mips | mipsbe | mipseb | mipsel | mipsle \
| mips16 \
| mips64 | mips64el \
- | mips64vr | mips64vrel \
+ | mips64octeon | mips64octeonel \
| mips64orion | mips64orionel \
+ | mips64r5900 | mips64r5900el \
+ | mips64vr | mips64vrel \
| mips64vr4100 | mips64vr4100el \
| mips64vr4300 | mips64vr4300el \
| mips64vr5000 | mips64vr5000el \
+ | mips64vr5900 | mips64vr5900el \
| mipsisa32 | mipsisa32el \
| mipsisa32r2 | mipsisa32r2el \
+ | mipsisa32r6 | mipsisa32r6el \
| mipsisa64 | mipsisa64el \
| mipsisa64r2 | mipsisa64r2el \
+ | mipsisa64r6 | mipsisa64r6el \
| mipsisa64sb1 | mipsisa64sb1el \
| mipsisa64sr71k | mipsisa64sr71kel \
+ | mipsr5900 | mipsr5900el \
| mipstx39 | mipstx39el \
| mn10200 | mn10300 \
+ | moxie \
+ | mt \
| msp430 \
+ | nds32 | nds32le | nds32be \
+ | nios | nios2 | nios2eb | nios2el \
| ns16k | ns32k \
- | openrisc | or32 \
- | pdp10 | pdp11 | pj | pjl \
- | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
+ | open8 | or1k | or1knd | or32 \
+ | pdp10 | pj | pjl \
+ | powerpc | powerpc64 | powerpc64le | powerpcle \
+ | pru \
| pyramid \
- | sh | sh[1234] | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \
+ | riscv32 | riscv64 \
+ | rl78 | rx \
+ | score \
+ | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[234]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
| sh64 | sh64le \
- | sparc | sparc64 | sparc86x | sparclet | sparclite | sparcv8 | sparcv9 | sparcv9b \
- | strongarm \
- | tahoe | thumb | tic4x | tic80 | tron \
- | v850 | v850e \
- | we32k \
- | x86 | xscale | xstormy16 | xtensa \
- | z8k)
+ | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
+ | sparcv8 | sparcv9 | sparcv9b | sparcv9v \
+ | spu \
+ | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \
+ | ubicom32 \
+ | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \
+ | visium \
+ | wasm32 \
+ | x86 | xc16x | xstormy16 | xtensa \
+ | z8k | z80)
+ basic_machine=$basic_machine-unknown
+ ;;
+ c54x)
+ basic_machine=tic54x-unknown
+ ;;
+ c55x)
+ basic_machine=tic55x-unknown
+ ;;
+ c6x)
+ basic_machine=tic6x-unknown
+ ;;
+ leon|leon[3-9])
+ basic_machine=sparc-$basic_machine
+ ;;
+ m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip)
basic_machine=$basic_machine-unknown
+ os=-none
+ ;;
+ m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65)
+ ;;
+ ms1)
+ basic_machine=mt-unknown
;;
- m6811 | m68hc11 | m6812 | m68hc12)
- # Motorola 68HC11/12.
+
+ strongarm | thumb | xscale)
+ basic_machine=arm-unknown
+ ;;
+ xgate)
basic_machine=$basic_machine-unknown
os=-none
;;
- m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
+ xscaleeb)
+ basic_machine=armeb-unknown
+ ;;
+
+ xscaleel)
+ basic_machine=armel-unknown
;;
# We use `pc' rather than `unknown'
@@ -287,70 +362,102 @@ case $basic_machine in
;;
# Object if more than one company name word.
*-*-*)
- echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
+ echo Invalid configuration \`"$1"\': machine \`"$basic_machine"\' not recognized 1>&2
exit 1
;;
# Recognize the basic CPU types with company name.
580-* \
| a29k-* \
+ | aarch64-* | aarch64_be-* \
| alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
- | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
+ | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \
| arm-* | armbe-* | armle-* | armeb-* | armv*-* \
- | avr-* \
- | bs2000-* \
- | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
- | clipper-* | cydra-* \
+ | avr-* | avr32-* \
+ | ba-* \
+ | be32-* | be64-* \
+ | bfin-* | bs2000-* \
+ | c[123]* | c30-* | [cjt]90-* | c4x-* \
+ | c8051-* | clipper-* | craynv-* | cydra-* \
| d10v-* | d30v-* | dlx-* \
- | elxsi-* \
- | f30[01]-* | f700-* | fr30-* | frv-* | fx80-* \
+ | e2k-* | elxsi-* \
+ | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
| h8300-* | h8500-* \
| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
- | i*86-* | i860-* | i960-* | ia64-* \
+ | hexagon-* \
+ | i*86-* | i860-* | i960-* | ia16-* | ia64-* \
| ip2k-* | iq2000-* \
- | m32r-* | m32rle-* \
+ | k1om-* \
+ | le32-* | le64-* \
+ | lm32-* \
+ | m32c-* | m32r-* | m32rle-* \
| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
- | m88110-* | m88k-* | mcore-* \
+ | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \
+ | microblaze-* | microblazeel-* \
| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
| mips16-* \
| mips64-* | mips64el-* \
- | mips64vr-* | mips64vrel-* \
+ | mips64octeon-* | mips64octeonel-* \
| mips64orion-* | mips64orionel-* \
+ | mips64r5900-* | mips64r5900el-* \
+ | mips64vr-* | mips64vrel-* \
| mips64vr4100-* | mips64vr4100el-* \
| mips64vr4300-* | mips64vr4300el-* \
| mips64vr5000-* | mips64vr5000el-* \
+ | mips64vr5900-* | mips64vr5900el-* \
| mipsisa32-* | mipsisa32el-* \
| mipsisa32r2-* | mipsisa32r2el-* \
+ | mipsisa32r6-* | mipsisa32r6el-* \
| mipsisa64-* | mipsisa64el-* \
| mipsisa64r2-* | mipsisa64r2el-* \
+ | mipsisa64r6-* | mipsisa64r6el-* \
| mipsisa64sb1-* | mipsisa64sb1el-* \
| mipsisa64sr71k-* | mipsisa64sr71kel-* \
+ | mipsr5900-* | mipsr5900el-* \
| mipstx39-* | mipstx39el-* \
+ | mmix-* \
+ | mt-* \
| msp430-* \
- | none-* | np1-* | nv1-* | ns16k-* | ns32k-* \
+ | nds32-* | nds32le-* | nds32be-* \
+ | nios-* | nios2-* | nios2eb-* | nios2el-* \
+ | none-* | np1-* | ns16k-* | ns32k-* \
+ | open8-* \
+ | or1k*-* \
| orion-* \
| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
- | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
+ | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \
+ | pru-* \
| pyramid-* \
- | romp-* | rs6000-* \
- | sh-* | sh[1234]-* | sh[23]e-* | sh[34]eb-* | shbe-* \
+ | riscv32-* | riscv64-* \
+ | rl78-* | romp-* | rs6000-* | rx-* \
+ | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
- | sparc-* | sparc64-* | sparc86x-* | sparclet-* | sparclite-* \
- | sparcv8-* | sparcv9-* | sparcv9b-* | strongarm-* | sv1-* | sx?-* \
- | tahoe-* | thumb-* \
+ | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
+ | sparclite-* \
+ | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx*-* \
+ | tahoe-* \
| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
+ | tile*-* \
| tron-* \
- | v850-* | v850e-* | vax-* \
+ | ubicom32-* \
+ | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \
+ | vax-* \
+ | visium-* \
+ | wasm32-* \
| we32k-* \
- | x86-* | x86_64-* | xps100-* | xscale-* | xstormy16-* \
- | xtensa-* \
+ | x86-* | x86_64-* | xc16x-* | xps100-* \
+ | xstormy16-* | xtensa*-* \
| ymp-* \
- | z8k-*)
+ | z8k-* | z80-*)
+ ;;
+ # Recognize the basic CPU types without company name, with glob match.
+ xtensa*)
+ basic_machine=$basic_machine-unknown
;;
# Recognize the various machine names and aliases which stand
# for a CPU type and a company and sometimes even an OS.
386bsd)
- basic_machine=i386-unknown
+ basic_machine=i386-pc
os=-bsd
;;
3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
@@ -363,7 +470,7 @@ case $basic_machine in
basic_machine=a29k-amd
os=-udi
;;
- abacus)
+ abacus)
basic_machine=abacus-unknown
;;
adobe68k)
@@ -384,7 +491,7 @@ case $basic_machine in
basic_machine=x86_64-pc
;;
amd64-*)
- basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
+ basic_machine=x86_64-`echo "$basic_machine" | sed 's/^[^-]*-//'`
;;
amdahl)
basic_machine=580-amdahl
@@ -409,6 +516,13 @@ case $basic_machine in
basic_machine=m68k-apollo
os=-bsd
;;
+ aros)
+ basic_machine=i386-pc
+ os=-aros
+ ;;
+ asmjs)
+ basic_machine=asmjs-unknown
+ ;;
aux)
basic_machine=m68k-apple
os=-aux
@@ -417,10 +531,35 @@ case $basic_machine in
basic_machine=ns32k-sequent
os=-dynix
;;
+ blackfin)
+ basic_machine=bfin-unknown
+ os=-linux
+ ;;
+ blackfin-*)
+ basic_machine=bfin-`echo "$basic_machine" | sed 's/^[^-]*-//'`
+ os=-linux
+ ;;
+ bluegene*)
+ basic_machine=powerpc-ibm
+ os=-cnk
+ ;;
+ c54x-*)
+ basic_machine=tic54x-`echo "$basic_machine" | sed 's/^[^-]*-//'`
+ ;;
+ c55x-*)
+ basic_machine=tic55x-`echo "$basic_machine" | sed 's/^[^-]*-//'`
+ ;;
+ c6x-*)
+ basic_machine=tic6x-`echo "$basic_machine" | sed 's/^[^-]*-//'`
+ ;;
c90)
basic_machine=c90-cray
os=-unicos
;;
+ cegcc)
+ basic_machine=arm-unknown
+ os=-cegcc
+ ;;
convex-c1)
basic_machine=c1-convex
os=-bsd
@@ -445,13 +584,20 @@ case $basic_machine in
basic_machine=j90-cray
os=-unicos
;;
- cr16c)
- basic_machine=cr16c-unknown
+ craynv)
+ basic_machine=craynv-cray
+ os=-unicosmp
+ ;;
+ cr16 | cr16-*)
+ basic_machine=cr16-unknown
os=-elf
;;
crds | unos)
basic_machine=m68k-crds
;;
+ crisv32 | crisv32-* | etraxfs*)
+ basic_machine=crisv32-axis
+ ;;
cris | cris-* | etrax*)
basic_machine=cris-axis
;;
@@ -481,14 +627,30 @@ case $basic_machine in
basic_machine=m88k-motorola
os=-sysv3
;;
+ dicos)
+ basic_machine=i686-pc
+ os=-dicos
+ ;;
+ djgpp)
+ basic_machine=i586-pc
+ os=-msdosdjgpp
+ ;;
dpx20 | dpx20-*)
basic_machine=rs6000-bull
os=-bosx
;;
- dpx2* | dpx2*-bull)
+ dpx2*)
basic_machine=m68k-bull
os=-sysv3
;;
+ e500v[12])
+ basic_machine=powerpc-unknown
+ os=$os"spe"
+ ;;
+ e500v[12]-*)
+ basic_machine=powerpc-`echo "$basic_machine" | sed 's/^[^-]*-//'`
+ os=$os"spe"
+ ;;
ebmon29k)
basic_machine=a29k-amd
os=-ebmon
@@ -578,9 +740,6 @@ case $basic_machine in
hp9k8[0-9][0-9] | hp8[0-9][0-9])
basic_machine=hppa1.0-hp
;;
- hppa-next)
- os=-nextstep3
- ;;
hppaosf)
basic_machine=hppa1.1-hp
os=-osf
@@ -592,28 +751,27 @@ case $basic_machine in
i370-ibm* | ibm*)
basic_machine=i370-ibm
;;
-# I'm not sure what "Sysv32" means. Should this be sysv3.2?
i*86v32)
- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
+ basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'`
os=-sysv32
;;
i*86v4*)
- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
+ basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'`
os=-sysv4
;;
i*86v)
- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
+ basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'`
os=-sysv
;;
i*86sol2)
- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
+ basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'`
os=-solaris2
;;
i386mach)
basic_machine=i386-mach
os=-mach
;;
- i386-vsta | vsta)
+ vsta)
basic_machine=i386-unknown
os=-vsta
;;
@@ -631,8 +789,16 @@ case $basic_machine in
basic_machine=m68k-isi
os=-sysv
;;
- m88k-omron*)
- basic_machine=m88k-omron
+ leon-*|leon[3-9]-*)
+ basic_machine=sparc-`echo "$basic_machine" | sed 's/-.*//'`
+ ;;
+ m68knommu)
+ basic_machine=m68k-unknown
+ os=-linux
+ ;;
+ m68knommu-*)
+ basic_machine=m68k-`echo "$basic_machine" | sed 's/^[^-]*-//'`
+ os=-linux
;;
magnum | m3230)
basic_machine=mips-mips
@@ -642,10 +808,21 @@ case $basic_machine in
basic_machine=ns32k-utek
os=-sysv
;;
+ microblaze*)
+ basic_machine=microblaze-xilinx
+ ;;
+ mingw64)
+ basic_machine=x86_64-pc
+ os=-mingw64
+ ;;
mingw32)
- basic_machine=i386-pc
+ basic_machine=i686-pc
os=-mingw32
;;
+ mingw32ce)
+ basic_machine=arm-unknown
+ os=-mingw32ce
+ ;;
miniframe)
basic_machine=m68000-convergent
;;
@@ -654,14 +831,10 @@ case $basic_machine in
os=-mint
;;
mips3*-*)
- basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
+ basic_machine=`echo "$basic_machine" | sed -e 's/mips3/mips64/'`
;;
mips3*)
- basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
- ;;
- mmix*)
- basic_machine=mmix-knuth
- os=-mmixware
+ basic_machine=`echo "$basic_machine" | sed -e 's/mips3/mips64/'`-unknown
;;
monitor)
basic_machine=m68k-rom68k
@@ -671,14 +844,29 @@ case $basic_machine in
basic_machine=powerpc-unknown
os=-morphos
;;
+ moxiebox)
+ basic_machine=moxie-unknown
+ os=-moxiebox
+ ;;
msdos)
basic_machine=i386-pc
os=-msdos
;;
+ ms1-*)
+ basic_machine=`echo "$basic_machine" | sed -e 's/ms1-/mt-/'`
+ ;;
+ msys)
+ basic_machine=i686-pc
+ os=-msys
+ ;;
mvs)
basic_machine=i370-ibm
os=-mvs
;;
+ nacl)
+ basic_machine=le32-unknown
+ os=-nacl
+ ;;
ncr3000)
basic_machine=i486-ncr
os=-sysv4
@@ -707,7 +895,7 @@ case $basic_machine in
basic_machine=v70-nec
os=-sysv
;;
- next | m*-next )
+ next | m*-next)
basic_machine=m68k-next
case $os in
-nextstep* )
@@ -743,20 +931,27 @@ case $basic_machine in
np1)
basic_machine=np1-gould
;;
- nv1)
- basic_machine=nv1-cray
- os=-unicosmp
+ neo-tandem)
+ basic_machine=neo-tandem
+ ;;
+ nse-tandem)
+ basic_machine=nse-tandem
;;
nsr-tandem)
basic_machine=nsr-tandem
;;
+ nsv-tandem)
+ basic_machine=nsv-tandem
+ ;;
+ nsx-tandem)
+ basic_machine=nsx-tandem
+ ;;
op50n-* | op60c-*)
basic_machine=hppa1.1-oki
os=-proelf
;;
- or32 | or32-*)
+ openrisc | openrisc-*)
basic_machine=or32-unknown
- os=-coff
;;
os400)
basic_machine=powerpc-ibm
@@ -778,6 +973,14 @@ case $basic_machine in
basic_machine=i860-intel
os=-osf
;;
+ parisc)
+ basic_machine=hppa-unknown
+ os=-linux
+ ;;
+ parisc-*)
+ basic_machine=hppa-`echo "$basic_machine" | sed 's/^[^-]*-//'`
+ os=-linux
+ ;;
pbd)
basic_machine=sparc-tti
;;
@@ -787,6 +990,12 @@ case $basic_machine in
pc532 | pc532-*)
basic_machine=ns32k-pc532
;;
+ pc98)
+ basic_machine=i386-pc
+ ;;
+ pc98-*)
+ basic_machine=i386-`echo "$basic_machine" | sed 's/^[^-]*-//'`
+ ;;
pentium | p5 | k5 | k6 | nexgen | viac3)
basic_machine=i586-pc
;;
@@ -800,41 +1009,42 @@ case $basic_machine in
basic_machine=i786-pc
;;
pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
- basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
+ basic_machine=i586-`echo "$basic_machine" | sed 's/^[^-]*-//'`
;;
pentiumpro-* | p6-* | 6x86-* | athlon-*)
- basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
+ basic_machine=i686-`echo "$basic_machine" | sed 's/^[^-]*-//'`
;;
pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
- basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
+ basic_machine=i686-`echo "$basic_machine" | sed 's/^[^-]*-//'`
;;
pentium4-*)
- basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
+ basic_machine=i786-`echo "$basic_machine" | sed 's/^[^-]*-//'`
;;
pn)
basic_machine=pn-gould
;;
power) basic_machine=power-ibm
;;
- ppc) basic_machine=powerpc-unknown
+ ppc | ppcbe) basic_machine=powerpc-unknown
;;
- ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
+ ppc-* | ppcbe-*)
+ basic_machine=powerpc-`echo "$basic_machine" | sed 's/^[^-]*-//'`
;;
- ppcle | powerpclittle | ppc-le | powerpc-little)
+ ppcle | powerpclittle)
basic_machine=powerpcle-unknown
;;
ppcle-* | powerpclittle-*)
- basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
+ basic_machine=powerpcle-`echo "$basic_machine" | sed 's/^[^-]*-//'`
;;
ppc64) basic_machine=powerpc64-unknown
;;
- ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
+ ppc64-*) basic_machine=powerpc64-`echo "$basic_machine" | sed 's/^[^-]*-//'`
;;
- ppc64le | powerpc64little | ppc64-le | powerpc64-little)
+ ppc64le | powerpc64little)
basic_machine=powerpc64le-unknown
;;
ppc64le-* | powerpc64little-*)
- basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
+ basic_machine=powerpc64le-`echo "$basic_machine" | sed 's/^[^-]*-//'`
;;
ps2)
basic_machine=i386-ibm
@@ -843,6 +1053,14 @@ case $basic_machine in
basic_machine=i586-unknown
os=-pw32
;;
+ rdos | rdos64)
+ basic_machine=x86_64-pc
+ os=-rdos
+ ;;
+ rdos32)
+ basic_machine=i386-pc
+ os=-rdos
+ ;;
rom68k)
basic_machine=m68k-rom68k
os=-coff
@@ -869,6 +1087,10 @@ case $basic_machine in
sb1el)
basic_machine=mipsisa64sb1el-unknown
;;
+ sde)
+ basic_machine=mipsisa32-sde
+ os=-elf
+ ;;
sei)
basic_machine=mips-sei
os=-seiux
@@ -876,14 +1098,10 @@ case $basic_machine in
sequent)
basic_machine=i386-sequent
;;
- sh)
- basic_machine=sh-hitachi
- os=-hms
- ;;
- sh64)
- basic_machine=sh64-unknown
+ sh5el)
+ basic_machine=sh5le-unknown
;;
- sparclite-wrs | simso-wrs)
+ simso-wrs)
basic_machine=sparclite-wrs
os=-vxworks
;;
@@ -901,6 +1119,9 @@ case $basic_machine in
basic_machine=i860-stratus
os=-sysv4
;;
+ strongarm-* | thumb-*)
+ basic_machine=arm-`echo "$basic_machine" | sed 's/^[^-]*-//'`
+ ;;
sun2)
basic_machine=m68000-sun
;;
@@ -957,17 +1178,9 @@ case $basic_machine in
basic_machine=t90-cray
os=-unicos
;;
- tic54x | c54x*)
- basic_machine=tic54x-unknown
- os=-coff
- ;;
- tic55x | c55x*)
- basic_machine=tic55x-unknown
- os=-coff
- ;;
- tic6x | c6x*)
- basic_machine=tic6x-unknown
- os=-coff
+ tile*)
+ basic_machine=$basic_machine-unknown
+ os=-linux-gnu
;;
tx39)
basic_machine=mipstx39-unknown
@@ -1029,17 +1242,23 @@ case $basic_machine in
basic_machine=hppa1.1-winbond
os=-proelf
;;
+ x64)
+ basic_machine=x86_64-pc
+ ;;
+ xbox)
+ basic_machine=i686-pc
+ os=-mingw32
+ ;;
xps | xps100)
basic_machine=xps100-honeywell
;;
+ xscale-* | xscalee[bl]-*)
+ basic_machine=`echo "$basic_machine" | sed 's/^xscale/arm/'`
+ ;;
ymp)
basic_machine=ymp-cray
os=-unicos
;;
- z8k-*-coff)
- basic_machine=z8k-unknown
- os=-sim
- ;;
none)
basic_machine=none-none
os=-none
@@ -1059,31 +1278,24 @@ case $basic_machine in
romp)
basic_machine=romp-ibm
;;
+ mmix)
+ basic_machine=mmix-knuth
+ ;;
rs6000)
basic_machine=rs6000-ibm
;;
vax)
basic_machine=vax-dec
;;
- pdp10)
- # there are many clones, so DEC is not a safe bet
- basic_machine=pdp10-unknown
- ;;
pdp11)
basic_machine=pdp11-dec
;;
we32k)
basic_machine=we32k-att
;;
- sh3 | sh4 | sh[34]eb | sh[1234]le | sh[23]ele)
+ sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele)
basic_machine=sh-unknown
;;
- sh64)
- basic_machine=sh64-unknown
- ;;
- sparc | sparcv8 | sparcv9 | sparcv9b)
- basic_machine=sparc-sun
- ;;
cydra)
basic_machine=cydra-cydrome
;;
@@ -1103,7 +1315,7 @@ case $basic_machine in
# Make sure to match an already-canonicalized machine name.
;;
*)
- echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
+ echo Invalid configuration \`"$1"\': machine \`"$basic_machine"\' not recognized 1>&2
exit 1
;;
esac
@@ -1111,10 +1323,10 @@ esac
# Here we canonicalize certain aliases for manufacturers.
case $basic_machine in
*-digital*)
- basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
+ basic_machine=`echo "$basic_machine" | sed 's/digital.*/dec/'`
;;
*-commodore*)
- basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
+ basic_machine=`echo "$basic_machine" | sed 's/commodore.*/cbm/'`
;;
*)
;;
@@ -1125,49 +1337,60 @@ esac
if [ x"$os" != x"" ]
then
case $os in
- # First match some system type aliases
- # that might get confused with valid system types.
+ # First match some system type aliases that might get confused
+ # with valid system types.
# -solaris* is a basic system type, with this one exception.
+ -auroraux)
+ os=-auroraux
+ ;;
-solaris1 | -solaris1.*)
os=`echo $os | sed -e 's|solaris1|sunos4|'`
;;
-solaris)
os=-solaris2
;;
- -svr4*)
- os=-sysv4
- ;;
-unixware*)
os=-sysv4.2uw
;;
-gnu/linux*)
os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
;;
- # First accept the basic system types.
+ # es1800 is here to avoid being matched by es* (a different OS)
+ -es1800*)
+ os=-ose
+ ;;
+ # Now accept the basic system types.
# The portable systems comes first.
- # Each alternative MUST END IN A *, to match a version number.
+ # Each alternative MUST end in a * to match a version number.
# -sysv* is not here because it comes later, after sysvr4.
-gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
- | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\
- | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \
+ | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\
+ | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \
+ | -sym* | -kopensolaris* | -plan9* \
| -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
- | -aos* \
+ | -aos* | -aros* | -cloudabi* | -sortix* \
| -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
| -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
- | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* | -openbsd* \
+ | -hiux* | -knetbsd* | -mirbsd* | -netbsd* \
+ | -bitrig* | -openbsd* | -solidbsd* | -libertybsd* \
| -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
| -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
| -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
| -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
- | -chorusos* | -chorusrdb* \
- | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
- | -mingw32* | -linux-gnu* | -linux-uclibc* | -uxpv* | -beos* | -mpeix* | -udk* \
- | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
+ | -chorusos* | -chorusrdb* | -cegcc* | -glidix* \
+ | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
+ | -midipix* | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \
+ | -linux-newlib* | -linux-musl* | -linux-uclibc* \
+ | -uxpv* | -beos* | -mpeix* | -udk* | -moxiebox* \
+ | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* \
| -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
| -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
| -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
- | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
- | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly*)
+ | -morphos* | -superux* | -rtmk* | -windiss* \
+ | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
+ | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* \
+ | -onefs* | -tirtos* | -phoenix* | -fuchsia* | -redox* | -bme* \
+ | -midnightbsd*)
# Remember, each alternative MUST END IN *, to match a version number.
;;
-qnx*)
@@ -1184,12 +1407,12 @@ case $os in
-nto*)
os=`echo $os | sed -e 's|nto|nto-qnx|'`
;;
- -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
- | -windows* | -osx | -abug | -netware* | -os9* | -beos* \
+ -sim | -xray | -os68k* | -v88r* \
+ | -windows* | -osx | -abug | -netware* | -os9* \
| -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
;;
-mac*)
- os=`echo $os | sed -e 's|mac|macos|'`
+ os=`echo "$os" | sed -e 's|mac|macos|'`
;;
-linux-dietlibc)
os=-linux-dietlibc
@@ -1198,26 +1421,20 @@ case $os in
os=`echo $os | sed -e 's|linux|linux-gnu|'`
;;
-sunos5*)
- os=`echo $os | sed -e 's|sunos5|solaris2|'`
+ os=`echo "$os" | sed -e 's|sunos5|solaris2|'`
;;
-sunos6*)
- os=`echo $os | sed -e 's|sunos6|solaris3|'`
+ os=`echo "$os" | sed -e 's|sunos6|solaris3|'`
;;
-opened*)
os=-openedition
;;
- -os400*)
+ -os400*)
os=-os400
;;
-wince*)
os=-wince
;;
- -osfrose*)
- os=-osfrose
- ;;
- -osf*)
- os=-osf
- ;;
-utek*)
os=-bsd
;;
@@ -1242,7 +1459,7 @@ case $os in
-nova*)
os=-rtmk-nova
;;
- -ns2 )
+ -ns2)
os=-nextstep2
;;
-nsk*)
@@ -1255,7 +1472,7 @@ case $os in
-sinix*)
os=-sysv4
;;
- -tpf*)
+ -tpf*)
os=-tpf
;;
-triton*)
@@ -1264,7 +1481,7 @@ case $os in
-oss*)
os=-sysv3
;;
- -svr4)
+ -svr4*)
os=-sysv4
;;
-svr3)
@@ -1279,27 +1496,38 @@ case $os in
-ose*)
os=-ose
;;
- -es1800*)
- os=-ose
- ;;
- -xenix)
- os=-xenix
- ;;
-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
os=-mint
;;
- -aros*)
- os=-aros
+ -zvmoe)
+ os=-zvmoe
+ ;;
+ -dicos*)
+ os=-dicos
;;
- -kaos*)
- os=-kaos
+ -pikeos*)
+ # Until real need of OS specific support for
+ # particular features comes up, bare metal
+ # configurations are quite functional.
+ case $basic_machine in
+ arm*)
+ os=-eabi
+ ;;
+ *)
+ os=-elf
+ ;;
+ esac
+ ;;
+ -nacl*)
+ ;;
+ -ios)
;;
-none)
;;
*)
# Get rid of the `-' at the beginning of $os.
os=`echo $os | sed 's/[^-]*-//'`
- echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
+ echo Invalid configuration \`"$1"\': system \`"$os"\' not recognized 1>&2
exit 1
;;
esac
@@ -1316,6 +1544,12 @@ else
# system, and we'll never get to this point.
case $basic_machine in
+ score-*)
+ os=-elf
+ ;;
+ spu-*)
+ os=-elf
+ ;;
*-acorn)
os=-riscix1.2
;;
@@ -1325,9 +1559,24 @@ case $basic_machine in
arm*-semi)
os=-aout
;;
- c4x-* | tic4x-*)
- os=-coff
- ;;
+ c4x-* | tic4x-*)
+ os=-coff
+ ;;
+ c8051-*)
+ os=-elf
+ ;;
+ hexagon-*)
+ os=-elf
+ ;;
+ tic54x-*)
+ os=-coff
+ ;;
+ tic55x-*)
+ os=-coff
+ ;;
+ tic6x-*)
+ os=-coff
+ ;;
# This must come before the *-dec entry.
pdp10-*)
os=-tops20
@@ -1346,13 +1595,13 @@ case $basic_machine in
;;
m68000-sun)
os=-sunos3
- # This also exists in the configure program, but was not the
- # default.
- # os=-sunos4
;;
m68*-cisco)
os=-aout
;;
+ mep-*)
+ os=-elf
+ ;;
mips*-cisco)
os=-elf
;;
@@ -1368,12 +1617,18 @@ case $basic_machine in
sparc-* | *-sun)
os=-sunos4.1.1
;;
+ pru-*)
+ os=-elf
+ ;;
*-be)
os=-beos
;;
*-ibm)
os=-aix
;;
+ *-knuth)
+ os=-mmixware
+ ;;
*-wec)
os=-proelf
;;
@@ -1407,7 +1662,7 @@ case $basic_machine in
m88k-omron*)
os=-luna
;;
- *-next )
+ *-next)
os=-nextstep
;;
*-sequent)
@@ -1422,9 +1677,6 @@ case $basic_machine in
i370-*)
os=-mvs
;;
- *-next)
- os=-nextstep3
- ;;
*-gould)
os=-sysv
;;
@@ -1476,7 +1728,7 @@ case $basic_machine in
-sunos*)
vendor=sun
;;
- -aix*)
+ -cnk*|-aix*)
vendor=ibm
;;
-beos*)
@@ -1534,15 +1786,15 @@ case $basic_machine in
vendor=stratus
;;
esac
- basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
+ basic_machine=`echo "$basic_machine" | sed "s/unknown/$vendor/"`
;;
esac
-echo $basic_machine$os
-exit 0
+echo "$basic_machine$os"
+exit
# Local variables:
-# eval: (add-hook 'write-file-hooks 'time-stamp)
+# eval: (add-hook 'write-file-functions 'time-stamp)
# time-stamp-start: "timestamp='"
# time-stamp-format: "%:y-%02m-%02d"
# time-stamp-end: "'"
diff --git a/configure b/configure
index 4c1bc06..7861cce 100755
--- a/configure
+++ b/configure
@@ -1,13 +1,9 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.67 for w3m 0.5.3.
+# Generated by GNU Autoconf 2.69 for w3m 0.5.3.
#
-# Report bugs to <satodai@w3m.jp>.
#
-#
-# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
-# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software
-# Foundation, Inc.
+# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
#
#
# This configure script is free software; the Free Software Foundation
@@ -91,6 +87,7 @@ fi
IFS=" "" $as_nl"
# Find who we are. Look in the path if we contain no directory separator.
+as_myself=
case $0 in #((
*[\\/]* ) as_myself=$0 ;;
*) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
@@ -135,6 +132,31 @@ export LANGUAGE
# CDPATH.
(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
+# Use a proper internal environment variable to ensure we don't fall
+ # into an infinite loop, continuously re-executing ourselves.
+ if test x"${_as_can_reexec}" != xno && test "x$CONFIG_SHELL" != x; then
+ _as_can_reexec=no; export _as_can_reexec;
+ # We cannot yet assume a decent shell, so we have to provide a
+# neutralization value for shells without unset; and this also
+# works around shells that cannot unset nonexistent variables.
+# Preserve -v and -x to the replacement shell.
+BASH_ENV=/dev/null
+ENV=/dev/null
+(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
+case $- in # ((((
+ *v*x* | *x*v* ) as_opts=-vx ;;
+ *v* ) as_opts=-v ;;
+ *x* ) as_opts=-x ;;
+ * ) as_opts= ;;
+esac
+exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
+# Admittedly, this is quite paranoid, since all the known shells bail
+# out after a failed `exec'.
+$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
+as_fn_exit 255
+ fi
+ # We don't want this to propagate to other subprocesses.
+ { _as_can_reexec=; unset _as_can_reexec;}
if test "x$CONFIG_SHELL" = x; then
as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then :
emulate sh
@@ -168,7 +190,8 @@ if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then :
else
exitcode=1; echo positional parameters were not saved.
fi
-test x\$exitcode = x0 || exit 1"
+test x\$exitcode = x0 || exit 1
+test -x / || exit 1"
as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO
as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO
eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" &&
@@ -213,14 +236,25 @@ IFS=$as_save_IFS
if test "x$CONFIG_SHELL" != x; then :
- # We cannot yet assume a decent shell, so we have to provide a
- # neutralization value for shells without unset; and this also
- # works around shells that cannot unset nonexistent variables.
- BASH_ENV=/dev/null
- ENV=/dev/null
- (unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
- export CONFIG_SHELL
- exec "$CONFIG_SHELL" "$as_myself" ${1+"$@"}
+ export CONFIG_SHELL
+ # We cannot yet assume a decent shell, so we have to provide a
+# neutralization value for shells without unset; and this also
+# works around shells that cannot unset nonexistent variables.
+# Preserve -v and -x to the replacement shell.
+BASH_ENV=/dev/null
+ENV=/dev/null
+(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
+case $- in # ((((
+ *v*x* | *x*v* ) as_opts=-vx ;;
+ *v* ) as_opts=-v ;;
+ *x* ) as_opts=-x ;;
+ * ) as_opts= ;;
+esac
+exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
+# Admittedly, this is quite paranoid, since all the known shells bail
+# out after a failed `exec'.
+$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
+exit 255
fi
if test x$as_have_required = xno; then :
@@ -230,11 +264,10 @@ fi
$as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should"
$as_echo "$0: be upgraded to zsh 4.3.4 or later."
else
- $as_echo "$0: Please tell bug-autoconf@gnu.org and satodai@w3m.jp
-$0: about your system, including any error possibly output
-$0: before this message. Then install a modern shell, or
-$0: manually run the script under such a shell if you do
-$0: have one."
+ $as_echo "$0: Please tell bug-autoconf@gnu.org about your system,
+$0: including any error possibly output before this
+$0: message. Then install a modern shell, or manually run
+$0: the script under such a shell if you do have one."
fi
exit 1
fi
@@ -323,6 +356,14 @@ $as_echo X"$as_dir" |
} # as_fn_mkdir_p
+
+# as_fn_executable_p FILE
+# -----------------------
+# Test if FILE is an executable regular file.
+as_fn_executable_p ()
+{
+ test -f "$1" && test -x "$1"
+} # as_fn_executable_p
# as_fn_append VAR VALUE
# ----------------------
# Append the text in VALUE to the end of the definition contained in VAR. Take
@@ -444,6 +485,10 @@ as_cr_alnum=$as_cr_Letters$as_cr_digits
chmod +x "$as_me.lineno" ||
{ $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
+ # If we had to re-execute with $CONFIG_SHELL, we're ensured to have
+ # already done that, so ensure we don't try to do so again and fall
+ # in an infinite loop. This has already happened in practice.
+ _as_can_reexec=no; export _as_can_reexec
# Don't try to exec as it changes $[0], causing all sort of problems
# (the dirname of $[0] is not the place where we might find the
# original and so on. Autoconf is especially sensitive to this).
@@ -478,16 +523,16 @@ if (echo >conf$$.file) 2>/dev/null; then
# ... but there are two gotchas:
# 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
# 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
- # In both cases, we have to default to `cp -p'.
+ # In both cases, we have to default to `cp -pR'.
ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
- as_ln_s='cp -p'
+ as_ln_s='cp -pR'
elif ln conf$$.file conf$$ 2>/dev/null; then
as_ln_s=ln
else
- as_ln_s='cp -p'
+ as_ln_s='cp -pR'
fi
else
- as_ln_s='cp -p'
+ as_ln_s='cp -pR'
fi
rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
rmdir conf$$.dir 2>/dev/null
@@ -499,28 +544,8 @@ else
as_mkdir_p=false
fi
-if test -x / >/dev/null 2>&1; then
- as_test_x='test -x'
-else
- if ls -dL / >/dev/null 2>&1; then
- as_ls_L_option=L
- else
- as_ls_L_option=
- fi
- as_test_x='
- eval sh -c '\''
- if test -d "$1"; then
- test -d "$1/.";
- else
- case $1 in #(
- -*)set "./$1";;
- esac;
- case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #((
- ???[sx]*):;;*)false;;esac;fi
- '\'' sh
- '
-fi
-as_executable_p=$as_test_x
+as_test_x='test -x'
+as_executable_p=as_fn_executable_p
# Sed expression to map a string onto a valid CPP name.
as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
@@ -554,7 +579,7 @@ PACKAGE_NAME='w3m'
PACKAGE_TARNAME='w3m'
PACKAGE_VERSION='0.5.3'
PACKAGE_STRING='w3m 0.5.3'
-PACKAGE_BUGREPORT='satodai@w3m.jp'
+PACKAGE_BUGREPORT=''
PACKAGE_URL=''
gt_needs=
@@ -603,7 +628,6 @@ HELP_DIR
SIGNAL_RETURN
RETSIGTYPE
HAVE_SIGSETJMP
-HAVE_SYS_ERRLIST
USE_BINMODE_STREAM
LIBGC
AUXBIN_TARGETS
@@ -704,6 +728,11 @@ build_os
build_vendor
build_cpu
build
+X_EXTRA_LIBS
+X_LIBS
+X_PRE_LIBS
+X_CFLAGS
+XMKMF
MAN
NKF
PERL
@@ -748,6 +777,7 @@ infodir
docdir
oldincludedir
includedir
+runstatedir
localstatedir
sharedstatedir
sysconfdir
@@ -770,6 +800,7 @@ SHELL'
ac_subst_files=''
ac_user_opts='
enable_option_checking
+with_x
enable_m17n
enable_unicode
enable_messagel10n
@@ -821,6 +852,7 @@ CCC
CC
CFLAGS
CPP
+XMKMF
PKG_CONFIG
PKG_CONFIG_PATH
PKG_CONFIG_LIBDIR
@@ -864,6 +896,7 @@ datadir='${datarootdir}'
sysconfdir='${prefix}/etc'
sharedstatedir='${prefix}/com'
localstatedir='${prefix}/var'
+runstatedir='${localstatedir}/run'
includedir='${prefix}/include'
oldincludedir='/usr/include'
docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
@@ -1116,6 +1149,15 @@ do
| -silent | --silent | --silen | --sile | --sil)
silent=yes ;;
+ -runstatedir | --runstatedir | --runstatedi | --runstated \
+ | --runstate | --runstat | --runsta | --runst | --runs \
+ | --run | --ru | --r)
+ ac_prev=runstatedir ;;
+ -runstatedir=* | --runstatedir=* | --runstatedi=* | --runstated=* \
+ | --runstate=* | --runstat=* | --runsta=* | --runst=* | --runs=* \
+ | --run=* | --ru=* | --r=*)
+ runstatedir=$ac_optarg ;;
+
-sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
ac_prev=sbindir ;;
-sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
@@ -1230,7 +1272,7 @@ Try \`$0 --help' for more information"
$as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2
expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
$as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2
- : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}
+ : "${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}"
;;
esac
@@ -1253,7 +1295,7 @@ fi
for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \
datadir sysconfdir sharedstatedir localstatedir includedir \
oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
- libdir localedir mandir
+ libdir localedir mandir runstatedir
do
eval ac_val=\$$ac_var
# Remove trailing slashes.
@@ -1281,8 +1323,6 @@ target=$target_alias
if test "x$host_alias" != x; then
if test "x$build_alias" = x; then
cross_compiling=maybe
- $as_echo "$as_me: WARNING: if you wanted to set the --build type, don't use --host.
- If a cross compiler is detected then cross compile mode will be used" >&2
elif test "x$build_alias" != "x$host_alias"; then
cross_compiling=yes
fi
@@ -1408,6 +1448,7 @@ Fine tuning of the installation directories:
--sysconfdir=DIR read-only single-machine data [PREFIX/etc]
--sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
--localstatedir=DIR modifiable single-machine data [PREFIX/var]
+ --runstatedir=DIR modifiable per-process data [LOCALSTATEDIR/run]
--libdir=DIR object code libraries [EPREFIX/lib]
--includedir=DIR C header files [PREFIX/include]
--oldincludedir=DIR C header files for non-gcc [/usr/include]
@@ -1425,6 +1466,10 @@ _ACEOF
cat <<\_ACEOF
+X features:
+ --x-includes=DIR X include files are in DIR
+ --x-libraries=DIR X library files are in DIR
+
System types:
--build=BUILD configure for building on BUILD [guessed]
--host=HOST cross-compile to build programs to run on HOST [BUILD]
@@ -1462,7 +1507,7 @@ Optional Features:
--disable-alarm disable alarm
--disable-cookie disable cookie
--disable-nntp disable NNTP
- --enable-gopher enable GOPHER
+ --disable-gopher disable GOPHER
--disable-dict disable dictionary lookup (see README.dict)
--disable-help-cgi disable help cgi
--disable-external-uri-loader disable external URI loader
@@ -1474,6 +1519,7 @@ Optional Features:
Optional Packages:
--with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
--without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
+ --with-x use the X Window System
--with-charset=CHARSET
--with-gnu-ld assume the C compiler uses GNU ld default=no
--with-libiconv-prefix[=DIR] search for libiconv in DIR/include and DIR/lib
@@ -1486,11 +1532,11 @@ Optional Packages:
--with-migemo=MIGEMO_COMMAND migemo command
--with-editor=EDITOR default editor (/usr/bin/vi)
--with-mailer=MAILER default mailer (/usr/bin/mail)
- --with-browser=BROWSER default browser (/usr/bin/mozilla)
+ --with-browser=BROWSER default browser (/usr/bin/firefox)
--with-ssl=PREFIX support https protocol
--with-termlib=LIBS terminal library
LIBS is space separated list of:
- terminfo mytinfo termcap ncurses curses
+ terminfo mytinfo termcap tinfo ncurses curses
--with-gc=PREFIX libgc PREFIX
Some influential environment variables:
@@ -1504,6 +1550,7 @@ Some influential environment variables:
CC C compiler command
CFLAGS C compiler flags
CPP C preprocessor
+ XMKMF Path to xmkmf, Makefile generator for X Window System
PKG_CONFIG path to pkg-config utility
PKG_CONFIG_PATH
directories to add to pkg-config's search path
@@ -1515,7 +1562,7 @@ Some influential environment variables:
Use these variables to override the choices made by `configure' or to help
it to find libraries and programs with nonstandard names/locations.
-Report bugs to <satodai@w3m.jp>.
+Report bugs to the package provider.
_ACEOF
ac_status=$?
fi
@@ -1579,9 +1626,9 @@ test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
w3m configure 0.5.3
-generated by GNU Autoconf 2.67
+generated by GNU Autoconf 2.69
-Copyright (C) 2010 Free Software Foundation, Inc.
+Copyright (C) 2012 Free Software Foundation, Inc.
This configure script is free software; the Free Software Foundation
gives unlimited permission to copy, distribute and modify it.
_ACEOF
@@ -1625,7 +1672,7 @@ sed 's/^/| /' conftest.$ac_ext >&5
ac_retval=1
fi
- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
as_fn_set_status $ac_retval
} # ac_fn_cxx_try_compile
@@ -1663,7 +1710,7 @@ sed 's/^/| /' conftest.$ac_ext >&5
ac_retval=1
fi
- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
as_fn_set_status $ac_retval
} # ac_fn_c_try_compile
@@ -1700,7 +1747,7 @@ sed 's/^/| /' conftest.$ac_ext >&5
ac_retval=1
fi
- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
as_fn_set_status $ac_retval
} # ac_fn_c_try_cpp
@@ -1732,7 +1779,7 @@ $as_echo "$ac_try_echo"; } >&5
test ! -s conftest.err
} && test -s conftest$ac_exeext && {
test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
+ test -x conftest$ac_exeext
}; then :
ac_retval=0
else
@@ -1746,53 +1793,11 @@ fi
# interfere with the next link command; also delete a directory that is
# left behind by Apple's compiler. We do this before executing the actions.
rm -rf conftest.dSYM conftest_ipa8_conftest.oo
- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
as_fn_set_status $ac_retval
} # ac_fn_c_try_link
-# ac_fn_c_try_run LINENO
-# ----------------------
-# Try to link conftest.$ac_ext, and return whether this succeeded. Assumes
-# that executables *can* be run.
-ac_fn_c_try_run ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- if { { ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_link") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } && { ac_try='./conftest$ac_exeext'
- { { case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_try") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; }; then :
- ac_retval=0
-else
- $as_echo "$as_me: program exited with status $ac_status" >&5
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_retval=$ac_status
-fi
- rm -rf conftest.dSYM conftest_ipa8_conftest.oo
- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
- as_fn_set_status $ac_retval
-
-} # ac_fn_c_try_run
-
# ac_fn_c_check_func LINENO FUNC VAR
# ----------------------------------
# Tests whether FUNC exists, setting the cache variable VAR accordingly
@@ -1801,7 +1806,7 @@ ac_fn_c_check_func ()
as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
$as_echo_n "checking for $2... " >&6; }
-if eval "test \"\${$3+set}\"" = set; then :
+if eval \${$3+:} false; then :
$as_echo_n "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -1856,10 +1861,52 @@ fi
eval ac_res=\$$3
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
$as_echo "$ac_res" >&6; }
- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
} # ac_fn_c_check_func
+# ac_fn_c_try_run LINENO
+# ----------------------
+# Try to link conftest.$ac_ext, and return whether this succeeded. Assumes
+# that executables *can* be run.
+ac_fn_c_try_run ()
+{
+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ if { { ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; } && { ac_try='./conftest$ac_exeext'
+ { { case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; }; then :
+ ac_retval=0
+else
+ $as_echo "$as_me: program exited with status $ac_status" >&5
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_retval=$ac_status
+fi
+ rm -rf conftest.dSYM conftest_ipa8_conftest.oo
+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+ as_fn_set_status $ac_retval
+
+} # ac_fn_c_try_run
+
# ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES
# -------------------------------------------------------
# Tests whether HEADER exists, giving a warning if it cannot be compiled using
@@ -1868,10 +1915,10 @@ $as_echo "$ac_res" >&6; }
ac_fn_c_check_header_mongrel ()
{
as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- if eval "test \"\${$3+set}\"" = set; then :
+ if eval \${$3+:} false; then :
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
$as_echo_n "checking for $2... " >&6; }
-if eval "test \"\${$3+set}\"" = set; then :
+if eval \${$3+:} false; then :
$as_echo_n "(cached) " >&6
fi
eval ac_res=\$$3
@@ -1930,15 +1977,11 @@ $as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;}
$as_echo "$as_me: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&2;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
-( $as_echo "## ----------------------------- ##
-## Report this to satodai@w3m.jp ##
-## ----------------------------- ##"
- ) | sed "s/^/$as_me: WARNING: /" >&2
;;
esac
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
$as_echo_n "checking for $2... " >&6; }
-if eval "test \"\${$3+set}\"" = set; then :
+if eval \${$3+:} false; then :
$as_echo_n "(cached) " >&6
else
eval "$3=\$ac_header_compiler"
@@ -1947,7 +1990,7 @@ eval ac_res=\$$3
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
$as_echo "$ac_res" >&6; }
fi
- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
} # ac_fn_c_check_header_mongrel
@@ -1960,7 +2003,7 @@ ac_fn_c_check_header_compile ()
as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
$as_echo_n "checking for $2... " >&6; }
-if eval "test \"\${$3+set}\"" = set; then :
+if eval \${$3+:} false; then :
$as_echo_n "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -1978,7 +2021,7 @@ fi
eval ac_res=\$$3
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
$as_echo "$ac_res" >&6; }
- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
} # ac_fn_c_check_header_compile
@@ -1991,7 +2034,7 @@ ac_fn_c_check_type ()
as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
$as_echo_n "checking for $2... " >&6; }
-if eval "test \"\${$3+set}\"" = set; then :
+if eval \${$3+:} false; then :
$as_echo_n "(cached) " >&6
else
eval "$3=no"
@@ -2032,7 +2075,7 @@ fi
eval ac_res=\$$3
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
$as_echo "$ac_res" >&6; }
- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
} # ac_fn_c_check_type
@@ -2053,7 +2096,8 @@ int
main ()
{
static int test_array [1 - 2 * !(($2) >= 0)];
-test_array [0] = 0
+test_array [0] = 0;
+return test_array [0];
;
return 0;
@@ -2069,7 +2113,8 @@ int
main ()
{
static int test_array [1 - 2 * !(($2) <= $ac_mid)];
-test_array [0] = 0
+test_array [0] = 0;
+return test_array [0];
;
return 0;
@@ -2095,7 +2140,8 @@ int
main ()
{
static int test_array [1 - 2 * !(($2) < 0)];
-test_array [0] = 0
+test_array [0] = 0;
+return test_array [0];
;
return 0;
@@ -2111,7 +2157,8 @@ int
main ()
{
static int test_array [1 - 2 * !(($2) >= $ac_mid)];
-test_array [0] = 0
+test_array [0] = 0;
+return test_array [0];
;
return 0;
@@ -2145,7 +2192,8 @@ int
main ()
{
static int test_array [1 - 2 * !(($2) <= $ac_mid)];
-test_array [0] = 0
+test_array [0] = 0;
+return test_array [0];
;
return 0;
@@ -2209,7 +2257,7 @@ rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
rm -f conftest.val
fi
- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
as_fn_set_status $ac_retval
} # ac_fn_c_compute_int
@@ -2218,7 +2266,7 @@ This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
It was created by w3m $as_me 0.5.3, which was
-generated by GNU Autoconf 2.67. Invocation command line was
+generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@
@@ -2476,7 +2524,7 @@ $as_echo "$as_me: loading site script $ac_site_file" >&6;}
|| { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
as_fn_error $? "failed to load site script $ac_site_file
-See \`config.log' for more details" "$LINENO" 5 ; }
+See \`config.log' for more details" "$LINENO" 5; }
fi
done
@@ -2604,7 +2652,7 @@ if test -z "$CXX"; then
set dummy $ac_tool_prefix$ac_prog; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_CXX+set}" = set; then :
+if ${ac_cv_prog_CXX+:} false; then :
$as_echo_n "(cached) " >&6
else
if test -n "$CXX"; then
@@ -2616,7 +2664,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_CXX="$ac_tool_prefix$ac_prog"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -2648,7 +2696,7 @@ do
set dummy $ac_prog; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_CXX+set}" = set; then :
+if ${ac_cv_prog_ac_ct_CXX+:} false; then :
$as_echo_n "(cached) " >&6
else
if test -n "$ac_ct_CXX"; then
@@ -2660,7 +2708,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_ac_ct_CXX="$ac_prog"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -2812,7 +2860,7 @@ sed 's/^/| /' conftest.$ac_ext >&5
{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
as_fn_error 77 "C++ compiler cannot create executables
-See \`config.log' for more details" "$LINENO" 5 ; }
+See \`config.log' for more details" "$LINENO" 5; }
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
@@ -2855,7 +2903,7 @@ else
{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
as_fn_error $? "cannot compute suffix of executables: cannot compile and link
-See \`config.log' for more details" "$LINENO" 5 ; }
+See \`config.log' for more details" "$LINENO" 5; }
fi
rm -f conftest conftest$ac_cv_exeext
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5
@@ -2914,7 +2962,7 @@ $as_echo "$ac_try_echo"; } >&5
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
as_fn_error $? "cannot run C++ compiled programs.
If you meant to cross compile, use \`--host'.
-See \`config.log' for more details" "$LINENO" 5 ; }
+See \`config.log' for more details" "$LINENO" 5; }
fi
fi
fi
@@ -2925,7 +2973,7 @@ rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out
ac_clean_files=$ac_clean_files_save
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5
$as_echo_n "checking for suffix of object files... " >&6; }
-if test "${ac_cv_objext+set}" = set; then :
+if ${ac_cv_objext+:} false; then :
$as_echo_n "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -2966,7 +3014,7 @@ sed 's/^/| /' conftest.$ac_ext >&5
{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
as_fn_error $? "cannot compute suffix of object files: cannot compile
-See \`config.log' for more details" "$LINENO" 5 ; }
+See \`config.log' for more details" "$LINENO" 5; }
fi
rm -f conftest.$ac_cv_objext conftest.$ac_ext
fi
@@ -2976,7 +3024,7 @@ OBJEXT=$ac_cv_objext
ac_objext=$OBJEXT
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C++ compiler" >&5
$as_echo_n "checking whether we are using the GNU C++ compiler... " >&6; }
-if test "${ac_cv_cxx_compiler_gnu+set}" = set; then :
+if ${ac_cv_cxx_compiler_gnu+:} false; then :
$as_echo_n "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -3013,7 +3061,7 @@ ac_test_CXXFLAGS=${CXXFLAGS+set}
ac_save_CXXFLAGS=$CXXFLAGS
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CXX accepts -g" >&5
$as_echo_n "checking whether $CXX accepts -g... " >&6; }
-if test "${ac_cv_prog_cxx_g+set}" = set; then :
+if ${ac_cv_prog_cxx_g+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_save_cxx_werror_flag=$ac_cxx_werror_flag
@@ -3101,7 +3149,7 @@ do
set dummy $ac_prog; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_AWK+set}" = set; then :
+if ${ac_cv_prog_AWK+:} false; then :
$as_echo_n "(cached) " >&6
else
if test -n "$AWK"; then
@@ -3113,7 +3161,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_AWK="$ac_prog"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -3147,7 +3195,7 @@ if test -n "$ac_tool_prefix"; then
set dummy ${ac_tool_prefix}gcc; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_CC+set}" = set; then :
+if ${ac_cv_prog_CC+:} false; then :
$as_echo_n "(cached) " >&6
else
if test -n "$CC"; then
@@ -3159,7 +3207,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_CC="${ac_tool_prefix}gcc"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -3187,7 +3235,7 @@ if test -z "$ac_cv_prog_CC"; then
set dummy gcc; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_CC+set}" = set; then :
+if ${ac_cv_prog_ac_ct_CC+:} false; then :
$as_echo_n "(cached) " >&6
else
if test -n "$ac_ct_CC"; then
@@ -3199,7 +3247,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_ac_ct_CC="gcc"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -3240,7 +3288,7 @@ if test -z "$CC"; then
set dummy ${ac_tool_prefix}cc; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_CC+set}" = set; then :
+if ${ac_cv_prog_CC+:} false; then :
$as_echo_n "(cached) " >&6
else
if test -n "$CC"; then
@@ -3252,7 +3300,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_CC="${ac_tool_prefix}cc"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -3280,7 +3328,7 @@ if test -z "$CC"; then
set dummy cc; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_CC+set}" = set; then :
+if ${ac_cv_prog_CC+:} false; then :
$as_echo_n "(cached) " >&6
else
if test -n "$CC"; then
@@ -3293,7 +3341,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
ac_prog_rejected=yes
continue
@@ -3339,7 +3387,7 @@ if test -z "$CC"; then
set dummy $ac_tool_prefix$ac_prog; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_CC+set}" = set; then :
+if ${ac_cv_prog_CC+:} false; then :
$as_echo_n "(cached) " >&6
else
if test -n "$CC"; then
@@ -3351,7 +3399,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -3383,7 +3431,7 @@ do
set dummy $ac_prog; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_CC+set}" = set; then :
+if ${ac_cv_prog_ac_ct_CC+:} false; then :
$as_echo_n "(cached) " >&6
else
if test -n "$ac_ct_CC"; then
@@ -3395,7 +3443,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_ac_ct_CC="$ac_prog"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -3438,7 +3486,7 @@ fi
test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
as_fn_error $? "no acceptable C compiler found in \$PATH
-See \`config.log' for more details" "$LINENO" 5 ; }
+See \`config.log' for more details" "$LINENO" 5; }
# Provide some information about the compiler.
$as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5
@@ -3467,7 +3515,7 @@ done
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5
$as_echo_n "checking whether we are using the GNU C compiler... " >&6; }
-if test "${ac_cv_c_compiler_gnu+set}" = set; then :
+if ${ac_cv_c_compiler_gnu+:} false; then :
$as_echo_n "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -3504,7 +3552,7 @@ ac_test_CFLAGS=${CFLAGS+set}
ac_save_CFLAGS=$CFLAGS
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5
$as_echo_n "checking whether $CC accepts -g... " >&6; }
-if test "${ac_cv_prog_cc_g+set}" = set; then :
+if ${ac_cv_prog_cc_g+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_save_c_werror_flag=$ac_c_werror_flag
@@ -3582,7 +3630,7 @@ else
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5
$as_echo_n "checking for $CC option to accept ISO C89... " >&6; }
-if test "${ac_cv_prog_cc_c89+set}" = set; then :
+if ${ac_cv_prog_cc_c89+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_cv_prog_cc_c89=no
@@ -3591,8 +3639,7 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <stdarg.h>
#include <stdio.h>
-#include <sys/types.h>
-#include <sys/stat.h>
+struct stat;
/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */
struct buf { int x; };
FILE * (*rcsopen) (struct buf *, struct stat *, int);
@@ -3689,7 +3736,7 @@ if test -n "$CPP" && test -d "$CPP"; then
CPP=
fi
if test -z "$CPP"; then
- if test "${ac_cv_prog_CPP+set}" = set; then :
+ if ${ac_cv_prog_CPP+:} false; then :
$as_echo_n "(cached) " >&6
else
# Double quotes because CPP needs to be expanded
@@ -3805,7 +3852,7 @@ else
{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
as_fn_error $? "C preprocessor \"$CPP\" fails sanity check
-See \`config.log' for more details" "$LINENO" 5 ; }
+See \`config.log' for more details" "$LINENO" 5; }
fi
ac_ext=c
@@ -3860,7 +3907,7 @@ ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var.
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5
$as_echo_n "checking for a BSD-compatible install... " >&6; }
if test -z "$INSTALL"; then
-if test "${ac_cv_path_install+set}" = set; then :
+if ${ac_cv_path_install+:} false; then :
$as_echo_n "(cached) " >&6
else
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
@@ -3880,7 +3927,7 @@ case $as_dir/ in #((
# by default.
for ac_prog in ginstall scoinst install; do
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
if test $ac_prog = install &&
grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
# AIX install. It has an incompatible calling convention.
@@ -3951,7 +3998,7 @@ fi
$as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; }
set x ${MAKE-make}
ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
-if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\"" = set; then :
+if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then :
$as_echo_n "(cached) " >&6
else
cat >conftest.make <<\_ACEOF
@@ -3983,7 +4030,7 @@ if test -n "$ac_tool_prefix"; then
set dummy ${ac_tool_prefix}ranlib; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_RANLIB+set}" = set; then :
+if ${ac_cv_prog_RANLIB+:} false; then :
$as_echo_n "(cached) " >&6
else
if test -n "$RANLIB"; then
@@ -3995,7 +4042,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -4023,7 +4070,7 @@ if test -z "$ac_cv_prog_RANLIB"; then
set dummy ranlib; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then :
+if ${ac_cv_prog_ac_ct_RANLIB+:} false; then :
$as_echo_n "(cached) " >&6
else
if test -n "$ac_ct_RANLIB"; then
@@ -4035,7 +4082,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_ac_ct_RANLIB="ranlib"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -4076,7 +4123,7 @@ do
set dummy $ac_prog; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_PERL+set}" = set; then :
+if ${ac_cv_path_PERL+:} false; then :
$as_echo_n "(cached) " >&6
else
case $PERL in
@@ -4090,7 +4137,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_path_PERL="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -4122,7 +4169,7 @@ do
set dummy $ac_prog; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_NKF+set}" = set; then :
+if ${ac_cv_path_NKF+:} false; then :
$as_echo_n "(cached) " >&6
else
case $NKF in
@@ -4136,7 +4183,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_path_NKF="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -4168,7 +4215,7 @@ do
set dummy $ac_prog; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_MAN+set}" = set; then :
+if ${ac_cv_path_MAN+:} false; then :
$as_echo_n "(cached) " >&6
else
case $MAN in
@@ -4182,7 +4229,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_path_MAN="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -4208,13 +4255,698 @@ fi
done
test -n "$MAN" || MAN="/usr/bin/man"
+
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for X" >&5
+$as_echo_n "checking for X... " >&6; }
+
+
+# Check whether --with-x was given.
+if test "${with_x+set}" = set; then :
+ withval=$with_x;
+fi
+
+# $have_x is `yes', `no', `disabled', or empty when we do not yet know.
+if test "x$with_x" = xno; then
+ # The user explicitly disabled X.
+ have_x=disabled
+else
+ case $x_includes,$x_libraries in #(
+ *\'*) as_fn_error $? "cannot use X directory names containing '" "$LINENO" 5;; #(
+ *,NONE | NONE,*) if ${ac_cv_have_x+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ # One or both of the vars are not set, and there is no cached value.
+ac_x_includes=no ac_x_libraries=no
+rm -f -r conftest.dir
+if mkdir conftest.dir; then
+ cd conftest.dir
+ cat >Imakefile <<'_ACEOF'
+incroot:
+ @echo incroot='${INCROOT}'
+usrlibdir:
+ @echo usrlibdir='${USRLIBDIR}'
+libdir:
+ @echo libdir='${LIBDIR}'
+_ACEOF
+ if (export CC; ${XMKMF-xmkmf}) >/dev/null 2>/dev/null && test -f Makefile; then
+ # GNU make sometimes prints "make[1]: Entering ...", which would confuse us.
+ for ac_var in incroot usrlibdir libdir; do
+ eval "ac_im_$ac_var=\`\${MAKE-make} $ac_var 2>/dev/null | sed -n 's/^$ac_var=//p'\`"
+ done
+ # Open Windows xmkmf reportedly sets LIBDIR instead of USRLIBDIR.
+ for ac_extension in a so sl dylib la dll; do
+ if test ! -f "$ac_im_usrlibdir/libX11.$ac_extension" &&
+ test -f "$ac_im_libdir/libX11.$ac_extension"; then
+ ac_im_usrlibdir=$ac_im_libdir; break
+ fi
+ done
+ # Screen out bogus values from the imake configuration. They are
+ # bogus both because they are the default anyway, and because
+ # using them would break gcc on systems where it needs fixed includes.
+ case $ac_im_incroot in
+ /usr/include) ac_x_includes= ;;
+ *) test -f "$ac_im_incroot/X11/Xos.h" && ac_x_includes=$ac_im_incroot;;
+ esac
+ case $ac_im_usrlibdir in
+ /usr/lib | /usr/lib64 | /lib | /lib64) ;;
+ *) test -d "$ac_im_usrlibdir" && ac_x_libraries=$ac_im_usrlibdir ;;
+ esac
+ fi
+ cd ..
+ rm -f -r conftest.dir
+fi
+
+# Standard set of common directories for X headers.
+# Check X11 before X11Rn because it is often a symlink to the current release.
+ac_x_header_dirs='
+/usr/X11/include
+/usr/X11R7/include
+/usr/X11R6/include
+/usr/X11R5/include
+/usr/X11R4/include
+
+/usr/include/X11
+/usr/include/X11R7
+/usr/include/X11R6
+/usr/include/X11R5
+/usr/include/X11R4
+
+/usr/local/X11/include
+/usr/local/X11R7/include
+/usr/local/X11R6/include
+/usr/local/X11R5/include
+/usr/local/X11R4/include
+
+/usr/local/include/X11
+/usr/local/include/X11R7
+/usr/local/include/X11R6
+/usr/local/include/X11R5
+/usr/local/include/X11R4
+
+/usr/X386/include
+/usr/x386/include
+/usr/XFree86/include/X11
+
+/usr/include
+/usr/local/include
+/usr/unsupported/include
+/usr/athena/include
+/usr/local/x11r5/include
+/usr/lpp/Xamples/include
+
+/usr/openwin/include
+/usr/openwin/share/include'
+
+if test "$ac_x_includes" = no; then
+ # Guess where to find include files, by looking for Xlib.h.
+ # First, try using that file with no special directory specified.
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <X11/Xlib.h>
+_ACEOF
+if ac_fn_c_try_cpp "$LINENO"; then :
+ # We can compile using X headers with no special include directory.
+ac_x_includes=
+else
+ for ac_dir in $ac_x_header_dirs; do
+ if test -r "$ac_dir/X11/Xlib.h"; then
+ ac_x_includes=$ac_dir
+ break
+ fi
+done
+fi
+rm -f conftest.err conftest.i conftest.$ac_ext
+fi # $ac_x_includes = no
+
+if test "$ac_x_libraries" = no; then
+ # Check for the libraries.
+ # See if we find them without any special options.
+ # Don't add to $LIBS permanently.
+ ac_save_LIBS=$LIBS
+ LIBS="-lX11 $LIBS"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <X11/Xlib.h>
+int
+main ()
+{
+XrmInitialize ()
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+ LIBS=$ac_save_LIBS
+# We can link X programs with no special library path.
+ac_x_libraries=
+else
+ LIBS=$ac_save_LIBS
+for ac_dir in `$as_echo "$ac_x_includes $ac_x_header_dirs" | sed s/include/lib/g`
+do
+ # Don't even attempt the hair of trying to link an X program!
+ for ac_extension in a so sl dylib la dll; do
+ if test -r "$ac_dir/libX11.$ac_extension"; then
+ ac_x_libraries=$ac_dir
+ break 2
+ fi
+ done
+done
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+fi # $ac_x_libraries = no
+
+case $ac_x_includes,$ac_x_libraries in #(
+ no,* | *,no | *\'*)
+ # Didn't find X, or a directory has "'" in its name.
+ ac_cv_have_x="have_x=no";; #(
+ *)
+ # Record where we found X for the cache.
+ ac_cv_have_x="have_x=yes\
+ ac_x_includes='$ac_x_includes'\
+ ac_x_libraries='$ac_x_libraries'"
+esac
+fi
+;; #(
+ *) have_x=yes;;
+ esac
+ eval "$ac_cv_have_x"
+fi # $with_x != no
+
+if test "$have_x" != yes; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $have_x" >&5
+$as_echo "$have_x" >&6; }
+ no_x=yes
+else
+ # If each of the values was on the command line, it overrides each guess.
+ test "x$x_includes" = xNONE && x_includes=$ac_x_includes
+ test "x$x_libraries" = xNONE && x_libraries=$ac_x_libraries
+ # Update the cache value to reflect the command line values.
+ ac_cv_have_x="have_x=yes\
+ ac_x_includes='$x_includes'\
+ ac_x_libraries='$x_libraries'"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: libraries $x_libraries, headers $x_includes" >&5
+$as_echo "libraries $x_libraries, headers $x_includes" >&6; }
+fi
+
+if test "$no_x" = yes; then
+ # Not all programs may use this symbol, but it does not hurt to define it.
+
+$as_echo "#define X_DISPLAY_MISSING 1" >>confdefs.h
+
+ X_CFLAGS= X_PRE_LIBS= X_LIBS= X_EXTRA_LIBS=
+else
+ if test -n "$x_includes"; then
+ X_CFLAGS="$X_CFLAGS -I$x_includes"
+ fi
+
+ # It would also be nice to do this for all -L options, not just this one.
+ if test -n "$x_libraries"; then
+ X_LIBS="$X_LIBS -L$x_libraries"
+ # For Solaris; some versions of Sun CC require a space after -R and
+ # others require no space. Words are not sufficient . . . .
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -R must be followed by a space" >&5
+$as_echo_n "checking whether -R must be followed by a space... " >&6; }
+ ac_xsave_LIBS=$LIBS; LIBS="$LIBS -R$x_libraries"
+ ac_xsave_c_werror_flag=$ac_c_werror_flag
+ ac_c_werror_flag=yes
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+ X_LIBS="$X_LIBS -R$x_libraries"
+else
+ LIBS="$ac_xsave_LIBS -R $x_libraries"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+ X_LIBS="$X_LIBS -R $x_libraries"
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: neither works" >&5
+$as_echo "neither works" >&6; }
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+ ac_c_werror_flag=$ac_xsave_c_werror_flag
+ LIBS=$ac_xsave_LIBS
+ fi
+
+ # Check for system-dependent libraries X programs must link with.
+ # Do this before checking for the system-independent R6 libraries
+ # (-lICE), since we may need -lsocket or whatever for X linking.
+
+ if test "$ISC" = yes; then
+ X_EXTRA_LIBS="$X_EXTRA_LIBS -lnsl_s -linet"
+ else
+ # Martyn Johnson says this is needed for Ultrix, if the X
+ # libraries were built with DECnet support. And Karl Berry says
+ # the Alpha needs dnet_stub (dnet does not exist).
+ ac_xsave_LIBS="$LIBS"; LIBS="$LIBS $X_LIBS -lX11"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char XOpenDisplay ();
+int
+main ()
+{
+return XOpenDisplay ();
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dnet_ntoa in -ldnet" >&5
+$as_echo_n "checking for dnet_ntoa in -ldnet... " >&6; }
+if ${ac_cv_lib_dnet_dnet_ntoa+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-ldnet $LIBS"
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char dnet_ntoa ();
+int
+main ()
+{
+return dnet_ntoa ();
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_lib_dnet_dnet_ntoa=yes
+else
+ ac_cv_lib_dnet_dnet_ntoa=no
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dnet_dnet_ntoa" >&5
+$as_echo "$ac_cv_lib_dnet_dnet_ntoa" >&6; }
+if test "x$ac_cv_lib_dnet_dnet_ntoa" = xyes; then :
+ X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet"
+fi
+
+ if test $ac_cv_lib_dnet_dnet_ntoa = no; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dnet_ntoa in -ldnet_stub" >&5
+$as_echo_n "checking for dnet_ntoa in -ldnet_stub... " >&6; }
+if ${ac_cv_lib_dnet_stub_dnet_ntoa+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-ldnet_stub $LIBS"
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char dnet_ntoa ();
+int
+main ()
+{
+return dnet_ntoa ();
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_lib_dnet_stub_dnet_ntoa=yes
+else
+ ac_cv_lib_dnet_stub_dnet_ntoa=no
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dnet_stub_dnet_ntoa" >&5
+$as_echo "$ac_cv_lib_dnet_stub_dnet_ntoa" >&6; }
+if test "x$ac_cv_lib_dnet_stub_dnet_ntoa" = xyes; then :
+ X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet_stub"
+fi
+
+ fi
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+ LIBS="$ac_xsave_LIBS"
+
+ # msh@cis.ufl.edu says -lnsl (and -lsocket) are needed for his 386/AT,
+ # to get the SysV transport functions.
+ # Chad R. Larson says the Pyramis MIS-ES running DC/OSx (SVR4)
+ # needs -lnsl.
+ # The nsl library prevents programs from opening the X display
+ # on Irix 5.2, according to T.E. Dickey.
+ # The functions gethostbyname, getservbyname, and inet_addr are
+ # in -lbsd on LynxOS 3.0.1/i386, according to Lars Hecking.
+ ac_fn_c_check_func "$LINENO" "gethostbyname" "ac_cv_func_gethostbyname"
+if test "x$ac_cv_func_gethostbyname" = xyes; then :
+
+fi
+
+ if test $ac_cv_func_gethostbyname = no; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gethostbyname in -lnsl" >&5
+$as_echo_n "checking for gethostbyname in -lnsl... " >&6; }
+if ${ac_cv_lib_nsl_gethostbyname+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-lnsl $LIBS"
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char gethostbyname ();
+int
+main ()
+{
+return gethostbyname ();
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_lib_nsl_gethostbyname=yes
+else
+ ac_cv_lib_nsl_gethostbyname=no
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_nsl_gethostbyname" >&5
+$as_echo "$ac_cv_lib_nsl_gethostbyname" >&6; }
+if test "x$ac_cv_lib_nsl_gethostbyname" = xyes; then :
+ X_EXTRA_LIBS="$X_EXTRA_LIBS -lnsl"
+fi
+
+ if test $ac_cv_lib_nsl_gethostbyname = no; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gethostbyname in -lbsd" >&5
+$as_echo_n "checking for gethostbyname in -lbsd... " >&6; }
+if ${ac_cv_lib_bsd_gethostbyname+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-lbsd $LIBS"
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char gethostbyname ();
+int
+main ()
+{
+return gethostbyname ();
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_lib_bsd_gethostbyname=yes
+else
+ ac_cv_lib_bsd_gethostbyname=no
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_bsd_gethostbyname" >&5
+$as_echo "$ac_cv_lib_bsd_gethostbyname" >&6; }
+if test "x$ac_cv_lib_bsd_gethostbyname" = xyes; then :
+ X_EXTRA_LIBS="$X_EXTRA_LIBS -lbsd"
+fi
+
+ fi
+ fi
+
+ # lieder@skyler.mavd.honeywell.com says without -lsocket,
+ # socket/setsockopt and other routines are undefined under SCO ODT
+ # 2.0. But -lsocket is broken on IRIX 5.2 (and is not necessary
+ # on later versions), says Simon Leinen: it contains gethostby*
+ # variants that don't use the name server (or something). -lsocket
+ # must be given before -lnsl if both are needed. We assume that
+ # if connect needs -lnsl, so does gethostbyname.
+ ac_fn_c_check_func "$LINENO" "connect" "ac_cv_func_connect"
+if test "x$ac_cv_func_connect" = xyes; then :
+
+fi
+
+ if test $ac_cv_func_connect = no; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for connect in -lsocket" >&5
+$as_echo_n "checking for connect in -lsocket... " >&6; }
+if ${ac_cv_lib_socket_connect+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-lsocket $X_EXTRA_LIBS $LIBS"
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char connect ();
+int
+main ()
+{
+return connect ();
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_lib_socket_connect=yes
+else
+ ac_cv_lib_socket_connect=no
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_socket_connect" >&5
+$as_echo "$ac_cv_lib_socket_connect" >&6; }
+if test "x$ac_cv_lib_socket_connect" = xyes; then :
+ X_EXTRA_LIBS="-lsocket $X_EXTRA_LIBS"
+fi
+
+ fi
+
+ # Guillermo Gomez says -lposix is necessary on A/UX.
+ ac_fn_c_check_func "$LINENO" "remove" "ac_cv_func_remove"
+if test "x$ac_cv_func_remove" = xyes; then :
+
+fi
+
+ if test $ac_cv_func_remove = no; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for remove in -lposix" >&5
+$as_echo_n "checking for remove in -lposix... " >&6; }
+if ${ac_cv_lib_posix_remove+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-lposix $LIBS"
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char remove ();
+int
+main ()
+{
+return remove ();
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_lib_posix_remove=yes
+else
+ ac_cv_lib_posix_remove=no
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_posix_remove" >&5
+$as_echo "$ac_cv_lib_posix_remove" >&6; }
+if test "x$ac_cv_lib_posix_remove" = xyes; then :
+ X_EXTRA_LIBS="$X_EXTRA_LIBS -lposix"
+fi
+
+ fi
+
+ # BSDI BSD/OS 2.1 needs -lipc for XOpenDisplay.
+ ac_fn_c_check_func "$LINENO" "shmat" "ac_cv_func_shmat"
+if test "x$ac_cv_func_shmat" = xyes; then :
+
+fi
+
+ if test $ac_cv_func_shmat = no; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shmat in -lipc" >&5
+$as_echo_n "checking for shmat in -lipc... " >&6; }
+if ${ac_cv_lib_ipc_shmat+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-lipc $LIBS"
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char shmat ();
+int
+main ()
+{
+return shmat ();
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_lib_ipc_shmat=yes
+else
+ ac_cv_lib_ipc_shmat=no
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ipc_shmat" >&5
+$as_echo "$ac_cv_lib_ipc_shmat" >&6; }
+if test "x$ac_cv_lib_ipc_shmat" = xyes; then :
+ X_EXTRA_LIBS="$X_EXTRA_LIBS -lipc"
+fi
+
+ fi
+ fi
+
+ # Check for libraries that X11R6 Xt/Xaw programs need.
+ ac_save_LDFLAGS=$LDFLAGS
+ test -n "$x_libraries" && LDFLAGS="$LDFLAGS -L$x_libraries"
+ # SM needs ICE to (dynamically) link under SunOS 4.x (so we have to
+ # check for ICE first), but we must link in the order -lSM -lICE or
+ # we get undefined symbols. So assume we have SM if we have ICE.
+ # These have to be linked with before -lX11, unlike the other
+ # libraries we check for below, so use a different variable.
+ # John Interrante, Karl Berry
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for IceConnectionNumber in -lICE" >&5
+$as_echo_n "checking for IceConnectionNumber in -lICE... " >&6; }
+if ${ac_cv_lib_ICE_IceConnectionNumber+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-lICE $X_EXTRA_LIBS $LIBS"
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char IceConnectionNumber ();
+int
+main ()
+{
+return IceConnectionNumber ();
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_lib_ICE_IceConnectionNumber=yes
+else
+ ac_cv_lib_ICE_IceConnectionNumber=no
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ICE_IceConnectionNumber" >&5
+$as_echo "$ac_cv_lib_ICE_IceConnectionNumber" >&6; }
+if test "x$ac_cv_lib_ICE_IceConnectionNumber" = xyes; then :
+ X_PRE_LIBS="$X_PRE_LIBS -lSM -lICE"
+fi
+
+ LDFLAGS=$ac_save_LDFLAGS
+
+fi
+
# Make sure we can run config.sub.
$SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 ||
as_fn_error $? "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5
$as_echo_n "checking build system type... " >&6; }
-if test "${ac_cv_build+set}" = set; then :
+if ${ac_cv_build+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_build_alias=$build_alias
@@ -4230,7 +4962,7 @@ fi
$as_echo "$ac_cv_build" >&6; }
case $ac_cv_build in
*-*-*) ;;
-*) as_fn_error $? "invalid value of canonical build" "$LINENO" 5 ;;
+*) as_fn_error $? "invalid value of canonical build" "$LINENO" 5;;
esac
build=$ac_cv_build
ac_save_IFS=$IFS; IFS='-'
@@ -4248,7 +4980,7 @@ case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5
$as_echo_n "checking host system type... " >&6; }
-if test "${ac_cv_host+set}" = set; then :
+if ${ac_cv_host+:} false; then :
$as_echo_n "(cached) " >&6
else
if test "x$host_alias" = x; then
@@ -4263,7 +4995,7 @@ fi
$as_echo "$ac_cv_host" >&6; }
case $ac_cv_host in
*-*-*) ;;
-*) as_fn_error $? "invalid value of canonical host" "$LINENO" 5 ;;
+*) as_fn_error $? "invalid value of canonical host" "$LINENO" 5;;
esac
host=$ac_cv_host
ac_save_IFS=$IFS; IFS='-'
@@ -4469,7 +5201,7 @@ if test x$enable_messagel10n = xno; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a thread-safe mkdir -p" >&5
$as_echo_n "checking for a thread-safe mkdir -p... " >&6; }
if test -z "$MKDIR_P"; then
- if test "${ac_cv_path_mkdir+set}" = set; then :
+ if ${ac_cv_path_mkdir+:} false; then :
$as_echo_n "(cached) " >&6
else
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
@@ -4479,7 +5211,7 @@ do
test -z "$as_dir" && as_dir=.
for ac_prog in mkdir gmkdir; do
for ac_exec_ext in '' $ac_executable_extensions; do
- { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; } || continue
+ as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext" || continue
case `"$as_dir/$ac_prog$ac_exec_ext" --version 2>&1` in #(
'mkdir (GNU coreutils) '* | \
'mkdir (coreutils) '* | \
@@ -4567,7 +5299,7 @@ rm -f conf$$.file
set dummy msgfmt; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_MSGFMT+set}" = set; then :
+if ${ac_cv_path_MSGFMT+:} false; then :
$as_echo_n "(cached) " >&6
else
case "$MSGFMT" in
@@ -4608,7 +5340,7 @@ fi
set dummy gmsgfmt; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_GMSGFMT+set}" = set; then :
+if ${ac_cv_path_GMSGFMT+:} false; then :
$as_echo_n "(cached) " >&6
else
case $GMSGFMT in
@@ -4622,7 +5354,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_path_GMSGFMT="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -4690,7 +5422,7 @@ rm -f conf$$.file
set dummy xgettext; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_XGETTEXT+set}" = set; then :
+if ${ac_cv_path_XGETTEXT+:} false; then :
$as_echo_n "(cached) " >&6
else
case "$XGETTEXT" in
@@ -4768,7 +5500,7 @@ rm -f conf$$.file
set dummy msgmerge; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_MSGMERGE+set}" = set; then :
+if ${ac_cv_path_MSGMERGE+:} false; then :
$as_echo_n "(cached) " >&6
else
case "$MSGMERGE" in
@@ -4890,7 +5622,7 @@ else
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5
$as_echo_n "checking for non-GNU ld... " >&6; }
fi
-if test "${acl_cv_path_LD+set}" = set; then :
+if ${acl_cv_path_LD+:} false; then :
$as_echo_n "(cached) " >&6
else
if test -z "$LD"; then
@@ -4927,7 +5659,7 @@ fi
test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5
$as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; }
-if test "${acl_cv_prog_gnu_ld+set}" = set; then :
+if ${acl_cv_prog_gnu_ld+:} false; then :
$as_echo_n "(cached) " >&6
else
# I'd rather use --version here, but apparently some GNU ld's only accept -v.
@@ -4947,7 +5679,7 @@ with_gnu_ld=$acl_cv_prog_gnu_ld
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for shared library run path origin" >&5
$as_echo_n "checking for shared library run path origin... " >&6; }
-if test "${acl_cv_rpath+set}" = set; then :
+if ${acl_cv_rpath+:} false; then :
$as_echo_n "(cached) " >&6
else
@@ -4977,11 +5709,9 @@ else
fi
-
-
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5
$as_echo_n "checking for grep that handles long lines and -e... " >&6; }
-if test "${ac_cv_path_GREP+set}" = set; then :
+if ${ac_cv_path_GREP+:} false; then :
$as_echo_n "(cached) " >&6
else
if test -z "$GREP"; then
@@ -4995,7 +5725,7 @@ do
for ac_prog in grep ggrep; do
for ac_exec_ext in '' $ac_executable_extensions; do
ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext"
- { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue
+ as_fn_executable_p "$ac_path_GREP" || continue
# Check for GNU ac_path_GREP and select it if it is found.
# Check for GNU $ac_path_GREP
case `"$ac_path_GREP" --version 2>&1` in
@@ -5044,7 +5774,7 @@ $as_echo "$ac_cv_path_GREP" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5
$as_echo_n "checking for egrep... " >&6; }
-if test "${ac_cv_path_EGREP+set}" = set; then :
+if ${ac_cv_path_EGREP+:} false; then :
$as_echo_n "(cached) " >&6
else
if echo a | $GREP -E '(a|b)' >/dev/null 2>&1
@@ -5061,7 +5791,7 @@ do
for ac_prog in egrep; do
for ac_exec_ext in '' $ac_executable_extensions; do
ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext"
- { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue
+ as_fn_executable_p "$ac_path_EGREP" || continue
# Check for GNU ac_path_EGREP and select it if it is found.
# Check for GNU $ac_path_EGREP
case `"$ac_path_EGREP" --version 2>&1` in
@@ -5117,7 +5847,7 @@ $as_echo "$ac_cv_path_EGREP" >&6; }
solaris*)
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for 64-bit host" >&5
$as_echo_n "checking for 64-bit host... " >&6; }
-if test "${gl_cv_solaris_64bit+set}" = set; then :
+if ${gl_cv_solaris_64bit+:} false; then :
$as_echo_n "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -5664,7 +6394,7 @@ fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for CFPreferencesCopyAppValue" >&5
$as_echo_n "checking for CFPreferencesCopyAppValue... " >&6; }
-if test "${gt_cv_func_CFPreferencesCopyAppValue+set}" = set; then :
+if ${gt_cv_func_CFPreferencesCopyAppValue+:} false; then :
$as_echo_n "(cached) " >&6
else
gt_save_LIBS="$LIBS"
@@ -5698,7 +6428,7 @@ $as_echo "#define HAVE_CFPREFERENCESCOPYAPPVALUE 1" >>confdefs.h
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for CFLocaleCopyCurrent" >&5
$as_echo_n "checking for CFLocaleCopyCurrent... " >&6; }
-if test "${gt_cv_func_CFLocaleCopyCurrent+set}" = set; then :
+if ${gt_cv_func_CFLocaleCopyCurrent+:} false; then :
$as_echo_n "(cached) " >&6
else
gt_save_LIBS="$LIBS"
@@ -5774,7 +6504,7 @@ typedef int array [2 * (__GNU_GETTEXT_SUPPORTED_REVISION(0) >= 1) - 1];
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU gettext in libc" >&5
$as_echo_n "checking for GNU gettext in libc... " >&6; }
-if eval "test \"\${$gt_func_gnugettext_libc+set}\"" = set; then :
+if eval \${$gt_func_gnugettext_libc+:} false; then :
$as_echo_n "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -5837,7 +6567,7 @@ $as_echo "$ac_res" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for iconv" >&5
$as_echo_n "checking for iconv... " >&6; }
-if test "${am_cv_func_iconv+set}" = set; then :
+if ${am_cv_func_iconv+:} false; then :
$as_echo_n "(cached) " >&6
else
@@ -5894,7 +6624,7 @@ $as_echo "$am_cv_func_iconv" >&6; }
if test "$am_cv_func_iconv" = yes; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for working iconv" >&5
$as_echo_n "checking for working iconv... " >&6; }
-if test "${am_cv_func_iconv_works+set}" = set; then :
+if ${am_cv_func_iconv_works+:} false; then :
$as_echo_n "(cached) " >&6
else
@@ -6490,7 +7220,7 @@ fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU gettext in libintl" >&5
$as_echo_n "checking for GNU gettext in libintl... " >&6; }
-if eval "test \"\${$gt_func_gnugettext_libintl+set}\"" = set; then :
+if eval \${$gt_func_gnugettext_libintl+:} false; then :
$as_echo_n "(cached) " >&6
else
gt_save_CPPFLAGS="$CPPFLAGS"
@@ -6755,7 +7485,7 @@ $as_echo "$enable_image" >&6; }
if test x"$enable_image" = xyes; then
enable_image=x11
case "`uname -s`" in
- Linux|linux|LINUX)
+ Linux|linux|LINUX|FreeBSD|freebsd|FREEBSD)
if test -c /dev/fb0; then
enable_image=x11,fb
fi;;
@@ -6811,6 +7541,9 @@ $as_echo "$with_imagelib" >&6; }
fi;;
imlib2)
with_imlib2="yes"
+ if test x"$PKG_CONFIG" = x; then
+ PKG_CONFIG=pkg-config
+ fi
if test x"$IMLIB2_CONFIG" = x; then
IMLIB2_CONFIG=imlib2-config
fi;;
@@ -6823,8 +7556,6 @@ $as_echo "$with_imagelib" >&6; }
with_gtk2="yes"
if test x"$PKG_CONFIG" = x; then
PKG_CONFIG=pkg-config
- else
- PKG_CONFIG=:
fi;;
esac
done
@@ -6926,8 +7657,8 @@ $as_echo "$as_me: WARNING: Imlib2 is not installed. Install Imlib2 (version >=
$as_echo "#define USE_GTK2 1" >>confdefs.h
- IMGX11CFLAGS="`${PKG_CONFIG} --cflags gdk-pixbuf-2.0 gdk-pixbuf-xlib-2.0 gtk+-2.0`"
- IMGX11LDFLAGS="`${PKG_CONFIG} --libs gdk-pixbuf-2.0 gdk-pixbuf-xlib-2.0 gtk+-2.0`"
+ IMGX11CFLAGS="`${PKG_CONFIG} --cflags gdk-pixbuf-2.0 gdk-pixbuf-xlib-2.0`"
+ IMGX11LDFLAGS="-lX11 `${PKG_CONFIG} --libs gdk-pixbuf-2.0 gdk-pixbuf-xlib-2.0`"
elif test x"$have_gdkpixbuf" = xyes; then
$as_echo "#define USE_W3MIMG_X11 1" >>confdefs.h
@@ -6955,7 +7686,7 @@ $as_echo "$as_me: WARNING: Imlib2 is not installed. Install Imlib2 (version >=
$as_echo "#define USE_IMLIB2 1" >>confdefs.h
IMGX11CFLAGS="`${IMLIB2_CONFIG} --cflags`"
- IMGX11LDFLAGS="`${IMLIB2_CONFIG} --libs`"
+ IMGX11LDFLAGS="-lX11 `${PKG_CONFIG} --libs imlib2`"
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unable to build w3mimgdisplay with X11 support" >&5
$as_echo "$as_me: WARNING: unable to build w3mimgdisplay with X11 support" >&2;}
@@ -6971,8 +7702,8 @@ $as_echo "$as_me: WARNING: unable to build w3mimgdisplay with X11 support" >&2;}
$as_echo "#define USE_GTK2 1" >>confdefs.h
- IMGFBCFLAGS="`${PKG_CONFIG} --cflags gdk-pixbuf-2.0 gtk+-2.0`"
- IMGFBLDFLAGS="`${PKG_CONFIG} --libs gdk-pixbuf-2.0 gtk+-2.0`"
+ IMGFBCFLAGS="`${PKG_CONFIG} --cflags gdk-pixbuf-2.0`"
+ IMGFBLDFLAGS="`${PKG_CONFIG} --libs gdk-pixbuf-2.0`"
elif test x"$have_gdkpixbuf" = xyes; then
$as_echo "#define USE_W3MIMG_FB 1" >>confdefs.h
@@ -6991,7 +7722,7 @@ $as_echo "$as_me: WARNING: unable to build w3mimgdisplay with X11 support" >&2;}
IMGOBJS="$IMGOBJS fb/fb_w3mimg.o fb/fb.o fb/fb_img.o"
IMGFBCFLAGS="`${IMLIB2_CONFIG} --cflags`"
- IMGFBLDFLAGS="`${IMLIB2_CONFIG} --libs`"
+ IMGFBLDFLAGS="`${PKG_CONFIG} --libs imlib2`"
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unable to build w3mimgdisplay with FB support" >&5
$as_echo "$as_me: WARNING: unable to build w3mimgdisplay with FB support" >&2;}
@@ -7045,7 +7776,7 @@ $as_echo "$enable_xface" >&6; }
set dummy uncompface; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_uncompface+set}" = set; then :
+if ${ac_cv_prog_uncompface+:} false; then :
$as_echo_n "(cached) " >&6
else
if test -n "$uncompface"; then
@@ -7057,7 +7788,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_uncompface=""yes""
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -7102,7 +7833,7 @@ $as_echo "$enable_keymap" >&6; }
xlynx)
KEYMAP_FILE="keybind_lynx";;
*)
- as_fn_error $? "keymap should be either w3m or lynx." "$LINENO" 5 ;;
+ as_fn_error $? "keymap should be either w3m or lynx." "$LINENO" 5;;
esac
HELP_FILE=w3mhelp-${enable_keymap}_$w3m_lang.html
@@ -7225,7 +7956,7 @@ $as_echo_n "checking if gopher is enabled... " >&6; }
if test "${enable_gopher+set}" = set; then :
enableval=$enable_gopher;
else
- enable_gopher="no"
+ enable_gopher="yes"
fi
test x"$enable_gopher" = xyes && $as_echo "#define USE_GOPHER 1" >>confdefs.h
@@ -7344,7 +8075,7 @@ cat >>confdefs.h <<_ACEOF
_ACEOF
-w3m_browser="/usr/bin/mozilla"
+w3m_browser="/usr/bin/firefox"
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking which external browser is used by default" >&5
$as_echo_n "checking which external browser is used by default... " >&6; }
@@ -7395,7 +8126,7 @@ if test x"$enable_ipv6" = xyes; then
$as_echo_n "checking if IPv6 API available... " >&6; }
ac_fn_c_check_func "$LINENO" "getaddrinfo" "ac_cv_func_getaddrinfo"
-if test "x$ac_cv_func_getaddrinfo" = x""yes; then :
+if test "x$ac_cv_func_getaddrinfo" = xyes; then :
enable_ipv6="yes"
else
enable_ipv6="no"
@@ -7412,7 +8143,7 @@ $as_echo_n "checking for libinet6... " >&6; }
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for getaddrinfo in -linet6" >&5
$as_echo_n "checking for getaddrinfo in -linet6... " >&6; }
-if test "${ac_cv_lib_inet6_getaddrinfo+set}" = set; then :
+if ${ac_cv_lib_inet6_getaddrinfo+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_check_lib_save_LIBS=$LIBS
@@ -7446,7 +8177,7 @@ LIBS=$ac_check_lib_save_LIBS
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_inet6_getaddrinfo" >&5
$as_echo "$ac_cv_lib_inet6_getaddrinfo" >&6; }
-if test "x$ac_cv_lib_inet6_getaddrinfo" = x""yes; then :
+if test "x$ac_cv_lib_inet6_getaddrinfo" = xyes; then :
enable_ipv6="yes"
use_libinet6="found"; W3M_LIBS="$W3M_LIBS -linet6"; break
else
@@ -7534,7 +8265,7 @@ if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then
set dummy ${ac_tool_prefix}pkg-config; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_PKG_CONFIG+set}" = set; then :
+if ${ac_cv_path_PKG_CONFIG+:} false; then :
$as_echo_n "(cached) " >&6
else
case $PKG_CONFIG in
@@ -7548,7 +8279,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_path_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -7577,7 +8308,7 @@ if test -z "$ac_cv_path_PKG_CONFIG"; then
set dummy pkg-config; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_ac_pt_PKG_CONFIG+set}" = set; then :
+if ${ac_cv_path_ac_pt_PKG_CONFIG+:} false; then :
$as_echo_n "(cached) " >&6
else
case $ac_pt_PKG_CONFIG in
@@ -7591,7 +8322,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_path_ac_pt_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -7767,7 +8498,7 @@ $as_echo "yes" >&6; }
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for SSL_new in -lssl" >&5
$as_echo_n "checking for SSL_new in -lssl... " >&6; }
-if test "${ac_cv_lib_ssl_SSL_new+set}" = set; then :
+if ${ac_cv_lib_ssl_SSL_new+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_check_lib_save_LIBS=$LIBS
@@ -7801,7 +8532,7 @@ LIBS=$ac_check_lib_save_LIBS
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ssl_SSL_new" >&5
$as_echo "$ac_cv_lib_ssl_SSL_new" >&6; }
-if test "x$ac_cv_lib_ssl_SSL_new" = x""yes; then :
+if test "x$ac_cv_lib_ssl_SSL_new" = xyes; then :
w3m_ssl="found"; CFLAGS="$CFLAGS $SSL_CFLAGS" W3M_LIBS="$W3M_LIBS $SSL_LIBS -lssl -lcrypto"
else
w3m_ssl="not found"
@@ -7847,12 +8578,12 @@ $as_echo "$enable_digest_auth" >&6; }
ac_fn_c_check_func "$LINENO" "sqrt" "ac_cv_func_sqrt"
-if test "x$ac_cv_func_sqrt" = x""yes; then :
+if test "x$ac_cv_func_sqrt" = xyes; then :
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sqrt in -lm" >&5
$as_echo_n "checking for sqrt in -lm... " >&6; }
-if test "${ac_cv_lib_m_sqrt+set}" = set; then :
+if ${ac_cv_lib_m_sqrt+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_check_lib_save_LIBS=$LIBS
@@ -7886,7 +8617,7 @@ LIBS=$ac_check_lib_save_LIBS
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_m_sqrt" >&5
$as_echo "$ac_cv_lib_m_sqrt" >&6; }
-if test "x$ac_cv_lib_m_sqrt" = x""yes; then :
+if test "x$ac_cv_lib_m_sqrt" = xyes; then :
cat >>confdefs.h <<_ACEOF
#define HAVE_LIBM 1
_ACEOF
@@ -7901,7 +8632,7 @@ if test x"$enable_mouse" = xyes; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for Gpm_Open in -lgpm" >&5
$as_echo_n "checking for Gpm_Open in -lgpm... " >&6; }
-if test "${ac_cv_lib_gpm_Gpm_Open+set}" = set; then :
+if ${ac_cv_lib_gpm_Gpm_Open+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_check_lib_save_LIBS=$LIBS
@@ -7935,7 +8666,7 @@ LIBS=$ac_check_lib_save_LIBS
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_gpm_Gpm_Open" >&5
$as_echo "$ac_cv_lib_gpm_Gpm_Open" >&6; }
-if test "x$ac_cv_lib_gpm_Gpm_Open" = x""yes; then :
+if test "x$ac_cv_lib_gpm_Gpm_Open" = xyes; then :
$as_echo "#define USE_GPM 1" >>confdefs.h
W3M_LIBS="$W3M_LIBS -lgpm"
@@ -7977,12 +8708,12 @@ fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_termlib" >&5
$as_echo "$with_termlib" >&6; }
- test x"$with_termlib" = xyes && with_termlib="terminfo mytinfo termlib termcap ncurses curses"
+ test x"$with_termlib" = xyes && with_termlib="terminfo mytinfo termlib termcap tinfo ncurses curses"
for lib in $with_termlib; do
as_ac_Lib=`$as_echo "ac_cv_lib_$lib''_tgetent" | $as_tr_sh`
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for tgetent in -l$lib" >&5
$as_echo_n "checking for tgetent in -l$lib... " >&6; }
-if eval "test \"\${$as_ac_Lib+set}\"" = set; then :
+if eval \${$as_ac_Lib+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_check_lib_save_LIBS=$LIBS
@@ -8025,7 +8756,7 @@ fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5
$as_echo_n "checking for ANSI C header files... " >&6; }
-if test "${ac_cv_header_stdc+set}" = set; then :
+if ${ac_cv_header_stdc+:} false; then :
$as_echo_n "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -8168,7 +8899,7 @@ $as_echo "$with_gc" >&6; }
test x"$with_gc" = xyes && with_gc="/usr /usr/local ${HOME}"
unset ac_cv_header_gc_h
ac_fn_c_check_header_mongrel "$LINENO" "gc.h" "ac_cv_header_gc_h" "$ac_includes_default"
-if test "x$ac_cv_header_gc_h" = x""yes; then :
+if test "x$ac_cv_header_gc_h" = xyes; then :
fi
@@ -8187,7 +8918,7 @@ $as_echo "$with_gc" >&6; }
$as_echo_n "checking $dir/$inc... " >&6; }
unset ac_cv_header_gc_h
ac_fn_c_check_header_mongrel "$LINENO" "gc.h" "ac_cv_header_gc_h" "$ac_includes_default"
-if test "x$ac_cv_header_gc_h" = x""yes; then :
+if test "x$ac_cv_header_gc_h" = xyes; then :
gcincludedir="$dir/$inc"; CFLAGS="$CFLAGS -I$dir/$inc"; break
fi
@@ -8205,7 +8936,7 @@ fi
unset ac_cv_lib_gc_GC_init
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GC_init in -lgc" >&5
$as_echo_n "checking for GC_init in -lgc... " >&6; }
-if test "${ac_cv_lib_gc_GC_init+set}" = set; then :
+if ${ac_cv_lib_gc_GC_init+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_check_lib_save_LIBS=$LIBS
@@ -8239,7 +8970,7 @@ LIBS=$ac_check_lib_save_LIBS
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_gc_GC_init" >&5
$as_echo "$ac_cv_lib_gc_GC_init" >&6; }
-if test "x$ac_cv_lib_gc_GC_init" = x""yes; then :
+if test "x$ac_cv_lib_gc_GC_init" = xyes; then :
LIBGC="-lgc"
fi
@@ -8257,7 +8988,7 @@ $as_echo_n "checking $dir... " >&6; }
unset ac_cv_lib_gc_GC_init
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GC_init in -lgc" >&5
$as_echo_n "checking for GC_init in -lgc... " >&6; }
-if test "${ac_cv_lib_gc_GC_init+set}" = set; then :
+if ${ac_cv_lib_gc_GC_init+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_check_lib_save_LIBS=$LIBS
@@ -8291,7 +9022,7 @@ LIBS=$ac_check_lib_save_LIBS
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_gc_GC_init" >&5
$as_echo "$ac_cv_lib_gc_GC_init" >&6; }
-if test "x$ac_cv_lib_gc_GC_init" = x""yes; then :
+if test "x$ac_cv_lib_gc_GC_init" = xyes; then :
gclibdir="$dir/lib"; LIBGC="-L$dir/lib -lgc"; break
fi
@@ -8303,7 +9034,7 @@ fi
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for zError in -lz" >&5
$as_echo_n "checking for zError in -lz... " >&6; }
-if test "${ac_cv_lib_z_zError+set}" = set; then :
+if ${ac_cv_lib_z_zError+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_check_lib_save_LIBS=$LIBS
@@ -8337,7 +9068,7 @@ LIBS=$ac_check_lib_save_LIBS
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_z_zError" >&5
$as_echo "$ac_cv_lib_z_zError" >&6; }
-if test "x$ac_cv_lib_z_zError" = x""yes; then :
+if test "x$ac_cv_lib_z_zError" = xyes; then :
AUXBIN_TARGETS="$AUXBIN_TARGETS inflate\$(EXT)"
fi
@@ -8345,7 +9076,7 @@ fi
ac_fn_c_check_type "$LINENO" "socklen_t" "ac_cv_type_socklen_t" "#include <sys/types.h>
#include <sys/socket.h>
"
-if test "x$ac_cv_type_socklen_t" = x""yes; then :
+if test "x$ac_cv_type_socklen_t" = xyes; then :
$as_echo "#define HAVE_SOCKLEN_T 1" >>confdefs.h
fi
@@ -8367,7 +9098,7 @@ for ac_hdr in dirent.h sys/ndir.h sys/dir.h ndir.h; do
as_ac_Header=`$as_echo "ac_cv_header_dirent_$ac_hdr" | $as_tr_sh`
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_hdr that defines DIR" >&5
$as_echo_n "checking for $ac_hdr that defines DIR... " >&6; }
-if eval "test \"\${$as_ac_Header+set}\"" = set; then :
+if eval \${$as_ac_Header+:} false; then :
$as_echo_n "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -8407,7 +9138,7 @@ done
if test $ac_header_dirent = dirent.h; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing opendir" >&5
$as_echo_n "checking for library containing opendir... " >&6; }
-if test "${ac_cv_search_opendir+set}" = set; then :
+if ${ac_cv_search_opendir+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_func_search_save_LIBS=$LIBS
@@ -8441,11 +9172,11 @@ for ac_lib in '' dir; do
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext
- if test "${ac_cv_search_opendir+set}" = set; then :
+ if ${ac_cv_search_opendir+:} false; then :
break
fi
done
-if test "${ac_cv_search_opendir+set}" = set; then :
+if ${ac_cv_search_opendir+:} false; then :
else
ac_cv_search_opendir=no
@@ -8464,7 +9195,7 @@ fi
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing opendir" >&5
$as_echo_n "checking for library containing opendir... " >&6; }
-if test "${ac_cv_search_opendir+set}" = set; then :
+if ${ac_cv_search_opendir+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_func_search_save_LIBS=$LIBS
@@ -8498,11 +9229,11 @@ for ac_lib in '' x; do
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext
- if test "${ac_cv_search_opendir+set}" = set; then :
+ if ${ac_cv_search_opendir+:} false; then :
break
fi
done
-if test "${ac_cv_search_opendir+set}" = set; then :
+if ${ac_cv_search_opendir+:} false; then :
else
ac_cv_search_opendir=no
@@ -8522,7 +9253,7 @@ fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5
$as_echo_n "checking for ANSI C header files... " >&6; }
-if test "${ac_cv_header_stdc+set}" = set; then :
+if ${ac_cv_header_stdc+:} false; then :
$as_echo_n "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -8634,7 +9365,7 @@ fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sys/wait.h that is POSIX.1 compatible" >&5
$as_echo_n "checking for sys/wait.h that is POSIX.1 compatible... " >&6; }
-if test "${ac_cv_header_sys_wait_h+set}" = set; then :
+if ${ac_cv_header_sys_wait_h+:} false; then :
$as_echo_n "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -8674,17 +9405,17 @@ $as_echo "#define HAVE_SYS_WAIT_H 1" >>confdefs.h
fi
ac_fn_c_check_header_mongrel "$LINENO" "termios.h" "ac_cv_header_termios_h" "$ac_includes_default"
-if test "x$ac_cv_header_termios_h" = x""yes; then :
+if test "x$ac_cv_header_termios_h" = xyes; then :
$as_echo "#define HAVE_TERMIOS_H 1" >>confdefs.h
else
ac_fn_c_check_header_mongrel "$LINENO" "termio.h" "ac_cv_header_termio_h" "$ac_includes_default"
-if test "x$ac_cv_header_termio_h" = x""yes; then :
+if test "x$ac_cv_header_termio_h" = xyes; then :
$as_echo "#define HAVE_TERMIO_H 1" >>confdefs.h
else
ac_fn_c_check_header_mongrel "$LINENO" "sgtty.h" "ac_cv_header_sgtty_h" "$ac_includes_default"
-if test "x$ac_cv_header_sgtty_h" = x""yes; then :
+if test "x$ac_cv_header_sgtty_h" = xyes; then :
$as_echo "#define HAVE_SGTTY_H 1" >>confdefs.h
fi
@@ -8697,35 +9428,35 @@ fi
ac_fn_c_check_header_mongrel "$LINENO" "float.h" "ac_cv_header_float_h" "$ac_includes_default"
-if test "x$ac_cv_header_float_h" = x""yes; then :
+if test "x$ac_cv_header_float_h" = xyes; then :
$as_echo "#define HAVE_FLOAT_H 1" >>confdefs.h
fi
ac_fn_c_check_header_mongrel "$LINENO" "sys/select.h" "ac_cv_header_sys_select_h" "$ac_includes_default"
-if test "x$ac_cv_header_sys_select_h" = x""yes; then :
+if test "x$ac_cv_header_sys_select_h" = xyes; then :
$as_echo "#define HAVE_SYS_SELECT_H 1" >>confdefs.h
fi
ac_fn_c_check_header_mongrel "$LINENO" "locale.h" "ac_cv_header_locale_h" "$ac_includes_default"
-if test "x$ac_cv_header_locale_h" = x""yes; then :
+if test "x$ac_cv_header_locale_h" = xyes; then :
$as_echo "#define HAVE_LOCALE_H 1" >>confdefs.h
fi
ac_fn_c_check_header_mongrel "$LINENO" "stdint.h" "ac_cv_header_stdint_h" "$ac_includes_default"
-if test "x$ac_cv_header_stdint_h" = x""yes; then :
+if test "x$ac_cv_header_stdint_h" = xyes; then :
$as_echo "#define HAVE_STDINT_H 1" >>confdefs.h
fi
ac_fn_c_check_header_mongrel "$LINENO" "inttypes.h" "ac_cv_header_inttypes_h" "$ac_includes_default"
-if test "x$ac_cv_header_inttypes_h" = x""yes; then :
+if test "x$ac_cv_header_inttypes_h" = xyes; then :
$as_echo "#define HAVE_INTTYPES_H 1" >>confdefs.h
fi
@@ -8738,7 +9469,7 @@ fi
# This bug is HP SR number 8606223364.
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of long long" >&5
$as_echo_n "checking size of long long... " >&6; }
-if test "${ac_cv_sizeof_long_long+set}" = set; then :
+if ${ac_cv_sizeof_long_long+:} false; then :
$as_echo_n "(cached) " >&6
else
if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (long long))" "ac_cv_sizeof_long_long" "$ac_includes_default"; then :
@@ -8748,7 +9479,7 @@ else
{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
as_fn_error 77 "cannot compute sizeof (long long)
-See \`config.log' for more details" "$LINENO" 5 ; }
+See \`config.log' for more details" "$LINENO" 5; }
else
ac_cv_sizeof_long_long=0
fi
@@ -8766,7 +9497,7 @@ _ACEOF
-for ac_func in strcasecmp strcasestr strchr memcpy strerror bcopy setpgrp chdir getcwd getwd readlink setenv putenv strtoll stroq atoll atoq symlink readlink lstat srand48 srandom getpassphrase waitpid setlocale
+for ac_func in strcasecmp strcasestr strchr memcpy strerror bcopy setpgrp chdir mkdtemp getcwd getwd readlink setenv putenv strtoll stroq atoll atoq symlink readlink lstat srand48 srandom getpassphrase waitpid setlocale
do :
as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
@@ -8781,7 +9512,7 @@ done
for ac_func in strftime
do :
ac_fn_c_check_func "$LINENO" "strftime" "ac_cv_func_strftime"
-if test "x$ac_cv_func_strftime" = x""yes; then :
+if test "x$ac_cv_func_strftime" = xyes; then :
cat >>confdefs.h <<_ACEOF
#define HAVE_STRFTIME 1
_ACEOF
@@ -8790,7 +9521,7 @@ else
# strftime is in -lintl on SCO UNIX.
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for strftime in -lintl" >&5
$as_echo_n "checking for strftime in -lintl... " >&6; }
-if test "${ac_cv_lib_intl_strftime+set}" = set; then :
+if ${ac_cv_lib_intl_strftime+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_check_lib_save_LIBS=$LIBS
@@ -8824,7 +9555,7 @@ LIBS=$ac_check_lib_save_LIBS
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_intl_strftime" >&5
$as_echo "$ac_cv_lib_intl_strftime" >&6; }
-if test "x$ac_cv_lib_intl_strftime" = x""yes; then :
+if test "x$ac_cv_lib_intl_strftime" = xyes; then :
$as_echo "#define HAVE_STRFTIME 1" >>confdefs.h
LIBS="-lintl $LIBS"
@@ -8835,7 +9566,7 @@ done
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for wait3 that fills in rusage" >&5
$as_echo_n "checking for wait3 that fills in rusage... " >&6; }
-if test "${ac_cv_func_wait3_rusage+set}" = set; then :
+if ${ac_cv_func_wait3_rusage+:} false; then :
$as_echo_n "(cached) " >&6
else
if test "$cross_compiling" = yes; then :
@@ -8899,7 +9630,7 @@ fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether setpgrp takes no argument" >&5
$as_echo_n "checking whether setpgrp takes no argument... " >&6; }
-if test "${ac_cv_func_setpgrp_void+set}" = set; then :
+if ${ac_cv_func_setpgrp_void+:} false; then :
$as_echo_n "(cached) " >&6
else
if test "$cross_compiling" = yes; then :
@@ -8944,7 +9675,7 @@ case "$host_os" in
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for nl_langinfo and CODESET" >&5
$as_echo_n "checking for nl_langinfo and CODESET... " >&6; }
-if test "${am_cv_langinfo_codeset+set}" = set; then :
+if ${am_cv_langinfo_codeset+:} false; then :
$as_echo_n "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -8978,29 +9709,6 @@ $as_echo "#define HAVE_LANGINFO_CODESET 1" >>confdefs.h
;;
esac
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sys_errlist" >&5
-$as_echo_n "checking for sys_errlist... " >&6; }
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-extern char *sys_errlist[];
-int
-main ()
-{
-printf(sys_errlist[0]);
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- have_sys_errlist="yes"; $as_echo "#define HAVE_SYS_ERRLIST 1" >>confdefs.h
-
-else
- have_sys_errlist="no"
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $have_sys_errlist" >&5
-$as_echo "$have_sys_errlist" >&6; }
-
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sigsetjmp" >&5
$as_echo_n "checking for sigsetjmp... " >&6; }
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -9026,7 +9734,7 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
$as_echo "$have_sigsetjmp" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking return type of signal handlers" >&5
$as_echo_n "checking return type of signal handlers... " >&6; }
-if test "${ac_cv_type_signal+set}" = set; then :
+if ${ac_cv_type_signal+:} false; then :
$as_echo_n "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -9076,7 +9784,7 @@ RC_DIR="~/.$PACKAGE"
$as_echo "#define RC_DIR \"\$RC_DIR\"" >>confdefs.h
-DOCDIRS="doc:en_English doc-jp:ja_Japanese"
+DOCDIRS="doc:en_English doc-jp:ja_Japanese doc-de:de_German"
cat >>confdefs.h <<_ACEOF
#define DOCDIRS "$DOCDIRS"
_ACEOF
@@ -9084,9 +9792,10 @@ _ACEOF
cvsver=`$AWK '\$1 ~ /Id:/ { print \$3}' $srcdir/ChangeLog`
- sed -e 's/define CURRENT_VERSION "\(.*\)+cvs/define CURRENT_VERSION "\1+cvs-'$cvsver'/' $srcdir/version.c.in > version.c
+ ymdver=`sed -e 's/ .*//;s/-//g;q' $srcdir/ChangeLog`
+ sed -e 's/define CURRENT_VERSION "\(.*\)YYYYMMDD/define CURRENT_VERSION "\1'$ymdver'/;s/define CURRENT_VERSION "\(.*\)+cvs/define CURRENT_VERSION "\1+cvs-'$cvsver'/' $srcdir/version.c.in > version.c
CURRENT_VERSION=`sed -n 's/.*define CURRENT_VERSION *"w3m\/\(.*\)".*$/\1/p' version.c`
-ac_config_files="$ac_config_files Makefile posubst po/Makefile.in scripts/Makefile scripts/dirlist.cgi scripts/w3mhelp.cgi scripts/w3mmail.cgi scripts/xface2xpm scripts/multipart/Makefile scripts/multipart/multipart.cgi scripts/w3mman/Makefile scripts/w3mman/w3mman scripts/w3mman/w3mman.1 scripts/w3mman/w3mman2html.cgi libwc/Makefile w3mimg/Makefile w3mimg/fb/Makefile w3mimg/x11/Makefile w3mimg/win/Makefile w3mhelp-w3m_en.html w3mhelp-w3m_ja.html w3mhelp-lynx_en.html w3mhelp-lynx_ja.html"
+ac_config_files="$ac_config_files Makefile posubst po/Makefile.in scripts/Makefile scripts/dirlist.cgi scripts/w3mhelp.cgi scripts/w3mmail.cgi scripts/xface2xpm scripts/multipart/Makefile scripts/multipart/multipart.cgi scripts/w3mman/Makefile scripts/w3mman/w3mman scripts/w3mman/w3mman.1 scripts/w3mman/w3mman.de.1 scripts/w3mman/w3mman2html.cgi libwc/Makefile w3mimg/Makefile w3mimg/fb/Makefile w3mimg/x11/Makefile w3mimg/win/Makefile w3mhelp-w3m_en.html w3mhelp-w3m_ja.html w3mhelp-lynx_en.html w3mhelp-lynx_ja.html"
cat >confcache <<\_ACEOF
# This file is a shell script that caches the results of configure
@@ -9152,10 +9861,21 @@ $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
:end' >>confcache
if diff "$cache_file" confcache >/dev/null 2>&1; then :; else
if test -w "$cache_file"; then
- test "x$cache_file" != "x/dev/null" &&
+ if test "x$cache_file" != "x/dev/null"; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5
$as_echo "$as_me: updating cache $cache_file" >&6;}
- cat confcache >$cache_file
+ if test ! -f "$cache_file" || test -h "$cache_file"; then
+ cat confcache >"$cache_file"
+ else
+ case $cache_file in #(
+ */* | ?:*)
+ mv -f confcache "$cache_file"$$ &&
+ mv -f "$cache_file"$$ "$cache_file" ;; #(
+ *)
+ mv -f confcache "$cache_file" ;;
+ esac
+ fi
+ fi
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5
$as_echo "$as_me: not updating unwritable cache $cache_file" >&6;}
@@ -9187,7 +9907,7 @@ LTLIBOBJS=$ac_ltlibobjs
-: ${CONFIG_STATUS=./config.status}
+: "${CONFIG_STATUS=./config.status}"
ac_write_fail=0
ac_clean_files_save=$ac_clean_files
ac_clean_files="$ac_clean_files $CONFIG_STATUS"
@@ -9288,6 +10008,7 @@ fi
IFS=" "" $as_nl"
# Find who we are. Look in the path if we contain no directory separator.
+as_myself=
case $0 in #((
*[\\/]* ) as_myself=$0 ;;
*) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
@@ -9483,16 +10204,16 @@ if (echo >conf$$.file) 2>/dev/null; then
# ... but there are two gotchas:
# 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
# 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
- # In both cases, we have to default to `cp -p'.
+ # In both cases, we have to default to `cp -pR'.
ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
- as_ln_s='cp -p'
+ as_ln_s='cp -pR'
elif ln conf$$.file conf$$ 2>/dev/null; then
as_ln_s=ln
else
- as_ln_s='cp -p'
+ as_ln_s='cp -pR'
fi
else
- as_ln_s='cp -p'
+ as_ln_s='cp -pR'
fi
rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
rmdir conf$$.dir 2>/dev/null
@@ -9552,28 +10273,16 @@ else
as_mkdir_p=false
fi
-if test -x / >/dev/null 2>&1; then
- as_test_x='test -x'
-else
- if ls -dL / >/dev/null 2>&1; then
- as_ls_L_option=L
- else
- as_ls_L_option=
- fi
- as_test_x='
- eval sh -c '\''
- if test -d "$1"; then
- test -d "$1/.";
- else
- case $1 in #(
- -*)set "./$1";;
- esac;
- case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #((
- ???[sx]*):;;*)false;;esac;fi
- '\'' sh
- '
-fi
-as_executable_p=$as_test_x
+
+# as_fn_executable_p FILE
+# -----------------------
+# Test if FILE is an executable regular file.
+as_fn_executable_p ()
+{
+ test -f "$1" && test -x "$1"
+} # as_fn_executable_p
+as_test_x='test -x'
+as_executable_p=as_fn_executable_p
# Sed expression to map a string onto a valid CPP name.
as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
@@ -9595,7 +10304,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# values after options handling.
ac_log="
This file was extended by w3m $as_me 0.5.3, which was
-generated by GNU Autoconf 2.67. Invocation command line was
+generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
CONFIG_HEADERS = $CONFIG_HEADERS
@@ -9654,17 +10363,17 @@ $config_headers
Configuration commands:
$config_commands
-Report bugs to <satodai@w3m.jp>."
+Report bugs to the package provider."
_ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
w3m config.status 0.5.3
-configured by $0, generated by GNU Autoconf 2.67,
+configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\"
-Copyright (C) 2010 Free Software Foundation, Inc.
+Copyright (C) 2012 Free Software Foundation, Inc.
This config.status script is free software; the Free Software Foundation
gives unlimited permission to copy, distribute and modify it."
@@ -9755,7 +10464,7 @@ fi
_ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
if \$ac_cs_recheck; then
- set X '$SHELL' '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
+ set X $SHELL '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
shift
\$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6
CONFIG_SHELL='$SHELL'
@@ -9810,6 +10519,7 @@ do
"scripts/w3mman/Makefile") CONFIG_FILES="$CONFIG_FILES scripts/w3mman/Makefile" ;;
"scripts/w3mman/w3mman") CONFIG_FILES="$CONFIG_FILES scripts/w3mman/w3mman" ;;
"scripts/w3mman/w3mman.1") CONFIG_FILES="$CONFIG_FILES scripts/w3mman/w3mman.1" ;;
+ "scripts/w3mman/w3mman.de.1") CONFIG_FILES="$CONFIG_FILES scripts/w3mman/w3mman.de.1" ;;
"scripts/w3mman/w3mman2html.cgi") CONFIG_FILES="$CONFIG_FILES scripts/w3mman/w3mman2html.cgi" ;;
"libwc/Makefile") CONFIG_FILES="$CONFIG_FILES libwc/Makefile" ;;
"w3mimg/Makefile") CONFIG_FILES="$CONFIG_FILES w3mimg/Makefile" ;;
@@ -9821,7 +10531,7 @@ do
"w3mhelp-lynx_en.html") CONFIG_FILES="$CONFIG_FILES w3mhelp-lynx_en.html" ;;
"w3mhelp-lynx_ja.html") CONFIG_FILES="$CONFIG_FILES w3mhelp-lynx_ja.html" ;;
- *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5 ;;
+ *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;;
esac
done
@@ -9844,9 +10554,10 @@ fi
# after its creation but before its name has been assigned to `$tmp'.
$debug ||
{
- tmp=
+ tmp= ac_tmp=
trap 'exit_status=$?
- { test -z "$tmp" || test ! -d "$tmp" || rm -fr "$tmp"; } && exit $exit_status
+ : "${ac_tmp:=$tmp}"
+ { test ! -d "$ac_tmp" || rm -fr "$ac_tmp"; } && exit $exit_status
' 0
trap 'as_fn_exit 1' 1 2 13 15
}
@@ -9854,12 +10565,13 @@ $debug ||
{
tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` &&
- test -n "$tmp" && test -d "$tmp"
+ test -d "$tmp"
} ||
{
tmp=./conf$$-$RANDOM
(umask 077 && mkdir "$tmp")
} || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5
+ac_tmp=$tmp
# Set up the scripts for CONFIG_FILES section.
# No need to generate them if there are no CONFIG_FILES.
@@ -9881,7 +10593,7 @@ else
ac_cs_awk_cr=$ac_cr
fi
-echo 'BEGIN {' >"$tmp/subs1.awk" &&
+echo 'BEGIN {' >"$ac_tmp/subs1.awk" &&
_ACEOF
@@ -9909,7 +10621,7 @@ done
rm -f conf$$subs.sh
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-cat >>"\$tmp/subs1.awk" <<\\_ACAWK &&
+cat >>"\$ac_tmp/subs1.awk" <<\\_ACAWK &&
_ACEOF
sed -n '
h
@@ -9957,7 +10669,7 @@ t delim
rm -f conf$$subs.awk
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
_ACAWK
-cat >>"\$tmp/subs1.awk" <<_ACAWK &&
+cat >>"\$ac_tmp/subs1.awk" <<_ACAWK &&
for (key in S) S_is_set[key] = 1
FS = ""
@@ -9989,7 +10701,7 @@ if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then
sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g"
else
cat
-fi < "$tmp/subs1.awk" > "$tmp/subs.awk" \
+fi < "$ac_tmp/subs1.awk" > "$ac_tmp/subs.awk" \
|| as_fn_error $? "could not setup config files machinery" "$LINENO" 5
_ACEOF
@@ -10023,7 +10735,7 @@ fi # test -n "$CONFIG_FILES"
# No need to generate them if there are no CONFIG_HEADERS.
# This happens for instance with `./config.status Makefile'.
if test -n "$CONFIG_HEADERS"; then
-cat >"$tmp/defines.awk" <<\_ACAWK ||
+cat >"$ac_tmp/defines.awk" <<\_ACAWK ||
BEGIN {
_ACEOF
@@ -10035,8 +10747,8 @@ _ACEOF
# handling of long lines.
ac_delim='%!_!# '
for ac_last_try in false false :; do
- ac_t=`sed -n "/$ac_delim/p" confdefs.h`
- if test -z "$ac_t"; then
+ ac_tt=`sed -n "/$ac_delim/p" confdefs.h`
+ if test -z "$ac_tt"; then
break
elif $ac_last_try; then
as_fn_error $? "could not make $CONFIG_HEADERS" "$LINENO" 5
@@ -10137,7 +10849,7 @@ do
esac
case $ac_mode$ac_tag in
:[FHL]*:*);;
- :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5 ;;
+ :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5;;
:[FH]-) ac_tag=-:-;;
:[FH]*) ac_tag=$ac_tag:$ac_tag.in;;
esac
@@ -10156,7 +10868,7 @@ do
for ac_f
do
case $ac_f in
- -) ac_f="$tmp/stdin";;
+ -) ac_f="$ac_tmp/stdin";;
*) # Look for the file first in the build tree, then in the source tree
# (if the path is not absolute). The absolute path cannot be DOS-style,
# because $ac_f cannot contain `:'.
@@ -10165,7 +10877,7 @@ do
[\\/$]*) false;;
*) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";;
esac ||
- as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5 ;;
+ as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;;
esac
case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac
as_fn_append ac_file_inputs " '$ac_f'"
@@ -10191,8 +10903,8 @@ $as_echo "$as_me: creating $ac_file" >&6;}
esac
case $ac_tag in
- *:-:* | *:-) cat >"$tmp/stdin" \
- || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;;
+ *:-:* | *:-) cat >"$ac_tmp/stdin" \
+ || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;;
esac
;;
esac
@@ -10328,21 +11040,22 @@ s&@INSTALL@&$ac_INSTALL&;t t
s&@MKDIR_P@&$ac_MKDIR_P&;t t
$ac_datarootdir_hack
"
-eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$tmp/subs.awk" >$tmp/out \
- || as_fn_error $? "could not create $ac_file" "$LINENO" 5
+eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$ac_tmp/subs.awk" \
+ >$ac_tmp/out || as_fn_error $? "could not create $ac_file" "$LINENO" 5
test -z "$ac_datarootdir_hack$ac_datarootdir_seen" &&
- { ac_out=`sed -n '/\${datarootdir}/p' "$tmp/out"`; test -n "$ac_out"; } &&
- { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' "$tmp/out"`; test -z "$ac_out"; } &&
+ { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } &&
+ { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' \
+ "$ac_tmp/out"`; test -z "$ac_out"; } &&
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir'
which seems to be undefined. Please make sure it is defined" >&5
$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir'
which seems to be undefined. Please make sure it is defined" >&2;}
- rm -f "$tmp/stdin"
+ rm -f "$ac_tmp/stdin"
case $ac_file in
- -) cat "$tmp/out" && rm -f "$tmp/out";;
- *) rm -f "$ac_file" && mv "$tmp/out" "$ac_file";;
+ -) cat "$ac_tmp/out" && rm -f "$ac_tmp/out";;
+ *) rm -f "$ac_file" && mv "$ac_tmp/out" "$ac_file";;
esac \
|| as_fn_error $? "could not create $ac_file" "$LINENO" 5
;;
@@ -10353,20 +11066,20 @@ which seems to be undefined. Please make sure it is defined" >&2;}
if test x"$ac_file" != x-; then
{
$as_echo "/* $configure_input */" \
- && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs"
- } >"$tmp/config.h" \
+ && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs"
+ } >"$ac_tmp/config.h" \
|| as_fn_error $? "could not create $ac_file" "$LINENO" 5
- if diff "$ac_file" "$tmp/config.h" >/dev/null 2>&1; then
+ if diff "$ac_file" "$ac_tmp/config.h" >/dev/null 2>&1; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5
$as_echo "$as_me: $ac_file is unchanged" >&6;}
else
rm -f "$ac_file"
- mv "$tmp/config.h" "$ac_file" \
+ mv "$ac_tmp/config.h" "$ac_file" \
|| as_fn_error $? "could not create $ac_file" "$LINENO" 5
fi
else
$as_echo "/* $configure_input */" \
- && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs" \
+ && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" \
|| as_fn_error $? "could not create -" "$LINENO" 5
fi
;;
diff --git a/configure.ac b/configure.ac
index 7308fc6..0e31d18 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,6 +1,6 @@
dnl w3m autoconf
dnl Process this file with autoconf to produce a configure script.
-AC_INIT(w3m, 0.5.3, satodai@w3m.jp)
+AC_INIT(w3m, 0.5.3)
PACKAGE=w3m
VERSION=0.5.3
AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE")
@@ -28,6 +28,7 @@ AC_PROG_RANLIB
AC_PATH_PROGS(PERL, perl, /usr/local/bin/perl)
AC_PATH_PROGS(NKF, nkf, /usr/local/bin/nkf)
AC_PATH_PROGS(MAN, man, /usr/bin/man)
+AC_PATH_XTRA
AC_CANONICAL_HOST
AC_EXEEXT
@@ -150,7 +151,7 @@ dnl AC_FUNC_MEMCMP
dnl AC_FUNC_MMAP
dnl AC_FUNC_SETVBUF_REVERSED
dnl AC_FUNC_VPRINTF
-AC_CHECK_FUNCS(strcasecmp strcasestr strchr memcpy strerror bcopy setpgrp chdir getcwd getwd readlink setenv putenv strtoll stroq atoll atoq symlink readlink lstat srand48 srandom getpassphrase waitpid setlocale)
+AC_CHECK_FUNCS(strcasecmp strcasestr strchr memcpy strerror bcopy setpgrp chdir mkdtemp getcwd getwd readlink setenv putenv strtoll stroq atoll atoq symlink readlink lstat srand48 srandom getpassphrase waitpid setlocale)
AC_FUNC_STRFTIME
AC_FUNC_WAIT3
AC_FUNC_SETPGRP
@@ -161,7 +162,6 @@ case "$host_os" in
AM_LANGINFO_CODESET
;;
esac
-AC_W3M_SYS_ERRLIST
AC_W3M_SIGSETJMP
AC_W3M_SIGNAL
@@ -172,7 +172,7 @@ AC_SUBST(RC_DIR)
RC_DIR="~/.$PACKAGE"
AC_DEFINE(RC_DIR, "$RC_DIR")
AC_SUBST(DOCDIRS)
-DOCDIRS="doc:en_English doc-jp:ja_Japanese"
+DOCDIRS="doc:en_English doc-jp:ja_Japanese doc-de:de_German"
AC_DEFINE_UNQUOTED(DOCDIRS, "$DOCDIRS")
AC_W3M_VERSION
@@ -181,7 +181,8 @@ scripts/Makefile scripts/dirlist.cgi \
scripts/w3mhelp.cgi \
scripts/w3mmail.cgi scripts/xface2xpm \
scripts/multipart/Makefile scripts/multipart/multipart.cgi \
-scripts/w3mman/Makefile scripts/w3mman/w3mman scripts/w3mman/w3mman.1 \
+scripts/w3mman/Makefile scripts/w3mman/w3mman \
+scripts/w3mman/w3mman.1 scripts/w3mman/w3mman.de.1 \
scripts/w3mman/w3mman2html.cgi \
libwc/Makefile \
w3mimg/Makefile w3mimg/fb/Makefile w3mimg/x11/Makefile w3mimg/win/Makefile \
diff --git a/cookie.c b/cookie.c
index 8020f6d..705e277 100644
--- a/cookie.c
+++ b/cookie.c
@@ -22,10 +22,10 @@ static int is_saved = 1;
#define contain_no_dots(p, ep) (total_dot_number((p),(ep),1)==0)
-static int
-total_dot_number(char *p, char *ep, int max_count)
+static unsigned int
+total_dot_number(char *p, char *ep, unsigned int max_count)
{
- int count = 0;
+ unsigned int count = 0;
if (!ep)
ep = p + strlen(p);
@@ -105,6 +105,7 @@ make_portlist(Str port)
pl->next = first;
first = pl;
}
+ Strfree(tmp);
return first;
}
@@ -247,16 +248,12 @@ find_cookie(ParsedURL *pu)
Strcat(tmp, Sprintf("; $Domain=\"%s\"", p1->domain->ptr));
if (p1->portl)
Strcat(tmp,
- Sprintf("; $Port=\"%s\"", portlist2str(p1->portl)));
+ Sprintf("; $Port=\"%s\"", portlist2str(p1->portl)->ptr));
}
}
return tmp;
}
-char *special_domain[] = {
- ".com", ".edu", ".gov", ".mil", ".net", ".org", ".int", NULL
-};
-
int
check_avoid_wrong_number_of_dots_domain( Str domain )
{
@@ -324,7 +321,7 @@ add_cookie(ParsedURL *pu, Str name, Str value,
if (version == 0) {
/* [NETSCAPE] rule */
- int n = total_dot_number(domain->ptr,
+ unsigned int n = total_dot_number(domain->ptr,
domain->ptr + domain->length,
3);
if (n < 2) {
@@ -332,19 +329,6 @@ add_cookie(ParsedURL *pu, Str name, Str value,
COOKIE_ERROR(COO_ESPECIAL);
}
}
- else if (n == 2) {
- char **sdomain;
- int ok = 0;
- for (sdomain = special_domain; !ok && *sdomain; sdomain++) {
- int offset = domain->length - strlen(*sdomain);
- if (offset >= 0 &&
- strcasecmp(*sdomain, &domain->ptr[offset]) == 0)
- ok = 1;
- }
- if (!ok && ! check_avoid_wrong_number_of_dots_domain(domain)) {
- COOKIE_ERROR(COO_ESPECIAL);
- }
- }
}
else {
/* [DRAFT 12] s. 4.3.2 case 2 */
@@ -463,7 +447,7 @@ save_cookies(void)
continue;
fprintf(fp, "%s\t%s\t%s\t%ld\t%s\t%s\t%d\t%d\t%s\t%s\t%s\n",
parsedURL2Str(&p->url)->ptr,
- p->name->ptr, p->value->ptr, p->expires,
+ p->name->ptr, p->value->ptr, (long)p->expires,
p->domain->ptr, p->path->ptr, p->flag,
p->version, str2charp(p->comment),
(p->portl) ? portlist2str(p->portl)->ptr : "",
@@ -517,36 +501,36 @@ load_cookies(void)
cookie->commentURL = NULL;
parseURL(readcol(&str)->ptr, &cookie->url, NULL);
if (!*str)
- return;
+ break;
cookie->name = readcol(&str);
if (!*str)
- return;
+ break;
cookie->value = readcol(&str);
if (!*str)
- return;
+ break;
cookie->expires = (time_t) atol(readcol(&str)->ptr);
if (!*str)
- return;
+ break;
cookie->domain = readcol(&str);
if (!*str)
- return;
+ break;
cookie->path = readcol(&str);
if (!*str)
- return;
+ break;
cookie->flag = atoi(readcol(&str)->ptr);
if (!*str)
- return;
+ break;
cookie->version = atoi(readcol(&str)->ptr);
if (!*str)
- return;
+ break;
cookie->comment = readcol(&str);
if (cookie->comment->length == 0)
cookie->comment = NULL;
if (!*str)
- return;
+ break;
cookie->portl = make_portlist(readcol(&str));
if (!*str)
- return;
+ break;
cookie->commentURL = readcol(&str);
if (cookie->commentURL->length == 0)
cookie->commentURL = NULL;
diff --git a/display.c b/display.c
index e00eb0c..e62d07f 100644
--- a/display.c
+++ b/display.c
@@ -257,7 +257,7 @@ make_lastline_link(Buffer *buf, char *title, char *url)
parseURL2(url, &pu, baseURL(buf));
u = parsedURL2Str(&pu);
if (DecodeURL)
- u = Strnew_charp(url_unquote_conv(u->ptr, buf->document_charset));
+ u = Strnew_charp(url_decode2(u->ptr, buf));
#ifdef USE_M17N
u = checkType(u, &pr, NULL);
#endif
@@ -487,7 +487,7 @@ displayBuffer(Buffer *buf, int mode)
term_title(conv_to_system(buf->buffername));
refresh();
#ifdef USE_IMAGE
- if (activeImage && displayImage && buf->img) {
+ if (activeImage && displayImage && buf->img && buf->image_loaded) {
drawImage();
}
#endif
@@ -497,6 +497,10 @@ displayBuffer(Buffer *buf, int mode)
save_current_buf = buf;
}
#endif
+ if (mode == B_FORCE_REDRAW && (buf->check_url & CHK_URL) ) {
+ chkURLBuffer(buf);
+ displayBuffer(buf, B_NORMAL);
+ }
}
static void
@@ -521,7 +525,15 @@ drawAnchorCursor0(Buffer *buf, AnchorList *al, int hseq, int prevhseq,
break;
}
if (hseq >= 0 && an->hseq == hseq) {
+ int start_pos = an->start.pos;
+ int end_pos = an->end.pos;
for (i = an->start.pos; i < an->end.pos; i++) {
+ if (enable_inline_image && (l->propBuf[i] & PE_IMAGE)) {
+ if (start_pos == i)
+ start_pos = i + 1;
+ else if (end_pos == an->end.pos)
+ end_pos = i - 1;
+ }
if (l->propBuf[i] & (PE_IMAGE | PE_ANCHOR | PE_FORM)) {
if (active)
l->propBuf[i] |= PE_ACTIVE;
@@ -529,9 +541,9 @@ drawAnchorCursor0(Buffer *buf, AnchorList *al, int hseq, int prevhseq,
l->propBuf[i] &= ~PE_ACTIVE;
}
}
- if (active)
+ if (active && start_pos < end_pos)
redrawLineRegion(buf, l, l->linenumber - tline + buf->rootY,
- an->start.pos, an->end.pos);
+ start_pos, end_pos);
}
else if (prevhseq >= 0 && an->hseq == prevhseq) {
if (active)
@@ -855,14 +867,16 @@ redrawLineImage(Buffer *buf, Line *l, int i)
y = (int)(i * pixel_per_line);
sx = (int)((rcol - COLPOS(l, a->start.pos)) * pixel_per_char);
sy = (int)((l->linenumber - image->y) * pixel_per_line);
- if (sx == 0 && x + image->xoffset >= 0)
- x += image->xoffset;
- else
- sx -= image->xoffset;
- if (sy == 0 && y + image->yoffset >= 0)
- y += image->yoffset;
- else
- sy -= image->yoffset;
+ if (! enable_inline_image) {
+ if (sx == 0 && x + image->xoffset >= 0)
+ x += image->xoffset;
+ else
+ sx -= image->xoffset;
+ if (sy == 0 && y + image->yoffset >= 0)
+ y += image->yoffset;
+ else
+ sy -= image->yoffset;
+ }
if (image->width > 0)
w = image->width - sx;
else
@@ -1119,18 +1133,18 @@ addChar(char c, Lineprop mode)
}
#ifdef USE_M17N
if (w == 2 && WcOption.use_wide)
- addstr(graph2_symbol[(int)c]);
+ addstr(graph2_symbol[(unsigned char)c % N_GRAPH_SYMBOL]);
else
#endif
- addch(*graph_symbol[(int)c]);
+ addch(*graph_symbol[(unsigned char)c % N_GRAPH_SYMBOL]);
}
else {
#ifdef USE_M17N
symbol = get_symbol(DisplayCharset, &w);
- addstr(symbol[(int)c]);
+ addstr(symbol[(unsigned char)c % N_SYMBOL]);
#else
symbol = get_symbol();
- addch(*symbol[(int)c]);
+ addch(*symbol[(unsigned char)c % N_SYMBOL]);
#endif
}
}
diff --git a/doc-de/FAQ.html b/doc-de/FAQ.html
new file mode 100644
index 0000000..d88ba64
--- /dev/null
+++ b/doc-de/FAQ.html
@@ -0,0 +1,691 @@
+
+<html>
+ <head>
+ <style>
+ span.mono {
+ font-family:mono;
+ }
+ </style>
+ <meta http-equiv="content-type" content="text/html;charset=UTF-8">
+ <title>W3M FAQ</title>
+ </head>
+ <body>
+ <h1 align="center">
+ Häufig gestellte Fragen zu w3m
+ </h1>
+ <p align="right">
+ Akinori Ito &lt;aito@fw.ipsj.or.jp&gt; <br>korrigiert von Tom Berger &lt;tom.be@gmx.net&gt;
+ </p>
+ <h2 id="index">
+ <u>
+ Übersicht
+ </u>
+ </h2>
+ <ul>
+ <li>
+ <a href="#general">
+ <b>
+ Allgemeine Fragen; wie bekomme ich das Programm, welche Arbeitsumgebung wird benötigt?
+ </b>
+ </a>
+ </li>
+ <ul>
+ <li>
+ <b>
+ Wie wird <q>w3m</q> ausgesprochen?
+ </b>
+ </li>
+ <li>
+ <b>
+ Warum hat man es <q>w3m</q> genannt?
+ </b>
+ </li>
+ <li>
+ <b>
+ Auf welchen Plattformen läuft es?
+ </b>
+ </li>
+ <li>
+ <b>
+ Wo bekomme ich mehr Informationen über w3m?
+ </b>
+ </li>
+ <li>
+ <b>
+ Gibt es eine Mailingliste für w3m?
+ </b>
+ </li>
+ <li>
+ <b>
+ Gibt es das Programm fertig kompiliert?
+ </b>
+ </li>
+ </ul>
+ <li>
+ <a href="#install">
+ <b>
+ Kompilierung und Installation
+ </b>
+ </a>
+ </li>
+ <li>
+ <a href="#command">
+ <b>
+ Optionen, Befehle und Verwendung
+ </b>
+ </a>
+ </li>
+ <ul>
+ <li>
+ <b>
+ w3m beendet sich von selbst, wenn es ohne Argumente aufgerufen wurde. Was läuft hier falsch?
+ </b>
+ </li>
+ <li>
+ <b>
+ w3m startet mit schwarzen Zeichen vor schwarzem Hintergrund. Wie kann ich das ändern?
+ </b>
+ </li>
+ <li>
+ <b>
+ Kann w3m Dinge in Farbe darstellen?
+ </b>
+ </li>
+ <li>
+ <b>
+ Kann w3m mit monochromen Bildschirmen benutzt werden?
+ </b>
+ </li>
+ <li>
+ <b>
+ Wie kann ich den angezeigten Bereich verschieben?
+ </b>
+ </li>
+ <li>
+ <b>
+ Wie komme ich von einem zum anderen Hyperlink?
+ </b>
+ </li>
+ <li>
+ <b>
+ Grafische Browser stellen ein Wort rot dar, w3m hingegen nicht. Warum?
+ </b>
+ </li>
+ <li>
+ <b>
+ Wie ändere ich die für Hyperlinks, Bilder und Formularfelder benutzten Farben?
+ </b>
+ </li>
+ <li>
+ <b>
+ w3m scheint die Umgebungsvariable EDITOR zu ignorieren. Weshalb?
+ </b>
+ </li>
+ <li>
+ <b>
+ Wie breche ich eine Suche oder die Eingabe einer URL ab?
+ </b>
+ </li>
+ </ul>
+ <li>
+ <a href="#www">
+ <b>
+ Fragen zur Benutzung als Internetbrowser
+ </b>
+ </a>
+ </li>
+ <ul>
+ <li>
+ <b>
+ Wie fülle ich mit w3m Formulare aus?
+ </b>
+ </li>
+ <li>
+ <b>
+ w3m scheint langsamer als einige andere Browser zu sein. Warum?
+ </b>
+ </li>
+ <li>
+ <b>
+ Die Zeit zum Laden einer Seite wird nicht geringer, wenn diese Seite schon einmal angezeigt wurde.
+ </b>
+ </li>
+ <li>
+ <b>
+ Wie lade ich eine Datei herunter, auf die verlinkt wird?
+ </b>
+ </li>
+ <li>
+ <b>
+ Wie gebe ich einen Proxy-Server vor?
+ </b>
+ </li>
+<!-- deleted, see mail dated Mon, 04 Apr 2016 20:50:27 +0900 (JST)
+from Tatsuya Kinoshita <tats@debian.org>
+ <li>
+ <b>
+ w3m freezes when I invoke an external browser.
+ </b>
+ </li>
+-->
+ <li>
+ <b>
+ Wie wähle ich den standardmäßig verwendeten Bildbetrachter aus?
+ </b>
+ </li>
+ <li>
+ <b>
+ Wie wird eine URL eingegeben?
+ </b>
+ </li>
+ <li>
+ <b>
+ w3m hängt eine URL an die vorherige an, obwohl die Zeile mit <span class="mono">STRG-u</span> gelöscht worden war. Was ist zu tun?
+ </b>
+ </li>
+ </ul>
+ <li>
+ <a href="#other">
+ <b>
+ Verschiedenes
+ </b>
+ </a>
+ </li>
+ <ul>
+ <li>
+ <b>
+ Ich suche die Konfigurationsdatei von w3m.
+ </b>
+ </li>
+ <li>
+ <b>
+ Wofür sind die w3mxxxx Dateien in meinem ~/.w3m Verzeichnis gut?
+ </b>
+ </li>
+ </ul>
+ </ul>
+ <h2 id="general">
+ <u>
+ Allgemeine Fragen; wie bekomme ich das Programm, welche Arbeitsumgebung wird benötigt?
+ </u>
+ </h2>
+ <dl>
+ <dt>
+ <b>
+ Wie wird <q>w3m</q> ausgesprochen?
+ </b>
+ </dt>
+ <dd>
+ <p>
+ Der Name wird englisch ausgesprochen <q>W-three-M</q> und reimt sich nicht auf <q>pteranodon</q>.
+ </p>
+ </dd>
+ <dt>
+ <b>
+ Warum hat man es <q>w3m</q> genannt?
+ </b>
+ </dt>
+ <dd>
+ <p>
+ Darin steckt der japanische Satz <q>WWW-wo-Miru</q>, was <q>Sichte das weltweite Netz</q> bedeutet. Dieser Browser könnte also auf deutsch <q>Sdw2N</q> heißen.
+ </p>
+ </dd>
+ <dt>
+ <b>
+ Auf welchen Plattformen läuft es?
+ </b>
+ </dt>
+ <dd>
+ <p>
+ Das Programm läuft auf verschiedenen Unices, seit der Version 990226 auf OS/2 und seit Version 990303 auch auf Microsoft-Windows mit Cygwin32.
+ </p>
+ <p>
+ Es wurde bestätigt, dass neuere Versionen laufen auf:
+ </p>
+ <ul>
+ <li>
+ SunOS 4.1.x
+ </li>
+ <li>
+ HP-UX 9.x, 10.x
+ </li>
+ <li>
+ Solaris 2.5.x, 2.6, 8
+ </li>
+ <li>
+ Linux 2.0.1 bis 3.17
+ </li>
+ <li>
+ FreeBSD 2.2.8, 3.1, 3.2, 4.6
+ </li>
+ <li>
+ NetBSD/macppc, m68k
+ </li>
+ <li>
+ EWS4800 Rel.12.2 Rev.A
+ </li>
+ <li>
+ Digital UNIX: v3.2D, v4.0D
+ </li>
+ <li>
+ IRIX 5.3, IRIX 6.5
+ </li>
+ <li>
+ OS/2 mit emx
+ </li>
+ <li>
+ Windows 9x/NT mit Cygwin32 b20.1
+ </li>
+ <li>
+ MS-DOS mit DJGPP und WATT32 Pakettreiber
+ </li>
+ <li>
+ MacOS X Server
+ </li>
+ <li>
+ MacOS X 10.1, 10.2
+ </li>
+ </ul>
+ </dd>
+ <dt>
+ <b>
+ Wo bekomme ich mehr Informationen über w3m?
+ </b>
+ </dt>
+ <dd>
+ <p>
+ Auf der englischen <a href="http://w3m.sourceforge.net/index.en.html">Homepage</a> des w3m-Projekts.
+ </p>
+ </dd>
+ <dt>
+ <b>
+ Gibt es eine Mailingliste für w3m?
+ </b>
+ </dt>
+ <dd>
+ <p>
+ Es gibt eine Mailingliste für Entwickler (w3m-dev-en). Einzelheiten dazu finden Sie auf der <a href="http://w3m.sourceforge.net/index.en.html">Homepage</a> des w3m-Projekts. Sie können Ihre Anmerkungen auch dem <a href="mailto:aito@fw.ipsj.or.jp">Autor</a> schicken.
+ </p>
+ </dd>
+ <dt>
+ <b>
+ Gibt es das Programm fertig kompiliert?
+ </b>
+ </dt>
+ <dd>
+ <!--
+ You can get them from
+ <a href="http://prdownloads.sourceforge.net/w3m/">here</a>.
+!--><p>
+ Bis jetzt wurde das Programm nur für Windows /Cygnus32 kompiliert. Sollten Sie dies für andere Plattformen durchgeführt haben und möchten Ihre Binärversion der Allgemeinheit zur Verfügung stellen, kontaktieren Sie den <a href="mailto:aito@fw.ipsj.or.jp">Autor</a>.
+ </p>
+ </dd>
+ </dl>
+ <p align="right">
+ <i>
+ Zurück zur <a href="#index">Übersicht</a>
+ </i>
+ </p>
+ <h2 id="install">
+ <u>
+ Kompilierung und Installation
+ </u>
+ </h2>
+ <p>
+ Kein Problem :-)
+ </p>
+ <h2 id="command">
+ <u>
+ Optionen, Befehle und Verwendung
+ </u>
+ </h2>
+ <dl>
+ <dt>
+ <b>
+ w3m beendet sich von selbst, wenn es ohne Argumente aufgerufen wurde. Was läuft hier falsch?
+ </b>
+ </dt>
+ <dd>
+ <p>
+ w3m ist ein <b>Textbetrachter</b>. Deshalb schließt sich das Programm von selbst, wenn es ohne ein Argument aufgerufen wird. Es läuft weiter
+ </p>
+ <ul>
+ <li>
+ mit einem Dateinamen oder einer Adresse als Argument
+ </li>
+ <li>
+ mit aus der Standardeingabe eingehenden Daten
+ </li>
+ <li>
+ nach Aufruf mit der Option -B, woraufhin die Lesezeichendatei gezeigt wird
+ </li>
+ <li>
+ nach Aufruf mit der Option -v, woraufhin eine Begrüßungsseite angezeigt wird
+ </li>
+ <li>
+ wenn die Variablen HTTP_HOME oder WWW_HOME spezifiziert wurden
+ </li>
+ </ul>
+ </dd>
+ <dt>
+ <b>
+ w3m startet mit schwarzen Zeichen vor schwarzem Hintergrund. Wie kann ich das ändern?
+ </b>
+ </dt>
+ <dd>
+ <p>
+ Wenn w3m für den Farbmodus kompiliert wurde, geht das Programm von weißem Hintergrund aus und zeigt die Buchstaben in schwarz.
+ </p>
+ <p>
+ Sie können entweder die Hintergrundfarbe Ihres Terminals ändern (bei xterm z.B. mit der Option -bg) oder so vorgehen
+ </p>
+ <ol>
+ <li>
+ Mit <span class="mono">w3m -M</span> den Monochrom-Modus von w3m starten
+ </li>
+ <li>
+ <q>o</q> eintippen, was Sie in den Einstellungs-Dialog bringt
+ </li>
+ <li>
+ <q>YES</q> neben <q>in Farbe anzeigen</q> markieren und irgendeine Farbe auswählen.
+ </li>
+ <li>
+ auf [OK] klicken
+ </li>
+ </ol>
+ </dd>
+ <dt>
+ <b>
+ Kann w3m Dinge in Farbe darstellen?
+ </b>
+ </dt>
+ <dd>
+ <p>
+ Ja. Wenn Sie <q>./configure</q> durchführen, werden Ihnen folgende Möglichkeiten angeboten:
+ </p>
+<pre>
+ Let's do some configurations. Choose config option among the list. <br> 1 - Baby model (no color, no menu, no mouse, no cookie, no SSL) <br> 2 - Little model (color, menu, no mouse, no cookie, no SSL) <br> 3 - Mouse model (color, menu, mouse, no cookie, no SSL) <br> 4 - Cookie model (color, menu, mouse, cookie, no SSL)<br> 5 - Monster model (with everything; you need openSSL library) <br> 6 - Customize Which?
+</pre>
+ <p>
+ Sie entscheiden sich für 2, 3, 4, oder 5.
+ </p>
+ </dd>
+ <dt>
+ <b>
+ Kann w3m mit monochromen Bildschirmen benutzt werden?
+ </b>
+ </dt>
+ <dd>
+ <p>
+ Ja, Sie können entweder
+ </p>
+ <ul>
+ <li>
+ obige Frage bei <q>./configure</q> mit 1 beantworten, oder
+ </li>
+ <li>
+ w3m mit der Option -M starten, oder
+ </li>
+ <li>
+ innerhalb von w3m die Taste <q>o</q> betätigen, was den Einstellungs-Dialog öffnet, in dem Sie <q>in Farbe anzeigen</q> abschalten können.
+ </li>
+ </ul>
+ </dd>
+ <dt>
+ <b>
+ Wie kann ich den angezeigten Bereich verschieben?
+ </b>
+ </dt>
+ <dd>
+ <p>
+ Indem Sie den Cursor an den Rand des Bildschirmes bewegen. Außerdem können Sie die folgenden Kommmandos nutzen
+ </p>
+ <ul>
+ <li>SHIFT_LEFT und SHIFT_RIGHT, denen die Tasten <span class="mono">&gt;</span> und <span class="mono">&lt;</span> zugeordnet sind</li>
+ <li>SHIFT_LEFT1 und SHIFT_RIGHT1, denen die Tasten <span class="mono">.</span> und <span class="mono">,</span> zugeordnet sind</li>
+ </ul>
+ <p>
+ Ein weiterer Weg wäre, mit der Option -geometry des Terminalprogramms den zur Anzeige verfügbaren Platz anzupassen, beispielsweise mit einer Eingabe der Art
+ </p>
+ <pre> xterm -geometry 110x45 -bg white -name w3m -e w3m -B</pre>
+ </dd>
+ <dt>
+ <b>
+ Wie komme ich von einem zum anderen Hyperlink?
+ </b>
+ </dt>
+ <dd>
+ <p>
+
+ Sie erreichen den nächsten Hyperlink mit der TAB-Taste. Zum vorhergehenden springt der Cursor, wenn die ESC-Taste vor der TAB-Taste gedrückt wurde. (Mehr zu <a href="MANUAL.html#Functions" target="_blank"> Funktionen und Tastaturbelegung</a> im Handbuch von w3m)
+
+ </p>
+ </dd>
+ <dt>
+ <b>
+ Grafische Browser stellen ein Wort rot dar, w3m hingegen nicht. Warum?
+ </b>
+ </dt>
+ <dd>
+ <p>
+ w3m ignoriert das Attribut COLOR="..." in HTML. Dessen Berücksichtigung zu implementieren, wäre möglich, aber ich denke, die Dokumente wären am Ende schwerer lesbar.
+ </p>
+ </dd>
+ <dt>
+ <b>
+ Wie ändere ich die für Hyperlinks, Bilder und Formularfelder benutzten Farben?
+ </b>
+ </dt>
+ <dd>
+ <p>
+ Tippen Sie in w3m <q>o</q> ein und gelangen damit in den Einstellungs-Dialog. Dort können Sie die Farben ändern.
+ </p>
+ </dd>
+ <dt>
+ <b>
+ w3m scheint die Umgebungsvariable EDITOR zu ignorieren. Weshalb?
+ </b>
+ </dt>
+ <dd>
+ <p>
+ Tippen Sie in w3m <q>o</q> ein und gelangen damit in den Einstellungs-Dialog. Jeglicher Eintrag im Feld <q>Editor</q> hat Vorrang gegenüber der Umgebungsvariablen.
+ </p>
+ <p>
+ Wenn Sie also das durch EDITOR angegebene Textbearbeitungsprogramm verwenden möchten, löschen Sie den Eintrag und drücken [OK].
+ </p>
+ </dd>
+ <dt>
+ <b>
+ Wie breche ich eine Suche oder die Eingabe einer URL ab?
+ </b>
+ </dt>
+ <dd>
+ <p>
+ Löschen Sie den eingegebenen Text mit <span class="mono">STRG-u</span> und drücken Sie die Eingabetaste.
+ </p>
+ </dd>
+ </dl>
+ <p align="right">
+ <i>
+ Zurück zur <a href="#index">Übersicht</a>
+ </i>
+ </p>
+ <h2 id="www">
+ <u>
+ Fragen zur Benutzung als Internetbrowser
+ </u>
+ </h2>
+ <dl>
+ <dt>
+ <b>
+ Wie fülle ich mit w3m Formulare aus?
+ </b>
+ </dt>
+ <dd>
+ <p>
+ Formular-Eingabefelder werden in rot (oder invertiert) angezeigt. Bewegen Sie den Cursor dorthin. Wenn es
+ </p>
+ <ul>
+ <li>
+ ein Texteingabefeld ist, drücken Sie die Eingabetaste, schreiben den Text unten in die Eingabezeile und drücken die Eingabetaste nochmals,
+ </li>
+ <li>
+ sich um einen Radiobutton oder eine Checkbox handelt, wird bei Drücken der Eingabetaste die Auswahl verändert oder neu getroffen
+ </li>
+ <li>
+ sich um einen Texteingabebereich handelt, wird durch Drücken der Eingabetaste ein Editor gestartet
+ </li>
+ <li>
+ sich um eine Schaltflächen für <q>Übermitteln</q> oder <q>Zurücksetzen</q> handelt, wird die entsprechende Aktion ausgeführt.
+ </li>
+ </ul>
+ </dd>
+ <dt>
+ <b>
+ w3m scheint langsamer als einige andere Browser zu sein. Warum?
+ </b>
+ </dt>
+ <dd>
+ <p>
+ HTML-Dokumente werden in zwei Schritten verarbeitet. Erst nachdem ein Dokument vollständig vorliegt, baut w3m die Anzeige auf.
+ </p>
+ <p>
+ Da die meisten anderen Browser die Seite aufbauen, ehe sie komplett ist, scheinen sie schneller.
+ </p>
+ </dd>
+ <dt>
+ <b>
+ Die Zeit zum Laden einer Seite wird nicht geringer, wenn diese Seite schon einmal angezeigt wurde.
+ </b>
+ </dt>
+ <dd>
+ <p>
+ w3m nutzt keinen eigenen Zwischenspeicher. Es liest daher Dokumente jedesmal neu vom Server ein. Wenn möglich, verwenden Sie einen Server für die Zwischenspeicherung.
+ </p>
+ </dd>
+ <dt>
+ <b>
+ Wie lade ich eine Datei herunter, auf die verlinkt wird?
+ </b>
+ </dt>
+ <dd>
+ <p>
+ Verwenden Sie <q>a</q> (oder <q>d</q> bei lynx-artiger Tastaturbelegung) oder <span class="mono">ESC RET</span>. Wenn Sie ein eingebundenes Bild herunterladen möchten, drücken Sie <span class="mono">ESC I</span>. (Mehr zu <a href="MANUAL.html#Functions" target="_blank"> Funktionen und Tastaturbelegung</a> im Handbuch von w3m)
+ </p>
+ </dd>
+ <dt>
+ <b>
+ Wie gebe ich einen Proxy-Server vor?
+ </b>
+ </dt>
+ <dd>
+ <p>
+ Setzen Sie die Umgebungsvariablen HTTP_PROXY, HTTPS_PROXY, GOPHER_PROXY und FTP_PROXY oder öffnen mit <q>o</q> den Einstellungs-Dialog. Um beispielsweise den Port 8000 von proxy.example.org zu benutzen, geben Sie ein
+ </p>
+ <pre> http://proxy.example.org:8000/</pre>
+ </dd>
+<!-- deleted, see mail dated Mon, 04 Apr 2016 20:50:27 +0900 (JST)
+from Tatsuya Kinoshita <tats@debian.org>
+ <dt>
+ <b>
+ w3m freezes when I invoke an external browser.
+ </b>
+ </dt>
+ <dd>
+ <p>
+ Enter w3m's option screen using the <q>o</q> key and specify
+ </p>
+ <pre> firefox %s &</pre>
+ <p>
+ (if you are using Firefox). Note that %s is replaced with the URL
+ when invoking.
+ </p>
+ </dd>
+ -->
+ <dt>
+ <b>
+ Wie wähle ich den standardmäßig verwendeten Bildbetrachter aus?
+ </b>
+ </dt>
+ <dd>
+ <p>
+ Standardmäßig benutzt w3m den Bildbetrachter xv. Wenn Sie beispielsweise <q>display</q> vorziehen, ergänzen Sie ~/.w3m/mailcap oder /etc/mailcap um die Zeile:
+ </p>
+<pre>
+ image/*; display %s
+</pre>
+ <p>
+ Ebenso können Sie für andere Dateitypen externe Anzeigeprogramme festlegen:
+ </p>
+<pre>
+ image/*; display %s <br>application/postscript; ghostview %s <br>application/x-dvi; xdvi %s
+</pre>
+ </dd>
+ <dt>
+ <b>
+ Wie wird eine URL eingegeben?
+ </b>
+ </dt>
+ <dd>
+ <p>
+ Drücken Sie <span class="mono">U</span>
+ </p>
+ </dd>
+ <dt>
+ <b>
+ w3m hängt eine URL an die vorherige an, obwohl die Zeile mit <span class="mono">STRG-u</span> gelöscht worden war. Was ist zu tun?
+ </b>
+ </dt>
+ <dd>
+ <p>
+ Geben Sie die <i>komplette</i> Adresse ein, z.B. http://www.slashdot.org.
+ </p>
+ </dd>
+ </dl>
+ <p align="right">
+ <i>
+ Zurück zur <a href="#index">Übersicht</a>
+ </i>
+ </p>
+ <h2 id="other">
+ <u>
+ Verschiedenes
+ </u>
+ </h2>
+ <dl>
+ <dt>
+ <b>
+ Ich suche die Konfigurationsdatei von w3m.
+ </b>
+ </dt>
+ <dd>
+ <p>
+ Es ist ~/.w3m/config.
+ </p>
+
+ <p>
+ In dieser Datei kann jeder Benutzer das Verhalten von w3m anpassen. Sie finden dort zeilenweise die Variablen zu den im Einstellungs-Dialog beschriebenen Optionen. Den Namen und die Belegung einer Variable trennt ein Leerzeichen.
+ </p>
+
+ <p>Ohne eine benutzerspezifische Konfigurationsdatei richtet sich w3m nach der systemweiten Konfigurationsdatei /etc/w3m/config.
+ </p>
+
+ </dd>
+ <dt>
+ <b>
+ Wofür sind die w3mxxxx Dateien in meinem ~/.w3m Verzeichnis gut?
+ </b>
+ </dt>
+ <dd>
+ <p>
+ Es handelt sich um temporäre Dateien, die w3m beim Lesen anlegt. Sie dienen nicht zur Zwischenspeicherung und werden beim Verlassen des Programms normalerweise gelöscht. Wenn welche zurückbleiben, löschen Sie sie einfach selbst.
+ </p>
+ </dd>
+ </dl>
+ <p align="right">
+ <i>
+ Zurück zur <a href="#index">Übersicht</a>
+ </i>
+ </p>
+ </body>
+</html>
diff --git a/doc-de/MANUAL.html b/doc-de/MANUAL.html
new file mode 100644
index 0000000..e12d3b3
--- /dev/null
+++ b/doc-de/MANUAL.html
@@ -0,0 +1,2353 @@
+
+<html>
+ <head>
+ <title>w3m Handbuch</title>
+ <style>
+ span.mono {
+ font-family:mono;
+ }
+ </style>
+ <meta http-equiv="content-type" content="text/html;charset=UTF-8">
+ </head>
+ <body>
+ <!--
+insertions tagged with "mh 2016-03-29" and "mh 2016-06-11" come from the latest version of manual page w3m (1)
+ -->
+
+ <h1>w3m HANDBUCH</h1>
+ <div align="right">
+ Akinori Ito<br> aito@fw.ipsj.or.jp
+ </div>
+ <h2>Übersicht</h2>
+ <ul>
+ <li>
+ <a href="#Einführung">
+ Einführung
+ </a>
+ </li>
+ <li>
+ <a href="#Einstellungen">
+ Einstellungen
+ </a>
+ </li>
+ <li>
+ <a href="#Color">
+ Farbzuordnung im Dokument
+ </a>
+ </li>
+ <li>
+ <a href="#Functions">
+ Funktionen und Tastaturbelegung
+ </a>
+ </li>
+<!-- mh 2016-06-13 obsolete
+ <li>
+ <a href="#Key:lynx">
+ Lynx-like key bindings
+ </a>
+ </li>
+-->
+ <li>
+ <a href="#Mouse">
+ Bedienung per Maus
+ </a>
+ </li>
+<!-- mh 2016-06-13 obsolete
+ <li>
+ <a href="#Key:custom">
+ Key customization
+ </a>
+ </li>
+ -->
+ <li>
+ <a href="#LocalCGI">
+ Lokale CGI-Skripte
+ </a>
+ </li>
+ </ul>
+ <hr>
+ <h2 id="Einführung">
+ Einführung
+ </h2>
+ <p>
+ w3m ist ein textorientierter Browser und Textbetrachter (Pager). In einem Terminalemulator können Sie damit lokale und andere Dokumente anzeigen lassen und Verknüpfungen (Hyperlinks) weiterverfolgen.
+ </p>
+ <hr>
+ <h2 id="Einstellungen">
+ Einstellungen
+ </h2>
+ <p>
+ Der Aufruf per Befehlszeile lautet
+ </p>
+<!-- mh 2016-08-06 invocation adapted to w3m(1). w3m accepts several options and several targets -->
+<pre>
+ w3m [Option]… [Datei|Adresse]…
+</pre>
+ <p>
+ Wenn Sie Dateinamen oder Adressen in der Befehlszeile angeben, werden diese Dokumente angezeigt. Fehlen entsprechende Argumente, wird w3m ein Dokument aus der Standardeingabe erwarten und anzeigen. Erhält das Programm auch hier keine Daten, beendet es sich normalerweise selbstständig.
+ </p>
+ <p>
+ Optionen sind unter anderem:
+ </p>
+ <dl>
+<h3>Allgemeine Optionen</h3>
+ <dt>
+ -B
+ </dt>
+ <dd>
+ <!-- mh 2016-03-29--><p>
+
+ starte mit einer Ansicht aller Lesezeichen (wenn kein anderes Zielobjekt angegeben ist)
+ </p>
+ </dd>
+ <dt>
+ -M
+ </dt>
+ <dd>
+ <!-- mh 2016-03-29--><p>
+
+ monochrome Anzeige
+ </p>
+ </dd>
+ <dt>
+ -no-mouse
+ </dt>
+ <dd>
+ <p>
+ Mausfunktion aus
+ </p>
+ </dd>
+ <dt>
+ -num
+ </dt>
+ <dd>
+ <!-- mh 2016-03-29--><p>
+
+ zeige Zeilennummern an
+
+ </p>
+ </dd>
+<!-- mh 2016-08-06 commented out. As implementation is not verified.
+ <dt>
+ -ppc <i>num</i>
+ </dt>
+ <dd>
+ <p>
+ width of <i>num</i> pixels per character. Range of 4.0 to 32.0,
+ default 8.0. Larger values will make tables
+ narrower. (Implementation not verified)
+ </p>
+ </dd>
+-->
+ <dt>
+ -v
+ </dt>
+ <dd>
+ <!-- mh 2016-03-29--><p>
+
+ begrüße den Benutzer mit einer eingebauten Seite (wenn kein anderes Zielobjekt angegeben ist)
+ </p>
+ </dd>
+ <dt>
+ -W
+ </dt>
+ <dd>
+ <!-- mh 2016-03-29--><p>
+
+ wechsle zwischen umlaufendem und nicht umlaufendem Suchen
+ </p>
+ </dd>
+ <dt>
+ -X
+ </dt>
+ <dd>
+ <p>
+ nach Beenden des Programms das Terminal nicht neu initialisieren.
+ </p>
+ </dd>
+ <dt>
+ +<i>Zahl</i>
+ </dt>
+ <dd>
+ <!--mh 2016-06-11 --><p>
+ gehe zu Zeile <i>Zahl</i>. Wirkt nur, wenn <i>Zahl</i> größer ist als die im Terminal verfügbare Zeilenzahl
+ </p>
+ </dd>
+<h3>Browser-Optionen</h3>
+ <dt>
+ -cols <i>Zahl</i>
+ </dt>
+ <dd>
+ <!-- mh 2016-06-11 --><p>
+
+ bei für die Standardausgabe bestimmten Inhalten, nimm bei zur Umsetzung von HTML eine Länge von <i>num</i> Zeichen pro Zeile
+ </p>
+ </dd>
+ <dt>
+ -cookie
+ </dt>
+ <dd>
+ <!-- mh 2016-03-29--><p>
+
+ verwende gespeicherte Cookies und akzeptiere neue
+ </p>
+ </dd>
+ <dt>
+ -no-cookie
+ </dt>
+ <dd>
+ <!-- mh 2016-03-29--><p>
+
+ verwende weder gespeicherte Cookies noch akzeptiere neue
+
+ </p>
+ </dd>
+ <dt>
+ -F
+ </dt>
+ <dd>
+ <!-- mh 2016-03-29--><p>
+
+ verarbeite Frames
+ </p>
+ </dd>
+ <dt>
+ -no-graph
+ </dt>
+ <dd>
+ <!-- mh 2016-03-29--><p>
+
+ verwende bei der Umsetzung von Tabellen und Frames keine grafischen Zeichen
+ </p>
+ </dd>
+ <dt>
+ -header <i>Zeichenkette</i>
+ </dt>
+ <dd>
+ <!-- mh 2016-03-29--><p>
+
+ füge der HTTP(S)-Anfrage <i>Zeichenkette</i> an. Diese muss der Kopfdaten-Syntax <span class="mono">"Variable: Wert"</span> entsprechen
+ </p>
+ </dd>
+ <dt>
+ -m
+ </dt>
+ <dd>
+ <!-- mh 2016-03-29
+Render the body of Usenet messages according to the header <q>Content-type</q>
+--><p>
+ arbeite im <q>Internetnachrichten-Modus</q>. Mit dieser Option entnimmt w3m den Typ eines Dokumentes dessen Kopfdaten. Dies ist nützlich beim Lesen von Mails und Usenet-Nachrichten.
+
+ </p>
+ </dd>
+ <dt>
+ -no-proxy
+ </dt>
+ <dd>
+ <!-- mh 2016-06-11--><p>
+
+ verwende keinen Proxy
+ </p>
+ </dd>
+ <dt>
+ -post <i>Datei</i>
+ </dt>
+ <dd>
+ <!--funktionierend 2016-06-28T08:22>--><p>
+ verwende die Methode POST, um in <i>Datei</i> hinterlegte Daten hochzuladen. Hierbei wird die Syntax <span class="mono">"var1=wert1[&amp;var2=wert2]&hellip;"</span> erwartet
+ </p>
+ </dd>
+<h3>Textbetrachter-Optionen</h3>
+ <dt>
+ -l <i>Zahl</i>
+ </dt>
+ <dd>
+ <!-- mh2016-06-11--><p>
+
+ Anzahl der Zeilen, die zwischengespeichert werden, wenn Text per Standardeingabe übergeben wurde. (Voreinstellung ist 10000)
+ </p>
+ </dd>
+ <dt>
+ -r
+ </dt>
+ <dd>
+ <!-- mh 2016-03-29 --><p>
+
+ verarbeite spezielle Escape-Zeichen (beispielsweise ANSI-Escape-Zeichen oder nroff-Rückwärtsschritte für fette und unterstrichene Zeichen) nicht, sondern zeige sie stattdessen mittels Caret-Notation.
+ </p>
+ </dd>
+ <dt>
+ -s
+ </dt>
+ <dd>
+ <!-- mh 2016-03-29--><p>
+
+ mehrere leere Zeilen werden bis auf eine gelöscht
+ </p>
+ </dd>
+
+ <!--mh 2016-03-29 --><dt>
+ -t <i>Zahl</i>
+ </dt>
+ <dd>
+ <!--mh 2016-03-29--><p>
+ Tab-Zeichen so verwerten, dass Spalten mit einer Weite von <i>Zahl</i> Zeichen entstehen. Wirkt nicht auf Standardausgabe
+ </p>
+ </dd>
+<h3>Datenart- und Datenkodierungs-Optionen</h3>
+ <dt>
+ -I <i>Zeichenkodierung</i>
+ </dt>
+ <dd>
+ <!-- mh 2016-03-29--><p>
+
+ zu benutzende Zeichenkodierung für erhaltene Daten
+ </p>
+ </dd>
+ <dt>
+ -O <i>Zeichenkodierung</i>
+ </dt>
+ <dd>
+ <!-- mh 2016-03-29 --><p>
+
+ zu benutzende Zeichenkodierung für auszugebende Daten
+ </p>
+ </dd>
+ <dt>
+ -T <i>Typ</i>
+ </dt>
+ <dd>
+ <!-- mh 2016-06-11--><p>
+
+ legt den MIME-Typ erhaltener Daten fest. Ohne diese Option bestimmt ihn das Programm anhand der Dateinamen-Erweiterung. Wenn dies fehlschlägt, wird text/plain als Typ angenommen. Zum Beispiel:
+ </p>
+ <p>
+ Übernimm HTML-Dokument von der Standardeingabe und zeige es an
+ </p>
+<pre>
+ cat beispiel.html | w3m -T text/html
+</pre>
+ <p>
+ Zeige HTML-Quelltext an
+ </p>
+<pre>
+ w3m -T text/plain beispiel.html
+</pre>
+ </dd>
+<h3>Optionen zur Datenausgabe, mit sofortigem Verlassen des Programms</h3>
+ <dt>
+ -dump
+ </dt>
+ <dd>
+ <!-- mh 2016-03-29 --><p>
+ lies das per URL angegebene Dokument und leite es verarbeitet der Standardausgabe zu. Wenn mit der Option -cols nichts anderes eingestellt ist, erhält es eine Breite von 80 Zeichen
+ </p>
+ </dd>
+ <dt>
+ -dump_source
+ </dt>
+ <dd>
+ <!-- mh 2016-03-29--><p>
+
+ leite den Seitenquelltext der Standardausgabe zu
+ </p>
+ </dd>
+ <dt>
+ -dump_head
+ </dt>
+ <dd>
+ <!-- mh 2016-03-29--><p>
+
+ leite die Antwort einer HEAD-Anfrage für eine URL der Standardausgabe zu
+ </p>
+ </dd>
+ <dt>
+ -dump_both
+ </dt>
+ <dd>
+ <!-- mh 2016-03-29--><p>
+
+ leite Antwort auf HEAD-Anfrage und Seitenquelltext der Standardausgabe zu
+
+ </p>
+ </dd>
+ <dt>
+ -dump_extra
+ </dt>
+ <dd>
+ <!-- mh 2016-03-29--><p>
+
+ leite Antwort auf HEAD-Anfrage, Seitenquelltext und Extrainformation der Standardausgabe zu
+ </p>
+ </dd>
+
+<h3>Optionen, die Standards für Einstellungen und Datenquellen außer Kraft setzen</h3>
+
+ <dt>
+ -bookmark <i>Datei</i>
+ </dt>
+ <dd>
+ <!-- mh 2016-03-29--><p>
+
+ benutze anstelle der Standarddatei bookmark.html für Lesezeichen die Datei <i>Datei</i>
+ </p>
+ </dd>
+ <dt>
+ -config <i>Datei</i>
+ </dt>
+ <dd>
+ <!--mh 2016-06-11--><p>
+
+ benutze <i>Datei</i> anstelle der Standard-Konfigurationsdatei
+ </p>
+ </dd>
+ <dt>
+ -o <i>Option</i>=<i>Wert</i>
+ </dt>
+ <dd>
+ <!-- mh 2016-03-29--><p>
+
+ arbeite mit einer Konfiguration, bei der die Einstellung <i>Option</i> mit <i>Wert</i> belegt ist. Ohne <i>Option=Wert</i> gleichwertig mit <i>-show-option</i>
+ </p>
+ </dd>
+ </dl>
+ <hr>
+ <h2 id="Color">
+ Farbzuordnung im Dokument
+ </h2>
+ <p>
+ Links und Bildelemente werden wie folgt angezeigt:
+ </p>
+ <div align="center"> <table border="1"> <tr>
+ <th>
+ </th>
+ <th>
+ Farbmodus
+ </th>
+ <th>
+ Monochrom-Modus
+ </th>
+ </tr>
+ <tr>
+ <td>
+ Hyperlinks
+ </td>
+ <td>
+ blau
+ </td>
+ <td>
+ unterstrichen
+ </td>
+ </tr>
+ <tr>
+ <td>
+ Bilder
+ </td>
+ <td>
+ grün
+ </td>
+ <td>
+ invertiert
+ </td>
+ </tr>
+ <tr>
+ <td>
+ Formular-Eingabefelder
+ </td>
+ <td>
+ rot
+ </td>
+ <td>
+ invertiert
+ </td>
+ </tr>
+ </table>
+ </div>
+ <p>
+ Diese Farben können nach Eingabe von <q>o</q> im Einstellungs-Dialog anders zugeordnet werden.
+ </p>
+ <hr>
+ <h2 id="Functions">
+ Funktionen und Tastaturbelegung
+ </h2>
+
+ <!-- mh 2016-06-13 obsolete
+ If you prefer using Lynx-like
+ key bindings, make w3m start with the respective keymap file keymap.lynx. (see w3m (1)).--><p>
+ Wenn w3m läuft, bedienen Sie das Programm, indem Sie Funktionen anhand ihres Namens oder der ihr zugeordneten Tastenkombination aufrufen. Es gibt voreingestellte Tastaturbelegungen.
+
+ </p>
+<!--
+ <h2 id="Key:custom">
+ Key customization
+ </h2>
+-->
+ <p>
+ Sie können die Tastaturbelegungen (abgesehen von jenen des Menü- und des Texteingabe-Modus) in einer Datei ~/.w3m/keymap anpassen. Beispielsweise bindet
+ </p>
+
+<pre>
+ keymap C-o NEXT_PAGE
+</pre>
+
+ <p>
+ die Funktion <span class="mono">NEXT_PAGE</span> (die normalerweise mit SPC und C-v verknüpft ist) mit C-o. Siehe die Liste verfügbarer Funktionen in <a href="README.func">README.func</a>. Original- und Lynx-artige Tastaturbelegungen enthalten die Beispieldateien <a href="keymap.default">keymap.default</a> und <a href="keymap.lynx">keymap.lynx</a>.
+ </p>
+
+ <p>
+ Im Folgenden stehen <i>C-</i> und <i>M-</i> für die Eingabe-Modifikationen mit der <i>Steuerungs-</i> und der <i>Meta-Taste</i>. Die letztere ersetzt die <i>ALT-Taste</i>, wohingegen Drücken der <i>ESC</i>-Taste zwischen <i>Meta</i>-modifiziertem und einfachen Tastendruck wechselt. Das Minus-Zeichen bedeutet das gleichzeitige Drücken von Tasten; der Leerraum dagegen steht dafür, dass eine Taste nach der anderen gedrückt wird. Mit <i>2 M</i> ist also gemeint, die <i>2</i> und dann <i>M</i> zu drücken.
+ </p>
+
+
+ <table border="1" width="100%">
+ <colgroup>
+ <col width="20%">
+ <col width="20%">
+ <col width="20%">
+ <col width="40%">
+ </colgroup>
+ <tr>
+ <th rowspan="2">
+ Funktion
+ </th>
+ <th colspan="2">Tastenkombination
+ </th>
+ <th rowspan="2">
+ Beschreibung
+ </th>
+ </tr>
+ <tr>
+ <th>
+ Standard
+ </th>
+ <th>
+ Lynx-ähnlich
+ </th>
+ </tr>
+ <tr>
+ <td colspan="4">
+ <h3>Navigation innerhalb von Seiten</h3>
+</td>
+ </tr>
+ <tr>
+ <td>
+ NEXT_PAGE
+ </td>
+ <td>
+ SPC, C-v, +, PGDN
+ </td>
+ <td>
+ SPC, C-v, +
+ </td>
+ <td>
+ Scrolle eine Seite abwärts
+ </td>
+ </tr>
+ <tr>
+ <td>
+ PREVIOUS_PAGE
+ </td>
+ <td>
+ b, M-v, -, PGUP
+ </td>
+ <td>
+ b, M-v, -
+ </td>
+ <td>
+ Scrolle eine Seite aufwärts
+ </td>
+ </tr>
+ <tr>
+ <td>
+ MOVE_RIGHT
+ </td>
+ <td>
+ l, C-f, RIGHT
+ </td>
+ <td>
+ l
+ </td>
+ <td>
+ Bewege Cursor nach rechts (mit Verschiebung um halbe Bildschirmbreite an dessen Rand)
+ </td>
+ </tr>
+ <tr>
+ <td>
+ C-b, LEFT
+ </td>
+ <td>
+ h, C-b, LEFT
+ </td>
+ <td>
+ h
+ </td>
+ <td>
+ Bewege Cursor nach links (mit Verschiebung um halbe Bildschirmbreite an dessen Rand)
+ </td>
+ </tr>
+ <tr>
+ <td>
+ MOVE_DOWN
+ </td>
+ <td>
+ j, C-n, DOWN
+ </td>
+ <td>
+ j
+ </td>
+ <td>
+ Bewege Cursor abwärts (scrolle eine Zeile am Bildschirmrand)
+ </td>
+ </tr>
+ <tr>
+ <td>
+ MOVE_UP
+ </td>
+ <td>
+ k, C-p, UP
+ </td>
+ <td>
+ k
+ </td>
+ <td>
+ Bewege Cursor aufwärts (scrolle eine Zeile am Bildschirmrand)
+ </td>
+ </tr>
+ <tr>
+ <td>
+ UP
+ </td>
+ <td>
+ J
+ </td>
+ <td>
+ J
+ </td>
+ <td>
+ Scrolle den Anzeigebereich eine Zeile aufwärts
+ </td>
+ </tr>
+ <tr>
+ <td>
+ DOWN
+ </td>
+ <td>
+ K
+ </td>
+ <td>
+ K
+ </td>
+ <td>
+ Scrolle den Anzeigebereich eine Zeile abwärts
+ </td>
+ </tr>
+ <tr>
+ <td>
+ LINE_BEGIN
+ </td>
+ <td>
+ ^, C-a
+ </td>
+ <td>
+ ^
+ </td>
+ <td>
+ Gehe zum Zeilenanfang
+ </td>
+ </tr>
+ <tr>
+ <td>
+ LINE_END
+ </td>
+ <td>
+ $, C-e
+ </td>
+ <td>
+ $
+ </td>
+ <td>
+ Gehe zum Zeilenende
+ </td>
+ </tr>
+ <tr>
+ <td>
+ NEXT_WORD
+ </td>
+ <td>
+ w
+ </td>
+ <td>
+ w
+ </td>
+ <td>
+ Gehe zum nächsten Wort
+ </td>
+ </tr>
+ <tr>
+ <td>
+ PREVIOUS_WORD
+ </td>
+ <td>
+ W
+ </td>
+ <td>
+ W
+ </td>
+ <td>
+ Gehe zum vorherigen Wort
+ </td>
+ </tr>
+ <tr>
+ <td>
+ SHIFT_RIGHT
+ </td>
+ <td>
+ >
+ </td>
+ <td>
+ >
+ </td>
+ <td>
+ Anzeigebereich nach rechts versetzen
+ </td>
+ </tr>
+ <tr>
+ <td>
+ SHIFT_LEFT
+ </td>
+ <td>
+ <
+ </td>
+ <td>
+ <
+ </td>
+ <td>
+ Anzeigebereich nach links versetzen
+ </td>
+ </tr>
+ <tr>
+ <td>
+ RIGHT
+ </td>
+ <td>
+ .
+ </td>
+ <td>
+ .
+ </td>
+ <td>
+ Anzeigebereich um eine Spalte nach rechts verschieben
+ </td>
+ </tr>
+ <tr>
+ <td>
+ LEFT
+ </td>
+ <td>
+ ,
+ </td>
+ <td>
+ ,
+ </td>
+ <td>
+ Anzeigebereich um eine Spalte nach links verschieben
+ </td>
+ </tr>
+ <tr>
+ <td>
+ BEGIN
+ </td>
+ <td>
+ g, M-<, HOME
+ </td>
+ <td>
+ C-a, M-<
+ </td>
+ <td>
+ Gehe zur ersten Zeile
+ </td>
+ </tr>
+ <tr>
+ <td>
+ END
+ </td>
+ <td>
+ G, M->, END
+ </td>
+ <td>
+ C-e, M->
+ </td>
+ <td>
+ Gehe zur letzten Zeile
+ </td>
+ </tr>
+ <tr>
+ <td>
+ GOTO_LINE
+ </td>
+ <td>
+ M-g
+ </td>
+ <td>
+ G
+ </td>
+ <td>
+ Gehe zur angegebenen Zeile
+ </td>
+ </tr>
+ <tr>
+ <td>
+ LINE_INFO
+ </td>
+ <td>
+ C-g
+ </td>
+ <td>
+ C-g
+ </td>
+ <td>
+ Zeige aktuelle Position im Dokument an
+ </td>
+ </tr>
+ <tr>
+ <td>
+ CENTER_H
+ </td>
+ <td>
+ Z
+ </td>
+<!--Correction by mh 2014-04-06
+Description for keybinding of z and Z had been mingled
+-->
+ <td>
+ Z
+ </td>
+ <td>
+ Bildschirm rechts und links des Cursors zentrieren
+ </td>
+ </tr>
+ <tr>
+ <td>
+ CENTER_V
+ </td>
+ <td>
+ z
+ </td>
+ <td>
+ z
+ </td>
+ <td>
+ Bildschirm ober- und unterhalb des Cursors zentrieren
+ </td>
+ </tr>
+ <tr>
+ <td>
+ NEXT_LINK
+ </td>
+ <td>
+ TAB
+ </td>
+ <td>
+ TAB, C-n, DOWN
+ </td>
+ <td>
+ Gehe zum nächsten Hyperlink
+ </td>
+ </tr>
+ <tr>
+ <td>
+ PREVIOUS_LINK
+ </td>
+ <td>
+ M-TAB, C-u
+ </td>
+ <td>
+ M-TAB, C-u, C-p, UP
+ </td>
+ <td>
+ Gehe zum vorangegangen Hyperlink
+ </td>
+<!-- Annotion mh 2016-04-06
+Keybinding description for C-g had been moved as it did not fit to "Hyperlink operation" and position in the default and lynx-like series differed
+ -->
+ </tr>
+ <tr>
+ <td>
+ LINK_BEGIN
+ </td>
+ <td>
+ [
+ </td>
+ <td>
+ [
+ </td>
+ <td>
+ Gehe zum ersten Hyperlink
+ </td>
+ </tr>
+ <tr>
+ <td>
+ LINK_END
+ </td>
+ <td>
+ ]
+ </td>
+ <td>
+ ]
+ </td>
+ <td>
+ Gehe zum letzten Hyperlink
+ </td>
+ </tr>
+<tr>
+<td>MOVE_LIST_MENU</td>
+<td>M-m</td>
+<td>M-m</td>
+<td>Öffne Menü mit vorhandenen Hyperlinks</td>
+</tr>
+<!-- </table>-->
+ <tr>
+ <td colspan="4">
+ <h3>Umgang mit Hyperlinks</h3>
+ </td>
+ </tr>
+<!-- <table>-->
+ <tr>
+ <td>
+ GOTO_LINK
+ </td>
+ <td>
+ C-j, C-m, RET
+ </td>
+ <td width="100">
+ C-f, C-j, C-m, RET, RIGHT
+ </td>
+ <td>
+ Folge dem aktuellen Hyperlink in neuem Puffer
+ </td>
+ </tr>
+<tr>
+<td>LIST_MENU</td>
+<td>M-l</td>
+<td>M-l</td>
+<td>Öffne Menü mit Hyperlinks und folge dem ausgewählten</td>
+</tr>
+ <tr>
+ <td>
+ SAVE_LINK
+ </td>
+ <td>
+ a, M-RET
+ </td>
+ <td>
+ d, M-RET
+ </td>
+ <td>
+ Speichere Ziel des Hyperlinks
+ </td>
+ </tr>
+ <tr>
+ <td>
+ PEEK_LINK
+ </td>
+ <td>
+ u
+ </td>
+ <td>
+ u
+ </td>
+ <td>
+ Zeige Zieladresse
+ </td>
+ </tr>
+ <tr>
+ <td>
+ PEEK_IMG
+ </td>
+ <td>
+ i
+ </td>
+ <td>
+ i
+ </td>
+ <td>
+ Zeige Adresse des Bildes
+ </td>
+ </tr>
+ <tr>
+ <td>
+ VIEW_IMAGE
+ </td>
+ <td>
+ I
+ </td>
+ <td>
+ I
+ </td>
+ <td>
+ Zeige Bild in Betrachter
+ </td>
+ </tr>
+ <tr>
+ <td>
+ SAVE_IMAGE
+ </td>
+ <td>
+ M-I
+ </td>
+ <td>
+ M-I
+ </td>
+ <td>
+ Speichere Bild
+ </td>
+ </tr>
+<tr>
+<td>MARK_WORD</td>
+<td>;</td>
+<td>;</td>
+<td>Wandle aktuelles Wort in Hyperlink um</td>
+</tr>
+ <tr>
+ <td>
+ MARK_URL
+ </td>
+ <td>
+ :
+ </td>
+ <td>
+ :
+ </td>
+ <td>
+ Wandle URL-artige Zeichenketten um in Hyperlinks
+ </td>
+ </tr>
+ <tr>
+ <td>
+ MARK_MID
+ </td>
+ <td>
+ M-:
+ </td>
+ <td>
+ M-:
+ </td>
+ <!-- changed due to mail dated Mon, 04 Apr 2016 00:47:09 +0900 (JST)
+from Tatsuya Kinoshita --><td>
+
+ Wandle Nachrichten-ID-artige Zeichenketten um in Hyperlinks
+ </td>
+ </tr>
+ <tr>
+ <td>
+ PEEK
+ </td>
+ <td>
+ c
+ </td>
+ <td>
+ c
+ </td>
+ <td>
+ Zeige aktuelle Adresse an
+ </td>
+ </tr>
+ <tr>
+ <td>
+ INFO
+ </td>
+ <td>
+ =
+ </td>
+ <td>
+ =
+ </td>
+ <td>
+ Zeige Informationen über dieses Dokument
+ </td>
+ </tr>
+ <tr>
+ <td>
+ HISTORY
+ </td>
+ <td>
+ C-h
+ </td>
+ <td>
+ C-h
+ </td>
+ <td>
+ Chronik aufgesuchter Dokumente
+ </td>
+ </tr>
+ <tr>
+ <td>
+ EXTERN
+ </td>
+ <td>
+ M
+ </td>
+ <td>
+ M
+ </td>
+ <td>
+ Zeige das aktuelle Dokument mit einem externen Browser (wird eine Taste von 2 bis 9 gedrückt, also beispielsweise 3 M, eingegeben, kommt ein anderer, in der Konfiguration hinterlegter Browser zum Einsatz)
+ </td>
+ </tr>
+ <tr>
+ <td>
+ EXTERN_LINK
+ </td>
+ <td>
+ M-M
+ </td>
+ <td>
+ M-M
+ </td>
+ <td>
+ Bringe das Linkziel mit einem externen Browser zur Anzeige (vorangestellte Zahlen wirken sich wie oben beschrieben aus)
+ </td>
+ </tr>
+<!-- </table>-->
+ <tr>
+ <td colspan="4">
+ <h3>Verwalten von Lesezeichen</h3>
+ </td>
+ </tr>
+<!-- <table>-->
+ <tr>
+ <td>
+ BOOKMARK
+ </td>
+ <td>
+ M-b
+ </td>
+ <td>
+ v, M-b
+ </td>
+ <td>
+ Lesezeichen ansehen
+ </td>
+ </tr>
+ <tr>
+ <td>
+ ADD_BOOKMARK
+ </td>
+ <td>
+ M-a
+ </td>
+ <td>
+ a, M-a
+ </td>
+ <td>
+ Lege für aktuelle Seite Lesezeichen an
+ </td>
+ </tr>
+<!-- </table>-->
+ <tr>
+ <td colspan="4">
+ <h3>Umgang mit Dateien und Datenströmen</h3>
+ </td>
+ </tr>
+<!-- <table>-->
+ <tr>
+ <td>
+ GOTO
+ </td>
+ <td>
+ U
+ </td>
+ <td>
+ g, U
+ </td>
+ <td>
+ Öffne angegebenes Dokument in neuem Puffer
+ </td>
+ </tr>
+<tr>
+<td>GOTO_RELATIVE</td>
+<td>M-u</td>
+<td>M-u</td>
+<td>Öffne relative Adresse in neuem Puffer</td>
+</tr>
+ <tr>
+ <td>
+ LOAD
+ </td>
+ <td>
+ V
+ </td>
+ <td>
+ V
+ </td>
+ <td>
+ Öffne lokale Datei in einem neuen Puffer
+ </td>
+ </tr>
+ <tr>
+ <td>
+ READ_SHELL
+ </td>
+ <td>
+ @
+ </td>
+ <td>
+ @
+ </td>
+ <!--Execute shell command and view output--><!--mh 2016-06-13 No difference to PIPE_SHELL could be discerned--><td>
+
+
+ Führe einen Shell-Befehl aus und zeige Ausgabe in einem neuen Puffer
+ </td>
+ </tr>
+ <tr>
+ <td>
+ PIPE_SHELL
+ </td>
+ <td>
+ #
+ </td>
+ <td>
+ #
+ </td>
+ <!--Execute shell command and browse output--><!--mh 2016-06-13 No difference to READ_SHELL could be discerned--><td>
+
+
+ Führe einen Shell-Befehl aus und zeige Ausgabe in einem neuen Puffer
+ </td>
+ </tr>
+<!-- </table>-->
+ <tr>
+ <td colspan="4">
+ <h3>Arbeit an Seiteninhalten</h3>
+ </td>
+ </tr>
+<!-- <table>-->
+ <tr>
+ <!-- is an alias to SOURCE --><td>
+ VIEW
+ </td>
+ <td>
+ v
+ </td>
+ <td>
+ \
+ </td>
+ <td>
+ Wechsle zwischen HTML-Quellcode und verarbeitetem Dokument
+ </td>
+ </tr>
+<tr>
+<td>LIST</td>
+<td>L</td>
+<td>L</td>
+<td>Liste Link-Elemente, Hyperlinks und Bilder auf</td>
+</tr>
+ <tr>
+ <td>
+ FRAME
+ </td>
+ <td>
+ F
+ </td>
+ <td>
+ F
+ </td>
+ <td>
+ Wechsle zwischen Kennung und Umsetzung von HTML-Frames
+ </td>
+ </tr>
+ <tr>
+ <td>
+ REDRAW
+ </td>
+ <td>
+ C-l
+ </td>
+ <td>
+ C-l, C-w
+ </td>
+ <td>
+ Bildschirmanzeige neu aufbauen
+ </td>
+ </tr>
+ <tr>
+ <td>
+ RELOAD
+ </td>
+ <td>
+ R
+ </td>
+ <td>
+ R, C-r
+ </td>
+ <td>
+ Aktuelles Dokument erneut laden
+ </td>
+ </tr>
+ <tr>
+ <td>
+ EDIT
+ </td>
+ <td>
+ E
+ </td>
+ <td>
+ E
+ </td>
+ <td>
+ Bearbeite lokales Quelldokument
+ </td>
+ </tr>
+ <tr>
+ <td>
+ EDIT_SCREEN
+ </td>
+ <td>
+ M-e
+ </td>
+ <td>
+ M-e
+ </td>
+ <td>
+ Bearbeite eine Kopie des verarbeiteten Dokuments
+ </td>
+ </tr>
+<tr>
+<td>PIPE_BUF</td>
+<td>|</td>
+<td>|</td>
+<td>Leite aktuellen Pufferinhalt einem Shell-Befehl zu und zeige Ausgabe an</td>
+</tr>
+ <tr>
+ <!-- is an alias to SAVE --><td>
+ DOWNLOAD
+ </td>
+ <td>
+ M-s
+ </td>
+ <td>
+ M-s
+ </td>
+ <td>
+ Dokument-Quellcode speichern
+ </td>
+ </tr>
+ <tr>
+ <td>
+ SAVE_SCREEN
+ </td>
+ <td>
+ S
+ </td>
+ <td>
+ S, p
+ </td>
+ <td>
+ Speichere verarbeitetes Dokument
+ </td>
+ </tr>
+<!-- </table>-->
+ <tr>
+ <td colspan="4">
+ <h3>Navigation zwischen Puffern und Reitern</h3>
+ </td>
+ </tr>
+<!-- <table>-->
+ <tr>
+ <td>
+ BACK
+ </td>
+ <td>
+ B
+ </td>
+ <td>
+ B, C-b, LEFT
+ </td>
+ <td>
+ Schließe aktuellen Puffer und kehre zu dem im Stapel darunterliegenden zurück
+ </td>
+ </tr>
+ <tr>
+ <td>
+ GOTO_HOME
+ </td>
+ <td>
+ C-_
+ </td>
+ <td>
+ </td>
+ <td>
+ Zurück zur Startseite (die Variablen HTTP_HOME oder WWW_HOME spezifiziert wurden)
+ </td>
+ </tr>
+ <tr>
+ <td>
+ SELECT_MENU
+ </td>
+ <td>
+ s
+ </td>
+ <td>
+ s, C-h
+ </td>
+ <td>
+ Öffne Pufferstapel-Menü
+ </td>
+ </tr>
+ <tr>
+ <td>
+ TAB_MENU
+ </td>
+ <td>
+ M-t
+ </td>
+ <td>
+ M-t
+ </td>
+ <td>
+ Öffne das Reiter-Auswahl-Menü
+ </td>
+ </tr>
+ <tr>
+ <td>
+ NEW_TAB
+ </td>
+ <td>
+ T
+ </td>
+ <td>
+ T
+ </td>
+ <td>
+ Öffne neuen Reiter (mit aktuellem Dokument)
+ </td>
+ </tr>
+ <tr>
+ <td>
+ TAB_LINK
+ </td>
+ <td>
+ C-t
+ </td>
+ <td>
+ C-t
+ </td>
+ <td>
+ Folge dem aktuellen Hyperlink in einem neuen Reiter
+ </td>
+ </tr>
+ <tr>
+ <td>
+ NEXT_TAB
+ </td>
+ <td>
+ }
+ </td>
+ <td>
+ }
+ </td>
+ <td>
+ Schalte zum nächsten Reiter
+ </td>
+ </tr>
+ <tr>
+ <td>
+ PREV_TAB
+ </td>
+ <td>
+ {
+ </td>
+ <td>
+ {
+ </td>
+ <td>
+ Schalte zum vorherigen Reiter
+ </td>
+ </tr>
+ <tr>
+ <td>
+ CLOSE_TAB
+ </td>
+ <td>
+ C-q
+ </td>
+ <td>
+ C-q
+ </td>
+ <td>
+ Schließe aktuellen Reiter
+ </td>
+ </tr>
+<!-- </table>-->
+ <tr>
+ <td colspan="4">
+ <h3>Suchfunktionen</h3>
+ </td>
+ </tr>
+<!-- <table>-->
+ <tr>
+ <td>
+ SEARCH
+ </td>
+ <td>
+ /
+ </td>
+ <td>
+ /, C-s
+ </td>
+ <td>
+ Suche vorwärts
+ </td>
+ </tr>
+ <tr>
+ <td>
+ SEARCH_BACK
+ </td>
+ <td>
+ ?
+ </td>
+ <td>
+ </td>
+ <td>
+ Suche rückwärts
+ </td>
+ </tr>
+ <tr>
+ <td>
+ ISEARCH
+ </td>
+ <td>
+ C-s
+ </td>
+ <td>
+ </td>
+ <td>
+ Inkrementelle Suche vorwärts
+ </td>
+ </tr>
+ <tr>
+ <td>
+ ISEARCH_BACK
+ </td>
+ <td>
+ C-r
+ </td>
+ <td>
+ </td>
+ <td>
+ Inkrementelle Suche rückwärts
+ </td>
+ </tr>
+ <tr>
+ <td>
+ SEARCH_NEXT
+ </td>
+ <td>
+ n
+ </td>
+ <td>
+ n
+ </td>
+ <td>
+ Setze Suche vorwärts fort
+ </td>
+ </tr>
+ <tr>
+ <td>
+ SEARCH_PREV
+ </td>
+ <td>
+ N
+ </td>
+ <td>
+ </td>
+ <td>
+ Setze Suche rückwärts fort
+ </td>
+ </tr>
+ <tr>
+ <td>
+ WRAP_TOGGLE
+ </td>
+ <td>
+ C-w
+ </td>
+ <td>
+ w
+ </td>
+ <td>
+ Wechsle zwischen umlaufendem und nicht-umlaufendem Suchen
+ </td>
+ </tr>
+<!-- </table>-->
+ <tr>
+ <td colspan="4">
+ <h3>Arbeit mit Textmarken</h3>
+ </td>
+ </tr>
+<!-- <table>-->
+ <tr>
+ <td>
+ MARK
+ </td>
+ <td>
+ C-SPC
+ </td>
+ <td>
+ C-SPC
+ </td>
+ <td>
+ Setze/Lösche Markierung
+ </td>
+ </tr>
+ <tr>
+ <td>
+ PREV_MARK
+ </td>
+ <td>
+ M-p
+ </td>
+ <td>
+ P
+ </td>
+ <td>
+ Gehe zur vorherigen Markierung
+ </td>
+ </tr>
+ <tr>
+ <td>
+ NEXT_MARK
+ </td>
+ <td>
+ M-n
+ </td>
+ <td>
+ N
+ </td>
+ <td>
+ Gehe zur nächsten Markierung
+ </td>
+ </tr>
+ <tr>
+ <td>
+ REG_MARK
+ </td>
+ <td>
+ "
+ </td>
+ <td>
+ "
+ </td>
+ <td>
+ Markiere alle Vorkommen eines Zeichenmusters
+ </td>
+ </tr>
+<!-- </table>-->
+ <tr>
+ <td colspan="4">
+ <h3>Verschiedenes</h3>
+ </td>
+ </tr>
+<!-- <table>-->
+ <tr>
+ <td>
+ COMMAND
+ </td>
+ <td>
+ M-c
+ </td>
+ <td>
+ M-c
+ </td>
+ <td>
+ Rufe eine oder mehrere durch Strichpunkt getrennte w3m-Funktionen auf
+ </td>
+ </tr>
+<!--
+TODO: Where does this key binding M-Fn come from. I do not find a Fn-key on my keyboard. I do not know how to type in the keystroke combinations listed in keymap.default which are
+keymap M-[E MENU
+keymap M-[L MENU
+keymap M-[2~ MENU
+keymap M-[28~ MENU
+<tr>
+<td>MENU</td>
+<Td>M-Fn</Td>
+<td></td>
+<td>Pop up menu</td>
+</tr>
+-->
+ <tr>
+ <td>
+ HELP
+ </td>
+ <td>
+ H
+ </td>
+ <td>
+ H, ?
+ </td>
+ <td>
+ Zeige Hilfe-Übersicht
+ </td>
+ </tr>
+ <tr>
+ <td>
+ OPTIONEN
+ </td>
+ <td>
+ o
+ </td>
+ <td>
+ o
+ </td>
+ <td>
+ Einstellungs-Dialog öffnen
+ </td>
+ </tr>
+<tr>
+<td>SET_OPTION</td>
+<td>M-o</td>
+<td>M-o</td>
+<td>Setze Option</td>
+</tr>
+<tr>
+<td>DEFINE_KEY</td>
+<td>M-k</td>
+<td>M-k</td>
+<td>Definiere eine Verbindung zwischen einer Tastenkombination und einem Kommando</td>
+</tr>
+<tr>
+<td>MOUSE_TOGGLE</td>
+<td>m</td>
+<td>m</td>
+<td>Schalte Mausbedienung an oder ab</td>
+</tr>
+<tr>
+<td>DOWNLOAD_LIST</td>
+<td>D</td>
+<td>D</td>
+<td>Übersicht heruntergeladener Dateien anzeigen</td>
+</tr>
+ <tr>
+ <td>
+ COOKIE
+ </td>
+ <td>
+ C-k
+ </td>
+ <td>
+ C-k
+ </td>
+ <td>
+ Zeige die gespeicherten Cookies
+ </td>
+ </tr>
+<!--
+mh 2016-06-12 Interrupt is an alias to SUSPEND, no need to mention it here
+ <tr>
+ <td>
+ INTERRUPT
+ </td>
+ <td>
+ C-c
+ </td>
+ <td>
+ C-c
+ </td>
+ <td>
+ Interrupt
+ </td>
+ </tr>
+-->
+<tr>
+<td>UNDO</td>
+<td>(</td>
+<td>(</td>
+<td>Nimm die letzte Cursorbewegung zurück</td>
+</tr>
+<tr>
+<td>REDO</td>
+<td>)</td>
+<td>)</td>
+<td>Den letzten Rücknahmebefehl zurücknehmen</td>
+</tr>
+ <tr>
+ <!-- is an alias of SHELL --><td>
+ EXEC_SHELL
+ </td>
+ <td>
+ !
+ </td>
+ <td>
+ !
+ </td>
+ <td>
+ Shell-Befehl ausführen
+ </td>
+ </tr>
+<tr>
+<td>DICT_WORD</td>
+<td>M-w</td>
+<td>M-w</td>
+<td>Führe eine Wörterbuch-Funktion aus (siehe <a href="../doc/README.dict">README.dict</a>)</td>
+</tr>
+<tr>
+<td>DICT_WORD_AT</td>
+<td>M-W</td>
+<td>M-W</td>
+<td>Benutze Wörterbuch für Wort unter Cursor</td>
+</tr>
+<tr>
+<td>VERSION</td>
+<td>r</td>
+<td>r</td>
+<td>Zeige die Version von w3m an</td>
+</tr>
+ <tr>
+ <td>
+ SUSPEND
+ </td>
+ <td>
+ C-z
+ </td>
+ <td>
+ C-z
+ </td>
+ <td>
+ w3m zum Hintergrundprozess machen. (Wird mit dem Shell-Befehl <span class="mono">fg</span> zurückgenommen.)
+ </td>
+ </tr>
+ <tr>
+ <td>
+ QUIT
+ </td>
+ <td>
+ q
+ </td>
+ <td>
+ q
+ </td>
+ <td>
+ Mit Bestätigungsfrage beenden
+ </td>
+ </tr>
+ <tr>
+ <td>
+ EXIT
+ </td>
+ <td>
+ Q
+ </td>
+ <td>
+ Q
+ </td>
+ <td>
+ Sofort beenden
+ </td>
+ </tr>
+ </table>
+
+ <p>
+ Darüber hinaus gibt es die folgenden Bedien-Modi mit fester Tastaturbelegung für die entsprechenden Funktionen. Diese sind nicht durch die Funktion DEFINE_KEY oder Einträge der keymap-Datei veränderbar.
+ </p>
+
+ <table border="1" width="100%">
+ <colgroup>
+ <col width="20%">
+ <col width="40%">
+ <col width="40%">
+ </colgroup>
+ <tr>
+ <th>
+ Funktion<br>(interner Name)
+ </th>
+ <th>Tastenkombination
+ </th>
+ <th>
+ Beschreibung
+ </th>
+ </tr>
+ <tr>
+ <td colspan="3">
+ <h3>Menü-Auswahl-Modus</h3>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ BUF:NEXT</td>
+ <td>
+ j, C-n, DOWN
+ </td>
+ <td>
+ Nächster Eintrag
+ </td>
+ </tr>
+ <tr>
+ <td>BUF:PREV
+ </td>
+ <td>
+ k, C-p, UP
+ </td>
+ <td>
+ Vorheriger Eintrag
+ </td>
+ </tr>
+ <tr>
+ <td>
+ BUF:DELETE</td>
+ <td>
+ D
+ </td>
+ <td>
+ Lösche Eintrag
+ </td>
+ </tr>
+ <tr>
+ <td>
+ BUF:GO
+ </td>
+ <td>
+ SPC, RET, RIGHT
+ </td>
+ <td>
+ Wähle Eintrag aus
+ </td>
+ </tr>
+<!-- </table>-->
+ <tr>
+ <td colspan="3">
+ <h3>Popup-Menü-Modus</h3>
+ </td>
+ </tr>
+<!-- <table>-->
+ <tr>
+ <td>
+MENU:SELECT
+ </td>
+ <td>
+ SPC, RET, RIGHT</td>
+ <td>
+ Wähle Punkt aus
+ </td>
+ </tr>
+ <tr>
+ <td>
+MENU:CLOSE
+ </td>
+ <td>C-c
+ </td>
+ <td>
+ Schließe Menü
+ </td>
+ </tr>
+ <tr>
+ <td>
+MENU:CANCEL
+ </td>
+ <td>
+ LEFT, BKSPC, C-h</td>
+ <td>
+ Einen Auswahlschritt zurück
+ </td>
+ </tr>
+ <tr>
+ <td>
+MENU:DOWN
+ </td>
+ <td>j, C-n, DOWN
+ </td>
+ <td>
+ Gehe zum nächsten Punkt
+ </td>
+ </tr>
+ <tr>
+ <td>
+MENU:UP
+ </td>
+ <td>
+ k, C-p, UP</td>
+ <td>
+ Gehe zum vorherigen Punkt
+ </td>
+ </tr>
+ <tr>
+ <td>
+MENU:LINE_UP
+ </td>
+ <td>K
+ </td>
+ <td>
+ Scrolle einen Punkt aufwärts
+ </td>
+ </tr>
+ <tr>
+ <td>
+MENU:LINE_DOWN
+ </td>
+ <td>J
+ </td>
+ <td>
+ Scrolle einen Punkt abwärts
+ </td>
+ </tr>
+ <tr>
+ <td>
+MENU:TOP
+ </td>
+ <td>C-a
+ </td>
+ <td>
+ Gehe zum ersten Punkt
+ </td>
+ </tr>
+ <tr>
+ <td>
+MENU:LAST
+ </td>
+ <td>C-e
+ </td>
+ <td>
+ Gehe zum letzten Punkt
+ </td>
+ </tr>
+ <tr>
+ <td>
+MENU:NEXT
+ </td>
+ <td>C-v, C-f
+ </td>
+ <td>Gehe zur nächsten Seite
+ </td>
+ </tr>
+ <tr>
+ <td>
+MENU:PREV
+ </td>
+ <td>ESC v, C-b
+ </td>
+ <td>
+ Gehe zur vorherigen Seite
+ </td>
+ </tr>
+ <tr>
+ <td>
+MENU:SEARCH_FORE
+ </td>
+ <td>C-s, /
+ </td>
+ <td>
+ Suche vorwärts
+ </td>
+ </tr>
+ <tr>
+ <td>
+MENU:SEARCH_BACK
+ </td>
+ <td>
+ C-r, ?</td>
+ <td>
+ Suche rückwärts
+ </td>
+ </tr>
+ <tr>
+ <td>
+MENU:SEARCH_NEXT
+ </td>
+ <td>
+ n</td>
+ <td>
+ Suche weitere Übereinstimmung</td>
+ </tr>
+ <tr>
+ <td>
+MENU:SEARCH_PREV
+ </td>
+ <td>
+ N</td>
+ <td>
+ Suche frühere Übereinstimmung</td>
+ </tr>
+<!--mh 2016-06-12 Pressing C-z in menu mode (with menu active) has the same effect as in normal operation of w3m: Browser gets in the background
+ <tr>
+ <td>
+MENU:SUSPEND
+ </td>
+ <td>
+ C-z</td>
+ <td>
+ Suspend</td>
+ </tr>
+-->
+<!-- </table>-->
+ <tr>
+ <td colspan="3">
+ <h3>Eingabezeile-Bearbeitungs-Modus</h3>
+ </td>
+ </tr>
+<!-- <table>-->
+ <tr>
+ <td>
+ LINEEDIT:FORWARD
+ </td>
+ <td width="100">
+ C-f, RIGHT
+ </td>
+ <td>
+ Bewege Cursor vorwärts
+ </td>
+ </tr>
+ <tr>
+ <td>
+LINEEDIT:BACK
+ </td>
+ <td>
+ C-b, LEFT
+ </td>
+ <td>
+ Bewege Cursor rückwärts
+ </td>
+ </tr>
+ <tr>
+ <td>
+LINEEDIT:BS
+ </td>
+ <td>
+ C-h, BKSPC
+ </td>
+ <td>
+ Vorheriges Zeichen löschen
+ </td>
+ </tr>
+ <tr>
+ <td>
+LINEEDIT:DEL
+ </td>
+ <td>
+ C-d
+ </td>
+ <td>
+ Aktuelles Zeichen löschen
+ </td>
+ </tr>
+ <tr>
+ <td>
+LINEEDIT:KILL_AFTER
+ </td>
+ <td>
+ C-k
+ </td>
+ <td>
+ Lösche alles nach dem Cursor
+ </td>
+ </tr>
+ <tr>
+ <td>
+LINEEDIT:KILL_BEFORE
+ </td>
+ <td>
+ C-u
+ </td>
+ <td>
+ Lösche alles vor dem Cursor
+ </td>
+ </tr>
+ <tr>
+ <td>
+LINEEDIT:TOP
+ </td>
+ <td>
+ C-a
+ </td>
+ <td>
+ Gehe zum Zeilenanfang
+ </td>
+ </tr>
+ <tr>
+ <td>
+LINEEDIT:BOTTOM
+ </td>
+ <td>
+ C-e
+ </td>
+ <td>
+ Gehe zum Zeilenende
+ </td>
+ </tr>
+ <tr>
+ <td>
+LINEEDIT:PREV
+ </td>
+ <td>
+ C-p, UP
+ </td>
+ <td>
+ Hole den vorherigen Chronik-Eintrag
+ </td>
+ </tr>
+ <tr>
+ <td>
+LINEEDIT:NEXT
+ </td>
+ <td>
+ C-n, DOWN
+ </td>
+ <td>
+ Hole den nächsten Chronik-Eintrag
+ </td>
+ </tr>
+ <tr>
+ <td>
+LINEEDIT:COMPLETE
+ </td>
+ <td>
+ TAB, SPC
+ </td>
+ <td>
+ Versuche, den Dateinamen zu komplettieren
+ </td>
+ </tr>
+ <tr>
+ <td>
+LINEEDIT:EDITOR
+ </td>
+ <td>
+ C-o
+ </td>
+ <td>
+ Bearbeite mit externem Editor
+ </td>
+ </tr>
+ <tr>
+ <td>
+LINEEDIT:ACCEPT
+ </td>
+ <td>
+ RET
+ </td>
+ <td>
+ Eingabezeile übernehmen
+ </td>
+ </tr>
+ </table>
+<!-- mh 2016-06-12 As it suffices to use the provided keymap file for Lynx-like keybindings and this file is listed in section FILES of man w3m (1), the following hint for getting w3m with Lynx-like key bindings has been deleted.
+ <p>
+ If w3m was compiled with <q>Lynx-like key bindings</q>, you can use
+ the following key bindings.
+ </p>
+-->
+<!-- mh 2016-06-12 Remark is obsolete as the two sets key binding are presented along within tables
+ <hr>
+ <h2 id="Key:lynx">
+ <p>
+ The Lynx-like configuration leaves keymappings unchanged in the
+ menu-selection and line-editing modes.
+ </p>
+ </h2>
+-->
+ <hr>
+ <h2 id="Mouse">
+ Bedienung per Maus
+ </h2>
+ <p>
+ Wenn w3m mit Mausfunktionen kompiliert wurde und Sie das Programm entweder in einer Konsole mit GPM oder in einem X-Terminal-Emulator starten, ist ein Navigieren mit der Maus möglich. (Im Falle von rxvt müssen Sie die Umgebungsvariable TERM mit <q>xterm</q> oder <q>kxterm</q> belegen.)
+ </p>
+ <p>Die Datei <a href="README.mouse">README.mouse</a> erklärt, wie die Bedienung per Maus an eigene Vorlieben angepasst werden kann.
+ </p>
+ <table border="1">
+ <colgroup>
+ <col width="20%">
+ <col width="80%">
+ </colgroup>
+ <tr>
+ <th>Handlung
+ </th>
+ <th>Beschreibung
+ </th>
+ </tr>
+ <tr>
+ <td>
+ Linksklick
+ </td>
+ <td>
+<b>Zuerst:</b><br> Der Cursor wird an die Mauszeigerposition versetzt.<br> <b>Dann:</b><br> Dem Hyperlink, auf dem der Cursor momentan steht und auf den sich der Mauszeiger richtet, wird gefolgt.
+ </td>
+ </tr>
+ <tr>
+ <td>
+ Mittelklick
+ </td>
+ <td>
+ Zurück zum vorherigen Puffer.
+ </td>
+ </tr>
+ <tr>
+ <td>
+ Rechtsklick
+ </td>
+ <td>
+ Öffne Menü. Sie können Menüpunkte durch Anklicken auswählen.
+ </td>
+ </tr>
+ <tr>
+ <td>
+ Linksziehen
+ </td>
+ <td>
+ Dokument scrollen. Standardmäßig wird das Dokument im Fenster verschoben. Ein Verschieben des Fensters über dem stehenden Dokument erreichen Sie über den Einstellungs-Dialog.
+ </td>
+ </tr>
+ </table>
+ <hr>
+ <h2 id="LocalCGI">
+ Lokale CGI-Skripte
+ </h2>
+ <p>
+ w3m ist in der Lage, CGI-Skripte direkt laufen zu lassen. Dies bedeutet, dass sich das Programm wie ein HTTP-Server verhält und das CGI-Skript ausführt und dessen Ausgabe anzeigt. Beispielsweise wurden die Lesezeichen-Registrierung und der Verzeichnis-Browser als lokale CGI-Skripte programmiert. Darüber hinaus kann w3m durch solche Skripte als Schnittstelle zum Einholen von Daten aller Art fungieren.
+ </p>
+ <p>
+ Aus Sicherheitsgründen kommen für von w3m benutzte CGI-Skripte nur folgende Verzeichnisse in Frage:
+ </p>
+ <ul>
+ <li>
+ Das Verzeichnis, in dem w3m-bezogene Dateien abgelegt sind (typischerweise /usr/local/lib/w3m). Auf dieses Verzeichnis kann mit der Variblen $LIB referenziert werden.
+ </li>
+ <li>
+ Das Verzeichnis /cgi-bin/. Sie können /cgi-bin/ im Feld <q>Verzeichnis für ausführbare Skripte</q> des Einstellungs-Dialogs jedem gewünschten Verzeichnis zuordnen. Mehrere Pfade lassen sich durch Doppelpunkt getrennt angeben, also in der Form <span class="mono">/usr/local/cgi-bin:/home/aito/cgi-bin</span>. Es wird davon abgeraten, das aktuelle Verzeichnis hier mitaufzunehmen. Zum Zugriff auf Skripte im Verzeichnis /cgi-bin/ erwartet w3m eine URL folgender Art:
+ </li>
+<pre>
+ w3m -o cgi_bin=/path/to/cgi-bin file:/cgi-bin/script.cgi
+</pre>
+ </ul>
+ <p>
+ Das CGI-Skript kann zur Steuerung von w3m die spezielle Kopfzeile <span class="mono">w3m-control:</span> enthalten. Darin können alle Funkionen (siehe <a href="README.func">README.func</a>) eingetragen sein. Die angegebene Funktion wird aufgerufen, nachdem das Dokument angezeigt wird. Beispielsweise, wird eine Skriptausgabe
+ </p>
+<pre>
+Content-Type: text/plain<br>W3m-control: BACK
+</pre>
+ <p>
+ eine leere Seite anzeigen und den Puffer sofort löschen. Dies ist nützlich, wenn es nicht gewünscht ist, die Seite nach Aufrufen des Skriptes anzuzeigen. Das nächste Beispiel
+ </p>
+<pre>
+Content-Type: text/plain<br>W3m-control: DELETE_PREVBUF contents.....
+</pre>
+ <p>
+ führt zum Übergehen des aktuellen Puffers.
+ </p>
+ <p>
+ Jede <span class="mono">w3m-control</span>-Kopfzeile kann nur eine Funktion aufrufen. Jedoch können Sie im Kopfteil einer HTTP-Kommunikation mehr als eine <span class="mono">w3m-control</span>-Anweisung hinterlegen. Überdies ist es möglich, die GOTO-Funktion mit einem Argument aufzurufen:
+ </p>
+<pre>
+Content-Type: text/plain<br>W3m-control: GOTO http://www.example.org/
+</pre>
+ <p>
+ Sie bewirken damit das gleiche wie mit der Anweisung <q>Location:</q> im Kopfteil:
+ </p>
+<pre>
+Content-Type: text/plain<br>Location: http://www.example.org/
+</pre>
+ <p>
+ Beachten Sie, dass diese Anweisung wirkungslos ist, wenn das CGI-Skript durch einen HTTP-Server angesprochen wird.
+ </p>
+ </body>
+</html>
diff --git a/doc-de/README.func b/doc-de/README.func
new file mode 100644
index 0000000..cb175db
--- /dev/null
+++ b/doc-de/README.func
@@ -0,0 +1,150 @@
+ABORT Sofort beenden
+ACCESSKEY Öffne Zugangstasten-Menü
+ADD_BOOKMARK Lege für aktuelle Seite Lesezeichen an
+ALARM Alarm einrichten
+BACK Schließe aktuellen Puffer und kehre zu dem im Stapel darunterliegenden zurück
+BEGIN Gehe zur ersten Zeile
+BOOKMARK Lesezeichen ansehen
+CENTER_H Um Cursor herum horizontal zentrieren
+CENTER_V Um Cursor herum vertikal zentrieren
+CHARSET Ändere die Zeichenkodierung für das aktuelle Dokument
+CLOSE_TAB Schließe Reiter
+CLOSE_TAB_MOUSE Schließe Reiter bei Mauszeiger
+COMMAND Rufe w3m Funktion(en) auf
+COOKIE Cookie-Liste ansehen
+CURSOR_TOP Cursor auf die höchste Zeile bewegen
+CURSOR_MIDDLE Cursor auf die mittlere Zeile bewegen
+CURSOR_BOTTOM Cursor auf die unterste Zeile bewegen
+DEFAULT_CHARSET Ändere die Voreinstellung für die Zeichenkodierung
+DEFINE_KEY Definiere eine Verbindung zwischen einer Tastenkombination und einem Kommando
+DELETE_PREVBUF Lösche vorherigen Puffer (hauptsächlich für lokale CGI-Skripte)
+DICT_WORD Führe eine Wörterbuch-Funktion aus (siehe README.dict)
+DICT_WORD_AT Benutze Wörterbuch für Wort unter Cursor
+DISPLAY_IMAGE Starte das Laden und die Erstellung von Bildern erneut
+DOWN Scrolle den Anzeigebereich eine Zeile abwärts
+DOWNLOAD Dokument-Quellcode speichern
+DOWNLOAD_LIST Die Übersicht heruntergeladener Dateien zeigen
+EDIT Bearbeite lokales Quelldokument
+EDIT_SCREEN Bearbeite eine Kopie des verarbeiteten Dokuments
+END Gehe zur letzten Zeile
+EXEC_SHELL Führe Shell-Befehl aus und zeige Ausgabe an
+EXIT Sofort beenden
+EXTERN Verwende externen Browser zur Anzeige
+EXTERN_LINK Verwende externen Browser zur Anzeige des Linkziels
+FRAME Wechsle zwischen Kennung und Umsetzung von HTML-Frames
+GOTO Öffne angegebenes Dokument in neuem Puffer
+GOTO_HOME Zurück zur Startseite (die Variablen HTTP_HOME oder WWW_HOME spezifiziert wurden)
+GOTO_LINE Gehe zur angebenen Zeile
+GOTO_LINK Folge dem aktuellen Hyperlink in neuem Puffer
+GOTO_RELATIVE Gehe zu relativer Adresse
+HELP Zeige Hilfe-Übersicht
+HISTORY Chronik aufgesuchter Dokumente
+INFO Zeige Informationen über dieses Dokument
+INTERRUPT w3m zum Hintergrundprozess machen
+ISEARCH Inkrementelle Suche vorwärts
+ISEARCH_BACK Inkrementelle Suche rückwärts
+LEFT Anzeigebereich um eine Spalte nach links verschieben
+LINE_BEGIN Gehe zum Zeilenanfang
+LINE_END Gehe zum Zeilenende
+LINE_INFO Zeige aktuelle Position im Dokument an
+LINK_BEGIN Gehe zum ersten Hyperlink
+LINK_END Gehe zum letzten Hyperlink
+LINK_MENU Öffne Menü mit den Link-Elementen
+LIST Zeige alle referenzierten URLs
+LIST_MENU Öffne Menü mit aufsuchbaren Hyperlinks
+LOAD Öffne lokale Datei in einem neuen Puffer
+MAIN_MENU Öffne Menü
+MARK Setze/Lösche Markierung
+MARK_MID Wandle Nachrichten-ID-artige Zeichenketten um in Hyperlinks
+MARK_URL Wandle URL-artige Zeichenketten um in Hyperlinks
+MARK_WORD Wandle aktuelles Wort in Hyperlink um
+MENU Öffne Menü
+MENU_MOUSE Öffne Menü beim Mauszeiger
+MOUSE_TOGGLE Schalte Mausbedienung an oder ab
+MOVE_DOWN Cursor abwärts
+MOVE_DOWN1 Cursor abwärts; am Rand gleitend bewegen
+MOVE_LEFT Cursor nach links
+MOVE_LEFT1 Cursor nach links; am Rand gleitend bewegen
+MOVE_LIST_MENU Öffne Menü mit vorhandenen Hyperlinks
+MOVE_MOUSE Cursor auf Mauszeigerposition setzen
+MOVE_RIGHT Cursor nach rechts
+MOVE_RIGHT1 Cursor nach rechts; am Rand gleitend bewegen
+MOVE_UP Cursor aufwärts
+MOVE_UP1 Cursor aufwärts; am Rand gleitend bewegen
+MSGS Zeige Fehlermeldungen an
+NEW_TAB Öffne neuen Reiter (mit aktuellem Dokument)
+NEXT Schalte zum nächsten Puffer
+NEXT_DOWN Gehe abwärts zum nächsten Hyperlink
+NEXT_HALF_PAGE Scrolle eine halbe Seite abwärts
+NEXT_LEFT Gehe zum nächsten Hyperlink links
+NEXT_LEFT_UP Gehe zum nächsten Hyperlink links oder oberhalb
+NEXT_LINK Gehe zum nächsten Hyperlink
+NEXT_MARK Gehe zur nächsten Markierung
+NEXT_PAGE Eine Seite abwärts
+NEXT_RIGHT Gehe zum nächsten Hyperlink rechts
+NEXT_RIGHT_DOWN Gehe zum nächsten Hyperlink rechts oder unterhalb
+NEXT_TAB Schalte zum nächsten Reiter
+NEXT_UP Gehe zum nächsten Hyperlink oberhalb
+NEXT_VISITED Gehe zum nächsten besuchten Hyperlink
+NEXT_WORD Gehe zum nächsten Wort
+NOTHING Tue nichts
+NULL Tue nichts
+OPTIONS Zeige Einstellungen für Änderungen
+PEEK Zeige aktuelle Adresse an
+PEEK_IMG Zeige Adresse des Bildes
+PEEK_LINK Zeige Zieladresse
+PIPE_BUF Leite aktuellen Pufferinhalt einem Shell-Befehl zu und zeige Ausgabe an
+PIPE_SHELL Führe Shell-Befehl aus und zeige Ausgabe an
+PREV Schalte zum vorherigen Puffer
+PREV_HALF_PAGE Scrolle eine halbe Seite aufwärts
+PREV_LINK Gehe zum vorangegangen Hyperlink
+PREV_MARK Gehe zur vorherigen Markierung
+PREV_PAGE Eine Seite aufwärts
+PREV_TAB Schalte zum vorherigen Reiter
+PREV_VISITED Gehe zum vorherigen besuchten Hyperlink
+PREV_WORD Gehe zum vorherigen Wort
+PRINT Speichere verarbeitetes Dokument
+QUIT Mit Bestätigungsfrage beenden
+READ_SHELL Führe Shell-Befehl aus und zeige Ausgabe an
+REDO Den letzten Rücknahmebefehl zurücknehmen
+REDRAW Bildschirmanzeige neu aufbauen
+REG_MARK Zu einem Muster passenden Zeichenfolgen überall markieren
+REINIT Konfigurationsdatei erneut laden
+RELOAD Aktuelles Dokument erneut laden
+RESHAPE Dokument nochmals verarbeiten
+RIGHT Anzeigebereich um eine Spalte nach rechts verschieben
+SAVE Dokument-Quellcode speichern
+SAVE_IMAGE Speichere Bild
+SAVE_LINK Speichere Ziel des Hyperlinks
+SAVE_SCREEN Speichere verarbeitetes Dokument
+SEARCH Suche vorwärts
+SEARCH_BACK Suche rückwärts
+SEARCH_FORE Suche vorwärts
+SEARCH_NEXT Setze Suche vorwärts fort
+SEARCH_PREV Setze Suche rückwärts fort
+SELECT Zeige Puffferstapel-Übersicht
+SELECT_MENU Öffne Puffferstapel-Menü
+SETENV Setze Umgebungsvariable
+SET_OPTION Setze Option
+SHELL Führe Shell-Befehl aus und zeige Ausgabe an
+SHIFT_LEFT Anzeigebereich nach links versetzen
+SHIFT_RIGHT Anzeigebereich nach rechts versetzen
+SOURCE Wechsle zwischen HTML-Wiedergabe und -Verarbeitung
+STOP_IMAGE Bilder nicht mehr laden und anzeigen
+SUBMIT Formular übermitteln
+SUSPEND w3m zum Hintergrundprozess machen
+TAB_GOTO Öffne das angegebene Dokument in einem neuen Reiter
+TAB_GOTO_RELATIVE Öffne relative Adresse in einem neuen Reiter
+TAB_LEFT Einen Reiter weiter nach links gehen
+TAB_LINK Folge dem aktuellen Hyperlink in einem neuen Reiter
+TAB_MENU Öffne das Reiter-Auswahl-Menü
+TAB_MOUSE Wähle per Maus Reiter aus
+TAB_RIGHT Einen Reiter weiter nach rechts gehen
+UNDO Nimm die letzte Cursorbewegung zurück
+UP Scrolle den Anzeigebereich eine Zeile aufwärts
+VERSION Zeige die Version von w3m an
+VIEW Wechsle zwischen HTML-Wiedergabe und -Verarbeitung
+VIEW_BOOKMARK Lesezeichen ansehen
+VIEW_IMAGE Zeige Bild in Betrachter
+WHEREIS Suche vorwärts
+WRAP_TOGGLE Wechsle zwischen umlaufendem und nicht-umlaufendem Suchen
diff --git a/doc-de/w3m.1 b/doc-de/w3m.1
new file mode 100644
index 0000000..7deb203
--- /dev/null
+++ b/doc-de/w3m.1
@@ -0,0 +1,334 @@
+.nr N -1
+.nr D 5
+.\"*******************************************************************
+.\"
+.\" This file was generated with po4a. Translate the source file.
+.\"
+.\"*******************************************************************
+.TH W3M 1 2016\-08\-06 "w3m 0.5.3"
+.SH NAME
+w3m \- Ein auf Texte ausgerichtetes Programme zur Anzeige von Dateien und
+Datenströmen sowie zum Browsen im Internet
+.SH SYNOPSIS
+w3m [OPTION]... [ \fIDatei\fP | \fIURL\fP ]...
+.SH BESCHREIBUNG
+.\" This defines appropriate quote strings for nroff and troff
+.ds lq "
+.ds rq "
+.if t .ds lq ``
+.if t .ds rq ''
+.if \nN==0 .nr N 10
+.\" Just in case these number registers aren't set yet...
+.if \nD==0 .nr D 5
+
+\fIw3m\fP ist ein textorientierter Browser, der lokale oder im Internet
+liegende Seiten sowie andere Dokumente anzeigen kann. Er verarbeitet
+HTML\-Tabellen und Frames, nicht jedoch JavaScript und Cascading Style
+Sheets. \fIw3m\fP kann auch als Textbetrachter (Pager) dienen. Entsprechende
+Dateien werden beim Aufruf als Argument angegeben oder an der
+Standardeingabe als Datenstrom übernommen. Mit \fIw3m\fP kann sich der Benutzer
+überdies durch Verzeichnisbäume bewegen.
+
+\fIw3m\fP arbeitet mit Reitern (Registerkarten, Tabs) und Puffern, was einen
+einfachen Wechsel zwischen geladenen Inhalten erlaubt. Wenn die Erweiterung
+w3m\-img installiert ist, zeigt \fIw3m\fP auch in die Seiten eingebundene
+Grafiken an. Wann immer die Umsetzung von HTML\-Inhalten durch \fIw3m\fP Ihren
+Ansprüchen nicht genügt, reicht ein einzelnes Kommando, um die Ziel\-URL
+einem grafischen Browser zu übergeben.
+
+Um nach Start des Programms Hilfe zu den Optionen zu erhalten, drücken Sie
+\(lqH\(rq.
+
+.SH ARGUMENTE
+
+Wenn das Programm mit einem oder mehreren Argumenten aufgerufen wird,
+behandelt \fIw3m\fP diese Ziele je nach Typ des Inhalts. Bei Daten aus dem
+Internet verwertet \fIw3m\fP die Angabe in den HTTP\-Kopfzeilen. Bei relativen
+oder absoluten Pfaden in Dateisystemen richtet sich \fIw3m\fP nach dem
+Dateinamen.
+
+Ohne Argument aufgerufen, erwartet \fIw3m\fP unformatierte Daten aus der
+Standardeingabe, es sei denn, der Benutzer hat einen anderen MIME\-Typ
+angegeben.
+
+Sollte \fIw3m\fP weder ein Zielobjekt vorliegen noch ein Ausweichen vorgesehen
+sein (beispielsweise durch die Option \fB\-v\fP, siehe unten), gibt das Programm
+nur Benutzungshinweise aus.
+.SH OPTIONEN
+Vor Befehlszeilen\-Optionen steht das \(lq\-\(rq Zeichen einzeln, ihnen kann
+ein Argument folgen.
+.SS "Allgemeine Optionen"
+.TP
+\fB\-B\fP
+starte mit einer Ansicht aller Lesezeichen (wenn kein anderes Zielobjekt
+angegeben ist)
+.TP
+\fB\-M\fP
+monochrome Anzeige
+.TP
+\fB\-no\-mouse\fP
+Mausfunktion aus
+.TP
+\fB\-num\fP
+zeige Zeilennummern an
+.TP
+\fB\-N\fP
+verteile die übergebenen Argumente unter Reitern. Standardmäßig würde ein
+Stapel von Puffern benutzt
+.TP
+\fB\-ppc \fP\fInum\fP
+Weite von \fInum\fP Bildpunkten pro Zeichen, einstellbar von 4.0 bis 32.0,
+standardmäßig 8.0. Größere Werte machen Tabellen enger. (Implementierung
+unklar)
+.TP
+\fB\-ppl \fP\fInum\fP
+Höhe von \fInum\fP Bildpunkten pro Linie, einstellbar von 4.0 bis
+64.0. (Implementierung unklar)
+.TP
+\fB\-title\fP, \fB\-title=TERM\fP
+verwende den Puffernamen auch als Titel des Terminalfensters. Soweit TERM
+eingegeben wurde, konfiguriert dieser Wert den Stil des Titels
+.TP
+\fB\-v\fP
+begrüße den Benutzer mit einer eingebauten Seite (wenn kein anderes
+Zielobjekt angegeben ist)
+.TP
+\fB\-W\fP
+wechsle zwischen umlaufendem und nicht umlaufendem Suchen
+.TP
+\fB\-X\fP
+initialisiere nach Verlassen des Programms das Terminal nicht neu
+.TP
+\fB+\fP\fIZahl\fP
+gehe zu Zeile \fIZahl\fP; wirkt nur, wenn \fIZahl\fP größer ist als die im
+Terminal verfügbare Zeilenzahl
+.SS Browser\-Optionen
+.TP
+\fB\-cols \fP\fInum\fP
+bei für die Standardausgabe bestimmten Inhalten, nimm bei der Umsetzung von
+HTML eine Länge von \fInum\fP Zeichen pro Zeile
+.TP
+\fB\-cookie\fP, \fB\-no\-cookie\fP
+verwende gespeicherte Cookies und akzeptiere neue. Oder tue weder das eine
+noch das andere
+.TP
+\fB\-F\fP
+verarbeite Frames
+.TP
+\fB\-graph\fP, \fB\-no\-graph\fP
+bei der Umsetzung von Tabellen und Frames grafische Zeichen verwenden oder
+nicht verwenden
+.TP
+\fB\-header \fP\fIZeichenkette\fP
+füge \fIZeichenkette\fP der HTTP(S)\-Anfrage an. Diese muss der Kopfdaten\-Syntax
+\f(CWVariable: Wert\fP entsprechen
+.TP
+\fB\-m\fP
+stelle eine Usenet\-Nachricht entsprechend \(lqContent\-type\(rq in den
+Kopfdaten dar
+.TP
+\fB\-no\-proxy\fP
+verwende keinen Proxy
+.TP
+\fB\-post \fP\fIDatei\fP
+verwende die Methode POST, um in \fIDatei\fP hinterlegte Daten
+hochzuladen. Hierbei wird die Syntax \f(CWvar1=wert1[&var2=wert2]…\fP erwartet
+.TP
+\fB\-4\fP
+nur IPv4. Entspricht dns_order=4 in der Konfigurationsdatei
+.TP
+\fB\-6\fP
+nur IPv6. Entspricht dns_order=6 in der Konfigurationsdatei
+.SS Textbetrachter\-Optionen
+.TP
+\fB\-l \fP\fInum\fP
+Anzahl der Zeilen, die zwischengespeichert werden, wenn Text per
+Standardeingabe übergeben wurde. (Voreinstellung ist 10000)
+.TP
+\fB\-r\fP
+verarbeite spezielle Escape\-Zeichen (beispielsweise ANSI\-Escape\-Zeichen oder
+nroff\-Rückwärtsschritte für fette und unterstrichene Zeichen) nicht, sondern
+zeige sie stattdessen mittels Caret\-Notation.
+.TP
+\fB\-s\fP
+mehrere leere Zeilen werden bis auf eine gelöscht
+.TP
+\fB\-t\fP \fInum\fP
+berücksichtige Tab\-Zeichen so, dass Spalten mit einer Weite von \fInum\fP
+Zeichen entstehen
+.SS "Datenart\- und Datenkodierungs\-Optionen"
+.TP
+\fB\-I \fP\fIcharset\fP
+zu benutzende Zeichenkodierung für erhaltene Daten
+.TP
+\fB\-O \fP\fIcharset\fP
+zu benutzende Zeichenkodierung für auszugebende Daten
+.TP
+\fB\-T \fP\fITyp\fP
+zu benutzender MIME\-Typ für erhaltenen Daten
+.SS "Optionen zur Datenausgabe, mit sofortigem Verlassen des Programms"
+.TP
+\fB\-dump\fP
+leite die verarbeitete Seite der Standardausgabe zu. Die Option gilt als
+gesetzt, wenn der Aufruf beinhaltet, dass die Ausgabe in eine Datei
+umgeleitet oder einem weiteren Programm übergeben wird.
+.TP
+\fB\-dump_source\fP
+leite den Seitenquelltext der Standardausgabe zu
+.TP
+\fB\-dump_head\fP
+leite die Antwort einer HEAD\-Anfrage für eine URL der Standardausgabe zu
+.TP
+\fB\-dump_both\fP
+leite Antwort auf HEAD\-Anfrage und Seitenquelltext der Standardausgabe zu
+.TP
+\fB\-dump_extra\fP
+leite Antwort auf HEAD\-Anfrage, Seitenquelltext und Extrainformation der
+Standardausgabe zu
+.TP
+\fB\-help\fP
+zeige eine Zusammenfassung verfügbarer Funktionen und Befehlszeilen\-Optionen
+.TP
+\fB\-show\-option\fP
+zeige alle zur Konfiguration verfügbaren Optionen
+.TP
+\fB\-version\fP
+gibt die Version von \fIw3m\fP aus
+.SS "Optionen, die Standards für Einstellungen und Datenquellen außer Kraft setzen"
+.TP
+\fB\-bookmark \fP\fIDatei\fP
+benutze anstelle der Standarddatei bookmark.html für Lesezeichen die Datei
+\fIDatei\fP
+.TP
+\fB\-config \fP\fIDatei\fP
+benutze \fIDatei\fP anstelle der Standardkonfigurationsdatei
+.TP
+\fB\-debug\fP
+BITTE NICHT BENUTZEN
+.TP
+\fB\-o \fP\fIOption=Wert\fP
+arbeite mit einer Konfiguration, bei der die Einstellung \fIOption\fP mit
+\fIWert\fP belegt ist. Ohne \fIOption=Wert\fP gleichwertig mit \fB\-show\-option\fP
+.TP
+\fB\-reqlog\fP
+Protokolliere Header der HTTP\-Kommunikation in Datei \f(CW~/.w3m/request.log\fP
+.SH BEISPIELE
+.SS "Verwendung als Textbetrachter"
+.TP
+zwei HTML\-Fragmente zusammengefügt anzeigen
+.EX
+$ cat header.html footer.html | w3m \-T text/html
+.EE
+.TP
+zwei Dateien unter Reitern einander gegenüberstellen
+.EX
+$ w3m \-N config.old config
+.EE
+.SS "browser\-artige Verwendung"
+.TP
+zeige Internet\-Inhalt in monochromem Terminal
+.EX
+$ w3m \-M http://w3m.sourceforge.net
+.EE
+.TP
+zeige eingebettete Grafiken an
+.EX
+$ w3m \-o auto_image=TRUE http://w3m.sourceforge.net
+.EE
+.TP
+zeige Inhalt aus dem Usenet
+.EX
+$ w3m \-m nntp://news.aioe.org/comp.os.linux.networking
+.EE
+.TP
+mit der POST\-Methode Daten für eine URL hochladen
+.EX
+$ w3m \-post \- http://example.com/form.php <<<'a=0&b=1'
+.EE
+.SS "filterartige Verwendung"
+.TP
+konvertiere eine HTML\-Datei in reinen Text von bestimmter Zeilenlänge
+.EX
+$ w3m \-cols 40 foo.html > foo.txt
+.EE
+.TP
+übergib den Bestand an Lesezeichen mit zugehörigen Links als reinen Text einer Datei.
+.EX
+$ w3m \-B \-o display_link_number=1 > out.txt
+.EE
+.TP
+Konvertierung in ein anderes Dateiformat und eine andere Zeichenkodierung
+.EX
+$ w3m \-T text/html \-I EUC\-JP \-O UTF\-8 < foo.html > foo.txt
+.EE
+.SS "starte ohne Eingabedaten"
+.TP
+begrüße den Benutzer mit einer eingebauten Seite
+.EX
+$ w3m \-v
+.EE
+.\".SH Errors
+.SH UMGEBUNGSVARIABLEN
+\fIw3m\fP weicht auf den Wert der Umgebungsvariablen WWW_HOME aus, wenn das
+Programm ohne Zielobjekt aufgerufen wurde.
+.SH DATEIEN
+.TP
+\f(CW~/.w3m/bookmark.html\fP
+voreingestellte Datei für Lesezeichen
+.TP
+\f(CW~/.w3m/config\fP
+benutzerdefinierte Konfigurationsdatei; gegenüber \f(CW/etc/w3m/config\fP
+vorrangig
+.TP
+\f(CW~/.w3m/cookie\fP
+Ablageort für Cookies; wird beim Verlassen des Programms geschrieben und
+beim Aufruf gelesen
+.TP
+\f(CW~/.w3m/history\fP
+Chronik besuchter Seiten und URLs
+.TP
+\f(CW~/.w3m/keymap\fP
+benutzerdefinierte Tastaturbelegung, setzt standardmäßige Belegung außer
+Kraft
+.TP
+\f(CW~/.w3m/mailcap\fP
+Konfigurationsdatei für Programme zur externen Anzeige
+.TP
+\f(CW~/.w3m/menu\fP
+benutzerdefiniertes Menü; vorrangig gegenüber Standardmenü
+.TP
+\f(CW~/.w3m/mime.types\fP
+Datei mit MIME\-Typen
+.TP
+\f(CW~/.w3m/mouse\fP
+benutzerdefinierte Mauseinstellungen
+.TP
+\f(CW~/.w3m/passwd\fP
+Datei mit Nutzerkonto\-Passwort\-Liste
+.TP
+\f(CW~/.w3m/pre_form\fP
+.\" .TP
+.\" .I $~/.w3m/urimethodmap
+.\" ???
+enthält vordefinierte Werte für wiederkehrende HTML\-Formulare
+.SH "SIEHE AUCH"
+README und Beispieldateien finden Sie im Dokumentationsverzeichnis Ihrer
+\fIw3m\fP\-Installation. Aktuelle Informationen zu \fIw3m\fP finden Sie auf der
+Projektseite
+.UR http://w3m.sourceforge.net
+unter
+.UE
+.SH DANKSAGUNGEN
+In \fIw3m\fP ist Programmcode verschiedener Quellen eingeflossen. Benutzer
+haben mit Korrekturen (Patch\-Dateien) und Vorschlägen zur Verbesserung des
+Programms beigetragen.
+.SH AUTOR
+.UR aito@fw.ipsj.or.jp
+Akinori ITO
+.UE
+Die deutsche Übersetzung wurde 2016 von
+.UR markus.hiereth@freenet.de
+Markus Hiereth
+.UE
+erstellt.
+
diff --git a/doc-jp/FAQ.html b/doc-jp/FAQ.html
index e16a986..0e38158 100644
--- a/doc-jp/FAQ.html
+++ b/doc-jp/FAQ.html
@@ -3,25 +3,25 @@
<TITLE>W3M FAQ</TITLE>
</HEAD>
<BODY>
-<h1>w3m�˴ؤ����ɤ�ʹ�����(�Ǥ�����)����Ȥ�������</h1>
+<h1>w3mに関して良く聞かれる(であろう)質問とその答え</h1>
<div align=right>
-��ƣ ��§<br>
+伊藤 彰則<br>
aito@fw.ipsj.or.jp
</div>
<a name="general">
<center>
-<h2>����Ū�ʤ��ȡ�������ˡ��ư��Ķ�</h2>
+<h2>一般的なこと,入手方法,動作環境</h2>
</center>
<dl>
-<dt>``w3m''�ϲ����ɤ�ΤǤ�����
-<dd>�֤��֤�塼���󤨤�פޤ��ϡ֤��֤�塼���꡼����פǤ���
-``w3m''�Ƚ񤤤ƥץƥ�Υɥ���ɤ����Ϥ��ޤ���
+<dt>``w3m''は何と読むのですか?
+<dd>「だぶりゅーさんえむ」または「だぶりゅーすりーえむ」です.
+``w3m''と書いてプテラノドンと読んだりはしません.
<P>
-<dt>�ɤ�����``w3m''�Ȥ���̾���ʤΡ�
-<dd>WWW-wo-Miru(WWW�򸫤�)�����դ��ޤ�����
+<dt>どうして``w3m''という名前なの?
+<dd>WWW-wo-Miru(WWWを見る)から付けました.
<P>
-<dt>�ɤ������Ķ���ư���Ρ�
-<dd>����Ū��UNIX��ư���ޤ����ǿ��Ǥޤ��Ϥ���˶ᤤ�С�������ư���ǧ����Ƥ���Τϡ�
+<dt>どういう環境で動くの?
+<dd>一般的なUNIXで動きます.最新版またはそれに近いバージョンで動作が確認されているのは,
<blockquote>
<pre>
SunOS 4.1.x
@@ -39,175 +39,175 @@ MS-DOS with DJGPP and WATT32 packet driver
MacOS X Server
MacOS X 10.1, 10.2
</pre></blockquote>
-�ʤɤǤ�������¾�Τ�ΤǤ⡤�᥸�㡼��UNIX�����ƥ�ʤ�ư���Ǥ��礦��
+などです.その他のものでも,メジャーなUNIXシステムなら動くでしょう.
<P>
-version 990226 ���顤OS/2 ��ư���褦�Ǥ���
+version 990226 から,OS/2 で動くようです.
<P>
-version 990303 ���顤Windows+cygwin32 ��ư���褦�ˤʤ�ޤ�����
+version 990303 から,Windows+cygwin32 で動くようになりました.
<P>
-<dt>Windows 9x/NT �Ǥ�ư���ʤ��Ρ�
-<dd><a href="http://www.cygwin.com/">Cygwin</a>��Ȥ���ư���ޤ���
+<dt>Windows 9x/NT では動かないの?
+<dd><a href="http://www.cygwin.com/">Cygwin</a>を使えば動きます.
<p>
-<dt>w3m�˴ؤ������Ϥɤ�����������Ρ�
+<dt>w3mに関する情報はどこから手に入るの?
<dd><a href="http://w3m.sourceforge.net/index.ja.html">
-http://w3m.sourceforge.net/</a>�� w3m �Υڡ���
-������ޤ���
+http://w3m.sourceforge.net/</a>に w3m のページ
+があります.
<p>
-<dt>�ǿ��ǤϤɤ�����������Ρ�
+<dt>最新版はどこから手に入るの?
<dd><a href="http://prdownloads.sourceforge.net/w3m/">
-http://prdownloads.sourceforge.net/w3m/</a>����������ޤ���
+http://prdownloads.sourceforge.net/w3m/</a>から手に入ります.
<p>
-<dt>w3m �˴ؤ���ML�Ϥ���ޤ��󤫡�
+<dt>w3m に関するMLはありませんか?
<dd>
-��ȯ�Ը���ML(w3m-dev(���ܸ�)��w3m-dev-en(�Ѹ�))������ޤ����ܤ�����
-<a href="http://w3m.sourceforge.net/">w3m �Υڡ���</a>
-����������������ȯ��Ϣ�ʳ���
-���������������Ȥ�������ˤϡ���Ԥ�<a href="mailto:aito@fw.ipsj.or.jp">
-ľ�ܥ᡼��</a>���뤫�����뤤��<a href="http://mi.med.tohoku.ac.jp/~satodai/w3m/bbs/spool/log.html">
-w3m BBS</a>�˽񤤤Ƥ���������
-<p>
-<dt>�Х��ʥ����ۤϤ��ʤ��Ρ�
+開発者向けML(w3m-dev(日本語)とw3m-dev-en(英語))があります。詳しくは
+<a href="http://w3m.sourceforge.net/">w3m のページ</a>
+をご覧ください。開発関連以外で
+何か言いたいことがある場合には,作者に<a href="mailto:aito@fw.ipsj.or.jp">
+直接メール</a>するか,あるいは<a href="http://mi.med.tohoku.ac.jp/~satodai/w3m/bbs/spool/log.html">
+w3m BBS</a>に書いてください.
+<p>
+<dt>バイナリ配布はしないの?
<dd>
-�����Ĥ��Υץ�åȥե�����ˤĤ��ơ�w3m�ΥХ��ʥ����ۤ��ä�
-�������äƤ��륵���Ȥ�����ޤ����ܤ�����
+いくつかのプラットフォームについて,w3mのバイナリ配布をやって
+くださっているサイトがあります.詳しくは
<a href="http://w3m.sourceforge.net/">
-w3m�Υڡ���</a>�򤴤�󤯤�������
+w3mのページ</a>をごらんください.
</dl>
<a name="install"></a>
-<center><h2>����ѥ���ȥ��󥹥ȡ���</h2></center>
-�ä�����ʤ� :-)
+<center><h2>コンパイルとインストール</h2></center>
+特に問題なし :-)
<a name="command"></a>
-<center><h2>���ץ���󡤥��ޥ�ɡ��Ȥ�����</h2></center>
+<center><h2>オプション,コマンド,使いかた</h2></center>
<dl>
-<dt> w3m �����Ϥ����顤����ɽ�������˽���ä��㤤�ޤ��������������Ρ�
-<dd> w3m ��<B>�ڡ�����</B>�Ǥ����Ǥ����顤������ꤷ�ʤ��ǵ�ư�����
-���Τޤ޽�λ���ޤ�������ɽ�������������ˤϡ�
+<dt> w3m と入力したら,何も表示せずに終わっちゃいました.何が悪いの?
+<dd> w3m は<B>ページャ</B>です.ですから,何も指定しないで起動すれば
+そのまま終了します.何か表示させたい場合には,
<ol>
-<li>�����˥ե�����̾��URL��񤯡�
-<li>ɸ�����Ϥ˲�������Ƥ����롥
-<li>-B ���ץ����(�֥å��ޡ���ɽ��)��Ĥ��롥
-<li>�Ķ��ѿ� HTTP_HOME �� WWW_HOME �ˡ��������ڡ�����URL������Ƥ�����
+<li>引数にファイル名かURLを書く.
+<li>標準入力に何か入れてあげる.
+<li>-B オプション(ブックマーク表示)をつける.
+<li>環境変数 HTTP_HOME か WWW_HOME に,見たいページのURLを入れておく.
</ol>
-�Τɤ줫���äƤ���������
+のどれかをやってください.
<p>
-<dt>w3m��ư�����顤���̤����ù��ˤʤäƤ��ޤ��ޤ������ɤ����ơ�
-<dd>w3m�򥫥顼ɽ��������ǥ���ѥ��뤹��ȡ��ǽ���طʿ������
-ʸ��������������ˤʤ�ޤ������Τ��ᡤ�դ����طʤ���ˤ��Ƥ�����֤�
-w3m��ư����ȡ����������ʤ��ʤ�ޤ���<p>
-�����������ϡ����Τ褦�ˤ��ƿ������ꤷ�ޤ���
+<dt>w3mを起動したら,画面が真っ黒になってしまいました.どうして?
+<dd>w3mをカラー表示の設定でコンパイルすると,最初は背景色が白で
+文字色が黒の設定になります.そのため,ふだん背景を黒にしている状態で
+w3mを起動すると,字が見えなくなります.<p>
+こういう場合は,次のようにして色を設定します.
<UL>
-<LI>w3m -M �� w3m ��ư��������⡼�ɤ�ɽ�����롥
-<LI>"o" ���ޥ�ɤǥ��ץ����������̤ˤ��롥
-<LI><B>���顼ɽ���⡼�ɤ�ON�ˤ�</B>��Ŭ����ʸ����������ǡ�
-[OK]�����򤹤롥
+<LI>w3m -M で w3m を起動し,白黒モードで表示する.
+<LI>"o" コマンドでオプション設定画面にする.
+<LI><B>カラー表示モードをONにし</B>,適当な文字色を選んで,
+[OK]を選択する.
</UL>
<p>
-<dt>���顼ɽ���򤵤���ˤϤɤ�����Ρ�
-<dd>����ѥ�����ˡ�configure �Υ��ץ����� --disable-color ����ꤷ��
-����Х��顼ɽ�����Ǥ���褦�ˤʤ�ޤ���
+<dt>カラー表示をさせるにはどうするの?
+<dd>コンパイル時に,configure のオプションに --disable-color を指定しな
+ければカラー表示ができるようになります。
<p>
-<dt>�����ɽ��������������ɡ�
-<dd>��ˡ��3�Ĥ���ޤ���
+<dt>白黒で表示したいんだけど?
+<dd>方法は3つあります.
<OL>
-<LI>�嵭�μ���� 1 �������ƥ���ѥ��뤹�롥
-<LI>-M ���ץ�����Ĥ��Ƶ�ư���롥
-<LI>"o" ���ޥ�ɤǥ��ץ��������ѥͥ��ư�������顼ɽ����OFF�ˤ��롥
+<LI>上記の質問に 1 と答えてコンパイルする.
+<LI>-M オプションをつけて起動する.
+<LI>"o" コマンドでオプション設定パネルを起動し,カラー表示をOFFにする.
</OL>
<p>
-<dt>���̤�Ϥ߽Ф�����ʬ�򸫤�ˤϡ�
-<dd>�����������̤�ü�˰�ư������С�����˹�碌�Ʋ������Τ�����ޤ���
-�ޤ���"&gt;"��"&lt;"�Dz������Τ򤺤餹���Ȥ��Ǥ��ޤ���
-<p>
-<dt>���������ư���鷺��路����
-<dd>TAB�Ǽ��Υ��󥫡��˰�ư����Τǡ�Lynx�Ȼ������ФǻȤ���Ǥ��礦��
-�ޤ���C-u�����ESC TAB�����Υ��󥫡������ޤ���
-<p>
-<dt>Netscape�Ǥ��֤�ʸ���ˤʤäƤ�����ʬ����w3m �ǤϹ����ޤޡ��ʤ���
-<dd>w3m�ϡ�&lt;FONT COLOR=".."&gt;�ˤ��ʸ���ο�����ˤ��б����Ƥ��ޤ���
-�б����Բ�ǽ�ǤϤʤ��Ǥ�����ʸ���ο����طʤ�Ʊ���ˤʤä��ꤷ�Ƹ��Ť餯
-�ʤ�Τ������ʤΤǡ����ޤ��б����뵤�ˤʤ�ޤ���
-<p>
-<dt>���󥫡�/����/form�ο����Ѥ���ˤϡ�
-<dd>990309�Ǥ��顤���ץ������ڤ꤫������褦�ˤʤ�ޤ�����"o" ���ޥ��
-������ѥͥ��ɽ�������������ʿ�������Ǥ�������������ɽ�������طʤ�Ʊ����
-�ʤäƲ��⸫���ʤ��Ȥ������ˤϡ�-M ���ץ��������ɽ���ˤ��Ƥ��������
-����Ȥ褤�Ǥ��礦��
-<p>
-<dt>�Ķ��ѿ� EDITOR �����ꤷ�����ɡ������ʤ��ΤϤʤ���
-<dd>"o"���ޥ�ɤǥ��ץ�����ɽ�������ƤߤƤ���������
-���ǥ����ι��ܤ˲����񤤤Ƥ���С����줬ͥ�褵��ޤ���
-�Ķ��ѿ���������������ϡ�����������ˤ��ƥ��ץ�����
-�������Ƥ���������
-<p>
-<dt>��������URL���Ϥ�����Ǥ���ˤϡ�
-<dd><!-- C-u ���������Ƥ�ä��ơ�RET�򲡤��ޤ���-->
- C-c �����ޤ���
+<dt>画面をはみ出した部分を見るには?
+<dd>カーソルを画面の端に移動させれば,それに合わせて画面全体がずれます.
+また,"&gt;"と"&lt;"で画面全体をずらすことができます.
+<p>
+<dt>カーソル移動がわずらわしい.
+<dd>TABで次のアンカーに移動するので,Lynxと似た感覚で使えるでしょう.
+また,C-uおよびESC TABで前のアンカーに戻ります.
+<p>
+<dt>Netscapeでは赤い文字になっている部分が,w3m では黒いまま.なぜ?
+<dd>w3mは,&lt;FONT COLOR=".."&gt;による文字の色指定には対応していません.
+対応は不可能ではないですが,文字の色が背景と同じになったりして見づらく
+なるのがオチなので,あまり対応する気になりません.
+<p>
+<dt>アンカー/画像/formの色を変えるには?
+<dd>990309版から,オプションで切りかえられるようになりました."o" コマンド
+で設定パネルを表示させ,好きな色を選んでください.字の表示色が背景と同じに
+なって何も見えないという場合には,-M オプションで白黒表示にしてから設定を
+するとよいでしょう.
+<p>
+<dt>環境変数 EDITOR を設定したけど,効かないのはなぜ?
+<dd>"o"コマンドでオプションを表示させてみてください.
+エディタの項目に何か書いてあれば,それが優先されます.
+環境変数を効かせたい場合は,この欄を空白にしてオプションを
+更新してください.
+<p>
+<dt>サーチやURL入力を途中でやめるには?
+<dd><!-- C-u で入力内容を消して,RETを押します.-->
+ C-c で戻ります.
</dl>
<a name="www"></a>
-<center><h2>WWW��Ȥ����μ���</h2></center>
+<center><h2>WWWを使う場合の質問</h2></center>
<dl>
-<dt>form�����Ϥ���ˤϤɤ�����Ρ�
-<dd>form����ʬ�ϡ����̾����(�ޤ���ȿž)��ɽ������Ƥ��ޤ��Τǡ�
-�����˥����������äƤ��äƥ꥿����򲡤��ޤ�������ȡ�
+<dt>formに入力するにはどうするの?
+<dd>formの部分は,画面上で赤(または反転)で表示されていますので,
+そこにカーソルを持っていってリターンを押します.すると,
<UL>
-<LI>text �ξ��ϡ����̺Dz��Ԥ������Ԥ��ˤʤ�ޤ��Τǡ�ʸ�������Ϥ��ޤ���
-<LI>radio, checkbox �ξ��ϡ����ι��ܤ����Ф�ޤ���
-<LI>textarea �ξ��ϡ����ǥ�������ư���ޤ��Τǡ�ʸ�Ϥ����Ϥ��ޤ���
-���ΤȤ���ɬ��ɽ���Ѵ��������ɤ�Ʊ�����������ɤǥե��������¸���Ƥ���������
-<LI>submit, reset �ξ��ϡ�form�����Ƥ�����/���ꥢ���ޤ���
+<LI>text の場合は,画面最下行で入力待ちになりますので,文字を入力します.
+<LI>radio, checkbox の場合は,その項目が選ばれます.
+<LI>textarea の場合は,エディタが起動しますので,文章を入力します.
+このとき,必ず表示用漢字コードと同じ漢字コードでファイルを保存してください.
+<LI>submit, reset の場合は,formの内容を送信/クリアします.
</UL>
-<dt>ʸ���ɽ�����٤�������ɡ�
-<dd>w3m��HTMLʸ���2�ѥ�����������Τǡ�ʸ�����Τ��ɤߤ��ޤʤ���
-ɽ�����Ǥ��ޤ���Netscape�ʤɤ�ʸ����ɤߤʤ���ɽ������Τǡ�
-ɽ����®���褦�˻פ���ΤǤ��礦��
+<dt>文書の表示が遅いんだけど?
+<dd>w3mはHTML文書を2パスで整形するので,文書全体を読みこまないと
+表示ができません.Netscapeなどは文書を読みながら表示するので,
+表示が速いように思えるのでしょう.
<p>
-<dt>�����ɤ��ʸ���2���ܤ��ɤ���Ȥ��ˡ��ɤߤ��ߤ�®���ʤ�ʤ�������ɡ�
-<dd>¾��¿���Υ֥饦���Ȱ㤤��w3m�ϥ���å������äƤ��ޤ���
-���Τ��ᡤʸ����ɤि�Ӥ�WWW�����Ф���ʸ���ž�����ޤ����⤷��ǽ�ʤ顤
-����å��奵���Ф����Ѥ���Ȳ�Ŭ�Ǥ�������ϥץ������������Ʊ���Ǥ���
+<dt>一度読んだ文書を2度目に読んだときに,読みこみが速くならないんだけど?
+<dd>他の多くのブラウザと違い,w3mはキャッシュを持っていません.
+そのため,文書を読むたびにWWWサーバから文書を転送します.もし可能なら,
+キャッシュサーバを利用すると快適です.設定はプロキシの設定と同じです.
<p>
-<dt>�����Υե������ľ����¸������ˡ�Ϥʤ��Ρ�
-<dd>'a' (Lynx �������Х���ɤξ��� 'd') �ޤ��� ESC RET�ǥ�����ʸ���
-��¸���ޤ�����������¸������� ESC I �Ǥ���
+<dt>リンク先のファイルを直接保存する方法はないの?
+<dd>'a' (Lynx 風キーバインドの場合は 'd') または ESC RETでリンク先の文書を
+保存します.画像を保存する場合は ESC I です.
<p>
-<dt>�ץ�����������Ϥɤ�����Ρ�
-<dd>�Ķ��ѿ� HTTP_proxy �����ꤹ�뤫��"o" ���ޥ�ɤΥ��ץ��������ѥͥ�
-�����ꤷ�ޤ����㤨�� proxy.hogege.com �Ȥ����ۥ��Ȥ� 8000�֥ݡ��Ȥ�
-���Ѥ����硤
+<dt>プロキシの設定はどうするの?
+<dd>環境変数 HTTP_PROXY, HTTPS_PROXY, GOPHER_PROXY, FTP_PROXY を設定するか,"o" コマンドのオプション設定パネル
+で設定します.例えば proxy.hogege.com というホストの 8000番ポートを
+利用する場合,
<p>
<pre>
http://proxy.hogege.com:8000/
</pre>
<p>
-�����ꤷ�ޤ���
+と設定します.
<p>
-<dt>�����֥饦����ư����ȡ�w3m���ǤޤäƤ��ޤ��ޤ���
-���Ȥ��ʤ�ޤ��󤫡�
-<dd>"o"���ޥ�ɤ�����ѥͥ��ɽ�����������֥饦���ι��ܤˡ��㤨��
+<dt>外部ブラウザを起動すると,w3mが固まってしまいます.
+何とかなりませんか?
+<dd>"o"コマンドで設定パネルを表示し,外部ブラウザの項目に,例えば
<p>
<pre>
netscape %s &
</pre>
<p>
-�Τ褦�����Ϥ��ޤ������ξ�硤%s ����ʬ�� URL ���֤�����äƥ֥饦������ư��
-�ޤ���
+のように入力します.この場合,%s の部分が URL に置きかわってブラウザが起動し
+ます.
<p>
-<dt>�����Υӥ塼�����Ѥ�����������ɡ��ɤ�����Ρ�
-<dd>�������Ǥϲ����򸫤�Τ� xv ��Ȥ��褦�ˤʤäƤ��ޤ����������
-�㤨�� display ���Ѥ�����ϡ�~/.w3m/mailcap �ޤ��� /etc/mailcap �˼��Τ�
-���ʵ��Ҥ�����ޤ���
+<dt>画像のビューアを変えたいんだけど,どうするの?
+<dd>初期設定では画像を見るのに xv を使うようになっていますが,これを
+例えば display に変える場合は,~/.w3m/mailcap または /etc/mailcap に次のよ
+うな記述を入れます.
<p>
<pre>
image/*; display %s
</pre>
<p>
-Ʊ���褦�ˡ�¾�Υ����פΥǡ������������ץ���������ꤹ�뤳�Ȥ�
-�Ǥ��ޤ���
+同じように,他のタイプのデータを処理するプログラムを指定することも
+できます.
<p>
<pre>
image/*; display %s
@@ -218,19 +218,19 @@ application/x-dvi; xdvi %s
</dl>
<a name="other"></a>
-<center><h2>����¾</h2></center>
+<center><h2>その他</h2></center>
<dl>
-<dt>����ե�����Ϥɤ��ˤ���Ρ�
-<dd>~/.w3m �ǥ��쥯�ȥ�β��� config �Ǥ���
-���ץ��������ѥͥ���ѹ��Ǥ���ȵ��Ҥ���Ƥ��륪�ץ������ͤ�
-���Υե�������ѹ�����ȡ�w3m �ε�ư��Ĵ���Ǥ��ޤ���
-���ץ�����̾�����ͤ����Ƕ��ڤä���Τ� 1 �Ԥ� 1 �Ȥ��Ľ񤤤����ꤷ�ޤ���
-<p>
-<dt>~/.w3m �β��� w3mXXXXXX �Τ褦�ʥե����뤬�������󤢤뤱�ɡ�����
-<dd>WWW�����Ф���ե�������ɤ�Ǥ���Ȥ��ˡ��������Ū����¸����
-�ե�����Ǥ��������륭��å���ե�����ǤϤ���ޤ���
-w3m ��λ����оõ���Ϥ��Ǥ�����w3m���۾ェλ�������ˤϻĤ�
-���Ȥ�����ޤ��������������ϼ�Ǿä��Ƥ���������
+<dt>設定ファイルはどこにあるの?
+<dd>~/.w3m ディレクトリの下の config です.
+オプション設定パネルで変更できると記述されているオプションの値を
+このファイルで変更すると,w3m の挙動を調整できます.
+オプションの名前と値を空白で区切ったものを 1 行に 1 組ずつ書いて設定します.
+<p>
+<dt>~/.w3m の下に w3mXXXXXX のようなファイルがたくさんあるけど,何?
+<dd>WWWサーバからファイルを読んでいるときに,それを一時的に保存する
+ファイルです.いわゆるキャッシュファイルではありません.
+w3m を終了すれば消去されるはずですが,w3mが異常終了した場合には残る
+ことがあります.そういう場合は手で消してください.
<p>
</dl>
diff --git a/doc-jp/HISTORY b/doc-jp/HISTORY
index ce90974..af1248e 100644
--- a/doc-jp/HISTORY
+++ b/doc-jp/HISTORY
@@ -1,28 +1,28 @@
2001/3/23 ==============================================================
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
Subject: [w3m-dev 01807] Re: w3m-0.2.0
-* url.c �� USE_NNTP �� __EMX__ �ǥ���ѥ���Ǥ��ʤ���
-* EWS4800 �Ѥ� patch (�֤˹礤�ޤ���Ǥ����͡��京����)
-* ssl_forbid_method ����ߤ� #define USE_SSL �� #undef USE_SSL_VERIFY
- ������(rc.c �� url.c)
- # hsaka24 �ǥ��ʥ��󥹤����˽���������Ƥ��ޤä��Τ�����Ǥ����͡�
- # ���ߤޤ���
-* rc.c �˰��� ISO-2022-JP �������Τ�����
- # ź�դ� patch �Ǥ����뤫�ɤ�����
-* saveBufferDelNum �� del==TRUE �λ���":" ����������������롣
-* main.c �� URL�������¸������֤ν�����
- # ����� hsaka24 �ǥ��ʥ��󥹤����˽���������Ƥޤ�����
+* url.c が USE_NNTP や __EMX__ でコンパイルできない。
+* EWS4800 用の patch (間に合いませんでしたね。坂根さん)
+* ssl_forbid_method がらみで #define USE_SSL で #undef USE_SSL_VERIFY
+ の場合の処理。(rc.c と url.c)
+ # hsaka24 でアナウンスせずに修正を入れてしまったのが問題でしたね。
+ # すみません。
+* rc.c に一部 ISO-2022-JP があるものを修正。
+ # 添付の patch であたるかどうか…
+* saveBufferDelNum で del==TRUE の時、":" 以前が2回削除される。
+* main.c の URL履歴を保存する位置の修正。
+ # これも hsaka24 でアナウンスせずに修正を入れてました。
From: TSUCHIYA Masatoshi <tsuchiya@pine.kuee.kyoto-u.ac.jp>
Subject: [w3m-dev 01810] deflate (was: w3m-0.2.0)
-0.2.0 �ˤ� Content-encoding: deflate ���б����뤿��Υѥå� [w3m-dev 01684]
-��ޤޤ�Ƥ���褦�Ǥ�������������Ǥ� http://cvs.m17n.org/~akr/diary/
-�ϱ����Ǥ��ޤ���Ǥ�����
+0.2.0 には Content-encoding: deflate に対応するためのパッチ [w3m-dev 01684]
+も含まれているようですが、これだけでは http://cvs.m17n.org/~akr/diary/
+は閲覧できませんでした。
From: Fumitoshi UKAI <ukai@debian.or.jp>
Subject: [w3m-dev 01808] Re: w3m-0.2.0
-GNU/Linux �� glibc 2.2�Ϥ��� sin.ss_len ���ʤ��Τ�
-IPv6 �ǥ���ѥ���Ǥ��ޤ���
+GNU/Linux で glibc 2.2系だと sin.ss_len がないので
+IPv6 でコンパイルできません。
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
Subject: [w3m-dev-en 00399] Re: w3m-0.2.0
@@ -36,82 +36,82 @@ Subject: [w3m-dev-en 00399] Re: w3m-0.2.0
>> - private mailcap extension has an illegal name
From: SATO Seichi <seichi@as.airnet.ne.jp>
-Subject: w3m������ɽ�������ˤ�����Х�
-����ʸ����Ȥ��� $* ���Ϥ��� Segmentation fault ��
-ȯ������褦�Ǥ���(����̵��̣��ʸ����ʤ�Ǥ���)
+Subject: w3mの正規表現検索におけるバグ
+検索文字列として $* を渡すと Segmentation fault が
+発生するようです。(全然無意味な文字列なんですが)
2001/3/22 ==============================================================
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
Subject: [w3m-dev 01664] Re: Patch for anonymizer.com
-HTTP(HTTPS)��� URL ��
-��http://<host>/<scheme>: ...
-�ȤʤäƤ���� cleanupName() ��ƤФʤ��ͤˤ��Ƥߤޤ�����
+HTTP(HTTPS)の場合に URL が
+ http://<host>/<scheme>: ...
+となっていれば cleanupName() を呼ばない様にしてみました。
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
Subject: [w3m-dev 01670] Re: w3m-0.1.11-pre-kokb24-test1
-Str.c �� strcpy/strncpy �� bcopy or memcpy �ˤ����Ǥ�����
-bcopy �Ϥ� memcpy �Ϥ����줹��Τϸ�ˤ���Ȥ��Ƥ⡢�Ȥꤢ��������
-bcopy ���֤����������������Ȼפ��ޤ���
-�Ĥ��Ǥˡ�saveBufferDelNum �ǰ��� '\0' �������ʤ��ʤäƤ���Х��ν����Ǥ���
+Str.c の strcpy/strncpy を bcopy or memcpy にする件ですが、
+bcopy 系と memcpy 系を統一するのは後にするとしても、とりあえず全て
+bcopy に置き換えた方がいいと思います。
+ついでに、saveBufferDelNum で一部 '\0' が扱えなくなっているバグの修正です。
From: TSUCHIYA Masatoshi <tsuchiya@pine.kuee.kyoto-u.ac.jp>
Subject: [w3m-dev 01618] backend patch
Subject: [w3m-dev 01671] backend patch for w3m-0.1.11-pre-kokb24-test1
-w3m ������Ū�ʥ��饤����ȤȤ���Ư����ǽ���ɲä���ѥå��Ǥ���
+w3m を対話的なクライアントとして働く機能を追加するパッチです。
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
Subject: [w3m-dev 01673] SEGV in append_frame_info()
->w3m/0.1.11-pre-kokb23-m17n-0.8 ��ȤäƤ��ޤ�����Der Angriff �Υȥåץڡ��� (
->http://i.am/goebbels/)�ǡ��ڡ����ξ���򸫤褦�ȡ�=�ץ����򲡤����顢
->Segmentation Fault ���Ƥ��ޤ��ޤ�����
-�Ȥλ�Ŧ������ޤ�����m17n �Ǥ˸¤�ʤ��Τǡ��Ȥꤢ�����н褷�Ƥ����ޤ���
+>w3m/0.1.11-pre-kokb23-m17n-0.8 を使っていますが、Der Angriff のトップページ (
+>http://i.am/goebbels/)で、ページの情報を見ようと「=」キーを押したら、
+>Segmentation Fault してしまいました。
+との指摘がありました。m17n 版に限らないので、とりあえず対処しておきます。
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
Subject: [w3m-dev 01674] image map
-> AREA�Ǻ�ä����饤����ȥ����ɥ��᡼���ޥåפ�href��"#test"�Τ褦�ʾ��ˡ�
-> �����׽���ޤ���
-> Image map links �β��̤Ǥϡ�URL�����Ǥʤ���alt��title��ɽ�����������ɤ���
-> �פ��ޤ���
-�Ȥλ�Ŧ������ޤ����Τǽ���/�б����Ƥߤޤ�������������
-* #undef MENU_MAP �ξ�硢#label �ΤߤǤ��äƤ� reload �ˤʤ롣
- �̤ΥХåե�����θƤӽФ��ʤΤǡ��������ʤ��Ȥ���ä��񤷤��Ǥ���
- �ʤ��������Ǻ��������Хåե�����θƤӽФ������Ƥ����ʤ��ͤˤ��ޤ�����
- �Хåե�����ʤ� #define MENU_MAP �������������Ȼפ��ޤ���
-* �ɲä���°���� alt �Τ� (title �äƲ���)
- MapList ��¤�Τ��Ѥ��������ɤ��褦�ˤ�פ��ޤ����������ݤʤΤǻߤ�ޤ�����
-�ȤʤäƤޤ���
+> AREAで作ったクライアントサイドイメージマップのhrefが"#test"のような場合に、
+> ジャンプ出来ません。
+> Image map links の画面では、URLだけでなく、altやtitleも表示した方が良いと
+> 思います。
+との指摘がありましたので修正/対応してみました。ただし、
+* #undef MENU_MAP の場合、#label のみであっても reload になる。
+ 別のバッファからの呼び出しなので、こうしないとちょっと難しいです。
+ なお、内部で作成したバッファからの呼び出しは全てそうなる様にしました。
+ バッファを作らない #define MENU_MAP の方がいいかと思います。
+* 追加した属性は alt のみ (title って何?)
+ MapList 構造体を変えた方が良いようにも思いましたが、面倒なので止めました。
+となってます。
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
Subject: [w3m-dev 01675] goto label
-GOTO �� #define MENU_MAP �ξ��Υ��᡼���ޥå�
-�� #label �Τߤ� URL �����ꤵ�줿���� reload ���ʤ��ͤˤ��ޤ�����
-���줫�顢[w3m-dev 01101] space in URL ���ɲä��줿������ goURL() �˰ܤ�
-�ޤ�������������inputLineHist() �� URL �����Ϥ����硢����ʸ���� ^V ��
-�Ȥ�ʤ������ϤǤ��ʤ��Τ�ɬ�פʤ��Ȥ�פ��ޤ��������������Ȥ⤢�ä�
-����ζ���ν����ϳ����ޤ�����
+GOTO や #define MENU_MAP の場合のイメージマップ
+で #label のみの URL が指定された場合に reload しない様にしました。
+それから、[w3m-dev 01101] space in URL で追加された処理を goURL() に移し
+ました。ただし、inputLineHist() で URL を入力する場合、空白文字は ^V を
+使わないと入力できないので必要ないとも思います。そういうこともあって
+後ろの空白の処理は外しました。
From: Tsutomu Okada <okada@furuno.co.jp>
Subject: [w3m-dev 01676] Re: w3m-0.1.11-pre-kokb24-test1
Subject: [w3m-dev 01678] Re: w3m-0.1.11-pre-kokb24-test1
-��ƣ����� [w3m-dev 01627] �Υѥå��Τ�����GC_warn ��Ϣ�Ⱥ٤��ʥ�����
-�ν��������ƤƤ������ۤ��������褦�˻פ��ޤ���
+須藤さんの [w3m-dev 01627] のパッチのうち、GC_warn 関連と細かなソース
+の修正は当てておいたほうがいいように思います。
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
Subject: [w3m-dev 01680] Re: w3m-0.1.11-pre-kokb24-test1
- >> ���ĤǤ���
- >> ��δĶ��Ǥϡ�-pedantic �ˤ�ä�
+ >> 岡田です。
+ >> 私の環境では、-pedantic によって
>> warning: ANSI forbids assignment between function pointer and `void *'
>> warning: pointer targets in initialization differ in signedness
-���������ʤ�������Ǥ��͡����򷡤äƤ��ޤä�...
+う、ごめんなさい。私ですね。墓穴を掘ってしまった...
>> warning: overflow in implicit constant conmplicit con version
>> warning: pointer targets in passing arg 2 of `Strcat_charp_n' differ in signedness
- >> �Ȥ����ٹ𤬽Фޤ������������⽤�����٤��Ǥ��礦����
-��������ˤ��������ȤϤʤ��Τ� patch ��Ф��ޤ���
+ >> という警告が出ましたが、これらも修正すべきでしょうか?
+修正するにこしたことはないので patch を出します。
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
Subject: [w3m-dev 01684] Re: http://cvs.m17n.org/~akr/diary/
-application/x-deflate ���
+application/x-deflate 対応.
From: Moritz Barsnick <barsnick@gmx.net>
Subject: [w3m-dev-en 00318] Information about current page
@@ -137,209 +137,209 @@ but it would be nice for me & some others if it was in the official
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
Subject: [w3m-dev 01772] Re: visited anchor
Subject: [w3m-dev 01773] Re: visited anchor
- * visited anhor color��
- * textlist �١����� history��hash �����줿 (URL) history��
- * #undef KANJI_SYMBOLS �ξ��� rule �μ������ѹ���
+ * visited anhor color。
+ * textlist ベースの history。hash 化された (URL) history。
+ * #undef KANJI_SYMBOLS の場合の rule の実装の変更。
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
Subject: [w3m-dev 01786] Re: w3m-0.1.11-pre-hsaka24
Subject: [w3m-dev 01787] Re: w3m-0.1.11-pre-hsaka24
- >> 1. http://www.tomoya.com/ �ǡ�<FRAMESET> ��ʸ���ɽ������(�ե졼��μ�
- >> ưɽ���� ON �ʤ顢F �򲡤�)��MAIN �Υե졼���ɽ�������褦�Ȥ���ȡ�
- >> main.c:2082 �� Sprintf �������(gotoLabel �� label=0x0 �ǸƤӤ����Ƥ�
- >> ��)��
-[w3m-dev 01675] ����̿Ū�ʥХ������ߤޤ���
- >> 2. �Ǽ��Ħ� http://133.5.222.232/keijiban/index.htm ��ɽ�������褦�Ȥ�
- >> ��ȡ�frame.c:668 �� strcasecmp �������
-���ä����������顣
+ >> 1. http://www.tomoya.com/ で、<FRAMESET> の文書を表示させ(フレームの自
+ >> 動表示が ON なら、F を押す)、MAIN のフレームを表示させようとすると、
+ >> main.c:2082 の Sprintf で落ちる(gotoLabel を label=0x0 で呼びだしてい
+ >> る)。
+[w3m-dev 01675] の致命的なバグ。すみません。
+ >> 2. 掲示板α http://133.5.222.232/keijiban/index.htm を表示させようとす
+ >> ると、frame.c:668 の strcasecmp で落ちる
+こっちは前々から。
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
Subject: [w3m-dev 01788] Re: w3m-0.1.11-pre-hsaka24
-w3m-0.1.11-pre-hsaka24 �ΥХ������Ǥ���
+w3m-0.1.11-pre-hsaka24 のバグ修正です。
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
Subject: [w3m-dev 01792] Re: w3m-0.1.11-pre-hsaka24
- >> �����̷�ʤΤǤ�����useVisitedColor �� TRUE �ΤȤ�
- >> http://www.kusastro.kyoto-u.ac.jp/%7Ebaba/wais/other-system.html �ˤ�
- >> ���ơ��Ǹ�β��̤�ɽ���� 1��2 �äۤ��Ԥ�����ޤ�������Ū�ˤϡ�goLineL
-retrieveAnchor() �� linear search ���ä��Τ������Ǥ�����
-binary search ���Ѥ��Ƥߤޤ������ɤ��Ǥ��礦��
+ >> 全然別件なのですが、useVisitedColor が TRUE のとき
+ >> http://www.kusastro.kyoto-u.ac.jp/%7Ebaba/wais/other-system.html にお
+ >> いて、最後の画面の表示が 1〜2 秒ほど待たされます。具体的には、goLineL
+retrieveAnchor() が linear search だったのが原因でした。
+binary search に変えてみました。どうでしょう。
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
Subject: [w3m-dev 01793] <li type="..">
-<li> ������ type °���Ǥ��������� <li> �ˤΤ�ͭ���ʤΤǤϤʤ��ơ�
-<ol> �� <ul> �Ǥλ�����񤭤���(�ʹߤ� <li> �ˤ�ͭ���Ȥʤ�)��
-�Ǥ��Τǽ������ޤ�����
+<li> タグの type 属性ですが、その <li> にのみ有効なのではなくて、
+<ol> や <ul> での指定を上書きする(以降の <li> にも有効となる)様
+ですので修正しました。
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
Subject: [w3m-dev 01801] some fixes.
-frame ��ɽ�����Ƥ��ơ����Ť˽��Ϥ���Ƥ�����ʬ������ޤ�����
-���ν����Ǥ���
+frame を表示していて、2重に出力されている部分がありました。
+その修正です。
Subject: IPv6 support for w3m's ftp
From: Hajimu UMEMOTO <ume@imasy.or.jp>
- w3m �� HTTP �� IPv6 �б�����Ƥ���ΤǤ�������ǰ�ʤ��� FTP ��ǽ����
-�� IPv6 �б����Ƥ��ޤ���FTP ��ǽ���Ф��� IPv6 �б��ѥå���������ޤ�
-���Τǡ�������ѥå��˴ޤ��ĺ���ʤ��Ǥ��礦����
+ w3m の HTTP は IPv6 対応されているのですが、残念ながら FTP 機能の方
+は IPv6 対応していません。FTP 機能に対する IPv6 対応パッチを作成しまし
+たので、非公式パッチに含めて頂けないでしょうか?
2001/3/16 ==================================================================
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
Subject: [w3m-dev 01711] Authorization
-��http://user:pass@hostname/ �����
+・http://user:pass@hostname/ に対応.
From: hsaka@mth.biglobe.ne.jp
Subject: [w3m-dev 01724] buf->type when mailcap is used.
-mailcap ��Ȥä����(copiousoutput, htmloutput) �ˤ⡢
-buf->type �����ꤹ���ͤˤ��ޤ�����
-'v', 'E' ��Ȥ������Τȡ�m17n �����ǥХåե��� text/html ���Ȥ���
-����ɬ�פʲս꤬����Τǡ�
+mailcap を使った場合(copiousoutput, htmloutput) にも、
+buf->type を設定する様にしました。
+'v', 'E' を使いたいのと、m17n の方でバッファが text/html だという
+情報が必要な箇所があるので。
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
Subject: [w3m-dev 01726] anchor jump too slow by TAB-key on STDIN.
-ɸ�����Ϥ���HTML���ɤ�Ǥ����硤
-������ URL ������ path ������ä��ꤹ��ȡ���ˡ�currentdir() ��
-�ƤФ�Ƥ��뤿���®�٤��㲼���Ƥ��ޤ�����
-������Ω���夲�������ǰ��� �����ȥǥ��쥯�ȥ�����ꤹ���ͤˤ��ޤ�����
-�Ĥ��Ǥ�ɸ�����Ϥ���ξ����Ѥ� URL "file:///-" �� "-" �����ˤ��ޤ�����
+標準入力からHTMLを読んでいる場合,
+リンク先の URL が相対 path 指定だったりすると、常に、currentdir() が
+呼ばれているために速度が低下していました.
+そこで立ち上げた時点で一度 カレントディレクトリを設定する様にしました。
+ついでに標準入力からの場合の変な URL "file:///-" を "-" だけにしました。
From: sakane@d4.bsd.nes.nec.co.jp (Yoshinobu Sakane)
Subject: [w3m-dev 01727] C-z when stdin
% cat main.c | w3m
-���ơ�C-z �����ݤ˥�����ץ���ץȤ����ʤ�����Ф���ѥå�
-�Ǥ���
+して、C-z した際にシェルプロンプトに戻らない件に対するパッチ
+です。
From: Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
Subject: [w3m-dev 01729] ignore_null_img_alt
-ignore_null_img_alt �� OFF ���ȡ�<img src="file"> �Ȥ��� ALT °����
-̵�����Ǥⲿ��ɽ�����ʤ��ʤäƤ����Τǽ������ޤ�����
-���줫�顢<img width=300 height=1 src="bar.gif"> ���ͤʻ���ξ��ˡ�
-<hr> ���֤�������ȡ�width °����̵�뤵����Ԥ����äƤ��ޤ��Τ�
-���ޤ����ʤΤ� <hr> ��Ʊ�ͤν�����������ͤˤ��ޤ�����
+ignore_null_img_alt が OFF だと、<img src="file"> という ALT 属性が
+無い場合でも何も表示しなくなっていたので修正しました。
+それから、<img width=300 height=1 src="bar.gif"> の様な指定の場合に、
+<hr> で置き換えると、width 属性が無視され改行が入ってしまうのが
+いまいちなので <hr> と同様の処理を入れる様にしました。
From: Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
Subject: [w3m-dev 01730] Re: <hr> in a table
-<hr>�β��ɡ�
+<hr>の改良.
From: Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
Subject: [w3m-dev 01731] completion list
-�Dz������ϤǤΥե�����̾���䴰����
+最下行入力でのファイル名の補完時に
----- Completion list -----
X11R6/ compat/ include/ libdata/ local/ nfs/ ports/ share/
bin/ games/ lib/ libexec/ mdec/ obj/ sbin/ src/
(Load)Filename? /usr/
-���ͤ�ɽ�������뤿��� patch �Ǥ���
+の様に表示させるための patch です。
From: Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
Subject: [w3m-dev 01733] A patch concerning SSL
-SSL��Ȥ�����
-1. �Ȥ�ʤ��᥽�åɤ���ꤹ�륪�ץ�����ssl_forbid_method�פ��ɲä��롢
-2. ��³��Ω�˼��Ԥ����Ȥ��˥��顼��å�������ɽ�����롢
+SSLを使う時に
+1. 使わないメソッドを指定するオプション「ssl_forbid_method」を追加する、
+2. 接続確立に失敗したときにエラーメッセージを表示する、
From: Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
Subject: [w3m-dev 01735] Re: A patch concerning SSL
Subject: [w3m-dev 01737] Re: A patch concerning SSL
-1. ssl_forbid_method�Ρ֥ǡ������פ�P_STRING����P_SSLPATH���Ѥ��ơ���
- ư��Υ��ץ��������ѥͥ�ˤ���ѹ��Ǥ�SSL��³�˻Ȥ���᥽�åɤ�
- �����ȿ�Ǥ����褦�ˤ�����
-2. �Ƽ泌�顼��å������򤢤����ټ�äƤ����Ƹ�Ǹ����褦�ˤ���(mule
- 2.3 base on emacs 19.34�ε�ǽ�Υѥ��ꡢ¾��emacsen�ˤ��뤫���Τ餺)��
+1. ssl_forbid_methodの「データ型」をP_STRINGからP_SSLPATHに変えて、起
+ 動後のオプション設定パネルによる変更でもSSL接続に使われるメソッドの
+ 選択に反映されるようにした、
+2. 各種エラーメッセージをある程度取っておいて後で見れるようにした(mule
+ 2.3 base on emacs 19.34の機能のパクリ、他のemacsenにあるかは知らず)、
From: sakane@d4.bsd.nes.nec.co.jp (Yoshinobu Sakane)
Subject: [w3m-dev 01738] [w3m-doc] w3m document maintenance
-w3mϢ��Ģ(http://mi.med.tohoku.ac.jp/~satodai/w3m/bbs/spool/log.html)
-�ˤ�񤭤ޤ����������ƤǤ��ä�w3m�Υɥ������������Ϥ᤿
-���Ȼפ��ޤ���
+w3m連絡帳(http://mi.med.tohoku.ac.jp/~satodai/w3m/bbs/spool/log.html)
+にも書きましたが、懸案であったw3mのドキュメント整備を始めた
+いと思います。
From: kiwamu <kiwamu@debian.or.jp>
-Subject: [w3m-dev 01739] �ۥ�����ޥ����б� patch
-w3m��ۥ�����ޥ����б������Ƥߤޤ�����
-rxvt��xterm�ǻ��ѤǤ��ޤ���
-kterm���ȥۥ�����ξ岼��Ʊ������ȥ����륳���ɤ��֤��Ƥ��ޤ��Τ�
-�¸��Բ�ǽ�ߤ����Ǥ���
+Subject: [w3m-dev 01739] ホイールマウス対応 patch
+w3mをホイールマウス対応させてみました。
+rxvtとxtermで使用できます。
+ktermだとホイールの上下が同じコントロールコードを返してしまうので
+実現不可能みたいです。
From: Fumitoshi UKAI <ukai@debian.or.jp>
Subject: [w3m-dev 01742] w3mmee 0.1.11p16-6 segfault
-w3mmee 0.1.11p16-6 �Ǥ�����mime.types �����Ƥˤ�äƤ� segfault ���ޤ���
-# ���Ԥ�����ȥ���
+w3mmee 0.1.11p16-6 ですが、mime.types の内容によっては segfault します。
+# 空行があるとダメ
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
Subject: [w3m-dev 01752] SEGV in search_param()
- > >> ��w3m -o 1 ���� SEGV ���ޤ���
- > search_param() �� size_t �� unsigned �Τ��� i = 0 �ΤȤ�
- > e = 4294967295 �ˤʤäƤ��ޤäƤ���褦�Ǥ���
+ > >> ・w3m -o 1 等で SEGV します。
+ > search_param() で size_t が unsigned のため i = 0 のとき
+ > e = 4294967295 になってしまっているようです。
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
Subject: [w3m-dev 01753] empty <select>
-<select>��</select> �� <option> ��̵����硢
+<select>〜</select> に <option> が無い場合、
<form action=A>
<select name=B></select>
<input type=submit>
</form>
-���ͤʾ��ˡ�SUBMIT ������ޤ��Τǽ��� patch �Ǥ���
+の様な場合に、SUBMIT で落ちますので修正 patch です。
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
Subject: [w3m-dev 01754] A search does not stop.
-ɸ�����Ϥ����礭�ʥե�������ɤ�Ǥ�������ޤ��֤������� ON ����
-�������ҥåȤ��ʤ�����̵�¥롼�פˤʤ�Х��������ޤ�����
+標準入力から大きなファイルを読んでいる時に折り返し検索が ON だと
+検索がヒットしない場合に無限ループになるバグを修正しました。
-�ޤ���[w3m-dev 01617] ��ȴ����Ǥ����������Υ���������֤�ư���
-¾�ȹ�碌�ޤ�����
+また、[w3m-dev 01617] の抜かりですが検索時のカーソル位置の動作も
+他と合わせました。
From: WATANABE Katsuyuki <katsuyuki_1.watanabe@toppan.co.jp>
Subject: [w3m-dev 01755] relative path with -bookmark option
-* -bookmark ���ץ����ǥ֥å��ޡ����ե��������ꤷ���Ȥ���
- ���Хѥ��ǥե�����̾��Ϳ����ȡ��֥å��ޡ������ɲä��Ǥ��ޤ���
-* -bookmark �ǻ��ꤵ�줿�ե����뤬���Хѥ��ξ��ˤϡ����Хѥ���
- ľ�����ݻ�����褦�ˤ��Ƥߤޤ�����
+* -bookmark オプションでブックマークファイルを指定したとき、
+ 相対パスでファイル名を与えると、ブックマークの追加ができません。
+* -bookmark で指定されたファイルが相対パスの場合には、絶対パスに
+ 直して保持するようにしてみました。
2001/2/7
From: aito
Subject: [w3m-dev 01722] <hr> in a table
-ɽ�����<hr>���Ȥ�Ĥ�ȴ����Х��ν�����
+表の中の<hr>が枠をつき抜けるバグの修正.
2001/2/6
From: aito
-Local CGI ��ǧ���Ѥˡ�Local cookie �Ȥ��������ߤ�������ޤ�����
-Local cookie ��ư��ϼ��Τ褦�ʤ�ΤǤ���
-��w3m �ϡ��ץ������˸�ͭ�� "Local cookie" ��ư�������롥
-��Local CGI �θƤӽФ��Ǥϡ��Ķ��ѿ� LOCAL_COOKIE ���ͳ���ƥ�����ץ�
- �� Local cookie ���Ϥ���롥
-��������ץȤϡ�����θƤӽФ��Ѥ�form��url ����� local cookie �����
- ���ࡥ
-��������ץȤ�2���ܰʹߤθƤӽФ��Ǥϡ�CGI�ѥ�᡼����ͳ��cookie ��
- �Ķ��ѿ���ͳ�� cookie ��Ʊ�����ɤ��������å�����Ʊ���Ǥʤ��ä���
- ������ư��򤷤ʤ���
+Local CGI の認証用に,Local cookie というしくみを実装しました.
+Local cookie の動作は次のようなものです.
+・w3m は,プロセスに固有な "Local cookie" を自動生成する.
+・Local CGI の呼び出しでは,環境変数 LOCAL_COOKIE を経由してスクリプト
+ に Local cookie が渡される.
+・スクリプトは,次回の呼び出し用のformやurl の中に local cookie を埋め
+ こむ.
+・スクリプトの2回目以降の呼び出しでは,CGIパラメータ経由のcookie と
+ 環境変数経由の cookie が同じかどうかチェックし,同じでなかったら
+ 危険な動作をしない.
-w3mbookmark, w3mhelperpanel �� Local cookie ǧ�ڤ�����ޤ�����
+w3mbookmark, w3mhelperpanel に Local cookie 認証を入れました.
-�Ĥ��Ǥˡ�Linux �� gc library �� /usr/local/lib ���˥��󥹥ȡ��뤵���
-�������� gcmain.c ������ѥ���Ǥ��ʤ��ʤäƤ����Τǡ��������Ƥߤޤ�����
+ついでに,Linux で gc library が /usr/local/lib 等にインストールされて
+いた場合に gcmain.c がコンパイルできなくなっていたので,修正してみました.
2001/1/25
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
Subject: [w3m-dev 01667] Re: mailer %s
- Editor �� "vi %s" �ʤɤξ��� "vi file +10" �ʤɤ�Ÿ������Ƥ��ޤ���
- ���꤬���ä��Τǡ�Editor ��Ÿ����
- ��%s ��������
- * %d �������
- Sprintf(Editor, linenum, file) # ���֤ϸ���
- * �����Ǥʤ����
+ Editor が "vi %s" などの場合に "vi file +10" などと展開されてしまい、
+ 問題があったので、Editor の展開を、
+ ・%s がある場合
+ * %d があれば、
+ Sprintf(Editor, linenum, file) # 順番は固定
+ * そうでなければ
Sprintf(Editor, file)
- ��%s ���ʤ����
- * %d �������
+ ・%s がない場合
+ * %d があれば、
Sprintf(Editor, linenum) file
- * "vi" �Ȥ���ʸ���󤬤���С�
+ * "vi" という文字列があれば、
Sprintf("%s +%d", Editor, linenum) file
- * �����Ǥʤ����
+ * そうでなければ
Editor file
- �Ȥ��Ƥߤޤ�����
+ としてみました。
2001/1/24
@@ -354,9 +354,9 @@ Subject: [w3m-dev 01662] Re: <head>
2001/1/23
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
- ��°���ͤ���� ", <, > & �����������Ȥ���Ƥ��뤫�ɤ��������å�����
- �褦�ˤ���.
- ��°������Ƥʤ�������, °���Υ����å���ȴ���Ƥ�������ν���.
+ ・属性値の中の ", <, > & 等がクォートされているかどうかチェックする
+ ようにした.
+ ・属性を持てないタグの, 属性のチェックが抜けていた問題の修正.
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
Subject: [w3m-dev 01652] mailer %s
@@ -366,14 +366,14 @@ Subject: [w3m-dev 01663] replace addUniqHist with addHist in loadHistory()
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
Subject: [w3m-dev 01617] Re: first body with -m (Re: w3m-m17n-0.7)
- ü����ꥵ������������ư���Ʊ���ˤ��ޤ���(ñ��˺��Ƥ�������)��
- �Ĥ��Ǥˡ�¿�ʤΥե졼��ǹ�������Ƥ���ڡ����λ���INFO('=') �Ǥ�
- �ե졼������ɽ�������������ä��ΤǤ��ν����Ǥ���
+ 端末をリサイズした場合の動作も同じにしました(単に忘れていただけ)。
+ ついでに、多段のフレームで構成されているページの時、INFO('=') での
+ フレーム情報の表示がおかしかったのでその修正です。
From: Tsutomu Okada <okada@furuno.co.jp>
Subject: [w3m-dev 01621] NEXT_LINK and GOTO_LINE problem
- NEXT_LINK �� GOTO_LINE �Ǥ��������Υڡ����κǽ�ιԤ˰�ư�����Ȥ�������
- 1 �ڡ���ʬ���������뤷�Ƥ��ޤ��ޤ���
+ NEXT_LINK と GOTO_LINE ですが、次のページの最初の行に移動したときだけ、
+ 1 ページ分スクロールしてしまいます。
From: Yamate Keiichirou <yamate@ebina.hitachi.co.jp>
Subject: [w3m-dev 01623] Re: (frame) http://www.securityfocus.com/
@@ -384,112 +384,112 @@ From: Tsutomu Okada <okada@furuno.co.jp>
Subject: [w3m-dev 01624] Re: first body with -m
From: Hironori Sakamoto <h-saka@udlew10.uldev.lsi.nec.co.jp>
Subject: [w3m-dev 01625] Re: first body with -m
- pgFore, pgBack �ǡ�currentLine �����̳��Ȥʤꡢ���ġ������ʬ
- ����������Ǥ��ʤ��ä��Ȥ��ˡ����ޤ�ɽ������Ƥ�����ʬ�ȿ�����ɽ������
- ����ʬ�δ֤� currentLine ����äƤ���褦�ʥѥå���񤤤Ƥߤޤ�����
+ pgFore, pgBack で、currentLine が画面外となり、かつ、一画面分
+ スクロールできなかったときに、今まで表示されていた部分と新しく表示され
+ た部分の間に currentLine を持ってくるようなパッチを書いてみました。
From: Hironori Sakamoto <h-saka@udlew10.uldev.lsi.nec.co.jp>
Subject: [w3m-dev 01635] Directory list
- local.c �� directory list �����������ʬ�˥Х�������ޤ�����
+ local.c の directory list を作成する部分にバグがありました。
From: Hironori Sakamoto <h-saka@udlew10.uldev.lsi.nec.co.jp>
Subject: [w3m-dev 01643] buffername
Subject: [w3m-dev 01650] Re: buffername
- buffername (title) �˴ؤ������(?)�Ƚ����Ǥ���
- ��displayLink �� ON �ξ���Ĺ�� URL ��ɽ��������� buffername ������
- �ڤ�Ĥ���ͤˤ��Ƥߤޤ�����
- ���Ĥ��Ǥ� displayBuffer() �Υ����ɤ�������
- ��HTML �椫�� title ������������ζ���ʸ���Ϻ�������ͤˤ��ޤ�����
- ��[w3m-dev 01503], [w3m-dev 01504] �η�ν���
- buffername �Ͼ�� cleaup_str ������ݻ�����Ƥ��ޤ���
- �ʤ����������Ǥϡ�SJIS �Υե�����̾����ĥե�������ɤ�ȡ�
- buffername �� URL �� SJIS �ˤʤäư����򤹤뤳�Ȥ����뤫�⤷��ޤ���
+ buffername (title) に関する改良(?)と修正です。
+ ・displayLink が ON の場合に長い URL を表示する時は buffername の方を
+ 切りつめる様にしてみました。
+ ・ついでに displayBuffer() のコードの整理。
+ ・HTML 中から title を取る場合に末尾の空白文字は削除する様にしました。
+ ・[w3m-dev 01503], [w3m-dev 01504] の件の修正
+ buffername は常に cleaup_str されて保持されています。
+ なお、現時点では、SJIS のファイル名を持つファイルを読むと、
+ buffername や URL が SJIS になって悪さをすることがあるかもしれません。
From: Hironori Sakamoto <h-saka@udlew10.uldev.lsi.nec.co.jp>
Subject: [w3m-dev 01646] putAnchor
- HTML �Υ�������®�٤Υ٥���ޡ����򤷤Ƥߤ褦�Ȼפäơ���������
- ��äƤ�ȡ����륵��������޷��®�٤��㲼���뤳�Ȥ�����ޤ�����
+ HTML のサイズと速度のベンチマークをしてみようと思って、いろいろ
+ やってると、あるサイズから急激に速度が低下することがありました。
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
Subject: [w3m-dev 01647] Re: first body with -m
- �京���󤫤� #label �Ĥ��� URL ����ĥХåե��� reload ����ȡ�
- ����������֤�����Ƥ��ޤ���礬����Ȥλ�Ŧ������ޤ����Τǡ�
- ���� patch �Ǥ���
+ 坂根さんから #label つきの URL を持つバッファを reload すると、
+ カーソル位置がずれてしまう場合があるとの指摘がありましたので、
+ 修正 patch です。
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
Subject: [w3m-dev 01651] display column position with LINE_INFO
- LINE_INFO(Ctrl-g) �ǥ������֤���Ϥ����ͤˤ��Ƥߤޤ�����
+ LINE_INFO(Ctrl-g) でカラム位置も出力する様にしてみました。
2001/1/5
From: Ryoji Kato <ryoji.kato@nrj.ericsson.se>
Subject: [w3m-dev 01582] rfc2732 patch
- RFC2732 �˵��Ҥ���Ƥ���褦�� URL ��� '[' �� ']' �Ǥ�����줿
- literal IPv6 address ���᤹�롣
+ RFC2732 に記述されているような URL 中の '[' と ']' でくくられた
+ literal IPv6 address を解釈する。
From: Yamate Keiichirou <yamate@ebina.hitachi.co.jp>
Subject: [w3m-dev 01594] first body with -m (Re: w3m-m17n-0.7)
- "-m" ���ץ�����Ĥ���ư�������Ȥ��ˡ��᡼��Υإå�����ʸ�δ֤�
- ���Ԥν��������������Ǥ���
+ "-m" オプションをつけて動かしたときに、メールのヘッダと本文の間の
+ 空行の処理がおかしいです。
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
Subject: [w3m-dev 01602] Re: first body with -m (Re: w3m-m17n-0.7)
...
- �ɤ����ˡ�
+ どこかに、
buf->lastLine->linenumber - buf->topLine->linenumber < LASTLINE - 1
- �Ȥ��������ä���Ȥ����Τ��ʡ�
- �Ȥ����櫓�� patch ���äƤߤ��ΤǤ���������äȼ���̵���Ǥ���
- �ʤ���pgFore, pgBack �Υ���������֤�����򡢥���������('J', 'K')
- ��Ʊ��ư��ˤ��Ƥ��ޤ������ʤ�� �ؿ� SPC�٤ȡؿ� J�� ��Ʊ����
- vi ��ư��ȤϤ��ä�����äƤ�Ϥ��Ǥ������ɤ��Ǥ��礦��
- �Ĥ��Ǥˡ�reload, edit ���˥���������֤���¸�����������ɤ��Ƥ��ޤ���
+ という縛りを加えるといいのかな。
+ というわけで patch を作ってみたのですが、ちょっと自信無しです。
+ なお、pgFore, pgBack のカーソル位置の設定を、スクロール('J', 'K')
+ と同じ動作にしています。すなわち 『数 SPC』と『数 J』 は同じ。
+ vi の動作とはこっちが合ってるはずですが、どうでしょう。
+ ついでに、reload, edit 時にカーソル位置を保存する実装を改良しています。
2001/1/1
From: Yamate Keiichirou <yamate@ebina.hitachi.co.jp>
Subject: [w3m-dev 01584] Re: attribute replacing in frames. (Re: some fixes)
- �⤦���١�frame���tag�񤭴�����ñ��ˤ���patch������ޤ���
+ もう一度。frame内のtag書き換えを単純にしたpatchを送ります。
2000/12/27
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
- �ե�����ν����˶��Ԥ�;ʬ���ɲä��������ν���.
+ ファイルの終わりに空行が余分に追加される問題の修正.
2000/12/26
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
Subject: [w3m-dev 01560] Re: long URL
- >> ���ĤǤ���
- >> PEEK �� PEEK_LINK �Dz��������Ĺ�� URL �򸫤���褦�ˡ�prefix ������
- >> ���Ƽ������Ƥߤޤ�����
- >> �����ϰ��٤�����ɽ���������ä��ΤǤ�������������ޤ�꤬�褯�狼��ʤ���
- >> ���Τǡ��Ȥꤢ����ɽ����������ʬ����ꤹ����ˡ��ȤäƤ��ޤ���2c �� 3u
- >> �����Ϥ���ȡ����ꤵ�줿��ʬ���б����롢URL �ΰ�����ɽ������ޤ���
- >> ��ո����洶�ۤ��Ԥ����Ƥ���ޤ���
- ���������ΤϤɤ��Ǥ��礦��
- Ϣ³���� 'u' �� 'c' �� URL ����ʸ�����ĥ��������뤷�ޤ���
+ >> 岡田です。
+ >> PEEK や PEEK_LINK で画面幅より長い URL を見られるように、prefix を利用
+ >> して実装してみました。
+ >> 本当は一度に全部表示したかったのですが、画面制御まわりがよくわからなかっ
+ >> たので、とりあえず表示したい部分を指定する方法をとっています。2c や 3u
+ >> と入力すると、指定された部分に対応する、URL の一部が表示されます。
+ >> 御意見、御感想お待ちしております。
+ こういうのはどうでしょう。
+ 連続した 'u' や 'c' で URL が一文字ずつスクロールします。
From: Tsutomu Okada <okada@furuno.co.jp>
Subject: [w3m-dev 01570] Re: long URL
- ���ܤ���> # ���Ĥ���ΰƤ�����Ƥ⤤�����⤷��ޤ���
+ 坂本さん> # 岡田さんの案も入れてもいいかもしれません。
- ���ܤ���� [w3m-dev 1560] ����κ�ʬ��ź�դ��ޤ�������Ĺ�� URL �ξ�
- ���ͭ�����Ȼפ��ޤ�(���ޤ���פϤʤ������Ǥ���)��
+ 坂本さんの [w3m-dev 1560] からの差分を添付します。非常に長い URL の場
+ 合は有効かと思います(あまり需要はなさそうですが)。
From: Tsutomu Okada <okada@furuno.co.jp>
Subject: [w3m-dev 01506] compile option of gc.a
- NO_DEBUGGING ���դ��� gc.a �򥳥�ѥ��뤹��ȡ�gc.a �� w3m �ΥХ�
- �ʥꥵ������¿���Ǥ����������ʤ�ޤ���
+ NO_DEBUGGING を付けて gc.a をコンパイルすると、gc.a や w3m のバイ
+ ナリサイズが多少ですが小さくなります。
From: Fumitoshi UKAI <ukai@debian.or.jp>
Subject: [w3m-dev 01509] Forward: Bug#79689: No way to view information on SSL certificates
- ���ɥ�����Ȥξ����ɽ��('=')�Ǹ��Ƥ� SSL�˴ؤ������������
- �ߤ��ʤ��ΤϳΤ����ᤷ���ʤ� �ȻפäƤ����Τ� Ŭ���ʥѥå�
- �Ĥ��äƤߤޤ�����(���ʤꤤ��������)
+ 現ドキュメントの情報を表示('=')で見ても SSLに関する証明書情報を
+ みられないのは確かに悲しいなぁ と思っていたので 適当なパッチ
+ つくってみました。(かなりいいかげん)
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
Subject: [w3m-dev 01556] Re: ANSI color support (was Re: w3m-m17n-0.4)
@@ -499,253 +499,253 @@ From: Yamate Keiichirou <yamate@ebina.hitachi.co.jp>
Subject: [w3m-dev 01535] how to check wait3 in configure.
From: Tsutomu Okada <okada@furuno.co.jp>
Subject: [w3m-dev 01537] Re: how to check wait3 in configure.
- BSD/OS 3.1, SunOS 4.1.3 ��, configure �� wait3() �򸡽ФǤ��ʤ���
- ��ؤ��н�.
+ BSD/OS 3.1, SunOS 4.1.3 で, configure が wait3() を検出できない問
+ 題への対処.
2000/12/25
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
Subject: [w3m-dev 01568] <plaintext> bug
- <plaintext> ���ޤȤ��ư���Ƥ��ʤ��ä�����ν���.
+ <plaintext> がまともに動いていなかった問題の修正.
2000/12/22
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
Subject: [w3m-dev 01555] Re: some fixes for <select>
- <option> �ʤ��� <select> �������������ͤˤ��Ƥ��ޤäƤ��ޤ�����
- �ǽ����Ǥ���
+ <option> なしの <select> があると落ちる様にしてしまっていましたの
+ で修正です。
2000/12/21
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
- ��feed_table �Υȡ�����ʬ������� HTMLlineproc0 �ǹԤʤ��褦���ѹ�
- ����.
- ��HTMLlineproc0 �Υե�����ν�����ᥤ��롼�פǹԤʤ��褦���ѹ���
- ��.
- ��table �� <xmp> �� </xmp> �δ֤ˤ��륿�����ä��������������ν�
- ��.
- ���ե�����Υǡ��������������ɤ��ޤޤ���������Τ�, ����.
+ ・feed_table のトークン分割処理を HTMLlineproc0 で行なうように変更
+ した.
+ ・HTMLlineproc0 のフォームの処理もメインループで行なうように変更し
+ た.
+ ・table で <xmp> と </xmp> の間にあるタグが消える事がある問題の修
+ 正.
+ ・フォームのデータに内部コードが含まれる事があるので, 修正.
From: Yamate Keiichirou <yamate@ebina.hitachi.co.jp>
Subject: [w3m-dev 01536] Re: <P> in <DL>
Subject: [w3m-dev 01544] Re: <P> in <DL>
- ����Τ��� HTML ��, �۾ェλ���������������ؤ��н�.
+ 問題のある HTML で, 異常終了する事がある問題への対処.
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
- <a>, <img_alt>, <b>, <u> ���Υ������Ĥ��Ƥ��ʤ��Ȥ�, ��λ��������
- ������褦�ˤ���.
+ <a>, <img_alt>, <b>, <u> 等のタグが閉じていないとき, 終了タグを補
+ 完するようにした.
2000/12/20
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
- �ʲ��ΥХ���ե���������.
- ��feed_table_tag �� <dt> �����ν������������������ä�.
- ��table ��ǥ������Ĥ��Ƥ��ʤ����, �۾ェλ����������ä�.
- �ޤ�, <dt> ����ľ��� <p> ��̵�뤹��褦�ˤ���.
+ 以下のバグをフィクスした.
+ ・feed_table_tag の <dt> タグの処理が少しおかしかった.
+ ・table 中でタグが閉じていない場合, 異常終了する事があった.
+ また, <dt> タグ直後の <p> は無視するようにした.
From: Yamate Keiichirou <yamate@ebina.hitachi.co.jp>
Subject: [w3m-dev 01530] returned at a morment.
- read_token �� " �ǰϤޤ줿°���ͤν����Dz��Ԥ򥹥��åפ��Ƥ��ʤ���
- ���Х��ν���.
+ read_token の " で囲まれた属性値の処理で改行をスキップしていなかっ
+ たバグの修正.
Subject: [w3m-dev 01531] coocie check in header from stdin.
- cat �᡼�� | w3m -m
- �Ȥ��������ޤ���
+ cat めーる | w3m -m
+ とすると落ちます。
2000/12/17
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
Subject: [w3m-dev 01513] Re: w3m-0.1.11-pre-kokb23
- frame.c �˥Х��Ȼפ���ս꤬����ޤ�����
+ frame.c にバグと思われる箇所がありました。
Subject: [w3m-dev 01515] some fixes for <select>
Subject: [w3m-dev 01516] Re: some fixes for <select>
- <select>��<option> �˴ؤ��ƴ��Ĥ��β��ɤ�Ԥ��ޤ�����
- ��multiple °�����������Ƥ������ #undef MENU_SELECT �ξ���
- <option> �� value °�������ꤵ��Ƥ��ʤ��� form �Ȥ��Ƥ�
- �ͤ������ʤ��Х��ν�����
- ��<option> �� label °���ؤ��б���
- ���ǥե���Ȥ� name °�����ͤ� "default" �Ǥ���Τ� <input> �ʤɤ�
- ��碌�� "" �ˡ�
- ��<option> �� label �� "" �Ǥ����� "???" �ˤʤ�Τ�ߤ᤿��
- # ����Ǥ��ä��ߤ�������ͤ����롣
- ��n_select >= MAX_SELECT �Ȥʤä���硢#undef MENU_SELECT �Υ����ɤ�
- �Ȥ����ͤˤ�����
- # MAX_SELECT = 100 �ʤΤǤޤ�̵��̣
+ <select>〜<option> に関して幾つかの改良を行いました。
+ ・multiple 属性が定義されている場合や #undef MENU_SELECT の場合に
+ <option> の value 属性が指定されていないと form としての
+ 値が送られないバグの修正。
+ ・<option> の label 属性への対応。
+ ・デフォルトの name 属性の値が "default" であるのを <input> などに
+ 合わせて "" に。
+ ・<option> の label が "" である場合 "???" になるのを止めた。
+ # 空白であって欲しい場合も考えられる。
+ ・n_select >= MAX_SELECT となった場合、#undef MENU_SELECT のコードを
+ 使える様にした。
+ # MAX_SELECT = 100 なのでまず無意味
2000/12/14
From: Tsutomu Okada <okada@furuno.co.jp>
Subject: [w3m-dev 01501] Re: w3m-0.1.11-pre-kokb23
- no menu �ΤȤ��ˤҤȤĤ�������ѥ��륨�顼���Фޤ����Τǡ����ν���
- �ѥå��Ǥ���
+ no menu のときにひとつだけコンパイルエラーが出ましたので、その修正
+ パッチです。
2000/12/13
From: sekita-n@hera.im.uec.ac.jp (Nobutaka SEKITANI)
Subject: [w3m-dev 01483] Patch to show image URL includes anchor
- ����դ�������URL�򸫤�Ȥ���`u'�Ǥϥ�󥯤�URL���������ޤ���
- �Ǥ����������Υѥå���Ȥ���`i'�Dz������Τ�Τ�URL��������褦��
- �ʤ�ޤ���
+ リンク付き画像のURLを見るとき、`u'ではリンクのURLしか見られません
+ でしたが、このパッチを使えば`i'で画像そのもののURLが見られるように
+ なります。
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
Subject: [w3m-dev 01500] fix risky code in url.c
- url.c �ˤ��ä��������Τ��륳���ɤ������ޤ�����
- local.c �Ϥ��ޤ��ν����Ǥ���
+ url.c にあった危険性のあるコードを修正しました。
+ local.c はおまけの修正です。
2000/12/12
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
Subject: [w3m-dev 01491] bug ?
- file.c �ΰʲ�����ʬ�Ǥ��������֤󤳤����Ȼפ��ޤ�����
+ file.c の以下の部分ですが、たぶんこうだと思いますが。
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
- �̥�ʸ����ޤ�ʸ������Ф��븡�����Ǥ���褦�ˤ���.
+ ヌル文字を含む文字列に対する検索ができるようにした.
From: Tsutomu Okada <okada@furuno.co.jp>
Subject: [w3m-dev 01498] Re: null character
- ̵�¥롼�פˤϤޤäƤ��ޤ��ޤ�����
+ 無限ループにはまってしまいました。
2000/12/11
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
- ��StrmyISgets ��, ñ�Ȥ� '\r' �����Ԥ�ǧ������ʤ��Х��ν���.
- �ޤ�, ���ԥ����ɤ�ʥ�ʸ�����Ѵ��� cleanup_line ��ʬΥ����.
- ���ڡ�����⡼�ɤ�, �ʥ�ʸ���򰷤���褦�ˤ���.
- ��base64 �� quoted printable �Υǥ����ɽ����� convertline ����
- istream.c �˰�ư.
+ ・StrmyISgets で, 単独の '\r' が改行と認識されないバグの修正.
+ また, 改行コードやナル文字の変換を cleanup_line に分離した.
+ ・ページャモードで, ナル文字を扱えるようにした.
+ ・base64 や quoted printable のデコード処理を convertline から
+ istream.c に移動.
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
Subject: [w3m-dev 01487] A string in <textarea> is broken after editing
- w3m-0.1.11-pre-kokb21 �κ�����Ǥ�����<textarea> �����ʸ�������
- �������ʸ������� ^` ���ͤ�ʸ�������뤳�Ȥ�����ޤ���
+ w3m-0.1.11-pre-kokb21 の頃からですが、<textarea> の中の文字列を編
+ 集すると文字列中に ^` の様な文字が入ることがあります。
Subject: [w3m-dev 01488] buffer overflow bugs
- �Хåե��������С��ե������������������Τ���ʲ����������������ޤ�����
- * file.c �� select_option[MAX_SELECT] ��ź���Υ����å���̵���ä���
- �� n_select �� MAX_SELECT �����
- * file.c �� textarea_str[MAX_TEXTAREA] ��ź���Υ����å����Դ������ä���
- �� n_textarea �� MAX_TEXTAREA �����
- * file.c �� form_stack[FORMSTACK_SIZE] ��ź���Υ����å���̵���ä���
- �� forms �˹�碌�� form_stack ��ݥ��󥿤Ȥ���ư��ĥ�����ͤˤ�����
- * doFileCopy(), doFileSave() �� sprintf ��Ȥä� msg[LINELEN] �ؤ�������
- �� Str msg �� Sprintf() ���֤�������
- * local.c �� dirBuffer() �� sprintf ��Ȥä� fbuf[1024] �ؤ�������
- �� Str fbuf ���֤�������
+ バッファーオーバーフローを引き起こす恐れのある以下の問題点を修正しました。
+ * file.c の select_option[MAX_SELECT] の添字のチェックが無かった。
+ → n_select と MAX_SELECT を比較
+ * file.c の textarea_str[MAX_TEXTAREA] の添字のチェックが不完全だった。
+ → n_textarea と MAX_TEXTAREA を比較
+ * file.c の form_stack[FORMSTACK_SIZE] の添字のチェックが無かった。
+ → forms に合わせて form_stack もポインタとし自動伸張する様にした。
+ * doFileCopy(), doFileSave() の sprintf を使った msg[LINELEN] への代入。
+ → Str msg と Sprintf() に置き換え。
+ * local.c の dirBuffer() の sprintf を使った fbuf[1024] への代入。
+ → Str fbuf に置き換え。
2000/12/9
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
- maximum_table_width �� td, th ������ width °���ͤ��θ����褦��
- �ѹ�.
+ maximum_table_width で td, th タグの width 属性値を考慮するように
+ 変更.
2000/12/8
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
Subject: [w3m-dev 01473] Re: internal tag and attribute check
- ������[w3m-dev 01446] �ǡ�
- >> frame �����ɲä����°�� framename, referer, charset �ʤɤ�
- >> ����ʤ��ΤǤ��礦��������Ū�˰��Ѥ�����ϻפ��դ��ޤ��󤬡�
- �Ƚ񤭤ޤ�������<form charset=e> ���� w3m ����λ���Ƥ��ޤ��ޤ���
- accept-charset ��Ʊ�ͤǤ��Τǽ������ޤ�����
+ 以前、[w3m-dev 01446] で、
+ >> frame 時に追加される属性 framename, referer, charset などは
+ >> 問題ないのでしょうか。効果的に悪用する例は思い付きませんが、
+ と書きましたが、<form charset=e> 等で w3m が終了してしまいます。
+ accept-charset も同様ですので修正しました。
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
- ��table ������ hborder °�����̾�Ǥ�����դ���褦���ѹ�.
- ��table ������ border °�����ͤ�Ϳ�����Ƥ��ʤ��Ȥ��ΰ����򸵤���
- ����.
+ ・table タグの hborder 属性は通常でも受け付けるように変更.
+ ・table タグの border 属性に値が与えられていないときの扱いを元に戻
+ した.
From: sakane@d4.bsd.nes.nec.co.jp (Yoshinobu Sakane)
Subject: [w3m-dev 01478] Option Setting Panel
- ��Ĺ�Υ�����ɥ��� Option Setting Panel �򳫤��ȡ��ֱ�Ӥ���
- �������б������Ť餤�Τǡ��֤�ͤ��ѥå��Ǥ���
+ 横長のウィンドウで Option Setting Panel を開くと、間延びして
+ 左右の対応が取りづらいので、間を詰めるパッチです。
2000/12/7
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
- ��parse_tag �� gethtmlcmd �ε�ǽ���������褦�ˤ���.
- ���ǽ�� parse_tag ������������°��������դ��ʤ��褦�ˤ���.
- �ޤ�, ����°�����ޤޤ�����, ��������°����ޤޤʤ��褦�˥���
- ����ľ���褦�ˤ���.
- ��visible_length �Ǥ����פʥ����β��Ϥ�ߤ᤿.
+ ・parse_tag に gethtmlcmd の機能も持たせるようにした.
+ ・最初の parse_tag で内部タグや属性を受け付けないようにした.
+ また, 内部属性が含まれる場合は, その内部属性を含まないようにタグ
+ を作り直すようにした.
+ ・visible_length では不要なタグの解析を止めた.
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
Subject: [w3m-dev 01456] linein.c
- m17n ����� feed back �Ǥ�����linein.c �� calcPosition() �١�����
- ��ľ���ޤ����������� display.c �Ȥۤ�Ʊ�ͤǤ���
- Ĺ��ʸ������˥��֤䥳��ȥ�����ʸ�������äƤ��������������뤬
- ư���褦�ˤʤäƤ���Ȼפ��ޤ���
+ m17n からの feed back ですが、linein.c を calcPosition() ベースに
+ 書き直しました。処理は display.c とほぼ同様です。
+ 長い文字列中にタブやコントロール文字があっても正しくカーソルが
+ 動くようになっていると思います。
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
Subject: [w3m-dev 01457] cursor position on sumbit form
- TAB������<input type="submit" �� value="OK">�ξ�˥���������ư��
- �����Ȥ��ΰ��֤�����Ƥ�������ؤ��н�.
+ TABキーで<input type="submit" 〜 value="OK">の上にカーソルを移動さ
+ せたときの位置がずれていた問題への対処.
2000/12/3
From: Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
Subject: [w3m-dev 01449] Re: Directory of private header of gc library.
- popText (rpopText) �ǺǸ�����Ǥ���Ф�����ˤ��Υꥹ�Ȥ˥�����
- �����褦�Ȥ���Ȱ۾ェλ���Ƥ��ޤ���������������Ф��뽤��.
+ popText (rpopText) で最後の要素を取り出した後にこのリストにアクセ
+ スしようとすると異常終了してしまう事がある問題に対する修正.
2000/12/2
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
- �ޤ�, image map ���Ȥ��ʤ����꤬�ĤäƤ����Τǽ���.
+ まだ, image map が使えない問題が残っていたので修正.
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
- �����ơ��֥� (MYCTYPE_MAP) �ˤ�ä�, ʸ����ʬ�ह��褦���ѹ�.
- ����, latin1, ascii, internal character ��Ƚ�̤ˤ� INTCTYPE_MAP ��
- �Ȥ��褦���ѹ�.
- # ��̤Ȥ���ɬ��̵���ʤä� CTYPE_MAP �Ϻ������.
+ 内部テーブル (MYCTYPE_MAP) によって, 文字を分類するように変更.
+ 漢字, latin1, ascii, internal character の判別には INTCTYPE_MAP を
+ 使うように変更.
+ # 結果として必要無くなった CTYPE_MAP は削除した.
2000/12/1
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
Subject: Security hole in w3m (<input_alt type=file>)
- ��HTMLlineproc1, HTMLtagproc1 ���ΰ����˥ե饰��������ơ�
- ������������������Ȥ��ʤ��ͤˤ�����
- ��map.c �� `<', `>' �����������Ȥ���Ƥ��ʤ��ä���ν�����
+ ・HTMLlineproc1, HTMLtagproc1 等の引数にフラグを持たせて、
+ 外部から内部タグを使えない様にした。
+ ・map.c で `<', `>' 等がクォートされていなかった所の修正。
Subject: [w3m-dev 01432] Re: w3m-0.1.11-pre-kokb22 patch
- �ޤ���������ȴ���꤬����ޤ�����patch ���դ��ޤ���
- ([w3m-dev 01431] �Ǥβ��Ĥ���λ�Ŧ�ؤν��������äƤޤ�)
+ まだ、修正の抜かりがありました。patch を付けます。
+ ([w3m-dev 01431] での岡田さんの指摘への修正も入ってます)
Subject: [w3m-dev 01437] Re: w3m-0.1.11-pre-kokb22 patch
- �������ƥ���Ϣ�ν����� image map ���Ȥ��ʤ��ʤ�����ؤ��н�.
+ セキュリティ関連の修正で image map が使えなくなる問題への対処.
From: sekita-n@hera.im.uec.ac.jp (Nobutaka SEKITANI)
Subject: [w3m-dev 01415] Lineedit patch for kokb21
Subject: [w3m-dev 00976] move & delete until /, &, or ?
- ����Ƥ���URL�����ϵ�ǽ���ĥ����ѥå���w3m-0.1.11-pre-kokb21�Ѥ�
- ��ľ���ޤ�����kokb20�Ǥ�ѥå�����������Ƥ��ޤ���
+ で投稿したURL等入力機能を拡張するパッチをw3m-0.1.11-pre-kokb21用に
+ 書き直しました。kokb20でもパッチは正常に当てられます。
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
- ���Ĥ���Υѥå� [w3m-dev 01427] �򻲹ͤ�, HTML �Хåե���ʸ���ζ�
- ��������륳��ѥ��륪�ץ���� (ENABLE_REMOVE_TRAILINGSPACES) ��
- �ɲä���.
+ 岡田さんのパッチ [w3m-dev 01427] を参考に, HTML バッファの文末の空
+ 白を削除するコンパイルオプション (ENABLE_REMOVE_TRAILINGSPACES) を
+ 追加した.
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
Subject: [w3m-dev-en 00301] Re: "w3m -h" outputs to stderr
- w3m -h �ν������ stderr ���� stdout ���ѹ�.
+ w3m -h の出力先を stderr から stdout に変更.
From: sakane@d4.bsd.nes.nec.co.jp (Yoshinobu Sakane)
Subject: [w3m-dev 01430] Re: w3m-0.1.11-pre-kokb22 patch
- EWS4800(/usr/abiccs/bin/cc) �Υ���ѥ��륨�顼�ؤ��н�.
+ EWS4800(/usr/abiccs/bin/cc) のコンパイルエラーへの対処.
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
- ��dumm_table ������ id °�����ϰϥ����å���ä���.
- ��form_int ������ fid °�����ϰϥ����å���ä���.
- ��table �����å��Υ����Хե����Υ����å���ä���.
+ ・dumm_table タグの id 属性の範囲チェックを加えた.
+ ・form_int タグの fid 属性の範囲チェックを加えた.
+ ・table スタックのオーバフローのチェックを加えた.
2000/11/29
@@ -754,156 +754,156 @@ From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
Subject: [w3m-dev 01422] bpcmp in anchor.c
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
Subject: [w3m-dev 01423] Re: bpcmp in anchor.c
- ��®���Τ���δ��Ĥ��ν���.
+ 高速化のための幾つかの修正.
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
- ��checkType �ΥХ��ե���������Ӽ㴳�ι�®��.
- �������� 2 �Х���ñ�̤ǰ����褦���ѹ�.
+ ・checkType のバグフィクスおよび若干の高速化.
+ ・漢字を 2 バイト単位で扱うように変更.
2000/11/28
From: Takenobu Sugiyama <sugiyama@ae.advantest.co.jp>
Subject: patch for cygwin
- cygwin �Ǥ� ftp�����Ȥ���� download �Ǥ���, �ʲ��� patch���н��
- ���ޤ���. cygwin �Ǥ�, �ե������ open/close�� binary �⡼�ɤˤ�
- �Ƥ����ʤ���, �������������꤬����褦�Ǥ�.
+ cygwin での ftpサイトからの download ですが, 以下の patchで対処で
+ きました. cygwin では, ファイルの open/closeを binary モードにし
+ ておかないと, いろいろと問題があるようです.
2000/11/27
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
Subject: [w3m-dev 01401] Re: bugfix of display of control chars, merge of easy UTF-8 patch, etc.
- ���ν������ɲäǤ�������ԤκǸ�˥���ȥ�����ʸ��������Ȳ��̥���
- ���̤�­��ʤ��ʤäơ�����ʸ����ɽ���Ǥ��ʤ��Х��ν����Ǥ���
+ この修正の追加ですが、一行の最後にコントロール文字があると画面シフ
+ ト量が足らなくなって、その文字を表示できないバグの修正です。
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
- table �Υ�����󥰤ι�®��.
+ table のレンダリングの高速化.
2000/11/25
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
- table �Υ�������� width °���ǻ��ꤷ����Τ�꾮�����ʤ��������
- ������.
+ table のカラム幅が width 属性で指定したものより小さくなる事がある
+ 問題の修正.
2000/11/24
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
- �ޤ��ե�������ɤ߹���Ǥʤ��Ȥ���, �ץ����쥹�ѡ���ž��®�٤�ɽ��
- ���ʤ��褦���ѹ�����.
+ まだファイルを読み込んでないときは, プログレスパーに転送速度を表示
+ しないように変更した.
-From: Tsutomu Okada (���� ��) <okada@furuno.co.jp>
+From: Tsutomu Okada (岡田 勉) <okada@furuno.co.jp>
Subject: [w3m-dev 01385] Re: w3m-0.1.11-pre-kokb20 patch
- w3m-0111-utf8-kokb20 �Ǥ�����conv.c �ǰ�ս�ְ㤤�Ȼפ���Ȥ���
- ������ޤ����Τǡ��ѥå���ź�դ��ޤ����Ĥ��Ǥˡ�����ǥ�Ȥ䥳���
- ������� warning �ν�����������Ƥ���ޤ���
+ w3m-0111-utf8-kokb20 ですが、conv.c で一箇所間違いと思われるところ
+ がありましたので、パッチを添付します。ついでに、インデントやコンパ
+ イル時の warning の修正も一部してあります。
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
- �����ޥ�ɥ饤��ǥ��ץ����������ѹ������Ȥ�, proxy �� cookie ��
- �ѹ���ȿ�Ǥ���ʤ���ʬ�����ä�������Ф��뽤��.
- ����������ե�����򥻡��֤���Ȥ�, ���Υե�������񤭤��Ƥ��ޤ�
- ��������������Ф��뽤��.
+ ・コマンドラインでオプション設定を変更したとき, proxy や cookie 等
+ 変更が反映されない部分があった問題に対する修正.
+ ・ローカルファイルをセーブするとき, 元のファイルを上書きしてしまう
+ 事がある問題に対する修正.
2000/11/23
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
- ��StrStream ���Ф��Ƥ�, ���� Str �򤽤ΤޤޥХåե��Ȥ������Ѥ����
- �����ѹ�.
- ��get_ctype ��ޥ�������, �ơ��֥��Ȥä�Ƚ�Ǥ���褦�ˤ���.
- ��menu.c ���֤��ͤ�����Ȱ��פ��Ƥ��ʤ��꤬���ä��Τǽ���.
+ ・StrStream に対しては, 元の Str をそのままバッファとして利用するよ
+ うに変更.
+ ・get_ctype をマクロ化し, テーブルを使って判断するようにした.
+ ・menu.c に返り値が宣言と一致していない所があったので修正.
2000/11/22
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
- ��˹�®���Τ�����ѹ��Ǥ�.
- ���ե������ɤ߹��߻��˼����ǥХåե���󥰤�Ԥʤ��褦�ˤ���.
- ��conv.c �δؿ��� Str �١������ѹ�.
- ��ǽ�ʸ¤�ʸ����Υ��ԡ���Ԥʤ�ʤ��褦�ˤ���.
- ��checkType ����.
- ������������ʸ����̵���Ȥ� cursorRight ��ư������꤬���ä��Τ�,
- ��������.
- �ޤ���Ԥ� LINELEN ��ۤ����Ȥ���, calcPosition ������γ��򥢥�
- ���������ǽ��������Τǥ��������ѹ�.
+ 主に高速化のための変更です.
+ ・ファイル読み込み時に自前でバッファリングを行なうようにした.
+ ・conv.c の関数を Str ベースに変更.
+ 可能な限り文字列のコピーを行なわないようにした.
+ ・checkType の高速化.
+ ・カーソル上に文字が無いとき cursorRight の動作に問題があったので,
+ 修正した.
+ また一行が LINELEN を越えたときに, calcPosition で配列の外をアク
+ セスする可能性があるのでサイズを変更.
From: Fumitoshi UKAI <ukai@debian.or.jp>
Subject: [w3m-dev 01372] w3m sometimes uses the wrong mailcap entry
http://bugs.debian.org/77679
- �Ǥ�����mime type ��Ƚ�Ǥ� substring match �ˤʤäƤ뤫�����
- �פ��ޤ��������ľ��󤸤�ʤ��Ǥ��礦��
+ ですが、mime type の判断が substring match になってるからだと
+ 思います。これで直るんじゃないでしょうか
2000/11/20
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
- ��Ȥ�̵�� table �� table ����ˤ���Ȥ���, ���� table ���������
- ��ؤ��н�.
+ 中身の無い table が table の中にあるときに, 外の table が崩れる問
+ 題への対処.
2000/11/19
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
- gc6 �б�.
+ gc6 対応.
2000/11/18
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
- ���Хåե������ζ���ʸ���� 0x80-0x9f �˳����Ƥ�褦���ѹ�����.
- �����ܸ��ǤǤ�, �Хåե���Ǥ� &nbsp; �� 0xa0 ��ɽ�魯�ˤ���.
- �����ܤ���δʰ� UTF-8 �Ǥ� UTF-8 �Ȥϴط�̵����ʬ�Υ����ɤ�ޡ���
- ����.
- �ޤ��ǥХå��ΤȤ��������ʤΤ�, ���������ɤ�ʸ�񥳡��ɤ˻��ꤹ��
- �����Ǥ���褦�ˤ���.
- ��ɽ���Բ�ǽ�ΰ� (0x80-0xa0) �ˤ���ʸ���� \xxx �η���ɽ������褦
- �ˤ���.
- ��Ϣ����, ���̥��եȻ���, ����ȥ�����ʸ�����ޤޤ�Ƥ����ɽ����
- ����Х������ä��Τǽ�������.
-
-From: Tsutomu Okada (���� ��) <okada@furuno.co.jp>
+ ・バッファ内部の空白文字を 0x80-0x9f に割当てるように変更した.
+ ・日本語版でも, バッファ内では &nbsp; は 0xa0 で表わすにした.
+ ・坂本さんの簡易 UTF-8 版の UTF-8 とは関係無い部分のコードをマージ
+ した.
+ またデバッグのときに便利なので, 内部コードを文書コードに指定する
+ 事ができるようにした.
+ ・表示不可能領域 (0x80-0xa0) にある文字は \xxx の形で表示するよう
+ にした.
+ 関連して, 画面シフト時に, コントロール文字が含まれていると表示が
+ 乱れるバグがあったので修正した.
+
+From: Tsutomu Okada (岡田 勉) <okada@furuno.co.jp>
Subject: [w3m-dev 01354] minimize when #undef USE_GOPHER or USE_NNTP
- #undef USE_GOPHER �� #undef USE_NNTP �Ȥ����Ȥ��ˡ���Ϣ���륳���ɤ���
- ����������ʤ��ʤ�褦���ѹ����Ƥߤޤ�����
+ #undef USE_GOPHER や #undef USE_NNTP としたときに、関連するコードがで
+ きるだけ少なくなるように変更してみました。
2000/11/16
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
- �۾�ʼ��λ��Ȥ� getescapechar ���Ѥ��ͤ��֤�������������ؤ��н�.
+ 異常な実体参照で getescapechar が変は値を返す事がある問題への対処.
2000/11/15
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
- ��table ���Ȥ�������������Х��ν���.
- ��DEL ʸ�����ޤ��֤���ǽ�ʶ���ʸ���Ȥ��ư����褦���ѹ���, �Хåե�
- �����ζ���ʸ���� &nbsp; ���� DEL ���ѹ�.
+ ・table の枠が崩れる事があるバグの修正.
+ ・DEL 文字を折り返し可能な空白文字として扱うように変更し, バッファ
+ 内部の空白文字を &nbsp; から DEL に変更.
From: Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
Subject: [w3m-dev 01338] Re: Lynx patch for character encoding in form
Subject: [w3m-dev 01342] Re: Lynx patch for character encoding in form
- form ������ accept-charset °��������դ���褦�ˤʤä�.
+ form タグの accept-charset 属性を受け付けるようになった.
2000/11/14
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
- ���������Ȥ���Τ�˺��Ƥ���Ȼפ�����ʬ����.
- ��cleanup_str, htmlquote_str ��, �⤷ (����) �������Ȥ���ɬ�פ�̵
- �����, ����ʸ����򤽤Τޤ��֤��褦�ˤ���.
+ ・クォートするのを忘れていると思われる部分を修正.
+ ・cleanup_str, htmlquote_str は, もし (アン) クォートする必要が無
+ ければ, 元の文字列をそのまま返すようにした.
2000/11/10
-From: ���Ƿ <katsuyuki_1.watanabe@toppan.co.jp>
+From: 渡邉勝之 <katsuyuki_1.watanabe@toppan.co.jp>
Subject: [w3m-dev 01336] patch for Cygwin 1.1.x
- Cygwin 1.1.x (�����餯 1.1.3 �ʹ�) �����Υѥå���������ޤ�����
- Cygwin 1.x �ʹߤδĶ��ˤ����ơ�
- ��ɸ��Υ��󥹥ȡ���ѥ��� /cygnus/cygwin-b20/H-i586-cygwin32
- �ʲ����ѹ����ʤ�
- ��T_as,T_ae,T_ac ����ˤ���Τ��᤿
+ Cygwin 1.1.x (おそらく 1.1.3 以降) 向けのパッチを作成しました。
+ Cygwin 1.x 以降の環境において、
+ ・標準のインストールパスを /cygnus/cygwin-b20/H-i586-cygwin32
+ 以下へ変更しない
+ ・T_as,T_ae,T_ac を空にするのをやめた
2000/11/8
@@ -917,199 +917,199 @@ Subject: [w3m-dev-en 00189] [PATCH] w3m menu <select> search
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
Subject: [w3m-dev 01331] Re: form TEXT:
- ����ʸ����ȥե���������ʸ����Υҥ��ȥ�ΰ��ܲ�.
+ 検索文字列とフォーム入力文字列のヒストリの一本化.
2000/11/4
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
- ����������������ۤ���Ȥ�, �������Ȥϲ���������������褦�ˤ���.
+ セル幅が画面幅を越えるとき, セルの中身は画面幅で整形するようにした.
2000/11/2
-From: Tsutomu Okada (���� ��) <okada@furuno.co.jp>
+From: Tsutomu Okada (岡田 勉) <okada@furuno.co.jp>
Subject: [w3m-dev 01313] Re: SCM_NNTP
- MARK_URL �� nntp: ��ޥå�����褦�ˤ��Ƥߤޤ���������ɽ���� gopher:
- �Τ�Τ򥳥ԡ����������Ǥ���
+ MARK_URL で nntp: もマッチするようにしてみました。正規表現は gopher:
+ のものをコピーしただけです。
2000/10/31
From: Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
Subject: [w3m-dev 01310] Re: option select (Re: w3mmee-0.1.11p10)
- gc�饤�֥��Υ��顼��å�������disp_message_nsec���̤��ƽ��Ϥ���
- �褦�ˤ���.
+ gcライブラリのエラーメッセージをdisp_message_nsecを通して出力する
+ ようにした.
2000/10/30
From: sakane@d4.bsd.nes.nec.co.jp (Yoshinobu Sakane)
Subject: [w3m-dev 01294] mouse no effect on blank page.
- mouse�����w3m ��blank�ʥڥ�����ɽ�����Ƥ������mouse�ܥ���
- �������ʤ�(��ܥ�������ʤ��Τ��ĥ饤)�Τǽ������Ƥߤޤ�����
+ mouseありのw3m でblankなペイジを表示している時、mouseボタン
+ が効かない(中ボタンで戻れないのがツライ)ので修正してみました。
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
Subject: [w3m-dev 01295] Re: mouse no effect on blank page.
- �ºݤ�������櫓�ǤϤʤ��ΤǤ������������Ƥ������������Ǥ��͡�
+ 実際に落ちたわけではないのですが、こうしておく方が安全ですね。
From: SASAKI Takeshi <sasaki@ct.sakura.ne.jp>
Subject: [w3m-dev 01297] Re: backword search bug report
- [w3m-dev 01296] ����𤵤�Ƥ���, ����������Ф����н�.
- > �������ʤ�Ǥ�����"aaaa" �� "��������" �Τ褦��Ʊ��ʸ����Ϣ³���Ƥ�
- > ��Ȥ��� "a" �� "��" �� backword search ����ȡ�����������֤� 1 ʸ��
- > ����Ǥ��ޤ��褦�Ǥ���
+ [w3m-dev 01296] で報告されている, 次の問題に対する対処.
+ > 報告だけなんですが、"aaaa" や "ああああ" のような同じ文字が連続してい
+ > るときに "a" や "あ" で backword search すると、カーソル位置が 1 文字
+ > 飛んでしまうようです。
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
Subject: [w3m-dev 01298] Re: backword search bug report
- backword search �� wrapped search ��ͭ���λ������ߤιԤθ����򸡺�
- �Ǥ��ʤ��Х���ľ���ޤ�����
+ backword search で wrapped search が有効の時、現在の行の後方を検索
+ できないバグを直しました。
Subject: [w3m-dev 01299] Re: backword search bug report
- ���ܸ�򸡺�����Ȥ��� 2byte�ܤȼ���ʸ���� 1byte�ܤȤǥޥå�������
- ��ȡ� little endian �Ǥ�����ɽ�� [��-��] ����������ǽ���ʤ����ꡢ
- �Ѹ��ǤǤ� latin1 ����꤯�����Ǥ��ʤ��ä�(�Ǥ�����)�����ľ���ޤ�����
+ 日本語を検索するときに 2byte目と次の文字の 1byte目とでマッチする問
+ 題と、 little endian では正規表現 [あ-ん] が正しく機能しない問題、
+ 英語版では latin1 が上手く検索できなかった(であろう)問題を直しました。
2000/10/29
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
- ��LESSOPEN ����Ѥ��뤫�ɤ����� Option Setting Panel �����򤹤��
- ���ˤ��� (default �ϻ��Ѥ��ʤ�).
- �����̥ե����뿭ĥ��Υƥ�ݥ��ե��������Ȥ��γ�ĥ�Ҥ�, ����
- �ե�����γ�ĥ�� (.Z, .gz, .bz2) ���������ʬ�������褦����
- ������.
- ��gunzip_stream, save2tmp, visible_length ����.
+ ・LESSOPEN を使用するかどうかを Option Setting Panel で選択するよ
+ うにした (default は使用しない).
+ ・圧縮ファイル伸張後のテンポラリファイルを作るときの拡張子を, 元の
+ ファイルの拡張子 (.Z, .gz, .bz2) を除いた部分から決めるように変
+ 更した.
+ ・gunzip_stream, save2tmp, visible_length の高速化.
2000/10/28
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
- ����ѥ����, �ե�����̾�䴰��Υ��������Ƥ� Emacs-like �ˤǤ����
- ���ˤ���.
- (config.h �� #define EMACS_LIKE_LINEEDIT �ˤ��ޤ�)
- �ޤ�, �䴰����������˥Хå�������������ǽ�ˤ���.
+ コンパイル時, ファイル名補完中のキー割当てを Emacs-like にできるよ
+ うにした.
+ (config.h で #define EMACS_LIKE_LINEEDIT にします)
+ また, 補完候補一覧時にバックスクロールを可能にした.
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
Subject: [w3m-dev 01284] Re: improvement of filename input
- ��URL���ϻ�(U)�Ǥ� file:/ ����Ϥ����Τߥե�����̾�䴰��ͭ��
- �ˤ��ޤ�����
- (URL ���Ϥλ��;夳��ʳ��Ǥϳμ¤� local-file �ˤʤ�ʤ�����)
- ����������Υ��ɥХ����ˤ�� CTRL-D �Ǥΰ���ɽ���ϡ�
- ʸ����κǸ�˥������뤬������˸��ꤷ�ޤ�����
+ ・URL入力時(U)では file:/ から始める場合のみファイル名補完を有効
+ にしました。
+ (URL 解析の仕様上これ以外では確実に local-file にならないため)
+ ・岡部さんのアドバイスにより CTRL-D での一覧表示は、
+ 文字列の最後にカーソルがある場合に限定しました。
From: Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
Subject: [w3m-dev 01280] Stop to prepend rc_dir to full path.
- rcFile()�򡢥ե�ѥ��ˤ�rc_dir���դ��ʤ��褦����ѥå��Ǥ���
+ rcFile()を、フルパスにはrc_dirを付けないようするパッチです。
2000/10/27
-From: Tsutomu Okada (���� ��) <okada@furuno.co.jp>
+From: Tsutomu Okada (岡田 勉) <okada@furuno.co.jp>
Subject: [w3m-dev 01269] Re: SCM_NNTP
- [w3m-dev 1258] �Ǻ��ܤ��󤬻�Ŧ����Ƥ����Ȥ����������Ƥߤޤ������ѥ�
- ����ź�դ��ޤ�����δĶ��Ǥϡ����ν����򤷤ʤ��� news:<Message-ID> ��
- ư���ޤ���Ǥ�����
+ [w3m-dev 1258] で坂本さんが指摘されていたところを修正してみました。パッ
+ チを添付します。私の環境では、この修正をしないと news:<Message-ID> が
+ 動きませんでした。
Subject: [w3m-dev 01273] Re: SCM_NNTP
- url.c �������ơ�#undef USE_GOPHER �� #undef USE_NNTP �ΤȤ��ˤ�
- gopther: �� news: ��ư��ʤ��褦�ˤ��ޤ������ޤ���nntp: ��ư��ʤ�
- �褦�ˤ��ޤ�����
- �ä��ơ�GOTO URL �� mailto: �����Ϥ����Ȥ���ư���褦���ѹ����Ƥߤ�
- �������Ĥ��Ǥˡ������Ȥδְ㤤��ľ���Ƥ���ޤ���
+ url.c を修正して、#undef USE_GOPHER や #undef USE_NNTP のときには
+ gopther: や news: が動作しないようにしました。また、nntp: も動作しない
+ ようにしました。
+ 加えて、GOTO URL で mailto: を入力したときに動作するように変更してみま
+ した。ついでに、コメントの間違いも直してあります。
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
Subject: [w3m-dev 01258] improvement of filename input
- �Dz��Ԥǥե�����̾�����Ϥ�����ζ�����Ԥ��ޤ�����
- ��Ctrl-D ���䴰����ΰ�����ɽ������褦�ˤ��ޤ�����
- ���̤������ڤ�ʤ�����Ϣ³���� Ctrl-D �Ǽ��θ���ΰ������Фޤ���
- # ʸ���κ���� BackSpace �� Del ��ȤäƤ���������
- ��URL ���ϻ�(GOTO)��ʸ���� file:/, file:/// �� file://localhost/ ����
- �ϤޤäƤ�����ϡ��ե�����̾���䴰�����ͤˤ��ޤ�����(���Ť��󤫤����˾)
- # http: �� ftp: �ϲ��⤷�ޤ��󡣥ҥ��ȥ꤫����䴰�Ǥ����򤤤��ɡ�
- ��URL ��ҥ��ȥ����¸������� password ��ʬ�Ϻ�������ͤ˽������ޤ�����
- �ʤ����������餢�� undocument �ʵ�ǽ�Ǥ���������ʸ�������Ϥʤɤξ��Ǥ⡢
- Ctrl-X �� TAB(Ctrl-I) �Ǥ� �ե�����̾�䴰��ͭ���ˤʤ�ޤ���
+ 最下行でファイル名を入力する時の強化を行いました。
+ ・Ctrl-D で補完候補の一覧を表示するようにしました。
+ 画面に入り切らない時は連続した Ctrl-D で次の候補の一覧が出ます。
+ # 文字の削除は BackSpace か Del を使ってください。
+ ・URL 入力時(GOTO)で文字列が file:/, file:/// や file://localhost/ から
+ 始まっている場合は、ファイル名を補完する様にしました。(下津さんからの要望)
+ # http: や ftp: は何もしません。ヒストリからの補完でも面白いけど。
+ ・URL をヒストリに保存する場合に password 部分は削除する様に修正しました。
+ なお、以前からある undocument な機能ですが、検索文字の入力などの場合でも、
+ Ctrl-X で TAB(Ctrl-I) での ファイル名補完が有効になります。
From: Fumitoshi UKAI <ukai@debian.or.jp>
Subject: [w3m-dev 01277] Accept-Encoding: gzip (Re: some wishlists)
Accept-Encoding: gzip, compress
- ��ꥯ�����ȥإå����դ���褦�ˤ���.
+ をリクエストヘッダに付けるようにした.
Subject: [w3m-dev 01275] Re: squeeze multiple blank lines option ( http://bugs.debian.org/75527 )
- �Ȥꤢ���� #ifdef DEBIAN ��
- squeeze multiple blank line �� -s
- ü��ʸ�������ɻ���� -s/-e/-j �ϥʥ��������� -o kanjicode={S,E,J} ��Ȥ�
- ���Ȥˤ��Ƥ����ޤ���
+ とりあえず #ifdef DEBIAN で
+ squeeze multiple blank line は -s
+ 端末文字コード指定の -s/-e/-j はナシ。かわりに -o kanjicode={S,E,J} を使う
+ ことにしておきます。
Subject: [w3m-dev 01274] Re: SCM_NNTP
- ���ä����ʤΤ� nntp: �򥵥ݡ��Ȥ��Ƥߤޤ���
+ せっかくなので nntp: をサポートしてみました
Subject: [w3m-dev 01276] URL in w3m -v
- LANG=EN (�Ȥ����� undef JP_CHARSET)�λ��� visual mode �ǻȤ��Ƥ� URL
- ���������ʤ��褦�Ǥ���
+ LANG=EN (というか undef JP_CHARSET)の時の visual mode で使われてる URL
+ が正しくないようです。
2000/10/26
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
- mailcap �� mime.type �ե�����ξ��� Option Setting Panel ������
- ��ǽ�ˤ���.
+ mailcap と mime.type ファイルの場所を Option Setting Panel で設定
+ 可能にした.
2000/10/25
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
Subject: [w3m-dev 01247] Re: buffer selection menu
- ��˥塼��Ϣ�� patch ����ӻ����ѹ� [w3m-dev 01227], [w3m-dev 01228],
- [w3m-dev 01229], [w3m-dev 01237], [w3m-dev 01238] ��ޤȤ�ޤ�����
- ��Select ��˥塼�Ǥξõ�(������ 'D')
- ��Select ��˥塼�ǤΥ����Ȥ�ɽ��
- ��--- SPC for select / D for delete buffer ---��
- ������������������������������������������������
- ����˥塼����Υ��ޥ�ɼ¹Ԥ���ġ�
+ メニュー関連の patch および仕様変更 [w3m-dev 01227], [w3m-dev 01228],
+ [w3m-dev 01229], [w3m-dev 01237], [w3m-dev 01238] をまとめました。
+ ・Select メニューでの消去(キーは 'D')
+ ・Select メニューでのコメントの表示
+ ┃--- SPC for select / D for delete buffer ---┃
+ ┗━━━━━━━━━━━━━━━━━━━━━━┛
+ ・メニューからのコマンド実行を許可。
2000/10/24
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
- �� ���å����������, `.' �����ƤΥɥᥤ���ɽ�魯�褦�ˤ���.
- �� bm2menu.pl �� CVS �� add ����Τ�˺��Ƥ����Τ�, �ɲ�.
+ ・ クッキーの設定で, `.' は全てのドメインを表わすようにした.
+ ・ bm2menu.pl を CVS に add するのを忘れていたので, 追加.
-From: Tsutomu Okada (���� ��) <okada@furuno.co.jp>
+From: Tsutomu Okada (岡田 勉) <okada@furuno.co.jp>
Subject: [w3m-dev 01240] Re: w3m-0.1.11-pre-kokb17 patch
- �Ȥꤢ��������ѥ������ incompatible pointer type �Ȥ���줿�Ȥ�
- ���ν����ѥå���ź�դ��ޤ���
+ とりあえずコンパイル時に incompatible pointer type といわれたとこ
+ ろの修正パッチを添付します。
2000/10/23
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
- �� ���ץ��������ѥͥ��, ���å���������դ��� (�����դ��ʤ�) ��
- �ᥤ�������Ǥ���褦�ˤ���.
- �ޤ�, ���å���������ĤΥ��������Ȥ���ʬΥ����.
- �� frame �� reload �κ�, �ץ������Υ���å��夬��������Ƥ��ʤ���
- ������ؤ��н�.
+ ・ オプション設定パネルで, クッキーを受け付ける (受け付けない) ド
+ メインを設定できるようにした.
+ また, クッキー設定を一つのセクションとして分離した.
+ ・ frame の reload の際, プロクシのキャッシュが更新されていなかっ
+ た問題への対処.
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
Subject: [w3m-dev 01211] Re: a small change to linein.c
Subject: [w3m-dev 01214] Re: a small change to linein.c
- Ĺ��ʸ������Խ������, ���Ƥ�ʸ����ɽ������ʤ�������������ؤ�
- �н�.
+ 長い文字列を編集する際, 全ての文字列が表示されない事がある問題への
+ 対処.
From: Fumitoshi UKAI <ukai@debian.or.jp>
Subject: [w3m-dev 01216] error message for invalid keymap
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
Subject: [w3m-dev 01220] Re: error message for invalid keymap
- keymap �����꤬���ä��Ȥ���, ���顼��å�������Ф��褦�˽���.
+ keymap に問題があったときに, エラーメッセージを出すように修正.
From: Fumitoshi UKAI <ukai@debian.or.jp>
Subject: [w3m-dev 01217] keymap.lynx example could be better.
- keymap.lynx ���.
+ keymap.lynx の更新.
2000/10/20
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
- cookie �μ�갷���˴ؤ��ƴ��Ĥ��ν�����ä���.
- �� version 1 cookie ���Ф��밷����
+ cookie の取り扱いに関して幾つかの修正を加えた.
+ ・ version 1 cookie に対する扱いを
http://www.ics.uci.edu/pub/ietf/http/draft-ietf-http-state-man-mec-12.txt
- �˽�򤹤�褦���ѹ�.
- Netscape-style cookie �Υꥯ�����ȥإå���, Cookie2 ���ɲ�.
- �� [w3m-dev-en 00190] patch ���Ф�����Ĥ����ѹ�.
+ に準拠するように変更.
+ Netscape-style cookie のリクエストヘッダに, Cookie2 を追加.
+ ・ [w3m-dev-en 00190] patch に対する幾つかの変更.
2000/10/19
@@ -1128,107 +1128,107 @@ Subject: [w3m-dev-en 00190] w3m-0.1.10 patch (mostly version 0 cookie handling)
2000/10/18
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
- ʸ�����������ǽ�ˤ���.
+ 文字幅を設定可能にした.
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
Subject: [w3m-dev 01208] '#', '?' in ftp:/....
- ftp:/ �ǥե�����̾�� '#' �����äƤ���ȥ��������Ǥ��ʤ�����ؤ���
- ��.
+ ftp:/ でファイル名に '#' が入っているとアクセスできない問題への対
+ 処.
From: Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
Subject: [w3m-dev 01209] http_response_code and ``Location:'' header
- ��Location:�ץإå�������ȡ�̵���ˤ���˽����褦�ˤʤäƤޤ�����
- http_response_code�򸫤�301��303�λ����������褦�ˤ��Ƥߤޤ�����
+ 「Location:」ヘッダがあると、無条件にそれに従うようになってますが、
+ http_response_codeを見て301〜303の時だけ従うようにしてみました。
2000/10/17
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
- local CGI ��, ����Ӥ��Ǥ�������ؤ��н�.
+ local CGI で, ゾンビができる問題への対処.
2000/10/16
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
- table ��� <textarea> ���Ĥ��Ƥʤ���, ��λ�Ǥ��ʤ��ʤ�����ؤ��н�.
- ([w3m-dev 00959] �����ذ�).
- <select> �ΰ����˽स��褦�ˤ���.
+ table 中で <textarea> が閉じてない時, 終了できなくなる問題への対処.
+ ([w3m-dev 00959] の代替案).
+ <select> の扱いに準じるようにした.
From: maeda@tokyo.pm.org
Subject: [w3m-dev 00990] auth password input
- �����Ф���ѥ���ɤʤΤ��狼��ʤ��Τǡ��ʲ��Τ褦��
- �ѥå������Ƥޤ�����sleep(2)��Ĺ�����뤫�⡣
+ 何に対するパスワードなのかわからないので、以下のような
+ パッチを当てました。sleep(2)は長すぎるかも。
-From: Tsutomu Okada (���� ��) <okada@furuno.co.jp>
+From: Tsutomu Okada (岡田 勉) <okada@furuno.co.jp>
Subject: [w3m-dev 01193] Re: frame bug?
- �ե졼��Τ���ڡ�������褷�Ƥ���Ȥ�, ����������������ؤ��н�.
+ フレームのあるページを往来しているとき, 落ちる事がある問題への対処.
2000/10/13
From: SASAKI Takeshi <sasaki@ct.sakura.ne.jp>
Subject: [w3m-dev 00928] misdetection of IPv6 support on CYGWIN 1.1.2
- CYGWIN 1.1.2�ʹߤ�, ���ä� IPv6 ���ݡ��Ȥ򸡽Ф��Ƥ��ޤ�����ؤ���
- ��.
+ CYGWIN 1.1.2以降で, 誤って IPv6 サポートを検出してしまう問題への対
+ 処.
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
Subject: [w3m-dev 01170] Re: cursor position after RELOAD, EDIT
- ��cache �ե����뤬�Ĥ뤳�Ȥ�����Х��ν���.
- ����¾
- ���ǥ��쥯�ȥ�ꥹ�Ȥ� URL �� /$LIB/dirlis.cgi�� �ȳʹ������ä��Τǡ�
- ���Υǥ��쥯�ȥꤽ�Τ�Τˤʤ�褦�ˤ��ޤ�����
- dirlist.in ���ѹ����Ƥ��ޤ��Τǡ�configure ��Ƽ¹Ԥ��뤫��
- cp dirlist.in dirlist.cgi �Ȥ��� @PERL@ �� @CYGWIN@ ��񤭴����Ƥ���������
- ��keymap �ǰ����򵭽ҤǤ����ĥ��ʲ��δؿ���Ŭ�Ѥ��ޤ�����
- LOAD �� �ե�����̾
- EXTERN, EXTERN_LINK �� �����֥饦��̾
- (w3m-control: ����ϻȤ��ޤ���)
- EXEC_SHELL, READ_SHELL, PIPE_SHELL �� shell���ޥ��
- (w3m-control: ����ϻȤ��ޤ���)
- SAVE, SAVE_IMAGE, SAVE_LINK, SAVE_SCREEN �� �ե�����̾(pipe ���ޥ��)
- (w3m-control: ����ϻȤ��ޤ���)
+ ・cache ファイルが残ることがあるバグの修正.
+ その他
+ ・ディレクトリリストの URL が /$LIB/dirlis.cgi… と格好悪かったので、
+ 元のディレクトリそのものになるようにしました。
+ dirlist.in を変更していますので、configure を再実行するか、
+ cp dirlist.in dirlist.cgi として @PERL@ と @CYGWIN@ を書き換えてください。
+ ・keymap で引数を記述できる拡張を以下の関数に適用しました。
+ LOAD … ファイル名
+ EXTERN, EXTERN_LINK … 外部ブラウザ名
+ (w3m-control: からは使えません)
+ EXEC_SHELL, READ_SHELL, PIPE_SHELL … shellコマンド
+ (w3m-control: からは使えません)
+ SAVE, SAVE_IMAGE, SAVE_LINK, SAVE_SCREEN … ファイル名(pipe コマンド)
+ (w3m-control: からは使えません)
2000/10/11
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
- ��ɸ�����Ϥ���ΥХåե����ɤ߹���Ȥ�, MAN_PN �򸫤ƥХåե�̾����
- ��褦�ˤ���.
+ ・標準入力からのバッファに読み込むとき, MAN_PN を見てバッファ名を決め
+ るようにした.
-From: Tsutomu Okada (���� ��) <okada@furuno.co.jp>
+From: Tsutomu Okada (岡田 勉) <okada@furuno.co.jp>
Subject: [w3m-dev 01156] Re: w3m-0.1.11-pre-kokb15
- ��mydirname �ΥХ������ȴؿ�������ɲ�
- ��SERVER_NAME �����ꤹ��褦���ѹ�
- ��[w3m-dev-en 00234] �򻲹ͤ� GATEWAY_INTERFACE �����ꤹ��褦���ѹ�
- ��current working directory ���ѹ����� popen ���롢���ޤȤ�ʼ���
+ ・mydirname のバグ修正と関数宣言の追加
+ ・SERVER_NAME を設定するように変更
+ ・[w3m-dev-en 00234] を参考に GATEWAY_INTERFACE を設定するように変更
+ ・current working directory を変更して popen する、よりまともな実装
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
Subject: [w3m-dev 01158] some bugs fix when RELOAD, EDIT
Subject: [w3m-dev 01164] cursor position after RELOAD, EDIT
- ��local CGI �Ȥ��ƸƤӽФ��� file:... �� EDIT �Ǥ���Х��������ޤ�����
- # currentURL.scheme �ǤϤʤ� real_scheme ��Ȥ��褦�ˤ��ޤ�����
- ��HTML �򥽡���ɽ�����֤��� RELOAD, EDIT ������ˤ�
- ������ɽ�����֤ˤʤ�褦�ˤ��ޤ���(�����Զ�礬����ޤ���)��
- ���դ� plain text �ե������ HTML ɽ�����Ƥ�����֤��� RELOAD, EDIT
- ������ˤ� HTML ɽ�����֤ˤʤ�褦�ˤ��ޤ�����
- ��RELOAD, EDIT ��Υ���������֤� RELOAD, EDIT ����Ʊ���ˤʤ�褦��
- ���ޤ�����
+ ・local CGI として呼び出した file:... を EDIT できるバグを修正しました。
+ # currentURL.scheme ではなく real_scheme を使うようにしました。
+ ・HTML をソース表示状態から RELOAD, EDIT した後には
+ ソース表示状態になるようにしました(一部不具合がありました)。
+ ・逆に plain text ファイルを HTML 表示している状態から RELOAD, EDIT
+ した後には HTML 表示状態になるようにしました。
+ ・RELOAD, EDIT 後のカーソル位置を RELOAD, EDIT 前と同じになるように
+ しました。
2000/10/10
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
Subject: [w3m-dev 01166] Re: cell width in table
- table �ط��ΥХ��ե������Ǥ�.
- �� ����������ʬ����ˤ�ؤ�餺, ʸ��������ޤ��֤���Ƥ��ޤ�����ν���.
- �� table �� <wbr> �������ʤ�������������ν���.
- �� feed_table_tag() �ν����ζ��̲�.
+ table 関係のバグフィクスです.
+ ・ 画面幅が十分あるにも関わらず, 文が途中で折り返されてしまう問題の修正.
+ ・ table で <wbr> が効かない事がある問題の修正.
+ ・ feed_table_tag() の処理の共通化.
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
Subject: [w3m-dev 01155] history of data for <input type=text>
- �դȻפ��Ф��� <input type=text> �����Ϥ����ǡ�����ҥ��ȥ��
- é����ͤˤ��Ƥߤޤ�����
- ���������ӥ����Ϥ��⤯���ʤɤ������Ȼפ��ޤ���
+ ふと思い出して <input type=text> で入力したデータもヒストリを
+ 辿れる様にしてみました。
+ 検索サービスを渡り歩く時などに便利と思います。
2000/10/9
@@ -1237,13 +1237,13 @@ From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
Subject: [w3m-dev 01150] Some bug fixes
[w3m-dev 00956] unknown scheme in frame
[w3m-dev 00975] goto link from frame page
- ����𤵤줿����ν���.
+ で報告された問題の修正.
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
Subject: [w3m-dev 01145] buffer overflow in linein.c
- inputLineHist(linein.c) �ǥǥե����ʸ���� 256 ʸ���ʾ�ξ���
- strProp ���ΰ賰�����������뤳�Ȥ�����ޤ����Τǡ����ν��� patch �Ǥ���
- �ޤ�ʸ����Ĺ�������ͤ� 1024 �ˤ��ޤ�����
+ inputLineHist(linein.c) でデフォルト文字列が 256 文字以上の場合に
+ strProp が領域外アクセスすることがありましたので、その修正 patch です。
+ また文字列長の制限値を 1024 にしました。
2000/10/8
@@ -1251,681 +1251,681 @@ Subject: [w3m-dev 01145] buffer overflow in linein.c
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
Subject: [w3m-dev 01136] function argument in keymap
Subject: [w3m-dev 01139] Re: function argument in keymap
- Ĺ�餯����ˤʤäƤ� ~/.w3m/keymap �Ǥδؿ��ΰ���������ǽ�ˤ��ޤ�����
+ 長らく宿題になってた ~/.w3m/keymap での関数の引数指定を可能にしました。
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
Subject: [w3m-dev 01143] image map with popup menu
- image map �� popup menu ��Ȥä� <option> ���ͤ�ɽ������褦�ˤ��Ƥߤޤ�����
- config.h �� #define MENU_MAP �Ȥ��ƥ���ѥ��뤷�ƤߤƤ���������
+ image map を popup menu を使って <option> の様に表示するようにしてみました。
+ config.h で #define MENU_MAP としてコンパイルしてみてください。
-From: Tsutomu Okada (���� ��) <okada@furuno.co.jp>
+From: Tsutomu Okada (岡田 勉) <okada@furuno.co.jp>
Subject: [w3m-dev 00971] Re: segmentation fault with http:
- URL �Ȥ��� http: �� http:/ �����Ϥ��������Ƥ��ޤ��Τǽ������ޤ�����
+ URL として http: や http:/ を入力すると落ちてしまうので修正しました。
2000/10/07
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
Subject: [w3m-dev 01134] w3m in xterm horribly confused by Japanese in title (fr
- http://bugs.debian.org/w3m ����𤵤�Ƥ���, �Ѹ��Ǥ����ܸ쥿���ȥ��
- ����ڡ����򸫤��Ȥ���, w3m ��ȯ�������������������Ф���Х��ե�����
- �Ǥ�.
+ http://bugs.debian.org/w3m で報告されている, 英語版で日本語タイトルの
+ あるページを見たときに, w3m が発狂する事がある問題に対するバグフィクス
+ です.
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
Subject: [w3m-dev 01127] SIGINT signal in ftp session (Re: my w3m support page)
- ftp �κݤ� SIGINT ��ȯ������������Х��ν���.
+ ftp の際に SIGINT が発生すると落ちるバグの修正.
2000/10/06
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
- �� table �� recalc_width() �� wmin �κ����ͤ� 0.05 ���ѹ�.
- �� �������ޥ�ɤν��ϥХåե��� filename, basename, type ���ѹ�.
- �� http �� local file �ʳ��ΰ��̥ǡ�����Ĺ����Τ�, ��ö�ƥ�ݥ��
- �ե��������Ȥ��褦�ˤ���.
- �� �ƥ�ݥ��ե�����̾������������ˡ���ѹ�.
- �� mailcap �� edit= ���᤹��褦�ˤ���.
- �� URLFile �ν�������Դ������ä�����ν���.
- �� �ĤäƤ���������ѥå��Υ��ߤκ��.
+ ・ table の recalc_width() の wmin の最大値を 0.05 に変更.
+ ・ 外部コマンドの出力バッファの filename, basename, type を変更.
+ ・ http と local file 以外の圧縮データを伸長するのに, 一旦テンポラリ
+ ファイルに落とすようにした.
+ ・ テンポラリファイル名を生成する方法の変更.
+ ・ mailcap の edit= を解釈するようにした.
+ ・ URLFile の初期化が不完全だった問題の修正.
+ ・ 残っていた非公式パッチのゴミの削除.
2000/10/05
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
- -dump, -source_dump ���ץ����β���, frame ��� <meta> ������̵��
- ����褦�ˤ�.
+ -dump, -source_dump オプションの改善, frame 中の <meta> タグを無視
+ するようにた.
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
Subject: [w3m-dev 00930] HTML-quote in w3mbookmark.c
- "�֥å��ޡ�������Ͽ" �� URL �� Title �� HTML-quote ����Ƥ��ʤ��Τ�
- �������ޤ�����
+ "ブックマークの登録" で URL や Title が HTML-quote されていないのを
+ 修正しました。
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
Subject: [w3m-dev 00972] better display of progress bar ?
- 2Mb �Υե�������ɤ�Ǥ�����ˡ����ä� 0/2Mb �ˤʤä��ᤷ���ä��Τǡ�
- �ץ����쥹�С���ɽ���� %.0f (%.1f) ���� %.3g �ˤ��Ƥߤ���Ǥ�����
- �ɤ�ʤ��Ǥ��礦��
+ 2Mb のファイルを読んでいる時に、ずっと 0/2Mb になって悲しかったので、
+ プログレスバーの表示を %.0f (%.1f) から %.3g にしてみたんですが、
+ どんなもんでしょう。
2000/10/05
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
- textlist ���Ф��� null pointer �����å���ä���.
+ textlist に対する null pointer チェックを加えた.
From: Fumitoshi UKAI <ukai@debian.or.jp>
Subject: [w3m-dev 01100] space in URL
- * http://bugs.debian.org/60825 �� http://bugs.debian.org/67466
+ * http://bugs.debian.org/60825 と http://bugs.debian.org/67466
- form �� submit ������� value ���� form_quote() ���Ƥޤ���
- name ������ form_quote() ����ɬ�פ�����ޤ���
+ form を submit する時に value しか form_quote() してませんが
+ name の方も form_quote() する必要があります。
* http://bugs.debian.org/66887
- Goto URL: ����Ƭ�� space ������� current��������а����ˤʤ�Τ�
- ���Ƥۤ����Ȥ�����𡣤������� cut & paste ����Ȥ��ˤʤ꤬���ʤΤ�
- (�Ĥ��ǤʤΤǸ���ζ������)
+ Goto URL: で先頭に space が入ると currentからの相対扱いになるのを
+ やめてほしいという報告。たしかに cut & paste するときになりがちなので
+ (ついでなので後ろの空白も削除)
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
Subject: [w3m-dev 01111] bug of conv.c
- UTF-8 �ʥڡ���(Shift_JIS �ȸ�ǧ�����)�� w3m ��ɽ��������
- (����ȥ����륷�����󥹤�ϳ���)���Ȥ����ä��Τ�Ĵ�٤Ƥߤ��Ȥ�����
- conv.c ���Х��äƤޤ�����ñ��ߥ��Ǥ������ߤޤ���m(_o_)m
+ UTF-8 なページ(Shift_JIS と誤認される)で w3m の表示が乱れる
+ (コントロールシーケンスが漏れる)ことがあったので調べてみたところ、
+ conv.c がバグってました。単純ミスです。すみませんm(_o_)m
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
Subject: [w3m-dev 01113] bug fix (content charset)
- content charset ���������ǥХ��äƤޤ����Τǡ����� patch �Ǥ���
+ content charset の設定部でバグってましたので、修正 patch です。
2000/10/02
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
Subject: [w3m-dev 01112] Re: mailcap test= directive
- mailcap �ΰ������ĥ���ޤ���.
- �� %s �ʳ���, %t (content-type name) ��Ȥ���褦�ˤ��ޤ���.
- �� nametemplate ���ץ����ͭ���ˤʤ�ޤ���.
- �� %s ��̵������, ɸ�����Ϥ� %s �˥�����쥯�Ȥ��ƥ��ޥ�ɤ�¹Ԥ�
- ��褦�ˤ��ޤ���.
- ������ι�ʸ�Ȥ��ƥܡ��󥷥�����ꤷ�Ƥ���Τ�, OS/2 ���ǤϤ���
- �ޤޤǤ����ܤ��⤷��ޤ���.
- �� needsterminal �����ꤵ��Ƥ������, �ե��������ɤǥ��ޥ�ɤ��
- �Ԥ���褦�ˤ��ޤ���.
- �� copiousoutput �����ꤵ��Ƥ������, ���ޥ�ɤμ¹Է�̤�Хåե�
- ���ɤ߹���褦�ˤ��ޤ���.
- �� RFC 1524 �ˤ�̵���ΤǤ���, ���ޥ�ɤμ¹Է�̤� text/html �Ȥ���
- �Хåե����ɤ߹��ि��Υ��ץ���� htmloutput ���ɲä��ޤ���.
- �����, ���ܤ��� [w3m-dev 01079] ����Ƥ���Ƥ�����Τ����ذƤ�
- �Ĥ��Ǥ�.
- �ޤ��ƥ��Ȥ��Ƥޤ���, ������ư���Ƥ����
+ mailcap の扱いを拡張しました.
+ ・ %s 以外に, %t (content-type name) を使えるようにしました.
+ ・ nametemplate オプションが有効になりました.
+ ・ %s が無い場合は, 標準入力を %s にリダイレクトしてコマンドを実行す
+ るようにしました.
+ シェルの構文としてボーンシェルを仮定しているので, OS/2 等ではこの
+ ままでは駄目かもしれません.
+ ・ needsterminal が指定されている場合は, フォアグランドでコマンドを実
+ 行するようにしました.
+ ・ copiousoutput が指定されている場合は, コマンドの実行結果をバッファ
+ に読み込むようにしました.
+ ・ RFC 1524 には無いのですが, コマンドの実行結果を text/html として
+ バッファに読み込むためのオプション htmloutput を追加しました.
+ これは, 坂本さんが [w3m-dev 01079] で提案されていたものの代替案の
+ つもりです.
+ まだテストしてませんが, ちゃんと動いていれば
application/excel; xlHtml %s | lv -Iu8 -Oej; htmloutput
- �Ȥ����, lv �μ¹Է�̤� html �Ȥ��� w3m �ΥХåե���ɽ�������
- �Ϥ��Ǥ�.
- Ʊ�� content-type �Υ���ȥ꤬ʣ��������, htmloutput ���ץ����
- �������Τ�ͥ�褹��褦�ˤ��Ƥ���Τ�, ¾�Υץ������� mailcap
- ��ͭ���Ƥ�����̵���Ȼפ��ޤ�.
- ������, RFC 1524 �˽�򤷤Ƥʤ��ΤϳΤ��ʤΤ�, ��ո����Ԥ����Ƥ�
- ��.
- �� (gunzip_stream() �ˤ��) ���̥ե�����α����� ftp ���Ф��Ƥ�Ȥ�
- ��褦�ˤ��ޤ���.
- ¿ʬ [w3m-dev 01078] �ΥХ����Ȼפ��ޤ���, http ���Ф���, ���̤�
- ���ƥ����ȥǡ����α������Ǥ��ʤ��ʤäƤ��Τ�, �������ޤ���.
+ とすれば, lv の実行結果が html として w3m のバッファに表示される
+ はずです.
+ 同じ content-type のエントリが複数ある場合, htmloutput オプション
+ があるものを優先するようにしてあるので, 他のプログラムと mailcap
+ を共有しても問題無いと思います.
+ しかし, RFC 1524 に準拠してないのは確かなので, 御意見お待ちしてま
+ す.
+ ・ (gunzip_stream() による) 圧縮ファイルの閲覧が ftp に対しても使え
+ るようにしました.
+ 多分 [w3m-dev 01078] のバグだと思いますが, http に対して, 圧縮し
+ たテキストデータの閲覧ができなくなってたので, 修正しました.
2000/09/28
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
Subject: [w3m-dev 01097] gunzip_stream problem
- ���̥ե�������ɤ߹���Ǥ������, INT �����ʥ뤬ȯ�������Ȥ���ư��
- ���ѤʤΤ�, �������ޤ���.
+ 圧縮ファイルを読み込んでる途中で, INT シグナルが発生したときの動作
+ が変なので, 修正しました.
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
Subject: [w3m-dev 01092] CONFIG_FILE
- config.h �� CONFIG_FILE ���ѹ����Ƥ�ȿ�Ǥ���ʤ��ʤȻפä��顢
- ���ĤΤޤˤ��ϡ��ɥ����ǥ��󥰤���äƤޤ�����
- ���ν����Ǥ���
+ config.h の CONFIG_FILE を変更しても反映されないなと思ったら、
+ いつのまにかハードコーディングに戻ってました。
+ その修正です。
2000/09/17
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
Subject: [w3m-dev 01078] treatment of content type
- document type �ΰ����β��ɤ�Ԥʤ��ޤ���.
- �� examineFile �ˤ�����, lessopen_stream �� gunzip_stream ��ͥ����
- ���ѹ����ޤ���.
- �� lessopen_stream �ν������, plain text �Ȥ��ư����褦�ˤ��ޤ���.
- �� lessopen_stream ��, document type �� text/* �Ǥ��뤫, �����ӥ塼��
- �����ꤵ��Ƥ��ʤ����Τ߻Ȥ��褦�ˤ��ޤ���.
- �ޤ�, text/html �ʳ���, text/* ���� w3m �����ǽ�������褦�ˤ���
- ����.
- �� page_info_panel ��ɽ������� document type ��, examineFile �ǽ���
- ����������ͤ�Ȥ��褦�ˤ��ޤ���.
- �� �����ӥ塼����Хå������ɤ�ư�����Ȥ�, ���ޥ�ɥ饤���
- ">/dev/null 2>&1 &" ���դ��Ƥߤޤ���.
+ document type の扱いの改良を行ないました.
+ ・ examineFile における, lessopen_stream と gunzip_stream の優先順位
+ を変更しました.
+ ・ lessopen_stream の処理後は, plain text として扱うようにしました.
+ ・ lessopen_stream は, document type が text/* であるか, 外部ビューア
+ が設定されていない場合のみ使うようにしました.
+ また, text/html 以外の, text/* 型は w3m 内部で処理するようにしま
+ した.
+ ・ page_info_panel で表示される document type は, examineFile で処理
+ される前の値を使うようにしました.
+ ・ 外部ビューアをバックグランドで動かすとき, コマンドラインに
+ ">/dev/null 2>&1 &" を付けてみました.
2000/09/13
-From: Tsutomu Okada (���� ��) <okada@furuno.co.jp>
+From: Tsutomu Okada (岡田 勉) <okada@furuno.co.jp>
Subject: [w3m-dev 01053] Re: Location: in local cgi.
- [w3m-dev 01051] �Υѥå��Ǥϡ�w3m -m �� Location: �Υإå��Τ���ʸ�Ϥ�
- ���������Ǥ��äƤ��ޤ��Τǡ�local CGI �ΤȤ��Τ� Location: �򻲾Ȥ�
- ��褦���ѹ����ޤ�����
+ [w3m-dev 01051] のパッチでは、w3m -m で Location: のヘッダのある文章を
+ 見ると飛んでいってしまうので、local CGI のときのみ Location: を参照す
+ るように変更しました。
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
Subject: [w3m-dev 01065] map key '0'
- keymap ����ߤν����Ǥ���
- ��ñ�Ȥ� '0' �򥭡��ޥåײ�ǽ�ˤ��ޤ�����
- ��10 j�٤Ȥ��ϰ����̤�Ǥ���
- ����ESC ���٤ʤ� ESC �θ�� 0x80-0xff ��ʸ�������Ϥ����
- ���󳰥��������򤹤��ǽ�������ä���Τ�����
+ keymap がらみの修正です。
+ ・単独の '0' をキーマップ可能にしました。
+ 『10 j』とかは以前通りです。
+ ・『ESC あ』など ESC の後に 0x80-0xff の文字を入力すると
+ 配列外アクセスをする可能性があったものを修正。
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
Subject: [w3m-dev 01066] 104japan
- frame ��� form ��ʸ�������ɤ��Ѵ�����꤯�����Ǥ��Ƥ��ʤ��褦
- �Ǥ��Τǡ��������ޤ�����
+ frame 中の form の文字コードの変換が上手く処理できていないよう
+ ですので、修正しました。
2000/09/07
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
Subject: [w3m-dev 01058] <dt>, <dd>, <blockquote> (Re: <ol> etc.)
- �� <blockquote> ������ζ��ԤϾ������褦�ˤ���.
- �� <dt>, <dd> ����ľ��� <p> ������̵�뤷�ʤ��褦�ˤ���.
+ ・ <blockquote> の前後の空行は常に入るようにした.
+ ・ <dt>, <dd> タグ直後の <p> タグを無視しないようにした.
2000/09/04
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
Subject: [w3m-dev 01052] cellpadding, cellspacing, vspace, etc.
- �������Ԥ˴ؤ���, ���Τ褦�ʤ����Ĥ����ѹ���Ԥʤ��ޤ���.
- �� ;ʬ�ʥ��뤬�����Τ��ɤ������, <tr> �� <td> �γ��ˤ���
- <a name="..."></a> ��, <font> ���ϼ��Υ��������褦�ˤ���.
- �� <table> �� cellspacing °���β���ְ�äƤ����Τ�, ��������.
- vspace °������Ǥ���褦�ˤ���.
- �� ���Ԥ�Ƚ������ѹ�����.
- �� </p> �����Ƕ��Ԥ�����褦�ˤ���.
+ 空白や空行に関する, 次のようないくつかの変更を行ないました.
+ ・ 余分なセルが出来るのを防ぐために, <tr> や <td> の外にある
+ <a name="..."></a> や, <font> 等は次のセルに入るようにした.
+ ・ <table> の cellspacing 属性の解釈を間違っていたので, 修正した.
+ vspace 属性も解釈できるようにした.
+ ・ 空行の判定条件を変更した.
+ ・ </p> タグで空行が入るようにした.
2000/08/17
-From: Tsutomu Okada (���� ��) <okada@furuno.co.jp>
+From: Tsutomu Okada (岡田 勉) <okada@furuno.co.jp>
Subject: [w3m-dev 01018] sqrt DOMAIN error in table.c
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
Subject: [w3m-dev 01019] Re: sqrt DOMAIN error in table.c
- �������Ȥ���ˤʤ��礬��������ν���.
+ 根号の中身が負になる場合がある問題の修正.
2000/08/15
From: satodai@dog.intcul.tohoku.ac.jp (Dai Sato)
Subject: [w3m-dev 01017] value of input tag in option panel
- aito Ϣ��Ģ��http://ei5nazha.yz.yamagata-u.ac.jp/BBS/spool/log.html��
- �˽ФƤ�����Ǥ���option ���̤γ��� editor �ʤɤ� '"' ���ޤޤ��
- ���ޥ�ɤ����ꤵ���ȡ����� option ���̤�ƤӽФ������� '"' �ʹߤ�
- ɽ������ʤ��ʤ�ȸ������ꡣ
+ aito 連絡帳(http://ei5nazha.yz.yamagata-u.ac.jp/BBS/spool/log.html)
+ に出てた問題です。option 画面の外部 editor などに '"' が含まれる
+ コマンドが指定されると,再度 option 画面を呼び出した時に '"' 以降が
+ 表示されなくなると言う問題。
2000/08/06
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
Subject: [w3m-dev 01016] Table geometry calculation
- table �Υ�����ȥ꡼�׻��Ǽ¿��������˴ݤ������ѹ�����, table ����
- �����ͤ����������κ�����ǽ�ʸ¤꾮�����ʤ�褦�ˤ��Ƥߤޤ���.
+ table のジオメトリー計算で実数を整数に丸める手順を変更して, table 幅の
+ 指定値と本当の幅の差が可能な限り小さくなるようにしてみました.
2000/07/26
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
Subject: [w3m-dev 01006] initialize PRNG of openssl 0.9.5 or later
- �С������ 0.9.5 �ʹߤ� openssl �饤�֥���, ������ǥХ���
- (/dev/urandom) ��¸�ߤ��ʤ��Ķ��Ǥ� SSL ���Ȥ���褦�ˤ��Ƥߤޤ���.
+ バージョン 0.9.5 以降の openssl ライブラリで, ランダムデバイス
+ (/dev/urandom) が存在しない環境でも SSL が使えるようにしてみました.
2000/07/21
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
Subject: [w3m-dev 01004] unused socket is not closed.
- C-c (SIGINT) �ǥե�������ɤ߹��ߤ����Ǥ����Ȥ�, socket ��������������
- �Ƥ��ʤ���礬����褦�Ǥ�.
+ C-c (SIGINT) でファイルの読み込みを中断したとき, socket がクローズされ
+ ていない場合があるようです.
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
Subject: [w3m-dev 01005] table caption problem
- </caption> ��˺��Ƥ����Ȥ��� w3m ����λ���ʤ��ʤ����������ν���.
+ </caption> を忘れていたときに w3m が終了しなくなる問題の問題の修正.
2000/07/19
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
Subject: [w3m-dev 00966] ssl and proxy authorization
- authorization ��ɬ�פȤ������ HTTP proxy �����Ф� SSL �ȥ�ͥ�
- �󥰤����꤬���ä��Τǽ���.
+ authorization を必要とする場合の HTTP proxy サーバの SSL トンネリ
+ ングに問題があったので修正.
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
Subject: [w3m-dev 01003] Some bug fixes for table
- table �Υ�����ȥ�׻��Τ����Ĥ���������Ф��뽤��.
+ table のジオメトリ計算のいくつかの問題に対する修正.
2000/07/16
From: SASAKI Takeshi <sasaki@ct.sakura.ne.jp>
Subject: [w3m-dev 00999] Re: bookmark
- �֥å��ޡ�������Ͽ�Ǥ��ʤ���礬��������ν���.
+ ブックマークが登録できない場合がある問題の修正.
2000/06/18
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
Subject: [w3m-dev 00934] clear_buffer bug
- clear_buffer �� TRUE �ΤȤ�, selBuf() �Dz��̤��ä��Ƥ��ޤ�������Ф���
- �Х��ե������Ǥ�.
+ clear_buffer が TRUE のとき, selBuf() で画面が消えてしまう問題に対する
+ バグフィクスです.
2000/06/17
From: SASAKI Takeshi <sasaki@ct.sakura.ne.jp>
Subject: [w3m-dev 00929] ftp.c patch
- USER ���ޥ�ɤ��Ф��� 230 ���֤äƤ������ˤ�����������Τ�
- �ߤʤ� patch ��������ޤ������ʲ���ź�դ��ޤ���
+ USER コマンドに対して 230 が返ってきた場合には成功したものと
+ みなす patch を作成しました。以下に添付します。
2000/06/16
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
Subject: [w3m-dev 00923] some bug fixes
- �� #undef JP_CHARSET �ξ��� file.c �� make �Ǥ��ʤ��ʤäƤ���
- �Х�(��Υߥ��Ǥ���_o_)�ν����ȡ�
- �� buffer.c �� '=' �� '==' �ˤʤäƤ�����Τν����Ǥ���
+ ・ #undef JP_CHARSET の場合に file.c が make できなくなっていた
+ バグ(私のミスでした_o_)の修正と、
+ ・ buffer.c の '=' が '==' になっていたものの修正です。
From: Kazuhiko Izawa <izawa@nucef.tokai.jaeri.go.jp>
Subject: [w3m-dev 00924] Re: w3m-0.1.11pre
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
Subject: [w3m-dev 00925] Re: w3m-0.1.11pre
- file://localhost/foo �η����� URL �˥����������褦�Ȥ����Ȥ��۾ェ
- λ���Ƥ��ޤ�����ν���.
+ file://localhost/foo の形式の URL にアクセスしようとしたとき異常終
+ 了してしまう問題の修正.
2000.6.14
From: aito
-�� ~/.w3m �������ʤ��ä��Ȥ��ˤϡ�cookie �� config ����¸���ʤ��褦�ˤ�����
-��<isindex prompt="..." action="...">�����
-��<tag/>�����ϤǤ���褦���ѹ���
+・ ~/.w3m が開けなかったときには、cookie と config を保存しないようにした。
+・<isindex prompt="..." action="...">に対応。
+・<tag/>が解析できるように変更。
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
-��[w3m-dev 00846] doc-jp/w3m.1 �η����� mandoc ���� man ���Ѵ���
-��[w3m-dev 00861] ɸ�����Ϥ���ǡ������ɤ�Ǥ���Ȥ��ˡ�'G' ��
- ��ư�����������Х��ν�����
-��[w3m-dev 00874] FTP_proxy == "" �ξ��������Х��ν�����
-��[w3m-dev 00875] uncompress, gunzip ��ʬ�Υ����ɤǵ��ˤʤä���ʬ����
- ���ޤ�����
-��[w3m-dev 00876] �Хåե��˰��̥ե������ɽ�����Ƥ���Ȥ������ΥХåե���
- ��ɽ�������ʸ����������Х��ν�����
-��[w3m-dev 00887] getNextPage() ����ߤν���/���ɤ򤷤ޤ�����
- ��-m ���ץ������ѻ��� quoted-printable ��ǥ����ɲ�ǽ�ˤ�����
- ��showProgress �� getNextPage() ��ǸƤ��ͤˤ�����
- ����ˤ�ꡢTransferred byte(buf->trbyte) ���������ͤ�����褦�ˤʤä���
- ���ѿ�̾�� loadBuffer ���Ȥ���������碌����
- �ޤ���getNextPage �Ȥϴط�̵����ʬ�Ǥ�
- ��showProgress ��Ƥְ��֤��������Ȼפ�����֤��ѹ�
- ���Ƥ��ޤ���
+・[w3m-dev 00846] doc-jp/w3m.1 の形式を mandoc から man に変換。
+・[w3m-dev 00861] 標準入力からデータを読んでいるときに、'G' の
+ 挙動がおかしいバグの修正。
+・[w3m-dev 00874] FTP_proxy == "" の場合に落ちるバグの修正。
+・[w3m-dev 00875] uncompress, gunzip 部分のコードで気になった部分を修正
+ しました。
+・[w3m-dev 00876] バッファに圧縮ファイルを表示しているとき、そのバッファを
+ 再表示すると文字が化けるバグの修正。
+・[w3m-dev 00887] getNextPage() がらみの修正/改良をしました。
+ ・-m オプション使用時に quoted-printable をデコード可能にした。
+ ・showProgress を getNextPage() 内で呼ぶ様にした。
+ これにより、Transferred byte(buf->trbyte) に正しく値が入るようになった。
+ ・変数名を loadBuffer 等とだいたい合わせた。
+ また、getNextPage とは関係無い部分でも
+ ・showProgress を呼ぶ位置を正しいと思われる位置に変更
+ しています。
From: satodai@dog.intcul.tohoku.ac.jp (Dai Sato)
-��[w3m-dev 00848] NEWS-OS 4 ���
+・[w3m-dev 00848] NEWS-OS 4 対応。
From: Hiroshi Kawashima <kei@arch.sony.co.jp>
-��[w3m-dev 00849][w3m-dev 00863] mipsel patch �����
+・[w3m-dev 00849][w3m-dev 00863] mipsel patch の修正。
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp> and many others
-��[w3m-dev 00851] #ifdef JP_CHARSET ���դ�˺��ν�����
+・[w3m-dev 00851] #ifdef JP_CHARSET の付け忘れの修正。
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
-��[w3m-dev 00859] caption ���ޤ��֤���ʤ��Х��ν�����
-��[w3m-dev 00872] <LI> �Ƕ��Ԥ�����Х��ν�����
-��[w3m-dev 00891]���Τ褦��������Ф���Х��ե������Ǥ�.
- 1. table ��� <pre><nobr>, <xmp>, <listing> �� table �������.
- 2. <xmp>, <listing> ��ľ�夫����ԤޤǤ�̵�뤵��Ƥ���.
- 3. table ��� <textarea>, <xmp>, <listing> ������˴ޤޤ�륿�����
- �����Ƥ��ޤäƤ���.
- 4. feed_select() �Υ����ޥå��󥰤� <option> �ϻϤ�� 7 ʸ����������
- ���Ƥʤ��ä�����, <optionxxx> ���Υ����ˤ�ޥå����Ƥ�.
- �դ�, </option> �� > �����ζ��򤬵�����Ƥʤ��ä�.
- 5. <table> ��� </script> (</style>?) ��˺�줿�Ȥ���, ̵�¥롼�פˤ�
- ��.
- ����˼��Τ褦���ѹ��򤷤ޤ���.
- 6. goLine �ǥ������뤬��Ƭ�˹Ԥ��褦�ˤ���.
-��[w3m-dev 00914] �����Ƥ��ʤ��Хåե��Υ�����������Ȥ��ˡ�
- �������Ƥ򥭥�å���Ȥ��ƥե�����˳�Ǽ����褦���ɡ�
+・[w3m-dev 00859] caption が折り返されないバグの修正。
+・[w3m-dev 00872] <LI> で空行が入るバグの修正。
+・[w3m-dev 00891]次のような問題に対するバグフィクスです.
+ 1. table 中の <pre><nobr>, <xmp>, <listing> で table が崩れる.
+ 2. <xmp>, <listing> の直後から改行までが無視されている.
+ 3. table 中の <textarea>, <xmp>, <listing> 等の中に含まれるタグも処
+ 理してしまっていた.
+ 4. feed_select() のタグマッチングで <option> は始めの 7 文字だけしか
+ 見てなかったため, <optionxxx> 等のタグにもマッチしてた.
+ 逆に, </option> は > の前の空白が許されてなかった.
+ 5. <table> 中で </script> (</style>?) を忘れたときに, 無限ループにな
+ る.
+ さらに次のような変更をしました.
+ 6. goLine でカーソルが行頭に行くようにした.
+・[w3m-dev 00914] 見えていないバッファのメモりを解放するときに、
+ その内容をキャッシュとしてファイルに格納するよう改良。
From: Yamate Keiichirou <yamate@ebina.hitachi.co.jp>
-��[w3m-dev 00853] dirlist.in �����
+・[w3m-dev 00853] dirlist.in の修正。
From: Altair <NBG01720@nifty.ne.jp>
-��[w3m-dev 00885][w3m-dev 00892] for OS/2
- ��Netscape��Lynx�Υ֥å��ޡ������顢�������롦�ե�����˥���������
- ���ʤ��ä��Τ���(������ �礵��Υѥå�)��file:///D|path/file��
- ��(D�ϥɥ饤�֥쥿��)�򥵥ݡ��ȡ�
- ����Ȱ�Ȥ��ơ�/tmp�ɥǥ��쥯�ȥ�����Ǥ����Ƥ����Τ򡢴Ķ��ѿ�
- TMP�������ͥ�衣(����������� �礵��Υѥå�)��
- ��DOS��OS/2�Υ��󥽡���ǹ����Ȥ��Ƥ���IBM codepage 850ʸ������
- �ˡ�ISO latin-1������Ѵ���Ԥ����Ѹ���w3m�Ǥ�ʸ��������ʤ�����
- ������
- ��Insert�����ˤ���˥塼�ƤӽФ���OS/2�Ķ��Ǥ��ǽ�ˡ�
- ��xterm��kterm��rxvt�ʤɤǡ����̤˥��ߤ�ɽ������Ƥ��ޤ��Τ��к���
- (XFree86/OS2�ǡ������ߥʥ��IEXTEN�ե饰�Υ���ץ���Ȥ�Linux
- �ʤɤȰ㤦�Τ�����)��
- ���������Ͻ�������Υѥå����������ˤ�ѥå��Ǥ������ޤ��ȸ��ä�ʷ
- �ϵ����ä��Τ򡢥��ꥸ�ʥ�Υץ������˻�������
-
-From: Tsutomu Okada (���� ��) <okada@furuno.co.jp>
-��[w3m-dev 00898][w3m-dev 00899] close_effect0 �� close_anchor0�ΥХ�������
+・[w3m-dev 00885][w3m-dev 00892] for OS/2
+ ・NetscapeやLynxのブックマークから、ローカル・ファイルにアクセスて
+ せなかったのを修正(沢田石 順さんのパッチ)。file:///D|path/file形
+ 式(Dはドライブレター)をサポート。
+ ・作業域として“/tmp”ディレクトリを決め打ちしていたのを、環境変数
+ TMPの設定を優先。(これも沢田石 順さんのパッチ)。
+ ・DOSやOS/2のコンソールで広く使われているIBM codepage 850文字集合
+ に、ISO latin-1からの変換を行い、英語版w3mでの文字化けをなくしま
+ した。
+ ・Insertキーによるメニュー呼び出しを、OS/2環境でも可能に。
+ ・xtermやkterm、rxvtなどで、画面にゴミが表示されてしまうのを対策。
+ (XFree86/OS2で、ターミナルのIEXTENフラグのインプリメントがLinux
+ などと違うのが原因)。
+ ・キー入力処理周りのパッチが、いかにもパッチでございますと言った雰
+ 囲気だったのを、オリジナルのプログラムに似せた。
+
+From: Tsutomu Okada (岡田 勉) <okada@furuno.co.jp>
+・[w3m-dev 00898][w3m-dev 00899] close_effect0 と close_anchor0のバグ修正。
From: sekita-n@hera.im.uec.ac.jp (Nobutaka SEKITANI)
-��[w3m-dev 00908] case-sensitive search�����
+・[w3m-dev 00908] case-sensitive searchの実装。
2000.6.6
From: aito
-��[w3m-dev 00826]
- ��CGI �� POST �᥽�åɤǼ��������إå��� Location: �����ä���硢������
- redirect ���줿�ڡ����� reload ����ȼ��Ԥ���Х��ν�����
- ��URL��ζ���ʸ����ä��������ɲá�
+・[w3m-dev 00826]
+ ・CGI の POST メソッドで取得したヘッダに Location: があった場合、そこで
+ redirect されたページを reload すると失敗するバグの修正。
+ ・URL中の空白文字を消す処理を追加。
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
-��[w3m-dev 00827] onA() �������Ƥ��ʤ��Х��ν�����
+・[w3m-dev 00827] onA() が効いていないバグの修正。
From: Yamate Keiichirou <yamate@ebina.hitachi.co.jp>
-��[w3m-dev 00835] frame��Υ�٥�ؤΰ�ưư��β��ɡ�
+・[w3m-dev 00835] frame内のラベルへの移動動作の改良。
2000.6.5
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
-��[w3m-dev 00789] ���ʤ�Ť��Х��Ǥ���, <li> ���������׻������äƤ�褦�Ǥ�.
-��[w3m-dev 00801] &nbsp;�Dz��Ԥ���뤳�Ȥ�����Х��ν�����
-��[w3m-dev 00813] ʸ����� > �����ޤ����ϤǤ��ʤ�����ν�����
-��[w3m-dev 00818][w3m-dev 00819] <textarea>���<xmp>,<listing>�������ޤ�
- ư���Ƥ��ʤ��Х��ν�����
-��[w3m-dev 00820] �����ǹԤ����äƤ���Ȥ�, �Ԥ�Ĺ���������� + 1 �Ǥ�����
- ����, �����꡼�󥷥եȤ��ʤ���������褦�Ǥ�.
+・[w3m-dev 00789] かなり古いバグですが, <li> タグの幅計算が狂ってるようです.
+・[w3m-dev 00801] &nbsp;で改行されることがあるバグの修正。
+・[w3m-dev 00813] 文書中の > がうまく解析できない問題の修正。
+・[w3m-dev 00818][w3m-dev 00819] <textarea>内の<xmp>,<listing>等がうまく
+ 動いていないバグの修正。
+・[w3m-dev 00820] 漢字で行が終っているとき, 行の長さが画面幅 + 1 である場合
+ 等で, スクリーンシフトしない事があるようです.
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
-��[w3m-dev 00807] table���<select>�Τʤ�<option>���и�����������
- �Х��ν�����
-��[w3m-dev 00816] <textarea>��</textarea> ��β��Ԥ�������֤�����ä�
- ���ޤ��褦�Ǥ���
+・[w3m-dev 00807] table中に<select>のない<option>が出現すると落ちる
+ バグの修正。
+・[w3m-dev 00816] <textarea>〜</textarea> 内の改行が空白に置き換わって
+ しまうようです。
-From: Tsutomu Okada (���� ��) <okada@furuno.co.jp>
-��[w3m-dev 00814] 'V' ���ޥ�ɤ�text�Ǥʤ��ե��������ꤹ��ȡ����θ�
- �����Х��ν�����
+From: Tsutomu Okada (岡田 勉) <okada@furuno.co.jp>
+・[w3m-dev 00814] 'V' コマンドでtextでないファイルを指定すると、その後
+ 落ちるバグの修正。
2000.6.1
-From: Tsutomu Okada (���� ��) <okada@furuno.co.jp>
-��[w3m-dev 00578] HTTP_HOME ���� w3m -v ��Ƚ��ν��������
- �ؤ���ѥå��Ǥ���
-��[w3m-dev 00581] BUFINFO��Ϣ�ΥХ�������
-��[w3m-dev 00641] config ��� extbrowser �����꤬ȿ�Ǥ���ʤ��Х��ν�����
-��[w3m-dev 00660] �����ץ��������Ϥ��ѥ�̾����/home/okada/.w3m//w3mv6244-0..pdf
- �Τ褦�ˤʤäƤ��ޤ��������ΤޤޤǤ�ư�������Ϥʤ��Ǥ������������Ƥߤޤ�����
-��[w3m-dev 00672] configure ��� BUFINFO �������
-��[w3m-dev 00701] [w3m-dev 00684]�β��ɡ�
+From: Tsutomu Okada (岡田 勉) <okada@furuno.co.jp>
+・[w3m-dev 00578] HTTP_HOME 等と w3m -v の判定の順序を入れ
+ 替えるパッチです。
+・[w3m-dev 00581] BUFINFO関連のバグ修正。
+・[w3m-dev 00641] config 中の extbrowser の設定が反映されないバグの修正。
+・[w3m-dev 00660] 外部プログラムに渡すパス名が、/home/okada/.w3m//w3mv6244-0..pdf
+ のようになっていました。そのままでも動作に問題はないですが、修正してみました。
+・[w3m-dev 00672] configure 中で BUFINFO を定義。
+・[w3m-dev 00701] [w3m-dev 00684]の改良。
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
-��[w3m-dev 00582]
- ��w3m -T a -B ���ǥ�����(����󥻥�)�� SEGV ���ޤ���
- ��w3m -o 1 ���� SEGV ���ޤ���
- ����󥯤������ƥ��֤ˤʤ�ʤ�����ޤ��󤫡�
- ��kterm �ǥޥ����������ޤ���
-��[w3m-dev 00584]
- ��show_params() �� sections[j].name ������ conv() ���٤��Ȼפ��ޤ���
-��[w3m-dev 00586]
- ��define CLEAR_BUF �ξ��˥Хåե�������̤ǡ�
- Currentbuf �ʳ��ΥХåե��� [0 line] ��ɽ������Ƥ��ޤ��ޤ���
-��[w3m-dev 00605]
- ��show_params() ��ɽ���β��ɡ�
- ��define CLEAR_BUF �ξ��� HTML �ʳ��� local �ե����뤬
- reload ������ source �ե����뤬�ƥ�ݥ��ե������
- �Ѥ�äƤ��ޤ��ޤ�������� 2 ���ܤ� reload �����ȡ�
- �ɤߤ�������Ʊ���ե�����˾�񤭤��Ƥ��ޤ��ޤ���
-��[w3m-dev 00606] textarea �˺ǽ餫�餢�ä�ʸ�Ϥ��ѹ���������������ȡ����ԥ�����
- �� CR �Τޤ��������Ƥ��ޤ��Х��ν�����
-��[w3m-dev 00630] �ޥ�����ɥ�å����ƥ��������뤵��������Ф�˥��������뤵�����
- ư����������ä��Τǽ������ޤ�����
-��[w3m-dev 00654] [w3m-dev 00666] CLEAR_BUF ������ˡ�FORM�Τ���ڡ�����BACK������
- FORM�����Ƥ��ä���Х��ν�����
-��[w3m-dev 00677] [w3m-dev 00704] ���ܸ쥳����Ƚ��β��ɡ�
-��[w3m-dev 00684] ���ޥ�ɥ饤������Υ����å��򾯤��������ޤ�����
-��[w3m-dev 00687] save ����ư��ˤĤ��ưʲ��ν����Ȳ��ɤ򤷤ޤ�����
- ��ftp �ΤȤ� Content-Type: application/? ���� download �ˤʤ����
- �ѥ��פؤν��Ϥ�����ʤ��ͤˤ�����
- ��save ����ե�����̾�� URL ���������query ��ʬ�ϻȤ�ʤ��ͤˤ�����
- ��URL ����ե�����̾�����ʤ��ä����ϡ�index.html ��Ȥ��褦�ˤ�����
-��[w3m-dev 00696]
- ��PIPE_SHELL('#') ���ɤ�����˥ѥ��פ��Ĥ����ʤ��ʤäƤ��ޤäƤ���
- ��READ_SHELL('@') �� PIPE_SHELL('#') �����ɤ߹�����Хåե���
- VIEW('v') �� HTML ɽ���Ǥ��ʤ��ä�
- ��mouse ���ѻ��� EXEC_SHELL('!') �η�̤�ή��Ƥ��ޤäƤ���
-��[w3m-dev 00706] CLEAR_BUF ���ˡ����� : �ǥ��󥫡��������Хåե���Ƥ�
- ɽ������ȥ��󥫡����ä��Ƥ���Х��ν�����
-��[w3m-dev 00720] dirlist.cgi �������ơ��ĥ꡼��¤�ξ���
- ���򤷤��ǥ��쥯�ȥ�ΰ��֤������ͤˤ��ޤ�����
-��[w3m-dev 00721] CLEAR_BUF �� ~/.w3m/config ���ѹ��Ǥ����ͤˤ��Ƥߤޤ�����
-��[w3m-dev 00724] -m ���ץ������ѻ��˰�ĤΥإå���ʣ���Ԥ��Ϥ��
- ��꤯�����Ƥ��ʤ��Х��ν�����
-��[w3m-dev 00728] HTTP�إå������ܸ줬���äƤ��������н衣
+・[w3m-dev 00582]
+ ・w3m -T a -B 等でセーブ(キャンセル)後 SEGV します。
+ ・w3m -o 1 等で SEGV します。
+ ・リンクがアクティブにならなくありませんか?
+ ・kterm でマウスが効きません。
+・[w3m-dev 00584]
+ ・show_params() で sections[j].name の方も conv() すべきと思います。
+・[w3m-dev 00586]
+ ・define CLEAR_BUF の場合にバッファ選択画面で、
+ Currentbuf 以外のバッファが [0 line] と表示されてしまいます。
+・[w3m-dev 00605]
+ ・show_params() の表示の改良。
+ ・define CLEAR_BUF の場合に HTML 以外の local ファイルが
+ reload されると source ファイルがテンポラリファイルに
+ 変わってしまいます。さらに 2 度目に reload されると、
+ 読みだし口と同じファイルに上書きしてしまいます。
+・[w3m-dev 00606] textarea に最初からあった文章を変更せずに送信すると、改行コード
+ が CR のまま送信してしまうバグの修正。
+・[w3m-dev 00630] マウスをドラッグしてスクロールさせる時、斜めにスクロールさせると
+ 動作がおかしかったので修正しました。
+・[w3m-dev 00654] [w3m-dev 00666] CLEAR_BUF 定義時に、FORMのあるページにBACKで戻ると
+ FORMの内容が消えるバグの修正。
+・[w3m-dev 00677] [w3m-dev 00704] 日本語コード判定の改良。
+・[w3m-dev 00684] コマンドライン引数のチェックを少し強化しました。
+・[w3m-dev 00687] save 時の動作について以下の修正と改良をしました。
+ ・ftp のとき Content-Type: application/? 等で download になる時、
+ パイプへの出力を許さない様にした。
+ ・save するファイル名を URL から取る時、query 部分は使わない様にした。
+ ・URL からファイル名が取れなかった場合は、index.html を使うようにした。
+・[w3m-dev 00696]
+ ・PIPE_SHELL('#') で読んだ時にパイプが閉じられなくなってしまっていた
+ ・READ_SHELL('@') や PIPE_SHELL('#') から読み込んだバッファを
+ VIEW('v') で HTML 表示できなかった
+ ・mouse 使用時に EXEC_SHELL('!') の結果が流れてしまっていた
+・[w3m-dev 00706] CLEAR_BUF 時に、一度 : でアンカー化したバッファを再び
+ 表示するとアンカーが消えているバグの修正。
+・[w3m-dev 00720] dirlist.cgi を修正して、ツリー構造の場合に
+ 選択したディレクトリの位置に飛ぶ様にしました。
+・[w3m-dev 00721] CLEAR_BUF を ~/.w3m/config で変更できる様にしてみました。
+・[w3m-dev 00724] -m オプション使用時に一つのヘッダが複数行に渡ると
+ 上手く扱えていないバグの修正。
+・[w3m-dev 00728] HTTPヘッダに日本語が入っていた場合の対処。
From: Yamate Keiichirou <yamate@ebina.hitachi.co.jp>
-��[w3m-dev 00589] w3m -T a -B ���ǥ�����(����󥻥�)�� SEGV ����Х��ν���
-��[w3m-dev 00595] frameset ��Ϣ�Х�����
-��[w3m-dev 00610] frameset ��Ϣ�Х�����
-��[w3m-dev 00631][w3m-dev 00633] ID_EXT��Ϣ�Х�����
-��[w3m-dev 00632] <META HTTP-EQUIV="Refresh">��URL���character entity ��
- ���ä����ΰ������ѹ���
-��[w3m-dev 00646] ����å��֥�ե����।�᡼���Τ��礣�ȼФ᲼�򥯥�å�����Τȡ�
- table��frame��frame name��ID�����Ȥ���������patch��Ĥ��ޤ���
-��[w3m-dev 00680]
-��[w3m-dev 00683] frame ��� <STRONG> �������ȤˤʤäƤ��ޤ��Х��ν�����
-��[w3m-dev 00707] frame��Ϣ�ΥХ�����
-��[w3m-dev 00774] file �� close ϳ�줬���ꡢfile��������open�Ǥ��ʤ��ʤ�Х���
- ������
+・[w3m-dev 00589] w3m -T a -B 等でセーブ(キャンセル)後 SEGV するバグの修正
+・[w3m-dev 00595] frameset 関連バグ修正
+・[w3m-dev 00610] frameset 関連バグ修正
+・[w3m-dev 00631][w3m-dev 00633] ID_EXT関連バグ修正
+・[w3m-dev 00632] <META HTTP-EQUIV="Refresh">のURL中にcharacter entity が
+ あった場合の扱いの変更。
+・[w3m-dev 00646] クリッカブルフォームイメージのちょぃと斜め下をクリックするのと、
+ table化frameにframe nameをIDタグとして埋め込むpatchをつけます。
+・[w3m-dev 00680]
+・[w3m-dev 00683] frame 中で <STRONG> がコメントになってしまうバグの修正。
+・[w3m-dev 00707] frame関連のバグ修正
+・[w3m-dev 00774] file の close 漏れがあり、fileが新たにopenできなくなるバグの
+ 修正。
From: SASAKI Takeshi <sasaki@sysrap.cs.fujitsu.co.jp>
-��[w3m-dev 00598] ID_EXT��Ϣ�Х�����
-��[w3m-dev 00700] 'o' �ǥ��ץ����������̤˹Ԥ��ȡ�ɽ���Ѵ��������ɡפ����
- EUC-JP �ˤʤäƤ��ޤ��褦�Ǥ���
+・[w3m-dev 00598] ID_EXT関連バグ修正
+・[w3m-dev 00700] 'o' でオプション設定画面に行くと「表示用漢字コード」が常に
+ EUC-JP になってしまうようです。
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
-��[w3m-dev 00602] <title>...</title>�ν������˲��̤˲��Ԥ�����Х��ν�����
-��[w3m-dev 00617] <table> ��� <blockquote>(�ޤ��� <ul>, <ol>, <dl>) ��ˤ���
- <table> ��ɽ�������������ʤ�Х��ν�����
-��[w3m-dev 00675] &nbsp; (0xa0) ��ɽ���Ǥ��ʤ�ü���ؤ��б���
-��[w3m-dev 00732] <!--comment --\n> �η��Υ����Ȥ����ޤ������Ƥ��ʤ��ä�
- �Х��ν�����
-��[w3m-dev 00750] [w3m-dev 00772] Win95��telnet���ǡ�EUC��2�Х����ܤ˥�������
- �������ʸ����������Х��ν�����
+・[w3m-dev 00602] <title>...</title>の処理時に画面に改行が入るバグの修正。
+・[w3m-dev 00617] <table> 中の <blockquote>(または <ul>, <ol>, <dl>) 中にある
+ <table> の表示がおかしくなるバグの修正。
+・[w3m-dev 00675] &nbsp; (0xa0) が表示できない端末への対応。
+・[w3m-dev 00732] <!--comment --\n> の形のコメントがうまく扱えていなかった
+ バグの修正。
+・[w3m-dev 00750] [w3m-dev 00772] Win95のtelnet等で、EUCの2バイト目にカーソル
+ がくると文字化けするバグの修正。
From: Fumitoshi UKAI <ukai@debian.or.jp>
-��[w3m-dev 00679] USE_SSL_VERIFY ���Ƥ���binary�� option �� save ����� SSL ���Ȥ�
- �ʤ��ʤ�Х��� fix ����ѥå��Ǥ���
-��[w3m-dev 00686] w3mhelperpanel.c �����
+・[w3m-dev 00679] USE_SSL_VERIFY しているbinaryで option を save すると SSL が使え
+ なくなるバグを fix するパッチです。
+・[w3m-dev 00686] w3mhelperpanel.c の修正。
From: sakane@d4.bsd.nes.nec.co.jp (Yoshinobu Sakane)
-��[w3m-dev 00692] w3m-0.1.10-pre+666 �� EWS4800 �� /usr/abiccs/bin/cc ��make��
- ��file.c������ѥ��륨�顼�Ȥʤ�ޤ�����
+・[w3m-dev 00692] w3m-0.1.10-pre+666 を EWS4800 の /usr/abiccs/bin/cc でmake時
+ にfile.cがコンパイルエラーとなりました。
From: Hiroshi Kawashima <kei@arch.sony.co.jp>
-��[w3m-dev 00742] w3m-0.1.9 �� mipsel �������ƥ������ư����뤿���
- �ѥå���������ޤ����Τǡ��ݥ��Ȥ����Ƥ��������ޤ���(�ѹ����� gc ���
- �Ǥ���)
+・[w3m-dev 00742] w3m-0.1.9 を mipsel アーキテクチャで動作させるための
+ パッチを作成しましたので、ポストさせていただきます。(変更点は gc 回り
+ です。)
2000.5.17
From: Hiroaki Shimotsu <shim@d5.bs1.fc.nec.co.jp>
-��[w3m-dev 00543] personal_document_root�������ʤ��ʤäƤ���Х��ν�����
-��[w3m-dev 00544] local �� <a href="foo/">foo/</a> �Τ褦�� anchor ��é��Ȥ�
- foo �� index.html �Τ褦�� file ��¸�ߤ����顢
- dirlist ������ˤ������ɽ������ patch ��������ޤ�����
- option �Ǥ��� file ̾����ꤷ�ޤ���(��Ĥ���)
- ���� document_root ��Ÿ������褦�ˤ��ޤ�����
+・[w3m-dev 00543] personal_document_rootが効かなくなっているバグの修正。
+・[w3m-dev 00544] local で <a href="foo/">foo/</a> のような anchor を辿るとき
+ foo に index.html のような file が存在したら、
+ dirlist の代わりにそちらを表示する patch を作成しました。
+ option でその file 名を指定します。(一個だけ)
+ あと document_root を展開するようにしました。
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
-��[w3m-dev 00545] w3m -num < file ���ͤ� -num ���ץ�����ɸ������(�ѥ���)��
- ���˻Ȥä����� 'v'(view HTML) �ǹ��ֹ�ޤǤ����������
- ���ޤ��Х��������ޤ�����
-��[w3m-dev 00557] -dump ������˰���ե����뤬�ä��ʤ��Х��ν�����
+・[w3m-dev 00545] w3m -num < file の様に -num オプションを標準入力(パイプ)と
+ 共に使った時に 'v'(view HTML) で行番号までも整形されて
+ しまうバグを修正しました。
+・[w3m-dev 00557] -dump 指定時に一時ファイルが消えないバグの修正。
From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
-��[w3m-dev 00568] <table>��ǡ�<tr>..</tr>�γ���<blockquote>�������
- ɽ�����������ν�����
+・[w3m-dev 00568] <table>中で、<tr>..</tr>の外に<blockquote>があると
+ 表が崩れる問題の修正。
2000.5.16
From: Yamate Keiichirou <yamate@ebina.hitachi.co.jp>
-��[w3m-dev 00487] termcap��sr��̵���Ф����������ư���褦���ɡ�
-��[w3m-dev 00512][w3m-dev 00514][w3m-dev 00515] ����������Ƚ��β��ɡ�
-��[w3m-dev 00530] w3m�� <ISINDEX> ��Ȥä�cgi�򤦤ޤ������Ǥ��ʤ��Τ�
- ���Ȥ�����patch�Ǥ���
-��[w3m-dev 00537] URL��β��Ԥ�����褦�˲��ɡ�
-��[w3m-dev 00542] ��HTML�����¿��frameset�ΰ����Ρ�¾��HTML��frameset�ˤ�
- ���񤭡פ��б���
+・[w3m-dev 00487] termcapにsrが無いばあいに正常に動くよう改良。
+・[w3m-dev 00512][w3m-dev 00514][w3m-dev 00515] 漢字コード判定の改良。
+・[w3m-dev 00530] w3mが <ISINDEX> を使ったcgiをうまく処理できないのを
+ 何とかするpatchです。
+・[w3m-dev 00537] URL中の改行を除くように改良。
+・[w3m-dev 00542] 「HTMLの中の多重framesetの一部の、他のHTMLのframesetによ
+ る上書き」に対応。
From: SASAKI Takeshi <sasaki@ct.sakura.ne.jp>
-��[w3m-dev 00488] id°���Υ��ݡ��Ȥ��Դ����Ǥ��ä�����ν�����
-��[w3m-dev 00497] configure �� IPv6�δĶ���ư���Ф���褦�˲��ɡ�
+・[w3m-dev 00488] id属性のサポートが不完全であった問題の修正。
+・[w3m-dev 00497] configure で IPv6の環境を自動検出するように改良。
From: Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
-��[w3m-dev 00489]
- �� USE_GPM��USE_SYSMOUSE���������ʤ��Ķ����ȡ� USE_MOUSE���������
- �Ƥ��Ƥ���{k,x}term��Ǥ⡢�ޥ������Ȥ��ʤ���
- �� SSL�Υ��饤�����ǧ�ڤ��׵᤹��ڡ��������ޤä���ɽ������ʤ���
- �� -o ���ץ����Υѥ�᡼��������ɽ�������륪�ץ������ɲá�
-��[w3m-dev 00519] I ���ޥ�ɤ˴ؤ��륻�����ƥ��ۡ���ν�����
+・[w3m-dev 00489]
+ ・ USE_GPMもUSE_SYSMOUSEも定義されない環境だと、 USE_MOUSEが定義され
+ ていてかつ{k,x}term上でも、マウスが使えない。
+ ・ SSLのクライアント認証を要求するページが、まったく表示されない。
+ ・ -o オプションのパラメータ一覧を表示させるオプションを追加。
+・[w3m-dev 00519] I コマンドに関するセキュリティホールの修正。
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
-��[w3m-dev 00498] �ե�����̾�䴰�ǡ� / (root)����ξ�����֤Ǥ��ʤ��ʤä�
- �����Х��ν�����
-��[w3m-dev 00508] ���λ��꤬����ʤ��ʤäƤ����Х��ν�����
-��[w3m-dev 00518] I ���ޥ�ɤ˴ؤ��륻�����ƥ��ۡ���ν�����
-��[w3m-dev 00535] �ޥ�����GPM/SYSMOUSE�б��ΥХ�������
+・[w3m-dev 00498] ファイル名補完で、 / (root)からの場合に補間できなくなって
+ いたバグの修正。
+・[w3m-dev 00508] 色の指定が出来なくなっていたバグの修正。
+・[w3m-dev 00518] I コマンドに関するセキュリティホールの修正。
+・[w3m-dev 00535] マウスのGPM/SYSMOUSE対応のバグ修正。
From: Kazuhiro Nishiyama <nishiyama@mx1.tiki.ne.jp>
-��[w3m-dev 00503] cygwin��$extension�����������ꤵ��Ƥ��ʤ��ä��Τ�
- �ʤ����Ƥߤޤ������Ĥ��Ǥˤ�������Who are you?�ä�ʹ�����Τ⽤����
- �Ƥߤޤ�����
+・[w3m-dev 00503] cygwinで$extensionがちゃんと設定されていなかったので
+ なおしてみました。ついでにいちいちWho are you?って聞かれるのも修正し
+ てみました。
From: Hiroaki Shimotsu <shim@nw.bs1.fc.nec.co.jp>
-��[w3m-dev 00516] form��ʸ�������������Ȥ��ˡ�safe��ʸ���򥨥�������
- ���ʤ��褦�ˤ�����
+・[w3m-dev 00516] formに文字列を送信するときに、safeな文字をエスケープ
+ しないようにした。
-From: Tsutomu Okada (���� ��) <okada@furuno.co.jp>
-��[w3m-dev 00471] ���̤κǽ�˥�󥯤�����ڡ�����ɽ���������Ȥ��ˡ����
- ���������ƥ��֤ˤʤ�ʤ����Ȥ�����Τ�������ѥå��Ǥ���
+From: Tsutomu Okada (岡田 勉) <okada@furuno.co.jp>
+・[w3m-dev 00471] 画面の最初にリンクがあるページを表示させたときに、リン
+ クがアクティブにならないことがあるのを修正するパッチです。
From: Fumitoshi UKAI <ukai@debian.or.jp>
-��[w3m-dev 00539] proxy�ν������ΥХ�������
+・[w3m-dev 00539] proxyの初期設定のバグ修正。
2000.4.24
From: aito
-�������Ƥ��ʤ��Хåե��ϥ��꤫��������褦�ˤ��Ƥߤ���
-��file:// �����ǥ�������ե�����˥����������Ƽ��Ԥ�����硢
- http:// �����ʤ��褦�ˤ�����
-��GPM�ޤ���SYSMOUSE��ȤäƤ��ʤ��ȡ�xterm/kterm��ǥޥ�����
- �����ʤ��Х��ν�����
+・見えていないバッファはメモりから削除するようにしてみた。
+・file:// 形式でローカルファイルにアクセスして失敗した場合、
+ http:// を補わないようにした。
+・GPMまたはSYSMOUSEを使っていないと、xterm/kterm上でマウスが
+ 効かないバグの修正。
From: rubikitch <rubikitch@ruby-lang.org>
-��Buffer �� URL ��ե�����˥����֤��뵡ǽ�ɲá�
+・Buffer の URL をファイルにセーブする機能追加。
From: Yamate Keiichirou <yamate@ebina.hitachi.co.jp>
-��FTP proxy�������ʤ��ʤäƤ����Х��ν�����
-��C comment cleanup.
-�����̥��������ѹ�����ȡ�����Υ������Ϥ��Ȥ� reshapeBuffer()
- ���ƤФ�Ƥ����Х��ν�����
+・FTP proxyが効かなくなっていたバグの修正。
+・C comment cleanup.
+・画面サイズを変更すると、1回のキー入力ごとに reshapeBuffer()
+ が呼ばれていたバグの修正。
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
-��gc �� /usr/local �ʲ��ˤ���� configure ��
- found -> dones't seem to work �Ȥʤ��礬����ޤ���
-��w3m -v �Ȥ��� W3M HomePage �����ܤ��Ȥ���Ȥ����ޤ�����
-��ISO-8859-1 �Ρءߡ٤ȡء�٤Υ����ɤ��ְ�äƤ��ޤ�����
- �� LANG == EN �λ� 0x80-0x9F ��ɽ�����ʤ��ͤˤʤäƤ��ޤ���
- �� ISO-8859-* �ʳ��� CP??? �� Big5 �ǻȤäƤ���ͤ����뤫�⡣
-��file://host �η����λ� file:/ �򥢥��������Ƥ����Τ�
- file://host/ ��Ʊ�ͤ� ftp://host/ �򥢥����������ͤ˽�����
- (���ʬ����ȴ����Ǥ���)��
- �ʤ���file://user@host/hoge �� file:/hoge �򥢥���������ΤǤ�����
- ���Τ虜�虜������������ʬ�Ǥ�פ��Ф��ʤ��ΤǤ��Τޤޤˤ��Ƥ����ޤ���
- (1999/08/31 �Ǥؤ� patch ���ä�)
+・gc が /usr/local 以下にあると configure で
+ found -> dones't seem to work となる場合があります。
+・w3m -v として W3M HomePage に飛ぼうとするとこけました。
+・ISO-8859-1 の『×』と『÷』のコードが間違っていました。
+ # LANG == EN の時 0x80-0x9F を表示しない様になっていますが
+ # ISO-8859-* 以外の CP??? や Big5 で使っている人が困るかも。
+・file://host の形式の時 file:/ をアクセスしていたのを、
+ file://host/ と同様に ftp://host/ をアクセスする様に修正。
+ (場合分けの抜かりでした)。
+ なお、file://user@host/hoge は file:/hoge をアクセスするのですが、
+ 何故わざわざこうしたか自分でも思い出せないのでそのままにしておきます。
+ (1999/08/31 版への patch だった)
2000.4.21
From: Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
- �� ƿ̾FTP���������ѥѥ���ɤ�ʸ����@�פǽ���äƤ����硢 FTP�����Ф�
- ����³�˻Ȥ��륽���åȤ���FQDN����ơ��ѥ���ɤ��ɲä��롣
- �� ���ץ���������򡢡�--���ץ����̾=�͡פȤ������ǡ����ޥ�ɥ饤�󤫤�
- ��ǽ�ˤ��롣
- �� news URI�ǵ������������ݤˡ��Ķ��ѿ�NNTPMODE���ͤ���ʸ����ǤϤʤ���
- ���������ͤ�����Ȥ��ơ�mode�ץ��ޥ�ɤ��������롣
- �� SSL��Ϣ�ΰʲ��Υ��ץ������ɲá�
+ ・ 匿名FTPログイン用パスワードが文字「@」で終わっている場合、 FTPサーバと
+ の接続に使われるソケットからFQDNを求めて、パスワードに追加する。
+ ・ オプションの設定を、「--オプション名=値」という形で、コマンドラインから
+ 可能にする。
+ ・ news URIで記事を取得する際に、環境変数NNTPMODEの値が空文字列ではないと
+ き、その値を引数として「mode」コマンドを投入する。
+ ・ SSL関連の以下のオプションを追加。
ssl_verify_server ON/OFF
- SSL�Υ�����ǧ�ڤ�Ԥ�(�ǥե���Ȥ�OFF)��
- ssl_cert_file �ե�����̾
- SSL�Υ��饤�������PEM����������ե�����(�ǥե���Ȥ�<NULL>)��
- ssl_key_file �ե�����̾
- SSL�Υ��饤�������PEM������̩���ե�����(�ǥե���Ȥ�<NULL>)��
- ssl_ca_path �ǥ��쥯�ȥ�̾
- SSL��ǧ�ڶɤ�PEM���������񷲤Τ���ǥ��쥯�ȥ�ؤΥѥ�(�ǥե���Ȥ�<NULL>)
- ��
- ssl_ca_file �ե�����̾
- SSL��ǧ�ڶɤ�PEM���������񷲤Υե�����(�ǥե���Ȥ�<NULL>)��
- ��������SSLEAY_VERSION_NUMBER >= 0x0800�פʴĶ��Ǥʤ���̵�̤ʥ����ɤ���
- ��������ʤΤǡ� configure����disable���Ƥ������ۤ����褤�Ǥ��礦��
-
- �ޤ��ºݤ�ǧ�ڤ�Ԥ���硢 ssl_ca_path�ޤ���ssl_ca_file�ǡ������Фθ���
- ��̾���Ƥ���ǧ�ڶɤξ������ (ssl_verify_server��ON/OFF�˴ط�̵��) ����
- ���ʤ���ǧ�ڤ��������ʤ��褦�Ǥ���
+ SSLのサーバ認証を行う(デフォルトはOFF)。
+ ssl_cert_file ファイル名
+ SSLのクライアント用PEM形式証明書ファイル(デフォルトは<NULL>)。
+ ssl_key_file ファイル名
+ SSLのクライアント用PEM形式秘密鍵ファイル(デフォルトは<NULL>)。
+ ssl_ca_path ディレクトリ名
+ SSLの認証局のPEM形式証明書群のあるディレクトリへのパス(デフォルトは<NULL>)
+ 。
+ ssl_ca_file ファイル名
+ SSLの認証局のPEM形式証明書群のファイル(デフォルトは<NULL>)。
+ ただし「SSLEAY_VERSION_NUMBER >= 0x0800」な環境でないと無駄なコードが増
+ えるだけなので、 configure時にdisableしておいたほうがよいでしょう。
+
+ また実際に認証を行う場合、 ssl_ca_pathまたはssl_ca_fileで、サーバの鍵に
+ 署名している認証局の証明書を (ssl_verify_serverのON/OFFに関係無く) 指定
+ しないと認証が成功しないようです。
From: aito
-���������л��ꤵ��Ƥ���ɽ������ҤˤʤꡢCOLSPAN��2�ʾ��
- ����COLSPAN���꤬�����ʤ��Х��ν�����
-��configure�˥��ץ������ɲá�
-��local file����Υ�󥯻��Ȥ� Referer: ���դ��Ƥ����Х��ν�����
+・幅の相対指定されている表が入れ子になり、COLSPANが2以上の
+ 場合にCOLSPAN指定が効かないバグの修正。
+・configureにオプションを追加。
+・local fileからのリンク参照に Referer: が付いていたバグの修正。
From: Rogue Metal - Jake Moorman <roguemtl@stampede.org>
- All T/NILs are replaced with TRUE/FALSE.
- Messages are added for FTP connection.
-From: Tsutomu Okada (���� ��) <okada@furuno.co.jp>
-������������DEL�򲡤��������Х��ν�����
-�������Ƚ����ΥХ�������
+From: Tsutomu Okada (岡田 勉) <okada@furuno.co.jp>
+・一行入力中にDELを押すと落ちるバグの修正。
+・コメント処理のバグ修正。
From: Yamate Keiichirou <yamate@ebina.hitachi.co.jp>
-��FTP_proxy ������ˡ�proxy��ǧ�ڤ��׵᤹������н衣
+・FTP_proxy 設定時に、proxyが認証を要求する場合の対処。
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
-��<input_alt fid=0>��w3m�������Х��ν�����
+・<input_alt fid=0>でw3mが落ちるバグの修正。
2000.4.7
From: aito
-��<select>���Ф���</select>��̵���ȥ�������פ���Х��ν�����
-��#ifdef USE_GPM, #ifdef USE_SYSMOUSE �� #ifdef MOUSE ��
- �Ϥޤ�Ƥ��ʤ��ä��Х��ν�����
+・<select>に対して</select>が無いとコアダンプするバグの修正。
+・#ifdef USE_GPM, #ifdef USE_SYSMOUSE が #ifdef MOUSE で
+ 囲まれていなかったバグの修正。
-From: Tsutomu Okada (���� ��) <okada@furuno.co.jp>
-����������ե�����ؤΥ�󥯤򤿤ɤ�ȥ�������פ���Х���
- ������
-�����Խ���DEL��Ȥ��������Х��ν�����
+From: Tsutomu Okada (岡田 勉) <okada@furuno.co.jp>
+・ローカルファイルへのリンクをたどるとコアダンプするバグの
+ 修正。
+・行編集でDELを使うと落ちるバグの修正。
From: Shin HATTORI <mituzi@he.mirai.ne.jp>
-��bzip2 ���ݡ��ȤΥХ�������
+・bzip2 サポートのバグ修正。
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
-��-dump, -dump_head, -dump_source ���ץ���󤬶��礷�Ƥ���
- �Х��ν�����
-��-o���ץ������ɲá�
-��-dump ���ץ�����Ȥ��ȥ�������פ���Х��ν�����
-����å�������ɽ����˥ޥ����������ʤ��ʤ�Х��ν�����
-��������ɥ��������ѹ������ޤ������ʤ��ä��Х��ν�����
-����λ���γ�ǧ�Υǥե���Ȥ� n ���ѹ���
-��term.c �Ǥ� ScreenImage �γ��ݤ�ưŪ�ˤ�����
+・-dump, -dump_head, -dump_source オプションが競合している
+ バグの修正。
+・-oオプションを追加。
+・-dump オプションを使うとコアダンプするバグの修正。
+・メッセージの表示中にマウスがきかなくなるバグの修正。
+・ウィンドウサイズ変更がうまくいかなかったバグの修正。
+・終了時の確認のデフォルトを n に変更。
+・term.c での ScreenImage の確保を動的にした。
From: Sven Mascheck <mascheck@faw.uni-ulm.de>
* There are websites using (unprintable) special characters (eg '0x96')
@@ -1946,40 +1946,40 @@ From: lars brinkhoff <lars@nocrew.org>
ARM linux patch.
From: Hiroaki Shimotsu <shim@nw.bs1.fc.nec.co.jp>
-'u'���ޥ�ɤǡ�form�μ��बɽ�������褦�˲��ɡ�
+'u'コマンドで、formの種類が表示されるように改良。
From: patakuti
-o Cygwin �Ǥ� snprintf ���ʤ��ƥ���ѥ���Ǥ��ʤ��ä��Τǽ���
-o text/html �ʳ��Υɥ�����Ȥ� -dump ���褦�Ȥ�������
- ��ư�����������ä��Τǽ���
-o ��������ե�����Υե�����γ�ĥ�Ҥ� mime-type ���б���
- �ե�����˵��ҤǤ���褦�ˤ��� (¿ʬ ftp �Ǥ� Ʊ��)
+o Cygwin では snprintf がなくてコンパイルできなかったので修正
+o text/html 以外のドキュメントを -dump しようとした場合の
+ 挙動がおかしかったので修正
+o ローカルファイルのファイルの拡張子と mime-type の対応を
+ ファイルに記述できるようにした (多分 ftp でも 同様)
2000.4.5
-From: ���� <hsaka@mth.biglobe.ne.jp>
-��'U'���ޥ�ɤǡ����ߤΥХåե���URL���ҥ��ȥ����Ƭ�����褦�ˤ�����
-��table ��� <h1>��<h1> ��������������������ʤ�ޤ���
- �ºݤˤ� frame �Ǥ��������ʤ뤳�Ȥ����ꤽ���Ǥ���
-��table ��˳��ϥ����Τʤ� </ol>,</ul>,</dl>,</blockquote> ������ȡ�
- table ������ޤ���(����� HTML ������������ΤǤ���)
+From: 坂本 <hsaka@mth.biglobe.ne.jp>
+・'U'コマンドで、現在のバッファのURLがヒストリの先頭に来るようにした。
+・table 中に <h1>〜<h1> があると幅がおかしくなります。
+ 実際には frame でおかしくなることがありそうです。
+・table 中に開始タグのない </ol>,</ul>,</dl>,</blockquote> があると、
+ table が崩れます。(こんな HTML を書く方が悪いのですが)
From: "Shin'ya Kumabuchi" <kumabu@t3.rim.or.jp>
-���̾�Υ����ɻ��� Pragma: no-cache ��Ф����Ȥ�����Х��ν�����
+・通常のロード時に Pragma: no-cache を出すことがあるバグの修正。
From: Tomoyuki Kosimizu <greentea@fa2.so-net.ne.jp>
-w3m-0.1.6��rc.c�Ǻ��٤�����򸫤Ĥ��ޤ����Τ���𤤤����ޤ���
+w3m-0.1.6のrc.cで些細な問題を見つけましたので報告いたします。
2000.3.29
-From: Altair�� <NBG01720@nifty.ne.jp>
+From: Altair☆ <NBG01720@nifty.ne.jp>
-OS/2�������
-���������롦�ե�����Υ����ץ�˼��Ԥ�������http://���ꤷ�ƥ��
- �饤�����뤳�Ȥǡ����줬�ǥ��쥯�ȥ���ä�����dirlist.cgi���Ƥ�
- �Ф����㤨�ʤ����Ȥ�����Τ��к���(url.c�θ�Ⱦ)
-����X��OS/2�Ķ��Ǥ��������������褦�ˤ���
-�������ץ�����ब���ޤ��ƤӽФ���ʤ��ä��Τ���
-���ե����롦���������ǥɥ饤�֡��쥿����ͭ���ˤ���
+OS/2対応強化。
+・ローカル・ファイルのオープンに失敗した時、http://を仮定してリト
+ ライさせることで、それがディレクトリだった時にdirlist.cgiが呼び
+ 出して貰えないことがあるのを対策。(url.cの後半)
+・非XのOS/2環境でも矢印キーを効くようにする
+・外部プログラムがうまく呼び出されなかったのを修正
+・ファイル・アクセスでドライブ・レターを有効にする
From: David Leonard <leonard@csee.uq.edu.au>
after filling in a simple form
@@ -2005,37 +2005,37 @@ element is not wrapped. I have verified that the bug exists in w3m
finished compiling it.
From: aito
-<select> �ʤ��� <option> ���и������ core dump ����Х��ν�����
-�ɥ�����Ȥ���Ƭ�� <blockquote> �����ȡ���Ƭ�Ԥ�����ǥ��
-����ʤ��Х��ν�����
-application/x-bzip �����
-mktable, w3mbookmark, w3mhelperpanel �� GC �ν�������Ǥ��ʤ�
-���Ȥ�����Х��ν�����
-�ޥ����Υɥ�å�ư��岼�Ⱥ����ǰ�������ʤ��ä��Х��ν�����
+<select> なしで <option> が出現すると core dump するバグの修正.
+ドキュメントの先頭に <blockquote> が来ると,先頭行がインデント
+されないバグの修正.
+application/x-bzip に対応.
+mktable, w3mbookmark, w3mhelperpanel で GC の初期化ができない
+ことがあるバグの修正.
+マウスのドラッグ動作が上下と左右で一貫性がなかったバグの修正.
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
-�����Υ����Ǥʤ� <...>��Ȥ��ȵ�ư�������������Ȥ�����Х��ν�����
-quoteShell() �Υ������ƥ��ۡ���ν�����
-set_environ() �����core dump ���뤳�Ȥ�����Х��ν�����
-<table width="xxx%"> ��ɽ�������ޤ������ʤ��ä��Х��ν�����
-'!' �ǥ��ޥ�ɤ�¹Ԥ����Ȥ��˲��̤�����Х��ν�����
+正規のタグでない <...>を使うと挙動がおかしいことがあるバグの修正.
+quoteShell() のセキュリティホールの修正.
+set_environ() の中でcore dump することがあるバグの修正.
+<table width="xxx%"> の表示がうまくいかなかったバグの修正.
+'!' でコマンドを実行したときに画面が乱れるバグの修正.
From: Fumitoshi UKAI <ukai@debian.or.jp>
-�Ƽ����ե�����Υѥ��� // ���ޤޤ��Х��ν�����
-0.1.7 �� https ���Ȥ��ʤ��ʤäƤ���Х��ν�����
+各種一時ファイルのパスに // が含まれるバグの修正.
+0.1.7 で https が使えなくなっているバグの修正.
From: Hiroaki Shimotsu <shim@nw.bs1.fc.nec.co.jp>
-proxy �����ꤷ�Ƥ��ơ���������³�Ǥ��ʤ��ä����ϥ��顼�ˤʤ�
-�褦�˽�����
-w3m ��ľ�ܰ����Ȥ���Ϳ���� URL ���� 'U' ���ޥ�ɤ����������ʤ�
-�Х��ν�����
+proxy を設定していて,そこに接続できなかった場合はエラーになる
+ように修正.
+w3m に直接引数として与えた URL が, 'U' コマンドの履歴に入らない
+バグの修正.
From: sasaki@ct.sakura.ne.jp
-HTML4.0 �� ID °�����󥯤�é���褦�ˤ��Ƥߤޤ�����
+HTML4.0 の ID 属性をリンクで辿れるようにしてみました。
From: Okabe Katsuya <okabe@fphy.hep.okayama-u.ac.jp>
-table ����� <input type=hidden> �ʤɤ������ɽ�������Х���
-������
+table の中に <input type=hidden> などがあると表が崩れるバグの
+修正.
2000.2.12
From: Rogue Metal - Jake Moorman <roguemtl@stampede.org>
@@ -2061,107 +2061,107 @@ From: Rogue Metal - Jake Moorman <roguemtl@stampede.org>
2000.1.28
From: aito
-mySystem() ���ѹ��������� fork/execvp ����ΤǤϤʤ��ơ�shell��
-�ü�ʸ���򥨥������פ��Ƥ��� system() ��Ȥ��褦�ˤ��Ƥߤ���
+mySystem() を変更.自前で fork/execvp するのではなくて,shellの
+特殊文字をエスケープしてから system() を使うようにしてみた.
From: SASAKI Takeshi <sasaki@ct.sakura.ne.jp>
-w3mbookmark �β��ɡ�
-1. �������Ͽ�Ǥ������Ϻ���ư��
-2. ��Ͽ�Ǥ��ʤ�������Ͽ�ѥͥ�����
+w3mbookmark の改良.
+1. 正常に登録できた場合は今の動作
+2. 登録できない場合は登録パネルに戻る
From: Yamate Keiichirou <yamate@ebina.hitachi.co.jp>
- frameɽ��buffer����buffer����ʤ�(����������ɤޤ��ϥץ�����൯
- ư)���ˡ�"Can't �ʤ�Ȥ�"�Ȥ���frame�Τ���buffer���Ǥ��롣reload��
- ��ȡ��⤦���٥���������ɤ��Ƥ���
-��ľ���ޤ�����frameset�ϡ����ΤȤ���8���ܤ��ᤦ�����ڤäƤ��ޤ���
-��������餺w3m-0.1.6����Υѥå��Ǥ������ΤȤ����������Զ�礬���뤳
-�Ȥ��狼�äƤ��ޤ���
- "q" �����ェλ���Ƥ�����Υ���å���ե����뤬�Ĥ뤳�Ȥ�����
- �⤷��������target�ʳ���frame���񤭤��뤫�⤷��ʤ�
- frame���meta��http-equiv="refresh"��ɽ�����ʤ��Τǡ����˺���ڡ�
- ��������
+ frame表示bufferからbufferを作らない(ダウンロードまたはプログラム起
+ 動)場合に、"Can't なんとか"というframeのあるbufferができる。reloadす
+ ると、もう一度ダウンロードしてくる
+を直しました。framesetは、今のところ8重目きめうちで切っています。
+あいかわらずw3m-0.1.6からのパッチです。今のところ、下の不具合があるこ
+とがわかっています。
+ "q" で正常終了しても一部のキャッシュファイルが残ることがある
+ もしかしたらtarget以外のframeも上書きするかもしれない
+ frame内のmetaのhttp-equiv="refresh"を表示しないので、稀に困るペー
+ ジがある
From: aito
-GlobalKeymap[] ¾�Υ����ޥåפ�w3mFuncList[] ��ź����������ѹ���
-gopher:, news: �ؤΥ��������򥪥ץ����ˤ�����
-searchForward, searchBackward �ΥХ�������
-system()�����Ѥ���褦�� mySystem() ���ѹ���
-FORMAT_NICE ��ǥե���Ȥ� off �Ȥ���褦�ѹ���
+GlobalKeymap[] 他のキーマップを,w3mFuncList[] の添字の配列に変更.
+gopher:, news: へのアクセスをオプションにした.
+searchForward, searchBackward のバグ修正.
+system()を利用するように mySystem() を変更.
+FORMAT_NICE をデフォルトで off とするよう変更.
From: IIMURA Takuji <uirou@din.or.jp>
- ��background image �ʳ��ˡ�
+ ・background image 以外に、
APPLET ARCHIVE=""
EMBED SRC=""
- ����Ĥؤ� link ����褦�ˤ��ޤ�����
- �ʤΤǡ�#ifdef BACKGROUND_IMAGE_DISPLAY ���顢
- #ifdef VIEW_UNSEENOBJECTS ��̾�����Ѥ��ޤ�����
- ��'o' �dz������ץ�����˥塼��
- �ָ������򤵤�Ƥ����󥯤ο�����ꤹ��פ�Ȥä� ON/OFF �����褦�ˤ��ޤ�����
- cookie �ط��ǡ�
- �֥��å�������Ѥ���� ON/OFF ��¾�ˡ�
- �֥��å���������դ���� ON/OFF ��Ĥ��ޤ�����
- ����ǡ����˼����դ��� cookie ����������ǡ�
- ������ cookie �Ͽ��٤ʤ� mode �˽���ޤ���
+ の二つへも link を作るようにしました。
+ なので、#ifdef BACKGROUND_IMAGE_DISPLAY から、
+ #ifdef VIEW_UNSEENOBJECTS へ名前を変えました。
+ ・'o' で開くオプションメニューで
+ 「現在選択されているリンクの色を指定する」を使って ON/OFF 出来るようにしました。
+ cookie 関係で、
+ 「クッキーを使用する」 ON/OFF の他に、
+ 「クッキーを受け付ける」 ON/OFF もつけました。
+ これで、既に受け付けた cookie を送るだけで、
+ 新しい cookie は食べない mode に出来ます。
From: Christian Weisgerber <w3m-dev-en@mips.rhein-neckar.de>
FreeBSD sysmouse support.
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
--B -dump �ʤɤ������Х��ν����ȴ�Ϣư��������Ǥ���
-������
- ������ URL(�ե�����̾)��̵����硢������쥯��(< file)���ѥ���
- �� -B(�֥å��ޡ���) �� HTTP_HOME �� WWW_HOME �� -v ���ץ����
- �ν�˻�Ʋ���ʤ���� usage() �ǽ�λ��
- ��������С������ -dump ��ե졼��ɽ������ URL ��Ʊ���˰����ޤ���
- �� �����������ɤⶦ�̲����Ƥ��ޤ���
-������
- ������쥯��(> file )��ѥ��פξ�硢-halfdump, -dump_source,
- -dump_head �Ǥʤ���С�-dump ���ꤹ���ͤˤ��ޤ�����
- w3m file.html > file.txt �ǥե����ޥå��ˤʤ�ޤ���
- �� �������Ѵ��ġ���Ȥ⤹�뤿�� i18n �Ǥ⤳�����Ƥޤ���
+-B -dump などで落ちるバグの修正と関連動作の整理です。
+・入力
+ 引数に URL(ファイル名)が無い場合、リダイレクト(< file)かパイプ
+ → -B(ブックマーク) → HTTP_HOME → WWW_HOME → -v オプション
+ の順に試して何もなければ usage() で終了。
+ 何かあれば、それを -dump やフレーム表示等も URL と同等に扱います。
+ # ソースコードも共通化しています。
+・出力
+ リダイレクト(> file )やパイプの場合、-halfdump, -dump_source,
+ -dump_head でなければ、-dump を仮定する様にしました。
+ w3m file.html > file.txt でフォーマッタになります。
+ # コード変換ツールともするため i18n でもこうしてます。
2000.1.27
From: aito
-* FORMAT_NICE�����������硤<UL><LI>...</UL>��ɽ�������������ʤ�
- �Х��ν�����
-* pq.c, pq.h ������PQ_xxx �Τ��������� qsort ��Ȥ��褦�ˤ�����
-* �ǥ��쥯�ȥ�ꥹ�Ȥ�ɽ���Ǥ��ʤ��Х��ν�����
+* FORMAT_NICEを定義した場合,<UL><LI>...</UL>の表示がおかしくなる
+ バグの修正.
+* pq.c, pq.h を削除.PQ_xxx のかわりに全て qsort を使うようにした.
+* ディレクトリリストが表示できないバグの修正.
2000.1.25
From: Fumitoshi UKAI <ukai@debian.or.jp>
-mailto: �ǡ�mail��Ф������ C-c �� intr ������� segfault�����
-�����Х��Ǥ������Υѥå��Ǥʤ���ޤ�������
+mailto: で、mailを出す途中に C-c で intr かけると segfaultすると
+いうバグです。このパッチでなおりましたが…
From: Yamate Keiichirou <yamate@ebina.hitachi.co.jp>
- * fm.h, frame.c, map.c, buffer.c, file.c, main.c: frameset����
- �������back���Ǥ���褦�ˡ�Buffer��������frameset�򥹥��å���
- ���ƻ��Ĥ褦���ѹ���Buffer select�Τ褦��Ǥ�դλ�������ꤹ��
- �Τ��񤷤��äݤ��Ǥ�
+ * fm.h, frame.c, map.c, buffer.c, file.c, main.c: framesetの変
+ 更履歴のbackができるように、Bufferの内部でframesetをスタックに
+ して持つように変更。Buffer selectのように任意の時点を指定する
+ のは難しいっぽいです
- * rc.c, main.c, frame.c: default target��_self���ѹ���ȼ�äơ�
- bufferA(target���ɤ�ʤ������������Ф����̤�)���ɲä�����
- �ɡ�keybind�ˤ���Ͽ����
+ * rc.c, main.c, frame.c: default targetを_selfに変更。伴って、
+ bufferA(targetを追わない。今かいたばかりで未試験)を追加したけ
+ ど、keybindには登録せず
- * main.c (reload): frame�Ǥ�reload��ư���frameset��̤��
- frame�Τ�reload���ѹ���frame�δݤ���reload��F->R->F�ǤǤ��롢
- �Ϥ�
+ * main.c (reload): frameでのreloadの動作を、frameset中未読
+ frameのみreloadに変更。frameの丸ごとreloadはF->R->Fでできる、
+ はず
- * frame.c (newFrameSet): frame����table�β�����Ĥ�����ʬ�ǡ�
- �����󥿤����¤򴪰㤤���Ƥ����Τ���
+ * frame.c (newFrameSet): frameからtableの横幅をつくる部分で、
+ カウンタと総和を勘違いしていたのを修正
- * frame.c (createFrameFile): frame���table stack��under flow
- ����ޤ��ơ�table��td��th��tr�������ɬ�פ˱���ɽ�����ʤ��褦
- ���ѹ����Ĥ��Ǥ�overflow�ΤȤ��ˤϡ��ե�����κǸ��ɬ�פʿ���
- ��/table������褦�ˤʤäƤ���Ϥ�
+ * frame.c (createFrameFile): frame中でtable stackのunder flow
+ を捕まえて、table、td、th、trあたりを必要に応じ表示しないよう
+ に変更。ついでにoverflowのときには、ファイルの最後に必要な数だ
+ け/tableが入るようになっているはず
- * html.h, url.c, file.c, menu.c, frame.c: ���֥������Ȥ���ޤ�
- �� (retrieve scheme��������)�����char *url -> parse?URL()
+ * html.h, url.c, file.c, menu.c, frame.c: オブジェクトの捕まえ
+ 方 (retrieve schemeだろうか)の流れを、char *url -> parse?URL()
-> parsedURL.scheme -> openURL() -> URLFile.scheme ->
- loadGeneralFile() -> Buffer.real_scheme �Ȳ��ꤷ�ơ�openURL()
- �ˤ�url��local_cgi���ä��Ȥ��ˤ�URLFile.scheme��SCM_LOCAL_CGI
- �򤤤�ơ�cache file�դ����֤��褦���ѹ����Ĥޤꡢframe�ǥǥ�
- �쥯�ȥ�򸫤��褦�ˤʤäƤޤ���SCM_EXEC�ϡġĸ�ƨ���Ƥ�����
- ��
+ loadGeneralFile() -> Buffer.real_scheme と仮定して、openURL()
+ にてurlがlocal_cgiだったときにはURLFile.schemeにSCM_LOCAL_CGI
+ をいれて、cache file付きで返すように変更。つまり、frameでディ
+ レクトリを見れるようになってます。SCM_EXECは……見逃してくださ
+ い
2000.1.21
@@ -2186,32 +2186,32 @@ the server, i.e.
From: aito
-'<' �μ��˥���̾�ʳ��Τ�Τ��褿�Ȥ��ˡ�'<'�򤽤Τޤ�ɽ������褦
-�˲��ɡ�
+'<' の次にタグ名以外のものが来たときに,'<'をそのまま表示するよう
+に改良.
From: Okabe Katsuya <okabe@okaibm.hep.okayama-u.ac.jp>
-��������ΥХ�������
+画面描画のバグ修正.
From: Okabe Katsuya <okabe@okaibm.hep.okayama-u.ac.jp>
-w3m 0.1.4 ���Ф���, �ʲ��ν�����Ԥʤ��ޤ���.
- ��Set-Cookie2 �� discard °������������褦�ˤ���.
- �������ǤǤ�, expires °���� discard °������¾Ū�Ǥ���ȴ��㤤��
- ��̵�뤷�Ƥ��ޤ���.
- ��<dl> ���������ζ��Ԥ�̵ͭ��, </dl> �����θ�ζ��Ԥ�̵ͭ���Х��
- ���Ƥ��ʤ��ä��Τ�, </dl> �����θ�ˤ�ɬ�����Ԥ�����褦�ˤ���.
-����� <p>, <[duo]l> �ʤɤΥ�����³�������˶��Ԥ� 2 ������Τ��ɤ�����
-��, �����Ĥ����ѹ���ԤʤäƤޤ���, �������꤬���뤫�⤷��ޤ���.
-�㤨�Ф⤷ <p><p> �� 2�Զ����������ɤ����, ���Τޤޤˤ��Ƥ����Ƥ�������.
+w3m 0.1.4 に対して, 以下の修正を行ないました.
+ ・Set-Cookie2 の discard 属性を受け入れるようにした.
+ 以前の版では, expires 属性と discard 属性は排他的であると勘違いし
+ て無視していました.
+ ・<dl> タグの前の空行の有無と, </dl> タグの後の空行の有無がバランス
+ していなかったので, </dl> タグの後には必ず空行が入るようにした.
+さらに <p>, <[duo]l> などのタグが続いた時に空行が 2 つ入るのを防ぐため
+に, いくつかの変更を行なってますが, 何か問題があるかもしれません.
+例えばもし <p><p> で 2行空いた方が良ければ, 元のままにしておいてください.
From: Okabe Katsuya <okabe@okaibm.hep.okayama-u.ac.jp>
-table �� geometry �׻��ˤ���äȤ����Х�������ޤ���.
-�ʲ�, ���ν����Ǥ�.
+table の geometry 計算にちょっとしたバグがありました.
+以下, その修正です.
From: Okabe Katsuya <okabe@okaibm.hep.okayama-u.ac.jp>
-table �� width=0 �ξ����б���
+table で width=0 の場合に対応.
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
-inputLineHist() �ΥХ�������
+inputLineHist() のバグ修正.
2000.1.14
From: ChiDeok Hwang <cdhwang@sr.hei.co.kr>
@@ -2222,59 +2222,59 @@ Reason was above site had the very strange frameset with only one frame.
Simple following fix was enough for me.
From: aito
-URL �� scheme ��̵����Τ��ɤߤ���Ȥ��ˡ�local �dz����ʤ��ä�����
-http:// ���ꤹ��褦�ˤ��Ƥߤ���
+URL の scheme が無いものを読みこむときに,local で開けなかった場合は
+http:// を仮定するようにしてみた.
-configure ���ѹ���mkdir -p ��Ȥ��褦�ˤ�����
+configure を変更.mkdir -p を使うようにした.
-ldHelp() ���ѹ���HELP_DIR �������ɤߤ���褦�ˤ�����
+ldHelp() を変更.HELP_DIR から常に読みこむようにした.
From: Yamate Keiichirou <yamate@ebina.hitachi.co.jp>
-RFC 882��header��entry��2�ԤΤȤ���multi byte�ΰ����ߥ��༣
-frame�����frameset html�λ��ȤǤ�target�����פ���褦�ѹ�
+RFC 882のheaderのentryが2行のときのmulti byteの扱いミス退治
+frameからのframeset htmlの参照でもtargetを追跡するよう変更
target="_parent"
-frame���form�ǡ������Ի׵Ĥ�URI���Ǥ���Τ���
-�����ѿ����ؿ������Ƚ���ͤ�������ɲä���¾
- ��������_parent�μ����ϡ�navigator�Ȳ�᤬�㤦�äݤ��Ǥ���
+frame内のformで、稀に不思議なURIができるのを修正
+一部変数・関数の方と初期値の定義を追加その他
+ ただし、_parentの実装は、navigatorと解釈が違うっぽいです。
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
-progress bar �� graphic ʸ����Ȥ�
-ɬ�����⤽��ۤɤʤ��Τǡ�ȿž�� '|' �����Ѥ��Ƥߤޤ�����
+progress bar に graphic 文字を使う
+必然性もそれほどないので、反転の '|' で代用してみました。
From: Okabe Katsuya <okabe@okaibm.hep.okayama-u.ac.jp>
-���٤�, ���̤α�ü��ʸ�����ä��Ƥ��ޤ���������Ȥ�������Ǥ�.
-�ʲ��Υѥå����н褷�ޤ���.
+今度は, 画面の右端の文字が消えてしまう事があるという問題です.
+以下のパッチで対処しました.
2000.1.12
From: aito
-word fill��������Ƥߤ���
-(�ɥ�����Ȥʤ��� config.h ����ǥ��å��� #define FORMAT_NICE
-�Ȥ���ư����)
+word fillを実装してみた.
+(ドキュメントなし: config.h の中でコッソリ #define FORMAT_NICE
+とやると動く.)
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
- >> w3m -halfdump �λ���$HOME/.w3m �۲���w3m* �ǻϤޤ�ե����뤬
- >> �Ĥ�褦�Ǥ���
-���켫�Τϰʲ��� patch �Ǥ����Ȼפ��ޤ���
+ >> w3m -halfdump の時、$HOME/.w3m 配下のw3m* で始まるファイルが
+ >> 残るようです。
+これ自体は以下の patch でいいと思います。
From: sakane@d4.bsd.nes.nec.co.jp (Yoshinobu Sakane)
-"w3m ."�Ȥ�w3mhelperpanel ��ư��ʤ��ʤäƤޤ�����
-�ʲ���configure �ؤΥѥå��Ǥ���
+"w3m ."とかw3mhelperpanel が動作しなくなってました。
+以下、configure へのパッチです。
2000.1.11
From: Yamate Keiichirou <yamate@ebina.hitachi.co.jp>
- readHeader()�Ǥ�header��ɽ���Ƚ������ڤ�ʬ���ȡ�base target�λ����
-���Ǥ�target��Ȥ������Τȡ�MIME encoded-word�֤ζ���ν����򹥤ߤ���
-������̤Υѥå��Ǥ���
+ readHeader()でのheaderの表示と処理の切り分けと、base targetの指定な
+しでもtargetを使いたいのと、MIME encoded-word間の空白の処理を好みに変
+えた結果のパッチです。
From: Okabe Katsuya <okabe@okaibm.hep.okayama-u.ac.jp>
-freshmeat (http://freshmeat.net/appindex/1999/06/09/928951047.html) ��,
-Yahoo! �� cookie �����ޤ��Ȥ��ʤ��Ȥ��ä��Τ�Ĵ�٤Ƥߤޤ���.
-�ɤ����, path ����ȥ꡼ '/' �θ�˶��򤬰��äĤ��Ƥ���Τ�����Τ褦
-�Ǥ�.
+freshmeat (http://freshmeat.net/appindex/1999/06/09/928951047.html) で,
+Yahoo! で cookie がうまく使えないとあったので調べてみました.
+どうやら, path エントリー '/' の後に空白が引っついているのが問題のよう
+です.
From: Okabe Katsuya <okabe@okaibm.hep.okayama-u.ac.jp>
-table �Υ�����ȥ꡼�׻��˰ʲ�������ν�����Ԥʤ��ޤ���.
- 1. ���Τ褦�� table �� 1 ������ܤ˶��򤬻ĤäƤ��ޤ�����.
+table のジオメトリー計算に以下の問題の修正を行ないました.
+ 1. 次のような table の 1 カラム目に空白が残ってしまう問題.
--------------------------------------------------------------------------
<table border width="600">
<tr>
@@ -2282,82 +2282,82 @@ table �Υ�����ȥ꡼�׻��˰ʲ�������ν�����Ԥʤ��ޤ���.
<td COLSPAN=2>fooo booo fooo booo fooo booo fooo booo fooo booo fooo booo
</table>
--------------------------------------------------------------------------
- 2. <dt> ����������Ȥ�, ��������η׻���ְ�äƤ���.
- 3. HTML 4.0 ���ɲä��줿 table ���� (<thead>, <tbody> �ʤ�) �򥹥���
- �פ���褦�ˤ���.
-����¾ w3m 0.1.1 �ν�����ϳ��Ƥ���,
- <sa6zouvxzg0.fsf@okaibm.hep.okayama-u.ac.jp> (Article 84) �����,
+ 2. <dt> タグがあるとき, カラム幅の計算を間違っていた.
+ 3. HTML 4.0 で追加された table タグ (<thead>, <tbody> など) をスキッ
+ プするようにした.
+その他 w3m 0.1.1 の修正で漏れていた,
+ <sa6zouvxzg0.fsf@okaibm.hep.okayama-u.ac.jp> (Article 84) および,
<sa6iu1pzou7.fsf@okaibm.hep.okayama-u.ac.jp> (Article 59)
-�Υѥå���
+のパッチ.
From: aito
-'!'���ޥ�ɤˤ��shell�μ¹Ԥȡ�textarea�ؤ����ϤǤΥ��ǥ�����ư��
-system() ���᤹��
+'!'コマンドによるshellの実行と,textareaへの入力でのエディタ起動を
+system() に戻す.
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
-��-- ����ʸ�� >�٤Υ����פΥ����Ȥν����ˤޤ����꤬����ޤ�����
-patch ��Ĥ��ޤ���
+『-- 空白文字 >』のタイプのコメントの処理にまだ問題がありました。
+patch をつけます。
2000.1.7
From: Fumitoshi UKAI <ukai@debian.or.jp>
-deb ��Ĥ��ä����� patch �Ǥ���
+deb をつくった時の patch です。
* XMakefile
- - dependency �ˤ� $(GCLIB) ����ʤ��� $(GCTARGET) ���Ȼפ��ΤǤ�����
- - help file (architecture independent)�� /usr/share/w3m == $(HELP_DIR)
- bookmark (architecture dependent)�� /usr/lib/w3m == $(LIB_DIR)
- �ˤ櫓�Ƥޤ� (�ޤ����� /usr/lib/w3m �Ǥ⤤���Τ���)
+ - dependency には $(GCLIB) じゃなくて $(GCTARGET) だと思うのですが。
+ - help file (architecture independent)を /usr/share/w3m == $(HELP_DIR)
+ bookmark (architecture dependent)を /usr/lib/w3m == $(LIB_DIR)
+ にわけてます (まぁ全部 /usr/lib/w3m でもいいのかも)
* file.c
@@ -386,8 +386,8 @@
- content-encoding: �θ��space�ʤ��Ƥ�褤�褦��
+ content-encoding: の後のspaceなくてもよいように
@@ -3504,6 +3504,7 @@
- http://haskell.org/hugs/ �ߤ����� html �� ̵��loop �ˤ�������Τ� fix
+ http://haskell.org/hugs/ みたいな html で 無限loop におちいるのを fix
* main.c
@@ -66,7 +66,11 @@
- libgc5-dev package�Ѥ��ѹ�
+ libgc5-dev package用に変更
@@ -1092,7 +1100,11 @@
- LIB_DIR �� HELP_DIR ��ʬΥ�����Τ�
+ LIB_DIR と HELP_DIR を分離したので
* proto.h, rc.c
- ����� LIB_DIR �� HELP_DIR ��ʬΥ�����Τ�
+ これも LIB_DIR と HELP_DIR を分離したので
* terms.c
- �������ʤ��� SIGWINCH ���б����ʤ�
+ こうしないと SIGWINCH に対応しない
2000.1.5
-From: ���
- ������Ƥ��ޤ����ĥե졼��Υѥå�����­�Ǥ���991203�Τޤ�
-���ȡ�col��row�����Τʤ��ե졼�ॻ�åȤ������˼��Ԥ�������
-�Ĥ��ơ��긵��source�Ͻ������Ƥ����ơ�������ʬ�Υѥå������
-����Τ�˺��Ƥ��ޤ�����
- �����ϡ�frameset.split_direction�������Ԥ鷺������check
-�˼��Ԥ��뤫��Ǥ����¤ΤȤ�����col��row��ξ��Ʊ������O.K.��
-���������ǡ�split_direction��̵�Ѥˤʤä��Τǡ��ä��Ƥ��ޤ�
-�ޤ�����
+From: やま
+ 以前投稿しました田フレームのパッチの補足です。991203のまま
+だと、colもrowも指定のないフレームセットの生成に失敗する点に
+ついて、手元のsourceは修正しておいて、その部分のパッチを公開
+するのを忘れていました。
+ 原因は、frameset.split_directionの定義を行わず、正気check
+に失敗するからです。実のところ、colもrowも両方同時使用O.K.に
+した時点で、split_directionは無用になったので、消してしまい
+ました。
From: aito
-C-c ���ɤߤ��ߤ���ߤ����Ȥ��ˡ��Хå����饦��ɤ�ư���Ƥ��볰���ӥ塼��
-����λ����Х��ν�����
+C-c で読みこみを中止したときに,バックグラウンドで動いている外部ビューア
+が終了するバグの修正.
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
-�ޤ���ɸ�����Ϥ�ѥ��פ����ɤ߹�������� -m ���ץ����
-����Ƥ����ߤ����Ǥ���
-�� ����������ʬ����ʤ��ΤǤ����Ƕ�褯 SEGV ���ޤ���
-�� ....�ȡ����ʤ��ս�򸫤Ĥ����Τ��ɲ� patch �Ǥ���
-�� ���̤� foo->bar->hoge �ϴ��ʤ��Ǥ��͡�
-
-From: (��)�ο� <sekita-n@hera.im.uec.ac.jp>
-Subject: Referer: ���������ץ������ɲä���ѥå�
-�����ȥ�ΤȤ���Ǥ���
-�ɤ���������Ǥ����Τ��򱣤���������`o'�ǥ��ץ������̤������
-��Referer: ������ʤ��褦�ˤ���פ�ON�ˤ��Ƥ���������
-
-From: (��)�ο� <sekita-n@hera.im.uec.ac.jp>
-Subject: `q'�ˤĤ���
-��Do you want to exit w3m? (y or n)��
-�Dz������Ϥ����˲��Ԥ����w3m������äƤ��ޤ��Τǡ������������ѥ�
-���Ǥ�(991206��)��
+また、標準入力やパイプから読み込んだ時の -m オプションが
+壊れていたみたいです。
+# 何が原因か分からないのですが最近よく SEGV します。
+# ....と、危ない箇所を見つけたので追加 patch です。
+# 一般に foo->bar->hoge は危ないですね。
+
+From: (の)の人 <sekita-n@hera.im.uec.ac.jp>
+Subject: Referer: の抑制オプションを追加するパッチ
+タイトルのとおりです。
+どこから飛んできたのかを隠したい場合は`o'でオプション画面に飛んで
+「Referer: を送らないようにする」をONにしてください。
+
+From: (の)の人 <sekita-n@hera.im.uec.ac.jp>
+Subject: `q'について
+「Do you want to exit w3m? (y or n)」
+で何も入力せずに改行するとw3mが終わってしまうので、それを修正するパッ
+チです(991206用)。
From: aito
-ľ�ܥ��ޥ�ɥ饤��ǻ��ꤷ��URL�����������ɤ���ݤˡ����Ϥ���
-�ե�����̾�κǸ�˲���ʸ�����դ��Ƥ��ޤ��Х��ν�����
+直接コマンドラインで指定したURLをダウンロードする際に,入力した
+ファイル名の最後に改行文字が付いてしまうバグの修正.
2000.1.4
From: Sven Oliver Moll <smol0999@rz.uni-hildesheim.de>
@@ -2368,96 +2368,96 @@ dragging is that I drag the window over the text. So I added a config
option called 'reverse mouse'.
From: aito
-Lynx-like keymap�� `M' (�����֥饦���ƤӤ���)���ɲá�
+Lynx-like keymapに `M' (外部ブラウザ呼びだし)を追加.
From: SUMIKAWA Munechika <sumikawa@ebina.hitachi.co.jp>
-KAME on FreeBSD-3.3 ��
+KAME on FreeBSD-3.3 で
#define INET6
-�Ȥ��ơ�w3m-19991203��make�����Ȥ�����make���̤�ޤ���Ǥ�����
-����ϡ�etc.c:FQDN()�ǻȤ��Ƥ���PF_UNSPEC��SOCK_STREAM��sys/socket.h
-���������Ƥ��뤿��Ǥ���
+として、w3m-19991203をmakeしたところ、makeが通りませんでした。
+これは、etc.c:FQDN()で使われているPF_UNSPECやSOCK_STREAMがsys/socket.h
+で定義されているためです。
-From: kjm@rins.ryukoku.ac.jp (KOJIMA Hajime / ����ȥ)
-NEWS-OS 6.x ���ݡ��ȡ�
+From: kjm@rins.ryukoku.ac.jp (KOJIMA Hajime / 小島肇)
+NEWS-OS 6.x サポート.
From: aito
-��˥塼ɽ�����˥ޥ����������ƥ��֤ˤʤäƤ��ʤ��ä��Х��ν�����
-gcc -Wall �Ƿٹ𤬽Фʤ��褦��Ĵ����
-configure�� IPv6 ��ưȽ�ꤹ��褦�ˤ�����
+メニュー表示時にマウスがアクティブになっていなかったバグの修正.
+gcc -Wall で警告が出ないように調整.
+configureで IPv6 を自動判定するようにした.
(Thanks to sumikawa@ebina.hitachi.co.jp)
1999.12.28
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
-tmpPropBuf ����¸���Ƥ����ƥ������뤬���줿���᤹��ʬ�˥Х�
-(ʣ���Ԥξ��)�����ꡢ���������ǽ�������Τ����Ѥ������ä��Τǡ�
-�ʲ����ͤˤ��Ƥߤޤ�����
-�����򤵤�Ƥ����󥯤ο������ꤵ�Ƥ�����ϡ�
- ��+ ���ο� + �����٤�ɽ��
-�����򤵤�Ƥ����󥯤ο������ꤵ��Ƥ��ʤ����ϡ�
- ��+ �����٤�ɽ��
-������ξ��ϡ���+ �ܡ���ɡ٤�ɽ��
- (�������Ȱ�̣���ʤ��Τ��ѹ����Ƥߤޤ���)
-�����ϡ���������Τ��륢�󥫡��� PE_ACTIVE �����ꤷ��
-¾�θ���(mode)�θ�Ǹ���(mode)���񤭤���褦�ˤ��Ƥ��ޤ���
+tmpPropBuf に保存しておいてカーソルが外れたら戻す部分にバグ
+(複数行の場合)があり、その方式で修正するのは大変そうだったので、
+以下の様にしてみました。
+・選択されているリンクの色が指定さている場合は、
+ 『+ その色 + 下線』で表示
+・選択されているリンクの色が指定されていない場合は、
+ 『+ 下線』で表示
+・白黒の場合は、『+ ボールド』で表示
+ (下線だと意味がないので変更してみました)
+方式は、カーソルのあるアンカーに PE_ACTIVE を設定し、
+他の効果(mode)の後で効果(mode)を上書きするようにしています。
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
-���ܸ��ɽ���Ǥ���(#define JP_CHARSET)���֤ǡ�
-#undef KANJI_SYMBOLS �ξ��˥ơ��֥���˥塼����
-�� graph ʸ����Ȥ����ͤˤ��� patch �Ǥ���
-���ˤ��ä��ꤷ��ɽ���ˤʤ�ޤ���
+日本語を表示できる(#define JP_CHARSET)状態で、
+#undef KANJI_SYMBOLS の場合にテーブルやメニューの枠
+に graph 文字を使える様にする patch です。
+非常にすっきりした表示になります。
From: Fumitoshi UKAI <ukai@debian.or.jp>
-������ ALT="" �λ���ɽ������ΤϥХ����Ȥ��뤵���ͤ�����:<
-�Τǥ��ץ����ˤ��Ƥߤޤ�����
+えーと ALT="" の時に表示するのはバグだとうるさい人がいる:<
+のでオプションにしてみました。
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
-��frame �ǹ��������ڥ����ξ�硢reload ���ˤ� frameɽ��/��frameɽ��
- �ˤ�����餺ξ���Ȥ������졢frameɽ�����ä����ˤϡ�
- ����� frameɽ���ΥХåե�����������ޤ���
-��edit ��(��frameɽ���Τ߲�ǽ)�ˤ� frameɽ���ΥХåե���������ˤ�
- �����������ޤ���
- (��frameɽ���Хåե���ʤ����� frameɽ���Хåե���
- �ۤȤ��̵��̣�ʤΤǺ���Ǥ����Ȼפ��ޤ���)
-��) ¿�ʤΥե졼��ˤ��б��Ǥ��Ƥ��ޤ���(rFrame �����б����Ƥ��ʤ�)��
+・frame で構成されるペイジの場合、reload 時には frame表示/非frame表示
+ にかかわらず両方とも削除され、frame表示だった場合には、
+ さらに frame表示のバッファが作成されます。
+・edit 時(非frame表示のみ可能)にも frame表示のバッファがある場合には
+ それも削除されます。
+ (非frame表示バッファをなくした frame表示バッファは
+ ほとんど無意味なので削除でいいと思います。)
+※) 多段のフレームには対応できていません(rFrame 自体対応していない)。
From: aito
-HTTP �� response code �� 200 �ξ��Ǥ⡤ WWW-Authenticate: �إå�
-������ȥ桼��ǧ�ڤ򤷤Ƥ����Х��ν�����
+HTTP の response code が 200 の場合でも, WWW-Authenticate: ヘッダ
+があるとユーザ認証をしていたバグの修正.
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
- >> ���ܸ��ɽ���Ǥ���(#define JP_CHARSET)���֤ǡ�
- >> #undef KANJI_SYMBOLS �ξ��˥ơ��֥���˥塼����
- >> �� graph ʸ����Ȥ����ͤˤ��� patch �Ǥ���
-progress ɽ������ʬ���Զ��������ޤ�����
+ >> 日本語を表示できる(#define JP_CHARSET)状態で、
+ >> #undef KANJI_SYMBOLS の場合にテーブルやメニューの枠
+ >> に graph 文字を使える様にする patch です。
+progress 表示の部分の不具合を修正しました。
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
-ISO-2022-JP �λ���Ⱦ�ѥ��ʤΰ��������Ѥ��Ѵ�����ʤ�
-�Զ��ν����Ǥ���
+ISO-2022-JP の時に半角カナの一部が全角に変換されない
+不具合の修正です。
From: aito
-name��̤����� textarea �� default �Ȥ���̾���������
-�������Ƥ��ޤäƤ�����
+nameが未定義の textarea に default という名前が勝手に
+定義されてしまっていた.
From: Yamate Keiichirou <yamate@ebina.hitachi.co.jp>
-Location: �ǻ��ꤵ�줿URL�����֤Ȥ��ˡ��Ǹ�β��Ԥ���Ȥ�
-˺��Ƥ����Х��ν�����
+Location: で指定されたURLに飛ぶときに,最後の改行を落とし
+忘れていたバグの修正.
From: Okabe Katsuya <okabe@okaibm.hep.okayama-u.ac.jp>
-��<TD>,<TH>�����������꤬���ä����ε�ư�������ʲ��ɡ�
-��w3m 991203 �ǤǤ�, �����ɤ� 0x80 �ʾ�� escape ʸ�������Τޤ�ɽ������
- �Ƥ��ޤ��褦�Ǥ�.
+・<TD>,<TH>に相対幅指定があった場合の挙動の大幅な改良.
+・w3m 991203 版では, コードが 0x80 以上の escape 文字がそのまま表示され
+ てしまうようです.
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
-�����Ȥ� <!-- .... -- > �Τ褦�� -- �� > �θ��
-���ڡ���������褦�ѹ���
+コメントで <!-- .... -- > のように -- と > の後に
+スペースを許すよう変更.
1999.12.27
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
-dirlist.cgi�β��ɡ�
+dirlist.cgiの改良.
From: aito
-'!' ���ޥ�ɤǺǸ�� & ���դ����Ȥ��˥Хå����饦��ɤˤʤ�ʤ�
-�Х��ν�����
+'!' コマンドで最後に & を付けたときにバックグラウンドにならない
+バグの修正.
1999.12.14
From: Christian Weisgerber <naddy@unix-ag.uni-kl.de>
@@ -2468,265 +2468,265 @@ From: Christian Weisgerber <naddy@unix-ag.uni-kl.de>
would require a substantial rewrite.)
From: aito
-��w3m-control: �ǡ�GOTO url ��Ϳ����ȡ�����url �˹Ԥ��褦�ˤ�����
-��<meta http-equiv="Refresh" content="0; url=URL"> �����ä���硤
- �������ˤ��Υڡ������ɤߤ���褦�ˤ�����
-��'M', 'ESC M' �dz����֥饦����Ω��������Ȥ��ˡ������֥饦����
- �������Ƥ��ʤ��ä����ˤϡ����ޥ�ɥ饤�󤫤饳�ޥ�ɤ�����
- ����褦�ˤ��Ƥߤ���
+・w3m-control: で,GOTO url を与えると,そのurl に行くようにした.
+・<meta http-equiv="Refresh" content="0; url=URL"> があった場合,
+ ただちにそのページを読みこむようにした.
+・'M', 'ESC M' で外部ブラウザを立ちあげるときに,外部ブラウザが
+ 定義されていなかった場合には,コマンドラインからコマンドを入力
+ するようにしてみた.
1999.12.8
From: aito
-Proxy-Authorization �����
+Proxy-Authorization に対応.
1999.12.3
From: aito
-�ǥ��쥯�ȥ�ɽ���˳������ޥ�ɤ�Ȥ����Ȥ��Ǥ���褦�ˤ�����
-�ǥե���ȤϺ��ܤ���� dirlist.cgi��
+ディレクトリ表示に外部コマンドを使うことができるようにした.
+デフォルトは坂本さんの dirlist.cgi.
1999.12.2
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
-��˥塼���Хåե�������̤ǡ��������뤬������ܤΤȤ���
-�����褦���ѹ���
+メニュー,バッファ選択画面で,カーソルが選択項目のところ
+に来るように変更.
From: aito
-TERM={xterm|kterm}�ξ��ˤ� GPM ��Ȥ�ʤ��褦�ѹ���
-xterm �ǥޥ�����Ȥ���硤�������ϤΤȤ������ޥ�����ͭ��
-�ˤʤ�褦���ѹ���
+TERM={xterm|kterm}の場合には GPM を使わないよう変更.
+xterm でマウスを使う場合,キー入力のときだけマウスが有効
+になるように変更.
1999.12.1
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
-HTTP_HOME�����ꤷ��Ω��������Ȼߤޤ�Х��ν�����
+HTTP_HOMEを設定して立ちあげると止まるバグの修正.
From: Fumitoshi UKAI <ukai@debian.or.jp>
-������Form���ɤ��segmentation fault �򵯤����Х��ν�����
-table�ι��ܿ������䤹��ʬ�ΥХ�������
+ある種のFormを読むとsegmentation fault を起こすバグの修正.
+tableの項目数を増やす部分のバグ修正.
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
-<tr> ������ align °�����б����ޤ�����
-�ޤ���<th> �����ξ��Υǥե���Ȥ� align �� center �ˤ��ޤ�����
+<tr> タグの align 属性に対応しました。
+また、<th> タグの場合のデフォルトの align は center にしました。
-From: Tsutomu Okada (���� ��) <okada@furuno.co.jp>
-���Ƥ� JP_CHARSET ����������Ȥ��ˡ�latin1 ��ʸ����ɽ������ʤ��褦��
- �ʤäƤ����Τ���
-��JP_CHARSET ���������fm.h, conv.c, terms.c �ˤ��ä��Τ� fm.h �ˤޤ�
- �᤿
-��README.func �˹�碌�ơ�func.c �� COOKIES �� COOKIE ���ѹ�
+From: Tsutomu Okada (岡田 勉) <okada@furuno.co.jp>
+・再び JP_CHARSET を定義したときに、latin1 の文字が表示されないように
+ なっていたのを修正
+・JP_CHARSET の定義が、fm.h, conv.c, terms.c にあったのを fm.h にまと
+ めた
+・README.func に合わせて、func.c の COOKIES を COOKIE に変更
From: aito
-HTTP header �� : �θ�˶��򤬤ʤ��Ƥ��ɤ��褦���ѹ���
+HTTP header の : の後に空白がなくても良いように変更.
From: Okabe Katsuya <okabe@okaibm.hep.okayama-u.ac.jp>
-TAB�ǥ��󥫡����ư����Ȥ���TABLE����Υ��󥫡��ν��֤�����
-�Х��ν�����
+TABでアンカーを移動するとき,TABLEの中のアンカーの順番が狂う
+バグの修正.
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
--v ���ץ����˸¤餺�����ޥ�ɥ饤�󤫤� URL ����ꤷ������
-�������ʤ󤫲������Τǡ������ܹ��򤤤��ľ���Ƥߤޤ�����
-�ʲ����ͤ� patch �Ǥɤ��Ǥ��礦����������𤷤�
- w3m �ե졼��.html �ե졼��.html ...
-�ˤ��б����Ƥ��ޤ���
--v ���ץ����˴ؤ��Ƥϡ�ɽ������Хåե���̵������ -v ������
-����Ƥ���Ƚ�����̤�ɽ������ޤ���
+-v オプションに限らず、コマンドラインから URL を指定した場合の
+処理がなんか怪しいので、少し本腰をいれて直してみました、
+以下の様な patch でどうでしょう。以前に報告した
+ w3m フレーム.html フレーム.html ...
+にも対応しています。
+-v オプションに関しては、表示するバッファが無い場合に -v が指定
+されていると初期画面が表示されます。
1999.11.26
From: Fumitoshi UKAI <ukai@debian.or.jp>
-mailcap���˵��Ҥ��륳�ޥ�ɤΰ����� ' ' �ǰϤ�Ȥ��ޤ��¹�
-����ʤ��Х��ν�����
+mailcap等に記述するコマンドの引数を ' ' で囲むとうまく実行
+されないバグの修正.
1999.11.20
From: SASAKI Takeshi <sasaki@isoternet.org>
-�ָ������򤵤�Ƥ����󥯤˿����դ���ץ��ץ�����ON�ˤ���
-������˥�������פ���Х��ν�����
+「現在選択されているリンクに色を付ける」オプションをONにして
+いる場合にコアダンプするバグの修正.
1999.11.19
From: aito
-XMakefile �ε��Ҥ�����
-local file ��2������ɤ����Х��ν�����
-<UL>�ʤɤ��ͥ��Ȥ������ˡ�</ul>ľ������ܸ줬����ȥ���ǥ��
-�������Х��ν�����
-GPM���
+XMakefile の記述を修正.
+local file が2回ロードされるバグの修正.
+<UL>などがネストした時に,</ul>直後に日本語がくるとインデント
+が狂うバグの修正.
+GPM対応.
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
-�ץ����쥹�С�ɽ���򤵤�˲��ɡ�
+プログレスバー表示をさらに改良.
1999.11.18
From: Ben Winslow <rain@insane.loonybin.net>
-�ץ����쥹�С���ɽ���β��ɡ�
+プログレスバーの表示の改良.
From: patakuti
-<input type=button>�� name ���������Ƥ��ʤ��ä����ˡ������
-name ���Ĥ����Ƥ��ޤ��Х��ν�����
+<input type=button>に name が定義されていなかった場合に,勝手に
+name がつけられてしまうバグの修正.
-From: ���
-�ե졼��� row �� col ��ξ�����ꤷ�������н补
+From: やま
+フレームで row と col を両方指定した場合に対処.
From: aito
-bookmark���ޥ�ɤ�w3m���Τ���ʬΥ��w3mbookmark�Ȥ������ޥ�ɤˤ��롥
-�����ȼ�ʤ���CGI����w3m�������Ǥ���褦�ˤ��롥
+bookmarkコマンドをw3m本体から分離.w3mbookmarkというコマンドにする.
+それに伴ない,CGIからw3mを遠隔操作できるようにする.
-C-s �Dz���ɽ�����ߤޤäƤ����Х��ν�����
+C-s で画面表示が止まっていたバグの修正.
-ʸ�����ϻ��� C-g ����ߤǤ���褦�ˤ�����
+文字入力時に C-g で中止できるようにした.
From: hovav@cs.stanford.edu
-�����ӥ塼���Τʤ������פΥե���������������ɤ���Ȥ��ˡ�
-��¸��Ȥ���¸�ߤ��ʤ��ǥ��쥯�ȥ����ꤹ��ȥ��������
-����Х��ν�����
+外部ビューアのないタイプのファイルをダウンロードするときに,
+保存先として存在しないディレクトリを指定するとコアダンプ
+するバグの修正.
From: minoura@netbsd.org
-&#x1234; �Τ褦�� character entity ��Ȥ��� segmentation
-fault �������뤳�Ȥ�����Х��ν�����
+&#x1234; のような character entity を使うと segmentation
+fault が起きることがあるバグの修正.
From: Christi Alice Scarborough <christi@chiark.greenend.org.uk>
-�������򤵤�Ƥ����󥯤˿����դ�����褦�ˤ�����
+現在選択されているリンクに色を付けられるようにした.
1999.11.17
From: aito
-<OL>,<UL>���Υꥹ�Ȥǡ����줬�ǽ�Υ�٥�Ǥ������������˶��Ԥ�
-������褦�ˤ�����
--bookmark���ץ����ǡ�bookmark�ե����뤬����Ǥ���褦�ˤ�����
+<OL>,<UL>等のリストで,それが最初のレベルである時だけ前後に空行を
+空けるようにした.
+-bookmarkオプションで,bookmarkファイルが指定できるようにした.
From: Hiroaki Shimotsu <shim@nw.bs1.fc.nec.co.jp>
-�����η�Ǥ�����C-r C-r �ϳ�����̵ȿ���ʤΤ� N �������Ƥ���
-�ǡ�vi �� N ��Ʊ�ͤε�ǽ��������Ƥߤޤ�����
-o srchnxt(), srchprv() ���������ؿ� srch_nxtprv() ��Ƥ֡�
-o srch_nxtprv() �ǰ��� 1 ���ɤ�����ϡ�������
- searchRoutine �Ǥʤ�����Ƥ֡�
+検索の件ですが、C-r C-r は皆さん無反応なのと N が空いてたの
+で、vi の N と同様の機能を作成してみました。
+o srchnxt(), srchprv() 共に内部関数 srch_nxtprv() を呼ぶ。
+o srch_nxtprv() で引数 1 で読んだ場合は、現状の
+ searchRoutine でない方を呼ぶ。
1999.11.16
From: Kiyohiro Kobayashi <k-kobaya@mxh.mesh.ne.jp>
-wu-ftpd��2.6.0�ˤʤäƤ��顢NLST���Ф��ƥǥ��쥯�ȥ�̾���֤��ʤ��ʤä�
-����ˡ�w3m�ǥ�����������ȥǥ��쥯�ȥ꤬�ߤ��ʤ��ʤäƤ��ޤäƤ��ޤ���
-����ǡ�NLST�ǤϤʤ�LIST����Ѥ���褦�ˡ���¤���Ƥߤޤ�����
-�Ĥ��Ǥˡ��ե���������ա���������ɽ������褦�ˤ��Ƥߤޤ�����
-991028�Ǥ��Ф���patch��ź�դ��ޤ���
+wu-ftpdが2.6.0になってから、NLSTに対してディレクトリ名を返さなくなった
+ために、w3mでアクセスするとディレクトリがみえなくなってしまっています。
+それで、NLSTではなくLISTを使用するように、改造してみました。
+ついでに、ファイルの日付、サイズも表示するようにしてみました。
+991028版に対するpatchを添付します。
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
-checkContentType() �˥Х����������Ǥޤ�����
-�� �ޤ���-m ������Ƥ��櫓�Ǥ�+_+
+checkContentType() にバグが入り込んでました。
+# また、-m が壊れてたわけです+_+
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
-��˥塼��ư��򾯤���ĥ/�ѹ����ޤ�����
-��ĥ����
-��C-f, C-v �Ǽ��ڡ����ι��ܤ�ɽ������
-��C-b, M-v �����ڡ����ι��ܤ�ɽ������
-��INS �����Ȥ��� ^[[L(���󥽡���)��^[[E(PocketBSD) ���ɲ�
-��DEL(C-?) �ǿƤΥ�˥塼����� �� BS(C-h) ��Ʊ��ư��Ǥ�
-��#define MENU_THIN_FRAME �ǥ���ѥ��뤹��Ⱥ٤�������Ȥ�
- �ǥե���Ȥ� #undef��
-�ѹ�����
-��Ĺ����˥塼�ξ�硢�ޥ����Ǿ岼�� "��" �򥯥�å������
- ��/���ڡ����ι��ܤ�ɽ�������ͤ��ѹ�
- (����ޤǤϼ�/���ι��ܤ��ä��Τ����ݤ��ä�)
-�����ط�(sub-menu)�ξ�硢�ޥ������ȳ��򥯥�å������
- �ƤΥ�˥塼������ͤ��ѹ�
- (����ޤǤ����ƾõ���ä�����ޥ�����������뤳�Ȥ�����ʤ��ä�)
-��<, >, +, - �ؤΥХ���ɤ��᤿
- (??-like �Ǥ�ʤ��������ͤ˻Ȥ��Ť餤�Τ�ï��ȤäƤʤ��Ȼפ��ޤ�)
-
-From: ������ <okada@furuno.co.jp>
-lynx ��ư��򿿻����������ʤ�Ǥ�����<SELECT>����������˥塼ɽ����
-�Ȥ��ˡ��ǽ��Ǹ�θ���򤹤������֤��Ȥ��Ǥ���褦�ˤ��Ƥߤޤ�����
-C-a �� C-e �˥Х���ɤ��Ƥ���ޤ���
+メニューの動作を少し拡張/変更しました。
+拡張内容
+・C-f, C-v で次ページの項目を表示する
+・C-b, M-v で前ページの項目を表示する
+・INS キーとして ^[[L(コンソール)、^[[E(PocketBSD) を追加
+・DEL(C-?) で親のメニューに戻る … BS(C-h) と同じ動作です
+・#define MENU_THIN_FRAME でコンパイルすると細い罫線を使う
+ デフォルトは #undef。
+変更内容
+・長いメニューの場合、マウスで上下の ":" をクリックすると
+ 次/前ページの項目を表示する様に変更
+ (これまでは次/前の項目だったので面倒だった)
+・階層型(sub-menu)の場合、マウスで枠外をクリックすると
+ 親のメニューに戻る様に変更
+ (これまでは全て消去だったためマウスだけで戻ることが出来なかった)
+・<, >, +, - へのバインドをやめた
+ (??-like でもないし、異様に使いづらいので誰も使ってないと思います)
+
+From: おかだ <okada@furuno.co.jp>
+lynx の動作を真似しただけなんですが、<SELECT>の選択時やメニュー表示の
+ときに、最初や最後の候補をすぐに選ぶことができるようにしてみました。
+C-a と C-e にバインドしてあります。
From: "OMAE, jun" <jun-o@osb.att.ne.jp>
From: Fumitoshi UKAI <ukai@debian.or.jp>
-FTP �� Multiline reply ���б����Ƥ��ʤ��ä��Х��ν�����
+FTP の Multiline reply に対応していなかったバグの修正.
From: "OMAE, jun" <jun-o@osb.att.ne.jp>
-w3m-991028-2 ����Ѥ��Ƥ���,
-* buffer �������礦�� LASTLINE ��Ʊ���ͤΤȤ�
- selectBuffer() �ǺǸ�� buffer ���鹹�˲��إ���������Ǥ�
- �Ƥ��ޤ�, ���θ�˰�ư���褦�Ȥ��� core dump ���ޤ�.
-* buffer �� LASTLINE + 1 �ʾ夢��Ȥ��� selectBuffer() ���
- ��, LASTLINE + 1 ����(1 origin ��)�� buffer �����򤷤ޤ�.
- ľ��� selectBuffer() �򤹤�ȸ��ߤ� buffer ���֤�ɽ������
- �ޤ���. �ä� buffer �������礦�� LASTLINE + 1 ��Ʊ���ͤΤ�
- ��, ���ذ�ư���褦�Ȥ���� core dump ���ޤ�.
-* cygwin-b20.1 �Τ�. cd / && w3m . �򤹤�� usage ��ɽ������
- �Ƥ��ޤ��ޤ�.
+w3m-991028-2 を使用していて,
+* buffer 数がちょうど LASTLINE と同じ値のとき
+ selectBuffer() で最後の buffer から更に下へスクロールでき
+ てしまい, その後に移動しようとする core dump します.
+* buffer が LASTLINE + 1 以上あるときに selectBuffer() を行
+ い, LASTLINE + 1 個目(1 origin で)の buffer を選択します.
+ 直後に selectBuffer() をすると現在の buffer 位置が表示され
+ ません. 特に buffer 数がちょうど LASTLINE + 1 と同じ値のと
+ き, 下へ移動しようとすると core dump します.
+* cygwin-b20.1 のみ. cd / && w3m . をすると usage が表示され
+ てしまいます.
1999.11.15
From: aito
-HTTP ���ɤ�Ǥ���ʸ��� <BASE> ���������ꡤ���줬���ߤ� URL ��
-��äƤ�����硤Referer: ���ͤ������Х��ν�����
-&#xnnn; �ǥ���ȥ����륳���ɤ����äƤ������ˤ����ȥǥ�����
-�Ǥ��ʤ��ä��Х��ν�����
-local-CGI��Ȥ����ˡ�CGI������ץȤ� file:///cgi-bin/ ��
-file:///usr/local/lib/w3m/ �ˤ�����ʳ��� CGI �Ȥ��ư���
-�ʤ��褦�ˤ�����
-system() ��Ǥ�������Ȥ�ʤ��褦���ɡ�
+HTTP で読んできた文書に <BASE> タグがあり,それが現在の URL と
+違っていた場合,Referer: の値が狂うバグの修正.
+&#xnnn; でコントロールコードを送ってきた時にちゃんとデコード
+できなかったバグの修正.
+local-CGIを使う場合に,CGIスクリプトが file:///cgi-bin/ か
+file:///usr/local/lib/w3m/ にある場合以外は CGI として扱わ
+ないようにした.
+system() をできるだけ使わないよう改良.
1999.11.11
From: aito
-feed_table() ����Υ���������ʬ��ʬΥ��gethtmlcmd() �Υ���������
-����õ������ϥå���ɽ�˲��ɡ�
+feed_table() の中のタグ解析部分を分離.gethtmlcmd() のタグ検索を
+線形探索からハッシュ表に改良.
1999.11.5
From: aito
-tableɽ���κݤˡ�����ե��٥åȤ� latin-1 ��ɽ�� character entity
-�������äƤ���ȡ�ɽ�κǾ����η׻��������Х��ν�����
+table表示の際に,アルファベットに latin-1 を表す character entity
+が混ざっていると,表の最小幅の計算が狂うバグの修正.
1999.11.1
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
- >> w3m-991028 + patch1 �Ǥ�����no menu �ǥ���ѥ��뤷�褦�Ȥ����
- >> main.c ��
+ >> w3m-991028 + patch1 ですが、no menu でコンパイルしようとすると
+ >> main.c で
>> main.c:1645: `FormSelectOptionItem' undeclared (first use this function)
>> :
- >> �Ȥʤ�ޤ��͡�
- >> #ifdef MENU_SELECT��#endif �ǰϤ�Ф����ΤǤ��礦����
- >> ��file.c �� S_IFDIR ���ĤäƤ��ޤäƤ���ΤǸ�� patch ������ޤ���
- >> �� local.h �� S_ISDIR �ʤɤ���������ͤ���������ͽ��
-ξ���� patch �Ǥ���
-�� Symblic link �� readlink() �ǥ����å������ͤˤ��ޤ�����
-�� Symblic link �Τʤ� OS �� w3m �ä� make �Ǥ���Τ���������
- >> ��dirlist.cgi �⡢����äȶ������ޤ�����
+ >> となりますね。
+ >> #ifdef MENU_SELECT〜#endif で囲めばいいのでしょうか。
+ >> ・file.c に S_IFDIR が残ってしまっているので後で patch を送ります。
+ >> # local.h で S_ISDIR などを定義する様に整理する予定
+両方の patch です。
+# Symblic link は readlink() でチェックする様にしました。
+# Symblic link のない OS で w3m って make できるのだろうか?
+ >> ・dirlist.cgi も、ちょっと強化しました。
From: ukai@debian.or.jp
-Strcat_char()�ΥХ�������
+Strcat_char()のバグ修正.
1999.10.28
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
file?var=value/#label
-�λ��� label ����٥�Ȥ���ǧ������ʤ���Τν����Ǥ���
-�� file?var=value#label �����ꤢ��ޤ���Ǥ�����
+の時に label がラベルとして認識されないものの修正です。
+# file?var=value#label は問題ありませんでした。
From: aito
-�ǥХå������ɤ��ޤޤ�Ƥ�����Τ�����
+デバッグコードが含まれていたものを削除.
1999.10.27
-From: ������ <okada@furuno.co.jp>
-�����ˡ�w3m �� JP_CHARSET ������������֤� ISO8859-1 ��ʸ��(&cent; ��)
-��ɽ������ʤ�����Ƥ����ΤǤ������������狼��ޤ����Τǥѥå���ź�դ�
-�ޤ���
+From: おかだ <okada@furuno.co.jp>
+以前に、w3m で JP_CHARSET を定義した状態で ISO8859-1 の文字(&cent; 等)
+が表示されないと投稿したのですが、原因がわかりましたのでパッチを添付し
+ます。
-From: ���
-����WEB��Ȥä����ץꥱ�������ư���ʤ��Τǡ�Ĵ�٤Ƥߤ��Ȥ�����
-cookie�˥ѥ����ʤ�����ư�Navigator�����Ⱦ����ۤʤ뤿��Ȥ狼���
-���������˥ѥå���Ĥ��ޤ���
+From: やま
+あるWEBを使ったアプリケーションが動かないので、調べてみたところ、
+cookieにパスがない場合の動作がNavigator等々と少々異なるためとわかりま
+した。下にパッチをつけます。
From: "OMAE, jun" <jun-o@osb.att.ne.jp>
-CGI �Υڡ����� reload ����Ȥ��ˡ����� POST ���ä���Τ�
-GET �� reload ���褦�Ȥ���Х��ν�����
+CGI のページを reload するときに,元が POST だったものを
+GET で reload しようとするバグの修正.
From: aito
-frame���椫���󥯤�é�ä��Ȥ��ˡ�Referer: ���ͤ����ߤ�frame
-�ǤϤʤ������� frameset �� URL �ˤʤäƤ�����Τ�����
+frameの中からリンクを辿ったときに,Referer: の値が現在のframe
+ではなく,元の frameset の URL になっていたものを修正.
-configure ���ѹ�����ǥ���ߤ��롥
+configure を変更.モデルを設ける.
-FTP �ǡ�RETR,NLST ���������Ф��Ʊ��������� 150 ����Ԥ��Ƥ�������
-����ʳ��Ǥ��ɤ��褦�ʤΤǽ�����
+FTP で,RETR,NLST の成功に対して応答コード 150 を期待していたが,
+それ以外でも良いようなので修正.
-<select multiple>...</select> �ξ�硤��˥塼�ˤ��ʤ��褦������
+<select multiple>...</select> の場合,メニューにしないよう修正.
From: Takashi Nishimoto <g96p0935@mse.waseda.ac.jp>
-getshell, getpipe, execdict �ؿ��ˤ����ơ�
-�Хåե�̾�˺��¹Ԥ��Ƥ��륳�ޥ��̾(Ĵ�٤Ƥ���ñ��)��ޤ��褦�ʥѥ�
-����񤭤ޤ�����
+getshell, getpipe, execdict 関数において、
+バッファ名に今実行しているコマンド名(調べている単語)も含めるようなパッ
+チを書きました。
From: Colin Phipps <cph@crp22.trin.cam.ac.uk>
When a load of cookies expire w3m SEGVs on startup.
@@ -2744,265 +2744,265 @@ work out what the effects of it would be).
1999.10.21
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
-source/HTML ɽ������ buffername �ν����Ǥ���
-�ޤ���<input type=hidden> �ξ��ˤϡ�nitems �򥤥󥯥����
-���ʤ��褦�ˤ��ޤ�����
+source/HTML 表示時の buffername の修正です。
+また、<input type=hidden> の場合には、nitems をインクリメント
+しないようにしました。
1999.10.20
From: Okabe Katsuya <okabe@okaibm.hep.okayama-u.ac.jp>
-<dt> �� <dd> �δ֤� <p>(..</p>) �� <h3>..<h3> �ʤɤ������
-����ʹ����� bold �ˤʤäƤ��ޤ��Х��ν�����
+<dt> と <dd> の間に <p>(..</p>) や <h3>..<h3> などがあると
+それ以降全て bold になってしまうバグの修正.
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
-��ư�ե졼��ɽ���λ��� 'B'(backBf) �Ǹ��� HTML ��ä��ͤˤ��뤿���
-�����򸵤� HTML �ΥХåե��ؤΥݥ��󥿤�Ф��Ƥ����ͤˤ��Ƥߤޤ�����
-�����ơ����ε�����Ȥ��ȡ�'F'(rFrame), 'v'(vwSrc), '='(pginfo) ��
-�ȥ���ư���ǽ�ˤʤ뤳�Ȥ˵��Ť��ޤ��������� patch �Ǥ���
+自動フレーム表示の時に 'B'(backBf) で元の HTML も消す様にするための
+機構を元の HTML のバッファへのポインタを覚えておく様にしてみました。
+そして、その機構を使うと、'F'(rFrame), 'v'(vwSrc), '='(pginfo) が
+トグル動作可能になることに気づきました。その patch です。
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
--dump ���ץ������ѻ��ΰʲ���ư��������ޤ�����
-��w3m -dump < file ���ȺǸ�� \377 �����롣
-��w3m -dump -s < file �ʤɤ��������Ѵ�����ʤ���
- -num, -S �ʤɤ�����ʤ���
-��w3m -dump -T text/plain < file ��������Ϥ���ʤ���
+-dump オプション使用時の以下の動作を修正しました。
+・w3m -dump < file だと最後に \377 が入る。
+・w3m -dump -s < file などがコード変換されない。
+ -num, -S なども効かない。
+・w3m -dump -T text/plain < file が何も出力されない。
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
-��menu.c: graphic char �ط��ν���(Cygwin ����ߤ� terms.c ��)
-��terms.c: Cygwin �ξ��ˤ� T_as = T_as = T_ac = ""
- graph_ok() �� T_ac != '\0' ���ɲ�
-��LINES - 1 �ȤʤäƤ��ޤäƤ����ս�� LASTLINE �ˤ��ޤ�����
- (����ǡ�LINES �� terms.c �ʳ�����ä��ޤ���)
-��bookmark.c: KANJI_SYMBOL -> LANG == JA
+・menu.c: graphic char 関係の修正(Cygwin がらみは terms.c へ)
+・terms.c: Cygwin の場合には T_as = T_as = T_ac = ""
+ graph_ok() に T_ac != '\0' を追加
+・LINES - 1 となってしまっていた箇所を LASTLINE にしました。
+ (これで、LINES が terms.c 以外から消えました)
+・bookmark.c: KANJI_SYMBOL -> LANG == JA
From: "OMAE, jun" <jun-o@osb.att.ne.jp>
-./configure ��
+./configure で
#define LANG JA
#undef KANJI_SYMBOLS
-�ˤʤ�褦�������� make ���� w3m �� popup menu ��Ф����Ȥ���
-�� core dump ���ޤ�.
+になるように答えて make した w3m で popup menu を出そうとする
+と core dump します.
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
-��frame �����ܸ줬�ޤޤ�Ƥ��ʤ����˥������Ѵ��˼��Ԥ���Х��ν�����
-��mouse_init() �����¦�ˡ�
-��doc/menu.submenu �����ܸ줬���äƤ��ޤ���(_o_)
+・frame に日本語が含まれていない場合にコード変換に失敗するバグの修正.
+・mouse_init() を安全側に。
+・doc/menu.submenu に日本語が入っていました(_o_)
From: SASAKI Takeshi <sasaki@isoternet.org>
-1. Location: �إå��ǰ�ư����Ȥ��ˡ���Ȥ� URI �˥�٥뤬
-�Ĥ��Ƥ����餽�Υ�٥�򿷤��� URI ���������դ���褦�ˤ�����
-2. local CGI �� REMOTE_ADDR ���ʤ��� 128.0.0.1 �ˤʤäƤ��� (^^;)
-�Τǡ�127.0.0.1 �ˤ�����
+1. Location: ヘッダで移動するときに,もとの URI にラベルが
+ついていたらそのラベルを新しい URI の末尾に付けるようにした。
+2. local CGI の REMOTE_ADDR がなぜか 128.0.0.1 になっていた (^^;)
+ので,127.0.0.1 にした。
1999.10.15
From: Okabe Katsuya <okabe@okaibm.hep.okayama-u.ac.jp>
- 1. cookie �� name ����Ӥ� case sensitive �ǹԤʤäƤ�����ʬ���Ĥä�
- ��������.
- 2. terminal �ξ��֤ˤ�ä�, sleep_till_anykey() �ǥ����򲡤��Ƥ�ľ��
- ���ξ��֤����ʤ����Ȥ���������ν���.
- �ޤ�, ���ΤȤ��Υ������ϤϼΤƤ�褦�ˤ��� (Ϣ³���� disp_message()
- ��ư����������Τ�).
- �ޤ�, ����� sleep ���֤����Ǥ���褦�ˤ���.
- 3. HTTPRequest �������������.
- �ְ�äƤ��餴���ʤ���.
+ 1. cookie で name の比較を case sensitive で行なっている部分が残って
+ いたのを修正.
+ 2. terminal の状態によって, sleep_till_anykey() でキーを押しても直に
+ 元の状態に戻らないことがある問題の修正.
+ また, このときのキー入力は捨てるようにした (連続した disp_message()
+ の動作がおかしいので).
+ また, 最大の sleep 時間を指定できるようにした.
+ 3. HTTPRequest の引数を整理した.
+ 間違ってたらごめんなさい.
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
-configure�� lib*.a �� lib*.so ���������� -l* ��
-2���դ��Ƥ��ޤ�����ν�����
+configureで lib*.a と lib*.so が両方ある場合に -l* が
+2つ付いてしまう問題の修正.
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
-�������� HTML ������������� URL ���� HTML-quote ���Ƥ��ʤ��ä��Τ���
-��frame �γƥ������� <base href=... target=...> ���ɤ�褦�ˤ�����
-��file://host/�� �� ftp://host/�� �����ؤ���Ȥ���
- port �λ��̵꤬������ ftp �Υǥե���Ȥ� port(21) ��Ȥ��ͤˤ�����
-��BASE �Ȥʤ� URL �����䴰������ϡ�scheme ��Ʊ�����Τߤˤ�����
+・内部で HTML を生成する場合に URL 等を HTML-quote していなかったのを修正
+・frame の各ソースの <base href=... target=...> を読むようにした。
+・file://host/… を ftp://host/… に切替えるとき、
+ port の指定が無い場合は ftp のデフォルトの port(21) を使う様にした。
+・BASE となる URL から補完する場合は、scheme が同じ場合のみにした。
From: Takashi Nishimoto <g96p0935@mse.waseda.ac.jp>
From: hsaka@mth.biglobe.ne.jp (Hironori Sakamoto)
-�Хåե��Υ�󥯴ط���������
+バッファのリンク関係の整理.
From: SASAKI Takeshi <sasaki@isoternet.org>
-domain, path �Ȥ��Ʊ��� name �������ۤʤ� cookie ��
-ʣ������줿���ˡ������� cookie ���ĤäƤ��ޤ����Ȥ�
-����褦�Ǥ���
+domain, path ともに同一で name だけが異なる cookie が
+複数送られた場合に,以前の cookie が残ってしまうことが
+あるようです。
From: Okabe Katsuya <okabe@okaibm.hep.okayama-u.ac.jp>
-(cookie������Ϣ)
-name �� case insensitive ����Ӥ��ʤ���Фʤ�ʤ��褦�ʤΤ�,
-���ν������ɲä��Ƥ�������.
+(cookie修正関連)
+name は case insensitive で比較しなければならないようなので,
+次の修正も追加してください.
From: aito
-��~/.w3m/cookie ���ʤ����� C-k ��¹Ԥ���ȥ��������
- �����礬���ä���
-��-dump �ǥ��å��������륵���Ȥ����Ƥ����פ����Ȥ��ˡ�
- ~/.w3m/cookie ����������ʤ��ä���
-��&xxx;�� Latin-1 ��ʸ����Ф��Ƥ���Ȥ��ˡ�����ʸ���ξ���
- linebreak ����Ƥ����Х��ν�����
+・~/.w3m/cookie がない場合に C-k を実行するとコアダンプ
+ する場合があった.
+・-dump でクッキーを送るサイトの内容をダンプしたときに,
+ ~/.w3m/cookie が更新されなかった.
+・&xxx;で Latin-1 の文字を出しているときに,その文字の場所で
+ linebreak されていたバグの修正.
From: sakane@d4.bsd.nes.nec.co.jp (Yoshinobu Sakane)
- o "w3m http://foo.co.jp/foo.jpg"�¹Ը塢
- "Hit any key to quit w3m:" �ȥ�å�������Ф�����λ����
- ����碌��褦�ˤ���
- o "w3m http://foo.co.jp/foo.tar.gz"�Ǽ¹Ԥ���download�塢
- w3m��λ�� usage ���Фʤ��褦�ˤ���(�嵭��Ʊ��)
- o ftp �ץ��ȥ����download�桢�в��ɽ������褦�ˤ���
- o ftp �ץ��ȥ����download�桢���Ǥ��ǽ�Ȥ���
- o download���ηв�ɽ����showProgress()�ǹԤ��褦���ѹ�
- o FTP_proxy �����ꤵ��Ƥ������no_proxy��ftp�����Ф����
- ž��������˹Ԥ��Ƥ��ʤ��ä����Ȥ���
- o �����ѥå���Ŭ�Ѥ�ϳ��Ƥ�����ʬ������
- o conv.c:cConvJS()���Ф��ƹԤä��ѥå��ΰ����˸���(�¼�Ū
- �ˤ�����̵����)�����ä��Τǡ��������
+ o "w3m http://foo.co.jp/foo.jpg"実行後、
+ "Hit any key to quit w3m:" とメッセージを出し、終了を待
+ ち合わせるようにした
+ o "w3m http://foo.co.jp/foo.tar.gz"で実行し、download後、
+ w3m終了時 usage が出ないようにした(上記と同じ)
+ o ftp プロトコルでdownload中、経過を表示するようにした
+ o ftp プロトコルでdownload中、中断を可能とした
+ o download時の経過表示をshowProgress()で行うように変更
+ o FTP_proxy が設定されている時、no_proxyなftpサーバからの
+ 転送が正常に行われていなかったことを修正
+ o 一部パッチの適用が漏れていた部分を復活
+ o conv.c:cConvJS()に対して行ったパッチの一部に誤り(実質的
+ には問題無いが)があったので、それを修正
From: Okabe Katsuya <okabe@okaibm.hep.okayama-u.ac.jp>
-proxy server �� SSL ���Ȥ���褦�˲��ɡ�
+proxy server で SSL が使えるように改良.
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
<form enctype="multipart/form-data"> <input type=file>
-�б��Τ���� patch �Ǥ���
+対応のための patch です。
From: "OMAE, jun" <jun-o@osb.att.ne.jp>
-w3m-991008 �� cygwin �ǻ��Ѥ��Ƥ���
- 1. / �򻲾Ȥ���� Directory list ��ɽ������ʤ�.
- 2. ��������ǥ��쥯�ȥ�򻲾Ȥ����, �ե�����ؤ� link ��
- file://///foo �Τ褦�ˤʤ�.
- 3. file:///windows �� load �Ǥ��ʤ�.
-�Ȥ����Τ�����ޤ����Τ�, patch ���äƤߤޤ���.
+w3m-991008 を cygwin で使用していて
+ 1. / を参照すると Directory list が表示されない.
+ 2. ローカルディレクトリを参照すると, ファイルへの link が
+ file://///foo のようになる.
+ 3. file:///windows が load できない.
+というのがありましたので, patch を作ってみました.
From: Fumitoshi UKAI <ukai@debian.or.jp>
% http_proxy=http://foo/bar w3m http:
-�ʤɤȤ����Ȥ��� segmentation fault ���ޤ���
+などとしたときに segmentation fault します。
1999.10.8
From: sakane@d4.bsd.nes.nec.co.jp (Yoshinobu Sakane)
-ISO-2022-jp ����ʸ��ǡ��ۤʤ륭��饯�����åȤؤλؼ���
-���ߤ��Ƥ�������н补
+ISO-2022-jp 風の文書で,異なるキャラクタセットへの指示が
+混在している場合の対処.
From: aito
-table ��� <pre>... <p>... </pre><p> �Ȥ��������󤬤���ȡ�
-<pre>�γ�¦��ʸ���ɤ����ߤ�����ʤ��ʤ�Ȥ����Х��ν�����
-ʸ����� anchor �ο�������륫���󥿤� short ���� int ���ѹ���
-<b><u>hoge</u></b> moge �Τ褦�ʵ��Ҥǡ�`hoge '����ʬ�˲�����
-������Ƥ��ޤ��Х��ν�����
+table 中に <pre>... <p>... </pre><p> というタグ列があると,
+<pre>の外側で文の追いこみがされなくなるというバグの修正.
+文書内の anchor の数を数えるカウンタを short から int に変更.
+<b><u>hoge</u></b> moge のような記述で,`hoge 'の部分に下線が
+引かれてしまうバグの修正.
1999.10.7
From: Okabe Katsuya <okabe@okaibm.hep.okayama-u.ac.jp>
-Cookie, SSL �Υ��ݡ��ȡ�
+Cookie, SSL のサポート.
From: aito
-configure �ǡ�lib*.a �����Ǥʤ� lib*.so ��õ���褦�ˤ����������ʥߥå�
-�饤�֥�ꤷ�����äƤ��ʤ������ƥ�ؤ���θ��
+configure で,lib*.a だけでなく lib*.so も探すようにした.ダイナミック
+ライブラリしか持っていないシステムへの配慮.
From: HIROSE Masaaki <hirose31@t3.rim.or.jp>
From: Anthony Baxter <anthony@ekorp.com>
-Host: �إå��˥ݡ����ֹ���դ��Ƥ��ʤ��ä���
+Host: ヘッダにポート番号を付けていなかった.
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
-��꡼���᡹�������ʤ��ΤǤ�������٥�˰�ư�������� URL ���Ѥ��ʤ�
-�ʤäƤ��ޤ����Τǡ����ν��� patch �Ǥ���
-�� http://www.ntk.net/ ���Ƥ��Ƶ��Ť��ޤ�����
-�ޤ�����٥�˰�ư�������ˤϤޤ��Х������ä� copyBuffer() ��ȤäƤ��뤿��ˡ�
-sourcefile ��Ʊ���ˤʤ� Buffer ��ä������˸��� Buffer �� sourcefile
-��ä���Ƥ��ޤ��ޤ���¾�ˤ⡢pagerSource �� frameset ��ޤ����褦�Ǥ���
-�����ǡ�������(int �Υݥ���)���ߤ��Ƥ����ơ����줬 0 �ˤʤä���ä��褦��
-���Ƥߤޤ�����
+リリース早々申し訳ないのですが、ラベルに移動した時に URL が変わらなく
+なっていましたので、その修正 patch です。
+# http://www.ntk.net/ 見ていて気づきました。
+また、ラベルに移動した時にはまだバグがあって copyBuffer() を使っているために、
+sourcefile も同じになり Buffer を消した時に元の Buffer の sourcefile
+も消されてしまいます。他にも、pagerSource や frameset もまずいようです。
+そこで、カウンタ(int のポインタ)を設けておいて、それが 0 になったら消すように
+してみました。
From: Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-<ul> ���Υͥ��Ȥ� 20 ��ۤ��������Ƥ�����Τν����Ǥ���
-��MAX_ENV_LEVEL(=20) ��ۤ����ͥ��Ȥ�̵�뤷�ޤ���
- MAX_ENV_LEVEL ��ۤ�������ɽ�����ݾڤǤ��ޤ���
- �� <dl><li> �Ȥ� <ul><dt> �Ȥ���ʿ���ǽФƤ���;_;
-��MAX_INDENT_LEVEL(=10) ��ۤ����ͥ��ȤϤ���ʾ奤��ǥ�Ȥ��ޤ���
-�Ȥ��Ƥ��ޤ���
+<ul> 等のネストが 20 を越えると落ちていたものの修正です。
+・MAX_ENV_LEVEL(=20) を越えたネストは無視します。
+ MAX_ENV_LEVEL を越えた場合の表示は保証できません。
+ # <dl><li> とか <ul><dt> とかが平気で出てくる;_;
+・MAX_INDENT_LEVEL(=10) を越えたネストはそれ以上インデントしません。
+としています。
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
-Content-Transfer-Encoding: quoted-printable �ξ��ΥХ������Ǥ���
+Content-Transfer-Encoding: quoted-printable の場合のバグ修正です。
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
-���Dz��ԤǺǸ��ʸ���������Σ��Х����ܤ��ȥ�˥塼�����������ʤä�
- �����ΤˤȤꤢ�����б���(terms.c ���б����٤���)
-���ե�����̾��ޥ�������ɽ��������Υ������η׻�����
- (��������� table �ˤʤäƤ���ȻפäƤ���˺��Ƥޤ���)
+・最下行で最後の文字が漢字の1バイト目だとメニューがおかしくなって
+ いたのにとりあえず対応。(terms.c で対応すべき?)
+・ファイル名をマルチカラム表示する時のカラム数の計算を修正
+ (岡部さんの table になってからと思っていて忘れてました)
From:aito
-<frameset > ����� COLS= ��
-ROWS= ��ξ�����ꤷ�Ƥ���ȡ��ե졼�ब���ޤ��������
-�Ǥ��ʤ��ʤ�褦�Ǥ���
+<frameset > の中に COLS= と
+ROWS= が両方指定してあると,フレームがうまくレンダリング
+できなくなるようです.
From: sakane@d4.bsd.nes.nec.co.jp (Yoshinobu Sakane)
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-2022-JP
X-Mailer: mnews [version 1.21PL5] 1999-04/04(Sun)
-�京�Ǥ���
-w3m-990928 ��gziped �����(����)�����򤷤ޤ�����
- o "w3m /tmp/hoge.Z"�򸫤���褦�ˤ���
- o ��.gz �ʤɤΥ��󥫡���"Return"�����ξ�硢text/plain��
- �����gunzip����ɽ��������ʳ��Ǥ���� download�����
- ���ˤ���
- o mouse����w3m ��"w3m /tmp/hoge.gz"����ȡ�w3m��λ�塢
- mouse �������ʤ��ʤ뤳�Ȥν���
- o ��.gz��w3m ��ɽ��������������Ӥ��Ĥ뤳�Ȥν���
- (��������Υѥå���ޡ���)
- o download�桢download byte����ɽ������褦�ˤ���(512��
- ������)
- o download�桢SIGINT��ͭ���ˤ���(DEL�����ʤɤ�download��
- ���ǤǤ���)
+坂根です。
+w3m-990928 のgziped 廻りの(一部)改善をしました。
+ o "w3m /tmp/hoge.Z"を見られるようにした
+ o 〜.gz などのアンカーで"Return"だけの場合、text/plainで
+ あればgunzipして表示、それ以外であれば downloadするよ
+ うにした
+ o mouseありw3m で"w3m /tmp/hoge.gz"すると、w3m終了後、
+ mouse が効かなくなることの修正
+ o 〜.gzをw3m で表示した時、ゾンビが残ることの修正
+ (鵜飼さんのパッチをマージ)
+ o download中、download byte数を表示するようにした(512バ
+ イト毎)
+ o download中、SIGINTを有効にした(DELキーなどでdownloadを
+ 中断できる)
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
-�� B-encode �Υǥ����ɻ��ΥХ������Ǥ�(ȯ���ԤϺ京����)��
-�� Currentbuf == NULL �ξ��ˡ�disp_message() ����Ѥ�����硢
- ����äȴ����Ǥ����Τǽ������ޤ�����
+○ B-encode のデコード時のバグ修正です(発見者は坂根さん)。
+○ Currentbuf == NULL の場合に、disp_message() を使用した場合、
+ ちょっと危険でしたので修正しました。
From: Hironori Sakamoto <h-saka@lsi.nec.co.jp>
- >> ��꡼���᡹�������ʤ��ΤǤ�������٥�˰�ư�������� URL ���Ѥ��ʤ�
- >> �ʤäƤ��ޤ����Τǡ����ν��� patch �Ǥ���
-���ν������ְ�äƤ��ޤ����Τǡ����ν�����
-vwSrc ���ˤ�����褦�ʸ��ݤˤʤäƤ��ޤ����ΤǤ��ν����Ǥ���
-�ޤ����ե졼��ɽ���� target °���Τ��륢�󥫡��� ESC RET �� download
-���褦�Ȥ���Ȱ۾�ˤʤäƤ��ޤ����Τǡ����ν����Ǥ���
+ >> リリース早々申し訳ないのですが、ラベルに移動した時に URL が変わらなく
+ >> なっていましたので、その修正 patch です。
+この修正が間違っていましたので、その修正と
+vwSrc 時にも似たような現象になっていましたのでその修正です。
+また、フレーム表示で target 属性のあるアンカーを ESC RET で download
+しようとすると異常になっていましたので、その修正です。
1999.9.28
From: SASAKI Takeshi <sasaki@isoternet.org>
-wrap search ��Ԥʤ������
-patch ���äƤߤޤ��������Τ��Ȥ���ǽ�ˤʤäƤ��ޤ���
+wrap search を行なうための
+patch を作ってみました。次のことが可能になっています。
-1. forward/backward search �Ǥ� wrap search(ʸ�Ϥν�ü/��Ƭ�ޤ�
-��ã��������Ƭ/��ü���� search ��³����)
-2. ���ץ����� search �Υǥե���Ȥο�����ѹ����롣
-3. ���ޥ�ɥ饤���ǥǥե���Ȥ������դˤ���(-W �Ȥ������ץ�����
-������ƤƤ���ޤ�)��
-4. �����ˤ�� search �ο�������ؤ�(�̾�Ǥ� C-w, lynx ���Х���ɤǤ�
-w �ˤ��Ƥ���ޤ���)
+1. forward/backward search での wrap search(文章の終端/先頭まで
+到達したら先頭/終端から search を続ける)
+2. オプションで search のデフォルトの振舞を変更する。
+3. コマンドライン上でデフォルトの設定を逆にする(-W というオプションで
+割り当ててあります)。
+4. キーによる search の振舞の切替え(通常では C-w, lynx 風バインドでは
+w にしてあります。)
From: SASAKI Takeshi <sasaki@isoternet.org>
-���� w3m �� &#xnnnn(n ��16�ʿ���)�β�᤬���������褦�ʤΤ�
-patch ���äƤߤޤ�����
+今の w3m は &#xnnnn(n は16進数字)の解釈がおかしいようなので
+patch を作ってみました。
Change default character color to 'terminal' (do nothing). [aito]
From: Okabe Katsuya <okabe@okaibm.hep.okayama-u.ac.jp>
-linux ���󥽡���� BG_COLOR �� define ���� w3m ��Ȥ���, ��λ������
-w3m �β��̤����Τޤ޻ĤäƤ��ޤ��褦�Ǥ�.
+linux コンソールで BG_COLOR を define した w3m を使うと, 終了した後
+w3m の画面がそのまま残ってしまうようです.
From: Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-��������𤷤����ե졼����� <pre> ��ľ��β��Ԥ����������ʤ���
-�����򤷤ޤ�����
+以前に報告した、フレーム内の <pre> の直後の改行がおかしくなる件の
+修正をしました。
From: Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
- >> �Dz��Ԥ�겼�ǥޥ����򥯥�å�����ȡ����󥫡��ΰ��֤�
- >> ��������ΰ��֤������Τǵ����Ĥ����ΤǤ�����
-�ʲ��� patch �Ǥɤ��Ǥ��礦��
+ >> 最下行より下でマウスをクリックすると、アンカーの位置と
+ >> カーソルの位置がずれるので気がついたのですが、
+以下の patch でどうでしょう。
From: Takashi Nishimoto <g96p0935@mse.waseda.ac.jp>
-�ޥ����α��ܥ���ǥݥåץ��åץ�˥塼�������ޤ�����
-����������ư���Ƥ��鳫���������������Ȼפ��ޤ���
+マウスの右ボタンでポップアップメニューが開きますが、
+カーソルを移動してから開いた方が自然だと思います。
From: Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
- >> ���ܤ���� patch ���ȡ����󥫡���Υ�������ξ�DZ�����å������
- >> ����������Ǥ��ޤ��ޤ��󤫡�
- >> ��Ϥꡢ���ܥ���Ⱥ��ܥ���Ȥǽ�����ʬ�������������Ȼפ��ޤ���
-�������� patch �Ǥ���
+ >> 西本さんの patch だと、アンカー上のカーソルの上で右クリックすると
+ >> リンク先へ飛んでしまいませんか?
+ >> やはり、右ボタンと左ボタンとで処理は分けた方がいいと思います。
+修正した patch です。
@@ -3010,15 +3010,15 @@ From: Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
Fix a bug that renders &lt;...&gt; in form button as <...> tag.
- ������config.h �� #define DICT ��������ͭ���ˤʤ뵡ǽ�ǡ�
-SIGSEGV ���Ƥ��ޤ� bug ��ߤĤ����Τ� fix ���� patch ��񤭤ޤ�����
-����� update �λ��������ĺ����ȴ򤷤��Ǥ���
-(��¼���� uirou@din.or.jp)
+ 先程、config.h で #define DICT した時に有効になる機能で、
+SIGSEGV してしまう bug をみつけたので fix する patch を書きました。
+次回の update の時に入れて頂けると嬉しいです。
+(飯村さん uirou@din.or.jp)
-w3m ���� <BODY BACKGROUND="...">
-�Ȥ��ä������� background image ��Ѥ��������ʤ��褦�Ǥ����Τǡ�
-�ʤ�Ȥʤ� patch ���äƤߤޤ����Τ� contribute ���ޤ���
-(��¼���� uirou@din.or.jp)
+w3m から <BODY BACKGROUND="...">
+といった形式の background image を観る事が出来ないようでしたので、
+なんとなく patch を作ってみましたので contribute します。
+(飯村さん uirou@din.or.jp)
From: Doug Kaufman <dkaufman@rahul.net>
I just downloaded and compiled the 19990902 version of w3m with cygwin
@@ -3026,1222 +3026,1222 @@ I just downloaded and compiled the 19990902 version of w3m with cygwin
compilation problems.
-NEXTSTEP 3.3J�ˤơ�w3m(beta-990901)��make�����ΤǤ�����
-local.c�ˤơ�������줺�˻Ȥ��Ƥ����ѿ�������ޤ����Τ�
-�ѥå������餻��ĺ���ޤ���
-(����@�����ؤ���)
+NEXTSTEP 3.3Jにて、w3m(beta-990901)をmakeしたのですが、
+local.cにて、定義されずに使われている変数がありましたので
+パッチを送らせて頂きます。
+(早瀬@大阪大学さん)
-From: ����
-Subject: �ꥹ�ȴĶ���� HR
-�ꥹ�ȴĶ���� HR ��¸�ߤ��Ƥ����硤Netscape �Ǥϥ���ǥ�Ȱ��֤���
-���Ϥ���ޤ��������Ʊ�����Ȥ��Ǥ��ʤ����Ȥ�äƤߤޤ��������������Ϥ�
-����ޤ��󤬡�ư��Ƥ���褦�Ǥ���
+From: おき
+Subject: リスト環境内の HR
+リスト環境中に HR が存在している場合,Netscape ではインデント位置から
+開始されます.これと同じことができないかとやってみました.正しいかはわ
+かりませんが,動作しているようです.
-From: ������
+From: おかだ
Subject: latin1_tbl
-HTML��� &#12450; �Τ褦��ɽ��������ȡ�Segmentation fault �������Ȥ�
-������Τǡ��ʲ��Τ褦�ˤ��Ƥ��Τ��Ǥ��ޤ���������Ǥ����ΤǤ��礦����
-
-CGI �ξ��Υե�����̾���ϤΥХ�(_o_)�Ȥ��⤢�ä��Τǡ�
-local CGI ���Ƥߤޤ�����
-����ȡ�
-���������ե����뤬�õ���(discardBuffer)
-���إå���ʬ���ɤߤˤ����ʤ�(loadGeneralFile, openURL)
-���������ȥ��顼�������(loadGeneralFile)
-���� URL �� :///filename �Ȥ��������ʤ�(parsedURL2Str)
-�ȡ����ʤ�Х��äƤޤ���T_T
-���������ˤϡ�scheme �� SCM_LOCALCGI �����ꤹ��Τ�ߤ�ơ�
-(SCM_LOCAL �Τޤޤˤ��Ƥ�����) is_cgi �ե饰��Ȥ��ͤˤ��Ƥ��ޤ���
-��ͳ�ϡ�scheme �Ȥ��� SCM_LOCALCGI �����뤳�Ȥ��θ���Ƥ��ʤ���ʬ����
-���ʤꤢ�ä�����Ǥ���(���ܤ���)
-
-������Ϥ� ^V + ���� �ξ��ˤ��ޤ�ư��ʤ���Τ������ޤ�����
-�Ĥ��Ǥ�̵�̤��ѿ����������ޤ���(gcc -Wall ���ܤ���Τ�)��
-(���ܤ���)
-
-�ʲ�������������ޤ���:
-
- 1. �Ѹ��Ǥ� Linux ���󥽡���Ǽ¹Ԥ����Ȥ�, ����ե�����ʸ����������.
- 2. �����Ĥ��� kterm �Υ��顼ɽ�����Զ��.
- EWS4800 ���� kterm �Ǥ�, termcap �� me �ǥ��顼���ꥻ�åȤ���ʤ�
- �褦�Ǥ�.
- ����� termcap �� op= �������, op ��Ȥäƥ��顼��ꥻ�åȤ����
- ���ˤ��Ƥߤޤ���.
- 3. ����¾������.
-(��������)
-
-�ɤ�����ĤΥХ��������Τ褦�Ǥ�.
-��ĤϤ��ʤ��礭�ʥХ���, �ʤ�����������̵꤬���ˤʤäƤ��ޤ���.
-�⤦��ĤϥХ��Ȥ������ϻ��ͤǤ���, ��ư�����������˴ݤ��Ȥ���, ��
-�Ȥ�Ʊ������������ǰ�2ʸ�������Ф��������Ȥ�������Ǥ�.
-(��������)
-
-w3m �� download ������� gunzip �ΰ����˴��Ĥ��Զ�礬����ޤ�����
-���ե졼���ޤ���̤��� download ���褦�Ȥ���Ȱ۾�ˤʤ�
-(���ܤ���)
-
-���ν�����Ԥʤ��ޤ���:
- 1. <td> �����������꤬ͭ���ˤʤä����, <table> �����꤬¸�ߤ��ʤ���
- ��� table �μºݤ����� <td> �������������ͤ˰�¸����Ȥ����Զ��
- ���������Τǥޥȥ�å����׻��νŤߤ��ѹ����ޤ���.
- 2. 1 �ԥ����������®�٤����.
-(��������)
+HTML中に &#12450; のような表記があると、Segmentation fault で落ちるとき
+があるので、以下のようにしてしのいでいますが、これでいいのでしょうか?
+
+CGI の場合のファイル名解析のバグ(_o_)とかもあったので、
+local CGI を試してみました。
+すると、
+・ソースファイルが消去される(discardBuffer)
+・ヘッダ部分を読みにいかない(loadGeneralFile, openURL)
+・セグメントエラーで落ちる(loadGeneralFile)
+・現 URL が :///filename とおかしくなる(parsedURL2Str)
+と、かなりバグってましたT_T
+修正の方針は、scheme を SCM_LOCALCGI に設定するのを止めて、
+(SCM_LOCAL のままにしておいて) is_cgi フラグを使う様にしています。
+理由は、scheme として SCM_LOCALCGI があることを考慮していない部分が、
+かなりあったためです。(坂本さん)
+
+一行入力で ^V + 漢字 の場合にうまく動作しないものを修正しました。
+ついでに無駄な変数を整理しました(gcc -Wall で怒られるので)。
+(坂本さん)
+
+以下の問題を修正しました:
+
+ 1. 英語版を Linux コンソールで実行したとき, グラフィクス文字が化ける.
+ 2. いくつかの kterm のカラー表示の不具合.
+ EWS4800 等の kterm では, termcap の me でカラーがリセットされない
+ ようです.
+ それで termcap に op= があれば, op を使ってカラーをリセットするよ
+ うにしてみました.
+ 3. その他もろもろ.
+(岡部さん)
+
+どうも二つのバグが原因のようです.
+一つはかなり大きなバグで, なんと相対幅指定が無効になっていました.
+もう一つはバグというよりは仕様ですが, 浮動小数を整数に丸めるときに, 中
+身が同じセルの幅が最悪2文字差が出る事があるという問題です.
+(岡部さん)
+
+w3m で download する時や gunzip の扱いに幾つか不具合がありました。
+・フレームを含む画面から download しようとすると異常になる
+(坂本さん)
+
+次の修正を行ないました:
+ 1. <td> の相対幅指定が有効になった結果, <table> 幅指定が存在しない場
+ 合に table の実際の幅が <td> の相対幅指定値に依存するという不具合
+ が生じたのでマトリックス計算の重みを変更しました.
+ 2. 1 行スクロールの速度を改善.
+(岡部さん)
1999.9.3
-CGI���ѻ���URL���ϤΥХ�������(���ܤ���)
+CGI使用時のURL解析のバグ修正.(坂本さん)
- 1. ���̤�����κݤ�ʸ�����Ƚ����ˡ�θ���ν���.
- 2. ���̺������ɬ������Ƚ����ˡ�θ���ν���.
- 3. no_clrtoeol ��.
-(��������)
+ 1. 画面の描画の際の文字種の判定方法の誤りの修正.
+ 2. 画面再描画の必要性の判断方法の誤りの修正.
+ 3. no_clrtoeol の削除.
+(岡部さん)
-w3m �Ѹ��Ǥε�ư�����������Х��ν�����
-��T_eA �� '\0' �ξ��Ǥ� graphic �⡼�ɤ�Ȥ���
- # ���Ĥ���ü���Ǥ� eA ��ɬ�פʤ��Τǡ�
-��menu.c �� graphic �⡼�ɤ��Ȥ��ʤ����ˤ������ˤ�����
-(���ܤ���)
+w3m 英語版の挙動がおかしいバグの修正.
+・T_eA が '\0' の場合でも graphic モードを使う。
+ # 幾つかの端末では eA が必要ないので。
+・menu.c で graphic モードが使えない場合により安全にした。
+(坂本さん)
1999.9.2
-�Ѹ��Ǥǥ���ѥ��뤹������Զ������� (���ܤ���)
+英語版でコンパイルする場合の不具合を修正. (坂本さん)
-�Ѹ��ǤΥե������ Latin-1 ʸ���򥳥�ȥ�����ʸ����Ƚ�Ǥ��Ƥ���
-�Х��ν�����(��������)
+英語版のフォームで Latin-1 文字をコントロール文字と判断している
+バグの修正.(岡部さん)
-<pre>..</pre>����β��Ԥ�̵�뤵���Х��ν�����(��������)
+<pre>..</pre>の中の改行が無視されるバグの修正.(岡部さん)
-&quot; �����󥰥륯�����ȤˤʤäƤ����Х��ν�����(���������󤵤�)
+&quot; がシングルクオートになっていたバグの修正.(くろきげんさん)
-file://localhost/... ���Ȥ��ʤ��ʤäƤ����Х��ν�����(���ܤ���)
+file://localhost/... が使えなくなっていたバグの修正.(坂本さん)
1999.8.31
-���ץ������̤�¿����ʪ�����򤹤���ʬ��<select>�ˤ��Ƥߤ���
+オプション画面で多数の物を選択する部分を<select>にしてみた.
From: hsaka@mth.biglobe.ne.jp
-w3m-990820 �ؤ� patch(���Σ�) �Ǥ���
+w3m-990820 への patch(その1) です。
-�������(linein.c)�Ǥ�ư�����/���ɤ��ޤ�����
-���ե�����̾�䥳�ޥ�ɤ����Ϥξ��ϡ���Ƭ�Υ��ڡ����������Ƥ���
- �֤��ͤˤ��ޤ�����(�Ѥʥե�����̾������Ƥ��ޤ����Ȥ����ä�����)
-���䴰��ư����������ޤ�����
+一行入力(linein.c)での動作を修正/改良しました。
+・ファイル名やコマンドの入力の場合は、先頭のスペースを削除してから
+ 返す様にしました。(変なファイル名が出来てしまうことがあったため)
+・補完の動作を整理しました。
(1) LOAD(V), SAVE_LINK(a, ESC RET)
- ��˥ե�����̾���䴰 (CPL_ALWAYS)
- �䴰�����ϡ�TAB �� SPACE
+ 常にファイル名を補完 (CPL_ALWAYS)
+ 補完キーは、TAB と SPACE
flag = IN_FILENAME
- (2) SAVE(ESC s), SAVE_SREEEN(S) �� "|" �ǻϤޤ�ȥѥ��פȤߤʤ����
+ (2) SAVE(ESC s), SAVE_SREEEN(S) … "|" で始まるとパイプとみなされる
SHELL(!), PIPE_SHELL(#), READ_SHELL(@)
- C-x ���䴰��ǽ��ȥ��롣�ǽ��ͭ�� (CPL_ON)
- �䴰�����ϡ�TAB �Τ�
+ C-x で補完機能をトグル。最初は有効 (CPL_ON)
+ 補完キーは、TAB のみ
flag = IN_COMMAND
- �� ������Τ褦�ʥ��ޥ�ɤ��䴰�Ͻ���ޤ���
- (3) GOTO(U), SEARCH(/), �ե���������Ϥʤ��̾������
- C-x ���䴰��ǽ��ȥ��롣�ǽ��̵�� (CPL_OFF)
- �䴰�����ϡ�TAB �Τ�
- flag = ̵��
- (4) �ѥ���ɤ�����
- ����䴰���ʤ� (CPL_NEVER)
+ ※ シェルのようなコマンドの補完は出来ません
+ (3) GOTO(U), SEARCH(/), フォームの入力など通常の入力
+ C-x で補完機能をトグル。最初は無効 (CPL_OFF)
+ 補完キーは、TAB のみ
+ flag = 無し
+ (4) パスワードの入力
+ 常に補完しない (CPL_NEVER)
flag = IN_PASSWORD
From: Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-local �ե�����̾��Ÿ������ɤ��ޤ�����
-��doc-jp/README.local �� NG �ȤʤäƤ����ե�����̾�ΤۤȤ�ɤ�
- Ŭ���ʤ�Τ�Ÿ�����ޤ���doc-jp/README.local �Ϻ�����Ƥ���������
-��foo/../bar �� foo/./bar �ʤɤϾ��û�̤��ޤ���
- FTP �ξ���û�̤��ޤ���HTTP ��û�̤��ޤ���
-��# �ǻϤޤ� local �ե�����̾�ξ��Ͼ�˥ե�����̾�Ȥߤʤ��ޤ���
- (����ޤǡ�directory/#1 �η��ϰ����Ƥ��ޤ���Ǥ�����)
-��file://FOO/bar �η��ξ��ϡ�Cygwin �Ǥ� FOO ��ɥ饤��̾�Ȥ��Ƥߤʤ�
- ����ʳ��Υ����ƥ�Ǥ� ftp://FOO/bar �� FOO ��ۥ���̾�Ȥߤʤ���
- FTP ���ޤ���
+local ファイル名の展開を改良しました。
+・doc-jp/README.local で NG となっていたファイル名のほとんどを
+ 適当なものに展開します。doc-jp/README.local は削除してください。
+・foo/../bar や foo/./bar などは常に短縮します。
+ FTP の場合も短縮します。HTTP は短縮しません。
+・# で始まる local ファイル名の場合は常にファイル名とみなします。
+ (これまで、directory/#1 の形は扱えていませんでした。)
+・file://FOO/bar の形の場合は、Cygwin では FOO をドライブ名としてみなし
+ それ以外のシステムでは ftp://FOO/bar と FOO をホスト名とみなして
+ FTP を試します。
From: Okabe Katsuya <okabe@okaibm.hep.okayama-u.ac.jp>
-ɽ�����������Х��ν�����
+表の幅が狂うバグの修正.
From: Okabe Katsuya <okabe@okaibm.hep.okayama-u.ac.jp>
-�����Ǥ�.
+岡部です.
Hironori Sakamoto <hsaka@mth.biglobe.ne.jp> writes:
-> >> �Ȥ��ǡ�pipei(`@'��`#') ��Ĵ�٤Ƥ�����ˡ�
-> >> `@' �򣳲�Ȥ��ȸǤޤäƤ��ޤ����ݤ˽Ф��路���ΤǤ�����
-> >> �Ƹ����������餷�㤤�ޤ�����
-> >> OS �� EWS4800 �Ǥ�������Ӥ�����Ƥ��ꤷ�ޤ���
+> >> とこで、pipei(`@'や`#') を調べている時に、
+> >> `@' を3回使うと固まってしまう現象に出くわしたのですが、
+> >> 再現する方いらしゃいますか?
+> >> OS は EWS4800 です。ゾンビが出来てたりします。
>
-> FreeBSD �Ǥ�Ƹ����ޤ����������Ϥޤ�ʬ����ޤ���
+> FreeBSD でも再現しました。原因はまだ分かりません。
-����äȻ��֤��Ǥ����Τ�, Ĵ�٤Ƥߤޤ���.
-shell ��ư��������, ����ޤǤ� shell �� output �� deleteBuffer �Ǿä���
-����꤬����ΤǤ���, ���� buffer �� Currentbuf �ΤȤ��Ǥ�ä��Ƥ�
-�ޤ��ޤ�.
-���θ� pushBuffer �ˤ�äƿ����� shell output �� Currentbuf ������
-�ɲä��褦�Ȥ���, ���ȸ夬��󥯤��� Buffer list ���Ǥ��Ƥ��ޤ��ޤ�.
-���Τ���, 3 ���ܤ˼¹Ԥ����Ȥ��� pushBuffer �����̵�¥롼�פˤʤäƤ�
-�ޤ��褦�Ǥ�.
+ちょっと時間ができたので, 調べてみました.
+shell を起動する前に, それまでの shell の output を deleteBuffer で消して
+いる所があるのですが, その buffer が Currentbuf のときでも消してし
+まいます.
+その後 pushBuffer によって新しい shell output を Currentbuf の前に
+追加しようとして, 前と後がリンクした Buffer list ができてしまいます.
+そのため, 3 回目に実行したときに pushBuffer の中で無限ループになってし
+まうようです.
-�����, buffer == Currentbuf �ʤ� Currentbuf �� Currentbuf->nextBuffer
-���ѹ����Ƥ��� buffer ��ä��褦�ˤ��Ƥߤޤ���.
-�Ĥ��Ǥ˶�ͭ�Ǥ������ʥ����ɤϤޤȤ�Ƥߤޤ���.
+それで, buffer == Currentbuf なら Currentbuf を Currentbuf->nextBuffer
+に変更してから buffer を消すようにしてみました.
+ついでに共有できそうなコードはまとめてみました.
From: Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-���ܤǤ���
+坂本です。
-�طʤο���Ȥ���褦�ˤ�����(#define BG_COLOR)�λ�¿�ʽ����ȡ�
-�Ĥ��Ǥ� kterm �ʤɤ�ü���� foreground, background ��Ȥ���
-�ͤˤ��Ƥߤޤ�����(�ꥯ�����Ȥ��񤫤줿�Τ�^^;)
-���ȡ��٤��������Ȥ��Ǥ���
+背景の色を使えるようにした時(#define BG_COLOR)の雑多な修正と、
+ついでに kterm などの端末の foreground, background を使える
+様にしてみました。(リクエストを囁かれたので^^;)
+あと、細かい修正とかです。
-�����ɤˤĤ��ơ�
-��clrtobotx, clrtoeolx �ΰ�̣���Ѥ��Ƥ��ޤ���
- clrtobot, clrtoeol �� term.c �ʳ��ǻȤ����ȤϤޤ��ʤ��Τ�
- �ष����clrtobotx �� clrtobot ��̾�դ��������������⡣
-��term.c �� l_prop �� int �ˤ��Ƥ��ޤä��ΤǤ���ä�
- ����򿩤����⤷��ޤ���
+コードについて、
+・clrtobotx, clrtoeolx の意味を変えています。
+ clrtobot, clrtoeol を term.c 以外で使うことはまずないので
+ むしろ、clrtobotx を clrtobot を名付けた方がいいかも。
+・term.c の l_prop を int にしてしまったのでちょっと
+ メモリを食うかもしれません。
From: Okabe Katsuya <okabe@okaibm.hep.okayama-u.ac.jp>
-�����Ǥ�.
+岡部です.
-ü���� foreground ����Ȳ��ꤷ�Ƥ�����ʬ������Τ�, �������ޤ���.
+端末の foreground を黒と仮定している部分があるので, 修正しました.
From: Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-��990820-hsaka7.patch
- ����(`/', `?')�Ǹ���ʸ���� \0 �ξ�������θ���ʸ�������Ѥ���
- NULL(C-c) �ξ��ϸ������ʤ��褦�ˤ���(vim �� less ����Ʊ��ư��)��
- �ޤ���'/' ���򲡤������Υǥե�����ͤ϶��Ȥ�����
- ����θ���ʸ����ϥҥ��ȥ��Ȥä� C-p(��) �Ǽ��Ф����Ȥ��Ǥ���
- (lynx, vim ����Ʊ��)��
+・990820-hsaka7.patch
+ 検索(`/', `?')で検索文字列が \0 の場合は前回の検索文字列を使用し、
+ NULL(C-c) の場合は検索しないようにした(vim や less 等と同じ動作)。
+ また、'/' 等を押した場合のデフォルト値は空とした。
+ 前回の検索文字列はヒストリを使って C-p(↑) で取り出すことができる
+ (lynx, vim 等と同じ)。
-��990820-hsaka8.patch
- etc.c �� checkType() �� \b �ΰ�����̩�ˤ��� less ��Ʊ�ͤˤʤ�
- �褦�˽�����"��\b��" �Ǥ� bold �� "��" �Ȥʤ롣
+・990820-hsaka8.patch
+ etc.c の checkType() で \b の扱いを厳密にして less と同様になる
+ ように修正。"あ\bあ" でも bold の "あ" となる。
-��990820-hsaka9.patch
- ������Ϥ� Shift-JIS �ξ������ܸ��ɽ��������ʤ��ʤäƤ�������ν�����
- ������ checkType() �� InnerCode(EUC) ������ˤ��Ƥ������ᡣ
- �����ǤϾ�� InnerCode ��Ȥ��ͤˤ����ޤ� checkType() �ϻȤ�ʤ��ͤˤ���
- (\b ����Ϥ���ɬ�פ��ʤ� �� ��®��)��
+・990820-hsaka9.patch
+ 一行入力で Shift-JIS の場合に日本語の表示が出来なくなっていた問題の修正。
+ 原因は checkType() が InnerCode(EUC) を前提にしていたため。
+ 内部では常に InnerCode を使う様にし、また checkType() は使わない様にした
+ (\b を解析する必要がない & 高速化)。
-��990820-hsaka10.patch
- term.c �� l_prop �� short ���ᤷ����
- ���ٹ��Τ��ᡢ��䥳���ɤ��ɤߤˤ����ʤäƤ��뤫�⡣
- �ޤ���ü���ο�(kterm �� foreground, background �ʤ�)��Ȥä�����
- need_redraw() �����ޤ�Ư���ʤ��ä����ᡢȽ����򤭤Ĥ����Ƥ��롣
+・990820-hsaka10.patch
+ term.c の l_prop を short に戻した。
+ 小細工のため、ややコードが読みにくくなっているかも。
+ また、端末の色(kterm の foreground, background など)を使った場合に
+ need_redraw() がうまく働かなかったため、判定条件をきつくしている。
1999.8.19
--S ���ץ����(less �� -s ��Ʊ��)���ɲá�< �京����
+-S オプション(less の -s と同じ)を追加.< 坂根さん
sakane@d4.bsd.nes.nec.co.jp THANKS!
-����Ҥˤʤä�ɽ�Υ��󥿥�󥰤����ޤ��Ǥ��ʤ��Х���
-������
+入れ子になった表のセンタリングがうまくできないバグの
+修正.
-ftp �Υ��ͥ������� close ��˺��ν�����
+ftp のコネクションの close し忘れの修正.
-':' �ǥ��󥫡����ɲä������ˡ�TAB�ǤΥ��󥫡���ư��
-���֤����������Х��ν�����<
-�������� okabe@fphy.hep.okayama-u.ac.jp THANKS!
+':' でアンカーを追加した場合に,TABでのアンカー移動の
+順番がおかしいバグの修正.<
+岡部さん okabe@fphy.hep.okayama-u.ac.jp THANKS!
1999.8.17
-�Ķ��ѿ�LESSOPEN�򸫤�褦�ˤ����� < �Ƥ󤳤�����
+環境変数LESSOPENを見るようにした. < てんこうさん
tnh@aurora.dti.ne.jp THANKS!
-form �Ǥ��ޤ����ܸ줬����ʤ���礬����Х��ν�����
-< ���ܤ��� hsaka@mth.biglobe.ne.jp THANKS!
+form でうまく日本語が送れない場合があるバグの修正.
+< 坂本さん hsaka@mth.biglobe.ne.jp THANKS!
-<title>...</title>��ʣ���Ԥ����äƤ����Ȥ��ˡ����ΰ�����
-contents �Ȥ���ɽ������Ƥ��ޤ��Х��ν�����<
-�������� okabe@fphy.hep.okayama-u.ac.jp THANKS!
+<title>...</title>に複数行が入っていたときに,その一部が
+contents として表示されてしまうバグの修正.<
+岡部さん okabe@fphy.hep.okayama-u.ac.jp THANKS!
-ISO-8859-1 ɽ�����ˡ������򥰥�ե��å�����饯���ǽФ�
-�褦�ˤ�����
+ISO-8859-1 表示時に,罫線をグラフィックキャラクタで出す
+ようにした.
-IPv6�б��ǡ�URL��port �����ꤷ�Ƥ��ä����ˤ��ޤ�ư��ʤ��ä�
-�Х��ν�����< �������� ukai@debian.or.jp THANKS!
+IPv6対応で,URLにport が指定してあった場合にうまく動作しなかった
+バグの修正.< 鵜飼さん ukai@debian.or.jp THANKS!
-<table width="">�Τ褦�ʻ���ξ��ˡ��������̵�뤹��褦�ˤ�����
+<table width="">のような指定の場合に,幅指定を無視するようにした.
1999.8.15
-ISO-8859-1 ���
-
-<PRE>�θ�� ���Ԥ�Ϣ³������ˡ����줬���٤�̵�뤵��Ƥ����Х���
-������
-
-���ܤ��� hsaka@mth.biglobe.ne.jp �ˤ��ʲ��ν�����THANKS!!!
-w3m (990814) �ν����Ȳ��ɤǤ���
-
-[ɽ��]
-��<ol> ������ type(="1","i","I","a","A"), start °�����б���
- <ul> ������ type(="disc","circle","square") °�����б�(KANJI_SYMBOLS �Τ�)��
- <li> ������ type, value °�����б���
-��Overwrite �Υ��ڥ�ߥ�
-��SELECT(selBuf) �� Select��˥塼�Ǥ�ɽ���� local�ե�����ʳ��� URL ��
- ɽ�������ͤˤ�����
-��size °���� width °����Ʊ���ˤʤäƤ����Τ�����
-���Dz��Ԥ� SELECT(selBuf) �ʤɤǤΥ����ȥ��ɽ���� &amp; �ʤɤ��Ѵ�����
- ɽ�������ͤ˽���(cleanup_str �����)
-
-[ư��]
-���� pgBack(), �� pgFore() ��ư��� less �� more ��Ʊ�����ᤷ����
- �㤨�С�3 SPC �� 3 �Կʤ�(3 J ��Ʊ��)��
- vi-like �ˤ��뤿��ˤ� VI_PREC_NUM �� #defile ���Ƥ���������
-��Save ����(-dump �ξ��ˤ�) ~/ �� ~user/ ��Ÿ�������ͤˤ�����
-���ǥե���Ȥγ�ĥ��°���� .png, .PNG, .lzh, .LZH ���ɲ�
-��label �������� URL �ξ������������ɤ��Ѵ����Ƥ��� label ��õ������
- �褦�ˤ���
-
-[�Хåե�]
-���ե졼��ɽ����������ɽ�����̤������ڡ����ΰ���������Ū�ˤ��뤿�ᡢ
- Buffer ��¤�Τ� bufferprop �� BP_FRAME(�ե졼��), BP_SOURCE(������ɽ��)
- BP_INTERNAL(�����ڡ���), BP_NO_URL(���URL�ʤ�) �����ꤹ��褦�ˤ�����
-����ư�ե졼��ɽ���ξ��ϡ�LOAD(ldfile) �Ǥ�ե졼��ɽ���򤹤�褦�˽�����
-���ե졼��ɽ�����֤� RELOAD(reload) �������ˤϥե졼��ɽ���򤹤�褦�˽�����
-��������ɽ�����̤� EDIT(eidtBf) �����塢�̾�� HTML ���̤ˤʤäƤ��ޤ��Τ�����
-��������ɽ�����̤Ǥ� RELOAD(reload) �Ǥ����ͤˤ�����
-�����ץ����ɽ���������������ڡ�����ɽ�����Ƥ������ GOTO(goURL) ��
- �Ȥ��ȥ��ܡ��Ȥ��뤳�Ȥ����ä��Τ���
-�����ץ����ɽ���������������ڡ�����ɽ�����Ƥ�����˳����֥饦����
- Ω���夲��Ȱʾ�۾�ʥڡ�����ɽ�����뤳�Ȥ����뽤��
-���ե졼��Τ���ڡ�����ɽ�����Ƥ������������ɥ��������Ѥ�ä�����
- ~/.w3m/w3mframe* �ΰ���ե����뤬�ĤäƤ��ޤ����ȤΤ���Х�������
-��editBf() �� gotoLine() �ˤΰ��֤������������԰��֤���¸����ʤ���Τν�����
- �ޤ���ľ��� arrangeCursor() ���ɲá�
-��editSrc() �� arrangeCursor() ���ɲá�
-
-[����¾]
-��func.h��doc-jp/README.func, doc-jp/README.keymap, doc-jp/menu.*,
- doc-jp/keymap.* �����ܤˤʤäƤ�����
-��demo �Υ��������������Ƥ�����
-���ޥ˥奢����ˡ������ڥ��(����)�ˤ����� C-z ���ɲá�
- ʸ����ɤ߹��ߤ�����(���)�� C-c (���Τˤ� stty �����ꤹ�� intr ��
- �����륭���������Х�����ѹ��Բ�) �Ǥ���
-��Strupper() �� Strlower() �ˤʤäƤ�����
-�������ޥåץե����롢��˥塼����ե����롢mailcap �� config.h ��
- �ޥ�������ˤ�����
+ISO-8859-1 対応.
+
+<PRE>の後に 改行が連続する時に、それがすべて無視されていたバグの
+修正。
+
+坂本さん hsaka@mth.biglobe.ne.jp による以下の修正。THANKS!!!
+w3m (990814) の修正と改良です。
+
+[表示]
+・<ol> タグの type(="1","i","I","a","A"), start 属性に対応。
+ <ul> タグの type(="disc","circle","square") 属性に対応(KANJI_SYMBOLS のみ)。
+ <li> タグの type, value 属性に対応。
+・Overwrite のスペルミス
+・SELECT(selBuf) や Selectメニューでの表示で localファイル以外は URL で
+ 表示する様にした。
+・size 属性が width 属性と同じになっていたのを修正。
+・最下行や SELECT(selBuf) などでのタイトルの表示で &amp; などを変換して
+ 表示する様に修正(cleanup_str を使用)
+
+[動作]
+・数 pgBack(), 数 pgFore() の動作を less や more と同じに戻した。
+ 例えば、3 SPC で 3 行進む(3 J と同じ)。
+ vi-like にするためには VI_PREC_NUM を #defile してください。
+・Save 時に(-dump の場合にも) ~/ や ~user/ を展開する様にした。
+・デフォルトの拡張子属性に .png, .PNG, .lzh, .LZH を追加
+・label が漢字な URL の場合に内部コードに変換してから label を探索する
+ ようにした
+
+[バッファ]
+・フレーム表示、ソース表示画面や内部ページの扱いを統一的にするため、
+ Buffer 構造体の bufferprop に BP_FRAME(フレーム), BP_SOURCE(ソース表示)
+ BP_INTERNAL(内部ページ), BP_NO_URL(基準URLなし) を設定するようにした。
+・自動フレーム表示の場合は、LOAD(ldfile) でもフレーム表示をするように修正。
+・フレーム表示状態で RELOAD(reload) した場合にはフレーム表示をするように修正。
+・ソース表示画面で EDIT(eidtBf) した後、通常の HTML 画面になってしまうのを修正。
+・ソース表示画面でも RELOAD(reload) できる様にした。
+・オプション表示画面等の内部ページを表示している時に GOTO(goURL) を
+ 使うとアボートすることがあったのを修正
+・オプション表示画面等の内部ページを表示している時に外部ブラウザを
+ 立ち上げると以上異常なページを表示することがある修正
+・フレームのあるページを表示している時、ウィンドウの幅が変わった場合に
+ ~/.w3m/w3mframe* の一時ファイルが残ってしまうことのあるバグ修正。
+・editBf() で gotoLine() にの位置がおかしく、行位置が保存されないものの修正。
+ また、直後に arrangeCursor() に追加。
+・editSrc() に arrangeCursor() を追加。
+
+[その他]
+・func.h、doc-jp/README.func, doc-jp/README.keymap, doc-jp/menu.*,
+ doc-jp/keymap.* が3倍になっていた。
+・demo のソースが混入していた。
+・マニュアル類に、サスペンド(中断)にあたる C-z を追加。
+ 文書の読み込みの中断(中止)は C-c (正確には stty で設定する intr に
+ あたるキー、キーバインド変更不可) です。
+・Strupper() が Strlower() になっていた。
+・キーマップファイル、メニュー定義ファイル、mailcap を config.h で
+ マクロ定義にした。
#define KEYMAP_FILE "~/.w3m/keymap"
#define MENU_FILE "~/.w3m/menu"
#define USER_MAILCAP "~/.mailcap"
#define SYS_MAILCAP "/etc/mailcap"
1999.8.14
-��������(okabe@fphy.hep.okayama-u.ac.jp)��������ѥå������̺��ѡ�
-�ѹ���¿���ƽ񤭤���ʤ���THANKS!!!
+岡部さん(okabe@fphy.hep.okayama-u.ac.jp)の非公式パッチを全面採用.
+変更が多くて書ききれない.THANKS!!!
-gzip �ǰ��̤��줿ʸ���ɤ��褦�ˤ�����IPv6���б���
-< �������� ukai@debian.or.jp THANKS!
+gzip で圧縮された文書が読めるようにした.IPv6に対応.
+< 鵜飼さん ukai@debian.or.jp THANKS!
-lynx�������Х���ɤ�help�������< ��ƣ�礵�� satodai@dog.intcul.tohoku.ac.jp
+lynx風キーバインドのhelpを作成.< 佐藤大さん satodai@dog.intcul.tohoku.ac.jp
THANKS!
-frame ����� form �����ä��Ȥ��ˡ�����form������������������ɤ�
-���EUC�ˤʤäƤ����Զ��ν�����< �Ƥ󤳤����� tnh@aurora.dti.ne.jp
+frame の中に form があったときに,そのformに送信する漢字コードが
+常にEUCになっていた不具合の修正.< てんこうさん tnh@aurora.dti.ne.jp
THANKS!
1999.7.29
-�����ȥ뤬 * �ǻϤޤ�HTMLʸ��� 'E' ���Խ��Ǥ��ʤ��Х��ν�����
-< ���Ť��� shim@nw.bs1.fc.nec.co.jp THANKS!
+タイトルが * で始まるHTML文書を 'E' で編集できないバグの修正.
+< 下津さん shim@nw.bs1.fc.nec.co.jp THANKS!
-ɽ������2pixel�ʲ��ξ��ˡ��ؿ� log_like �� 0 ���֤������
-�����ʤ��ʤäƤ��ޤ��Х��ν�����< ���ܤ��� hsaka@mth.biglobe.ne.jp
+表の幅が2pixel以下の場合に,関数 log_like が 0 を返し,列の
+幅がなくなってしまうバグの修正.< 坂本さん hsaka@mth.biglobe.ne.jp
THANKS!
- �� <ul>�Υͥ��Ȥ� 10��ۤ�����ν������Դ������ä���
- �� ��˥塼�ι��ܤ�Ĺ������������ۤ�����˥�˥塼�������Х��ν���
- �� �ե���������ϻ��ˡ�C-c�򲡤������ǥե�����ͤ��֤��褦�ˤ�����
- �� func.h��doc-jp/README.func, doc-jp/README.keymap, doc-jp/menu.*, doc-jp
- /keymap.*�����ܤˤʤäƤ�����
- �� demo�Υ��������������Ƥ�����
- �� �ޥ˥奢����ˡ������ڥ��(����)�ˤ����� C-z���ɲá�
- ʸ����ɤ߹��ߤ�����(���)�� C-c (���Τˤ� stty�����ꤹ�� intr�ˤ�����
- �����������Х�����ѹ��Բ�)�Ǥ���
- �� doc/FAQ.html�� href= ftp�� '"'��ȴ���Ƥ����Τ���
-< ���ܤ��� hsaka@mth.biglobe.ne.jp THANKS!
+ □ <ul>のネストが 10を越える場合の修正が不完全だった。
+ □ メニューの項目の長さが画面幅を越える場合にメニューが崩れるバグの修正
+ □ フォームの入力時に、C-cを押した場合デフォルト値を返すようにした。
+ □ func.h、doc-jp/README.func, doc-jp/README.keymap, doc-jp/menu.*, doc-jp
+ /keymap.*が3倍になっていた。
+ □ demoのソースが混入していた。
+ □ マニュアル類に、サスペンド(中断)にあたる C-zを追加。
+ 文書の読み込みの中断(中止)は C-c (正確には sttyで設定する intrにあたる
+ キー、キーバインド変更不可)です。
+ □ doc/FAQ.htmlで href= ftpと '"'が抜けていたのを修正
+< 坂本さん hsaka@mth.biglobe.ne.jp THANKS!
1999.7.16
-http://location/#label �η���URL�Ǥ� #label ���٥�Ȥ��ơ�
-file:///#file �ξ��ˤ����̤� #file ��ե�����̾�Ȥߤʤ��褦��
-URL�β����ѹ�������< �����ڤ��� sasaki@isoternet.org THANKS!
+http://location/#label の形のURLでは #label をラベルとして,
+file:///#file の場合には特別に #file をファイル名とみなすように
+URLの解釈を変更した.< 佐々木さん sasaki@isoternet.org THANKS!
-'E'�ǥ��������Խ������Ȥ���̵�¥롼�פ˴٤뤳�Ȥ�����Х��ν�����
-< ���ܤ��� hsaka@mth.biglobe.ne.jp THANKS!
+'E'でソースを編集したときに無限ループに陥ることがあるバグの修正.
+< 坂本さん hsaka@mth.biglobe.ne.jp THANKS!
-local CGI �ǡ��Ķ��ѿ� CONTENT_TYPE ���Ϥ������פ��ְ�äƤ�����
-(application/x-www-form-urlencoded �ˤ��٤��Ȥ�����
-x-www-form-urlencoded �ˤ��Ƥ���)
+local CGI で,環境変数 CONTENT_TYPE に渡すタイプが間違っていた.
+(application/x-www-form-urlencoded にすべきところを,
+x-www-form-urlencoded にしていた)
-���̤�ꥵ��������ȡ��Хåե������Կ��ȸ��߹Ԥ�����Ƥ��ޤ��Х�
-�ν�����< ���ܤ��� hsaka@mth.biglobe.ne.jp THANKS!
+画面をリサイズすると,バッファの総行数と現在行がずれてしまうバグ
+の修正.< 坂本さん hsaka@mth.biglobe.ne.jp THANKS!
-'w' ��������ư����Ȥ��ˡ��Ǹ�ιԤǼ¹Ԥ����̵�¥롼�פ˴٤�
-�Х��ν�����
+'w' で前方移動するときに,最後の行で実行すると無限ループに陥る
+バグの修正.
-MANUAL_lynx.html �򹹿���< ��' ���� satodai@dog.intcul.tohoku.ac.jp
+MANUAL_lynx.html を更新.< 大' さん satodai@dog.intcul.tohoku.ac.jp
THANKS!
1999.7.13
-linein.c�Ǥ�JIS���Ϥ����ޤ������ʤ��Х��ν�����(��öľ�����Ĥ�꤬��
-SJIS�Ǥ����Ϥ����ޤ������ʤ��Х����������Ƥ�����)
-
-form �� RESET�ܥ���򲡤��ȡ�HIDDEN°�����ͤޤǥ��ꥢ����Ƥ���
-�Х��ν�����
-��ȤΤʤ��ե�����ξ����'='���ޥ�ɤǸ��褦�Ȥ���ȥ��������
-����Х��ν�����
-US_ASCII�����Υե�����ξ���򸫤�ȡ�document_code �ΤȤ�����
-��Ȥ��ڤ�Ƥ��ޤ��Х��ν�����
-���Ƥ��ʤ��ե������reload�Ǥ��ʤ��Х��ν�����
-< ����� m-yoshi@jaist.ac.jp THANKS!
+linein.cでのJIS入力がうまくいかないバグの修正.(一旦直したつもりが,
+SJISでの入力がうまくいかないバグが混入していた.)
+
+form の RESETボタンを押すと,HIDDEN属性の値までクリアされていた
+バグの修正.
+中身のないファイルの情報を'='コマンドで見ようとするとコアダンプ
+するバグの修正.
+US_ASCIIだけのファイルの情報を見ると,document_code のところで
+中身が切れてしまうバグの修正.
+内容がないファイルをreloadできないバグの修正.
+< 牧野さん m-yoshi@jaist.ac.jp THANKS!
1999.7.2
-<pre>��<nobr>������Ҥˤ����<nobr>������˲��Ԥ������Х�
-�����
+<pre>と<nobr>を入れ子にすると<nobr>が勝手に改行を入れるバグ
+の修正.
-¸�ߤ���ե�����˾�񤭤���Ȥ��˳�ǧ��å�������Ф��褦���ɡ�
-local�ե������Ʊ���ե������Save��������Ƥ��ä���Х��ν�����
-�ǥ��쥯�ȥ�ɽ���β��ɡ�
-~/.w3m/keymap �ˤ�ꥭ���Х���ɤ�����Ǥ���褦�ˤ�����
-~/.w3m/menu �ˤ���˥塼������Ǥ���褦�ˤ�����
-��˥塼�Υ����Х���ɤ��ѹ���
-�Хåե������С��ե����ν�����
-< �ʾ塤���ܤ��� hsaka@mth.biglobe.ne.jp THANKS!
+存在するファイルに上書きするときに確認メッセージを出すよう改良.
+localファイルを同じファイルにSaveすると内容が消えるバグの修正.
+ディレクトリ表示の改良.
+~/.w3m/keymap によりキーバインドを定義できるようにした.
+~/.w3m/menu によリメニューを定義できるようにした.
+メニューのキーバインドの変更.
+バッファオーバーフローの修正.
+< 以上,坂本さん hsaka@mth.biglobe.ne.jp THANKS!
-table �ǡ�rowspan �� colspan ���Ťʤ륻�뤬������Ȥ������Х�
-�����< �������� okabe@okaibm.hep.okayama-u.ac.jp THANKS!
+table で,rowspan と colspan が重なるセルがあると枠が崩れるバグ
+の修正.< 岡部さん okabe@okaibm.hep.okayama-u.ac.jp THANKS!
-�ե�����Ǥʤ���Τ򸫤Ƥ���Ȥ��� reload ����� SEGV ��
-�����뤳�Ȥ�����Х��ν�����
+ファイルでないものを見ているときに reload すると SEGV が
+起きることがあるバグの修正.
1999.6.30
-<select>..</select>���˥塼�ǥ�����󥰤���褦�˲��ɡ�
+<select>..</select>をメニューでレンダリングするように改良.
1999.6.25
-'w' ��Ȥ��Ȥ��ˡ����ιԤκǸ��ʸ����2�Х���ʸ������̵�¥롼��
-�ˤʤ�Х��ν�����
+'w' を使うときに,その行の最後の文字が2バイト文字だと無限ループ
+になるバグの修正.
--no-mouse ���ץ����λ������ˤ�äƵ�ư���㤦����β�补
-��Ĺ��ü���κݡ����̱�ü�˥��󥫡��������硢�ޥ����ˤ�
-�륫�������ư���Ǥ��ʤ���礬��������β�补
-c �� u �� URL��ɽ�����Ƥ���֤ϡ�mouse��̵���ˤ��롥
- < �京���� sakane@d4.bsd.nes.nec.co.jp THANKS!
+-no-mouse オプションの指定順序によって挙動が違う問題の解決.
+横長の端末の際、画面右端にアンカーがある場合、マウスによ
+るカーソル移動ができない場合がある問題の解決.
+c や u で URLを表示している間は、mouseを無効にする.
+ < 坂根さん sakane@d4.bsd.nes.nec.co.jp THANKS!
-<u><b>������ҤˤʤäƤ�����������ɽ�����Ǥ��ʤ��Х���
-������< �������� okabe@okaibm.hep.okayama-u.ac.jp THANKS!
+<u><b>が入れ子になっている場合に正常に表示ができないバグの
+修正.< 岡部さん okabe@okaibm.hep.okayama-u.ac.jp THANKS!
-<nobr>..</nobr>�����̤�����ۤ��Ƥ���Ȥ��ˡ�����ľ���Ƕ���
-���Ԥ��Ƥ�����ư���ѹ���<nobr>��ľ����Ĺ����������Ǥ����ä�
-���ˤϲ��Ԥ��������Ǥʤ����ˤϲ��Ԥ��ʤ��褦�ˤ�����
+<nobr>..</nobr>が画面の幅を越えているときに,その直前で強制
+改行していた挙動を変更.<nobr>の直前に長さを持つ要素があった
+場合には改行し,そうでない場合には改行しないようにした.
1999.6.24
-<input type=checkbox> �ǡ�VALUE °�������ꤵ��Ƥ��ʤ��ä����ˡ�
-�ǥե���Ȥ��ͤ� "on" �ˤ�����Netscape ���Υ֥饦���ο�����
+<input type=checkbox> で,VALUE 属性が指定されていなかった時に,
+デフォルトの値を "on" にした.Netscape 等のブラウザの真似.
1999.6.23
-�礭��0�Υե��������ǥ��������ư�򤹤�� Segmentation fault
-����Х��ν�����
+大きさ0のファイルの中でカーソル移動をすると Segmentation fault
+するバグの修正.
-'\0' ��ޤ�ե�����⤽��ʤ��ɽ���Ǥ���褦�ˤ�����
+'\0' を含むファイルもそれなりに表示できるようにした.
-lynx�������Х���ɤǡ�'G' ��goto-line�ˡ�'g'�� goto-URL ���ѹ���
+lynx風キーバインドで,'G' をgoto-lineに,'g'を goto-URL に変更.
-table ����� <H1 align=center> ����Ȥ��ȡ����θ��Ф���ۤ���
-justification ��Ŭ�Ѥ���Ƥ��ޤ��Х���fix.
+table の中で <H1 align=center> 等を使うと,その見出しを越えて
+justification が適用されてしまうバグのfix.
-<p align=xxx> �θ��table���֤��ȡ����줬��˺��󤻤ˤʤäƤ��ޤ�
-�Х��ν����������ϡ�table ��������󥰤����� <pre>...</pre>
-�ˤʤäƤ��ơ����� <pre> ��������Ĥ��Ƥ����������ä���
+<p align=xxx> の後にtableを置くと,それが常に左寄せになってしまう
+バグの修正.原因は,table がレンダリングされると <pre>...</pre>
+になっていて,かつ <pre> が段落を閉じていたせいだった.
-ñ�측����ǽ���ɲá�(ESC w, ESC W)
-w �ǰ�ñ�챦��W �ǰ�ñ�캸�˰�ư���륳�ޥ�ɤ��ɲá�
-< ���ܤ��� g96p0935@mse.waseda.ac.jp THANKS!
+単語検索機能を追加.(ESC w, ESC W)
+w で一単語右,W で一単語左に移動するコマンドを追加.
+< 西本さん g96p0935@mse.waseda.ac.jp THANKS!
-��å������Ԥ� 300 ����ۤ���� terms.c ������ ScreenElem ��
-��Ȥ������Х��ν�����
-ʸ���������Ƥ���ڡ�����, ������ 0x8e ��ʸ�����ޤޤ�Ƥ���Ȥ� w3m ��
-����뤳�Ȥ���������ν�����
-< �������� okabe@okaibm.hep.okayama-u.ac.jp THANKS!
+メッセージ行が 300 字を越えると terms.c の配列 ScreenElem の
+中身が壊れるバグの修正.
+文字化けしているページで, コード 0x8e の文字が含まれているとき w3m が
+落ちることがある問題の修正.
+< 岡部さん okabe@okaibm.hep.okayama-u.ac.jp THANKS!
-��˥塼��ǽ���ɲá�
-�Dz��ԤǤΥ������Ϥ˥ҥ��ȥ굡ǽ���ɲá�
-< ���ܤ��� hsaka@mth.biglobe.ne.jp THANKS!
+メニュー機能を追加.
+最下行でのキー入力にヒストリ機能を追加.
+< 坂本さん hsaka@mth.biglobe.ne.jp THANKS!
1999.6.21
-minimum_length() ����� isalpha() �� IS_ALPHA()�˽�����
+minimum_length() の中の isalpha() を IS_ALPHA()に修正.
-lynx�������Х���ɤ��ѹ���j,k �򥫡������ư�ˡ�J,K��
-1�ԥ���������˳�ꤢ�Ƥ���< Doug Kaufman dkaufman@rahul.net THANKS!
+lynx風キーバインドを変更.j,k をカーソル移動に,J,Kを
+1行スクロールに割りあてた.< Doug Kaufman dkaufman@rahul.net THANKS!
1999.6.16
-XMakefile �Υ��󥹥ȡ���ǥ��쥯�ȥ�� $(DESTDIR)���ɲá�
-< ���Ѥ��� yamagata@ns1.plathome.co.jp THANKS!
+XMakefile のインストールディレクトリに $(DESTDIR)を追加.
+< 山縣さん yamagata@ns1.plathome.co.jp THANKS!
--v ���ץ������դ�����
+-v オプションを付けた.
-�Dz��Ԥ˥�󥯤�ɽ������Ȥ��ˡ��ޤ���� ... �Ǿ�άɽ��
-����褦�ˤ�����
-dirBuffer() �� /home/../.. �ʤɤΥǥ��쥯�ȥ꤬������Ÿ��
-����Ƥ��ʤ��ä���Τν�����
-�Хåե�����⡼�ɤǡ����������ͭ���ˤ��Ƥߤ���
-< ���ܤ��� hsaka@mth.biglobe.ne.jp THANKS!
+最下行にリンクを表示するときに,まん中を ... で省略表示
+するようにした.
+dirBuffer() で /home/../.. などのディレクトリが正しく展開
+されていなかったものの修正.
+バッファ選択モードで、矢印キーを有効にしてみた。
+< 坂本さん hsaka@mth.biglobe.ne.jp THANKS!
-inputLine �� -no-mouse ���ץ����ˤ�餺��mouse_end(),
-mouse_init() ���ƤФ�Ƥ�����Τν�����
-< ���ܤ��� hsaka@mth.biglobe.ne.jp && �京���� sakane@d4.bsd.nes.nec.co.jp
+inputLine で -no-mouse オプションによらず、mouse_end(),
+mouse_init() が呼ばれていたものの修正.
+< 坂本さん hsaka@mth.biglobe.ne.jp && 坂根さん sakane@d4.bsd.nes.nec.co.jp
THANKS!
1999.6.15
-FAQ.html �����줫����< Tom Berger tom.be@gmx.net THANKS!
+FAQ.html を入れかえ.< Tom Berger tom.be@gmx.net THANKS!
1999.6.10
-<nobr>�ΰ�������ɡ�
+<nobr>の扱いを改良.
1999.6.9
-HP-UX11.00 on PA-RISC2.0 ���
-���󥹥ȡ�����ˡ����󥹥ȡ�����ǥ��쥯�ȥ꤬�ʤ��� make
-����������������< Dave Eaton dwe@arde.com THANKS!
+HP-UX11.00 on PA-RISC2.0 対応.
+インストール時に,インストール先ディレクトリがないと make
+がコケる問題の修正.< Dave Eaton dwe@arde.com THANKS!
-<dl compact>�ε�ư�ν�����< ���ܤ��� hsaka@mth.biglobe.ne.jp
+<dl compact>の挙動の修正.< 坂本さん hsaka@mth.biglobe.ne.jp
THANKS!
1999.6.8
--no-mouse ���ץ�����Ĥ�����
+-no-mouse オプションをつけた.
-<nobr>��<pre>������ҤˤʤäƤ���Ȥ��ˡ���¦�Υ�����
-��Ȥ�ɽ������ʤ��Х��ν�����
-<table>�����<nobr>�����ꡤ������� <br>�� <p> �ʤɤ�����
-���Ȥ��ˡ�ɽ�����׻��������Х��ν�����< ��������
+<nobr>と<pre>が入れ子になっているときに,内側のタグの
+中身が表示されないバグの修正.
+<table>の中に<nobr>があり,その中に <br>や <p> などがあっ
+たときに,表の幅計算が狂うバグの修正.< 岡部さん
okabe@okaibm.hep.okayama-u.ac.jp THANKS!
-�ѥ�����դ��ڡ����ǡ����ä��ѥ���ɤ��ޤ����äƤ���
-�����Ϥ����Ȥ��ˡ����줬�Ȥ��ʤ��Х��ν�����< Ȫ������
+パスワード付きページで,送ったパスワードがまちがっていて
+再入力したときに,それが使われないバグの修正.< 畑口さん
THANKS!
-char == unsigned char �ʥޥ���Ǥ��ޤ�ư���ʤ���ʬ�ν�����
-< ���ʤ��蘆�� kei_sun@ba2.so-net.ne.jp THANKS!
+char == unsigned char なマシンでうまく動かない部分の修正.
+< すながわさん kei_sun@ba2.so-net.ne.jp THANKS!
-NetBSD/macppc �ѤΥѥå����Ѱա�< ���ʤ��蘆��
+NetBSD/macppc 用のパッチを用意.< すながわさん
kei_sun@ba2.so-net.ne.jp THANKS!
-table����˥����Ȥ����ꡤ���줬�Ĥ��Ƥ��ʤ��Ȥ���̵��
-�롼�פˤʤ�Х���fix. < �������� okabe@okaibm.hep.okayama-u.ac.jp
+tableの中にコメントがあり,それが閉じていないとき,無限
+ループになるバグのfix. < 岡部さん okabe@okaibm.hep.okayama-u.ac.jp
THANKS!
1999.6.5
-�ޥ������ѻ��ˡ����ֹԤΥ�������򥯥�å����ƥڡ���
-�岼�����ڡ�����ư���Ǥ���褦�ˤ�����
+マウス使用時に,状態行のアイコンをクリックしてページ
+上下と前ページ移動ができるようにした.
1999.6.3
-�ե�����̾�κǽ��#���褿���ν����˥Х������ä���
+ファイル名の最初に#が来た場合の処理にバグがあった.
-���ɤߤ��߻��ˡ����ι��ֹ�ιԤ���������褦�ˤ�����
+再読みこみ時に,元の行番号の行に復帰するようにした.
-�ޥ����б���ʬ�β��ɡ�mouse_init()��mouse_term()��
-terms.c �˰�ư��
+マウス対応部分の改良.mouse_init()とmouse_term()を
+terms.c に移動.
-���ϡ���λ���� termcap �� ti/te ��Ф��褦�ˤ���
-�ߤ���
+開始・終了時に termcap の ti/te を出すようにして
+みた.
-�ѥ�����դ��ڡ����ǡ����ä��ѥ���ɤ��ޤ����äƤ���
-��硤̵�¥롼�פˤʤ�Х��ν�����
+パスワード付きページで,送ったパスワードがまちがっていた
+場合,無限ループになるバグの修正.
-news:newsgroups �η�����URL��é�����Ȥ����Ȥ����֤����
-�Ȥ��ʤ��׻ݤΥ�å�������Ф����Ȥˤ�����
+news:newsgroups の形式のURLを辿ろうとしたとき,「それは
+使えない」旨のメッセージを出すことにした.
1999.6.1
-�ޥ����Υɥ�å����б���< �𤵤� ytake@phys2.med.osaka-u.ac.jp
+マウスのドラッグに対応.< 武さん ytake@phys2.med.osaka-u.ac.jp
THANKS!
1999.5.26
-�ե�����̾�κǽ�ȺǸ�� # ���褿���ˤϡ������
-��٥�Ȥ��Ʋ�ᤷ�ʤ��褦�ˤ�����
+ファイル名の最初と最後に # が来た場合には,それを
+ラベルとして解釈しないようにした.
-���ֹ�ɽ����ǽ���ɲá�
+行番号表示機能を追加.
--no-proxy ���ץ������ɲá�
+-no-proxy オプションを追加.
-�ޥ����б���< �𤵤� ytake@phys2.med.osaka-u.ac.jp
+マウス対応.< 武さん ytake@phys2.med.osaka-u.ac.jp
THANKS!
-&...; ���褿�������η׻��˥Х������ä���< ��������
+&...; が来た場合の幅の計算にバグがあった.< 岡部さん
okabe@okaibm.hep.okayama-u.ac.jp THANKS!
-1ʸ�������������뵡ǽ���ɲá�< ���Ť���
+1文字横スクロール機能を追加.< 下津さん
shim@nw.bs1.fc.nec.co.jp THANKS!
-<wbr> �����
+<wbr> に対応.
-table ����Ǥζ���ΰ����˥Х������ä��Τǽ�����
+table の中での空白の扱いにバグがあったので修正.
-table ����Ǥ� <nobr>..</nobr>�����׻��˥ߥ������ä�
-�Τǽ�����
+table の中での <nobr>..</nobr>の幅計算にミスがあった
+ので修正.
-NNTP�ǵ�������Ф����ޥ�ɤ� article ���� ARTICLE
-���ѹ���< patakuti ���� patakuti@t3.rim.or.jp THANKS!
+NNTPで記事を取り出すコマンドを article から ARTICLE
+に変更.< patakuti さん patakuti@t3.rim.or.jp THANKS!
-openURL()����ǡ�URLFile ���ѿ� uf �ν�������Դ���
-���ä�(uf.encoding ���������Ƥ��ʤ��ä�)�����ư��
-���԰���ˤʤäƤ����������� < �ޤ��Τ���
+openURL()の中で,URLFile 型変数 uf の初期化が不完全
+だった(uf.encoding を初期化していなかった)ために動作
+が不安定になっていた.修正. < まきのさん
1999.5.19
-table ����ˡ�; �ǽ�λ���ʤ� character entity ��
-�ФƤ����Ȥ���̵�¥롼�פ˴٤�Х��ν�����
-< ���ܤ��� mituharu@math.s.chiba-u.ac.jp THANKS!
+table の中に,; で終了しない character entity が
+出てきたときに無限ループに陥るバグの修正.
+< 山本さん mituharu@math.s.chiba-u.ac.jp THANKS!
-HTML �Ǥʤ���Τϥ�������ɽ�����ʤ��褦�ˤ�����
+HTML でないものはソースを表示しないようにした.
-&nbsp �Τ褦�� ; �Τʤ���Τ⡤character entity ��
-���Ǥ�����ˤϤ��Τ褦��ɽ�����뤳�Ȥˤ�����
+&nbsp のように ; のないものも,character entity と
+解釈できる場合にはそのように表示することにした.
-file.c ����ǡ������Υ���ѥ���ǥ��顼�ˤʤ���ʬ�ν�����
-��ư�����ץ����� +���ֹ� ���ɲá�
-< ���Ť��� shim@nw.bs1.fc.nec.co.jp THANKS!
+file.c の中で,一部のコンパイラでエラーになる部分の修正.
+起動時オプションに +行番号 を追加.
+< 下津さん shim@nw.bs1.fc.nec.co.jp THANKS!
1999.5.14
-Cygwin �����ܸ��Ȥ����ˤϡ���˺Dz��Ԥ������
-�褦�ˤ�����
+Cygwin で日本語を使う場合には,常に最下行を空ける
+ようにした.
1999.5.13
-<nobr>..</nobr>�ε�ư�򴪰㤤���Ƥ����褦�ʤΤǡ�������
-���Υ�������Ǥϡ��ɤ����ߤ򤷤ĤIJ��Ԥ򤷤ʤ��褦��
-������
+<nobr>..</nobr>の挙動を勘違いしていたようなので,修正.
+このタグの中では,追いこみをしつつ改行をしないように
+した.
1999.5.12
-J,K��1�ԥ��������뤹��ݤˡ�����������֤���¸����褦��
-������< ���Ť��� shim@nw.bs1.fc.nec.co.jp THANKS!
+J,Kで1行スクロールする際に,カーソル位置を保存するように
+した.< 下津さん shim@nw.bs1.fc.nec.co.jp THANKS!
1999.5.11
-text/plain �ξ��ˤ⡤�ɤߤ��߾�����Dz��Ԥ�ɽ������褦
-�ˤ�����C-c �Ǥ����Ǥˤ��н补
+text/plain の場合にも,読みこみ状況を最下行に表示するよう
+にした.C-c での中断にも対処.
1999.5.7
-<div>,<center>�ʤɡ�justification�򤤤��륿����Ȥ����
-�ˤϡ����ߤ�justification�򥹥��å������򤷡���λ������
-��äƴĶ�����������褦�ˤ�����
+<div>,<center>など,justificationをいじるタグを使う場合
+には,現在のjustificationをスタックに退避し,終了タグに
+よって環境を復帰するようにした.
-gc �� 4.14 �˥С�����󥢥åס�
+gc を 4.14 にバージョンアップ.
-Content-Length �������Ф��������Ƥ������ϡ����̺Dz���
-��progress bar��Ф��褦�ˤ�����
+Content-Length がサーバから送られてきた場合は,画面最下行
+にprogress barを出すようにした.
-'=' ��ʸ������Ф��Ȥ��ˡ�HTTP�إå��ξ����ɽ������
-�褦�ˤ�����
+'=' で文書情報を出すときに,HTTPヘッダの情報も表示する
+ようにした.
1999.5.6
-</OL>, </UL>��³���Ȥ��˶��Ԥ�Ϣ³���Ƥ��ޤ��Х��ν�����
+</OL>, </UL>が続くときに空行が連続してしまうバグの修正.
-<OL>,<UL>�γ���<LI>���ФƤ����Ȥ��˲��Ԥ���褦�ˤ�����
-'u'���ޥ�ɤ����Хѥ���ɽ������褦�ˤ�����
-< �Ƥ󤳤����� tnh@aurora.dti.ne.jp THANKS!
+<OL>,<UL>の外で<LI>が出てきたときに改行するようにした.
+'u'コマンドで絶対パスを表示するようにした.
+< てんこうさん tnh@aurora.dti.ne.jp THANKS!
-ž������� C-c �����Ǥ����Ȥ��������ޤ��ɤ�����Ƥ�ɽ������
-�褦�ˤ�����
+転送途中で C-c で中断したとき,そこまで読んだ内容を表示する
+ようにした.
-������ľ����¸���뵡ǽ����ɡ���������¸�Ǥ���褦�ˤ��롥
-< ����� yukihiko@yk.rim.or.jp THANKS!
+リンク先を直接保存する機能を改良.画像も保存できるようにする.
+< 佐野さん yukihiko@yk.rim.or.jp THANKS!
1999.4.30
-config.h �ΰ������ڤ�Ф��� XXMakefile �����Ȥ򤹤�
-���ޥ�ɤȤ��ơ�CPP�ǤϤʤ�awk��Ȥ��褦�ˤ�����
+config.h の一部を切り出して XXMakefile を作る作業をする
+コマンドとして、CPPではなくawkを使うようにした。
-�Хåե���HTTP�إå��ξ������¸����褦�ˤ�����
+バッファにHTTPヘッダの情報を保存するようにした.
-'=' �ξ�����̤� Last Modified ���ɲá�
+'=' の情報画面に Last Modified を追加.
-���ߤΥɥ�����Ȥ� ftp �ǡ��桼��̾���ѥ���ɻ����
-�����������Ƥ�����ϡ�Referer: �˸��ߤ�URL���դ��ʤ�
-�褦�ˤ�����
+現在のドキュメントが ftp で,ユーザ名かパスワード指定で
+アクセスしている場合は,Referer: に現在のURLを付けない
+ようにした.
-���Ԥ�Ƚ�����ɡ�</OL>,</UL>,</DL>,</BLOCKQUOTE>��ľ���
-<P>��̵���ˤ�����
+空行の判定を改良.</OL>,</UL>,</DL>,</BLOCKQUOTE>の直後の
+<P>を無効にした.
-���ޥ�ɤ˲��������Ǥ���褦�ˤ�����
-< Ȫ������ patakuti@t3.rim.or.jp THANKS!
+コマンドに回数が指定できるようにした.
+< 畑口さん patakuti@t3.rim.or.jp THANKS!
-�����Υɥ�����Ȥ�ե��������¸���뵡ǽ���ɲá�
-< �Ƥ󤳤����� tnh@aurora.dti.ne.jp THANKS!
+リンク先のドキュメントをファイルに保存する機能を追加.
+< てんこうさん tnh@aurora.dti.ne.jp THANKS!
1999.4.28
-ftp �Υǥ��쥯�ȥ�ꥹ�Ȥ�����ե��٥åȽ�ˤʤ�褦�ˤ�����
+ftp のディレクトリリストがアルファベット順になるようにした.
-ftp://username@hostname/file �����򥵥ݡ��ȡ�
-FTP �Υǥ��쥯�ȥ�ꥹ�Ȥ�֥å��ޡ�������Ͽ�Ǥ���褦�ˤ�
-FTP �β��̤ǥѥ���ɤ�ɽ������ʤ��褦�ˤ���
-ftp://username@hostname/file �����λ��� HTTP �Υѥ����ǧ�ڤ�Ʊ�ͤ�
-add_auth_cookie ���Ѥ��ƥѥ���ɤ��ݻ�����褦�ˤ���
-< Ȫ������ patakuti@t3.rim.or.jp THANKS!
+ftp://username@hostname/file 形式をサポート.
+FTP のディレクトリリストをブックマークに登録できるようにし
+FTP の画面でパスワードが表示されないようにした
+ftp://username@hostname/file 形式の時は HTTP のパスワード認証と同様に
+add_auth_cookie を用いてパスワードを保持するようにした
+< 畑口さん patakuti@t3.rim.or.jp THANKS!
-ftp�˥�����������Ȥ���getpwuid()�ǥ桼�����󤬼��Ф��ʤ���
-���顼�ˤʤ�Х�������
+ftpにアクセスするとき,getpwuid()でユーザ情報が取り出せないと
+エラーになるバグを修正.
-<Hn>, <P>�� align °����ͭ���ˤʤ�褦�ˤ�����< ���ڸ�����
+<Hn>, <P>で align 属性が有効になるようにした.< 黒木玄さん
kuroki@math.tohoku.ac.jp THANKS!
-��Ƭ�˶������뤳�Ȥ�����Х��ν����� < ��������
+行頭に空白が入ることがあるバグの修正. < 岡部さん
okabe@okaibm.hep.okayama-u.ac.jp THANKS!
-���̤Υꥵ�����򤹤�ȥ�������פ���Х��ν�����
+画面のリサイズをするとコアダンプするバグの修正.
-ESC e �ǡ����̤�ɽ�����᡼�����Խ��Ǥ���褦�ˤ�����
+ESC e で,画面の表示イメージを編集できるようにした.
1999.4.26
-ftp://user:password@host/file �������б���< �Ƥ󤳤�����
+ftp://user:password@host/file 形式に対応.< てんこうさん
tnh@aurora.dti.ne.jp THANKS!
-"U" ���ޥ�ɤ�URL�����Ϥ���Ȥ������ߤ�URL��ǥե���Ȥˤ���褦
-�ˤ�����
+"U" コマンドでURLを入力するとき,現在のURLをデフォルトにするよう
+にした.
1999.4.23
-EUC��X0201���ʤ��б���< �Ƥ󤳤����� tnh@aurora.dti.ne.jp THANKS!
+EUCのX0201カナに対応.< てんこうさん tnh@aurora.dti.ne.jp THANKS!
1999.4.21
-term.c �ǡ�config.h �� include ���������ѹ����������ʤ��ȡ�config.h
-����ǻȤ��Ƥ��� FILE* ��̤����ˤʤ롣
+term.c で、config.h を include する順序を変更。こうしないと、config.h
+の中で使われている FILE* が未定義になる。
-�����ɤ���URL�� "" ��Ȥ��ȥ�������פ���Х��ν�����< _tom_����
+ロードするURLに "" を使うとコアダンプするバグの修正。< _tom_さん
_tom_@sf.airnet.ne.jp THANKS!
-rc.c ����αѸ�Υ�å������Υ���ܥ�̾�˴ְ㤤�����ä���
-< ����� Keiki_Sunagawa@yokogawa.co.jp THANKS!
+rc.c の中の英語のメッセージのシンボル名に間違いがあった。
+< 砂川さん Keiki_Sunagawa@yokogawa.co.jp THANKS!
-ftp �Υѥ���ɤ����Ǥ���褦�ˤ�����
+ftp のパスワードを指定できるようにした。
1999.4.18
-<tag attr=> �Τ褦�ʥ���������ȡ������ǥ�������λ�����Ȥߤʤ���ʤ�
-�Х��ν�����
+<tag attr=> のようなタグがあると、そこでタグが終了したとみなされない
+バグの修正。
-�Dz��ԤΤ����Ф󱦤Υ�����ʸ������Ϥ��ʤ��褦�ˤ����������Υ���
-�ߥʥ륨�ߥ�졼���ǡ��������Τ����������뤷�Ƥ��ޤ��Τ��ɤ���
+最下行のいちばん右のカラムに文字を出力しないようにした。ある種のター
+ミナルエミュレータで、画面全体がスクロールしてしまうのを防ぐ。
1999.4.9
-Ĺ��URL�����Ϥ���ȡ�__ctype ���˲�����ơ�ɽ����ȯ������Х��ν�����
+長いURLを入力すると,__ctype が破壊されて,表示が発狂するバグの修正.
1999.4.6
-�ѥ���ɤ� ' ' ���Ȥ��ʤ��ä��Х��ν�����< ƿ̾��˾���� :-) THANKS!
+パスワードに ' ' が使えなかったバグの修正.< 匿名希望さん :-) THANKS!
1999.4.5
-�ѥ�����դ��ڡ�����������褦�˲��ɡ�
+パスワード付きページが見られるように改良.
1999.4.4
-��������CGI�����
+ローカルCGIに対応.
1999.4.2
-��������Υǥ��쥯�ȥ�ꥹ�Ȥ�������褦�˲��ɡ�
+ローカルのディレクトリリストが見られるように改良.
1999.4.1
-map ̾�˴�����Ȥ��Ȥ��ޤ� imagemap �Υ�󥯤�é��ʤ��ä��Х��ν�����
+map 名に漢字を使うとうまく imagemap のリンクが辿れなかったバグの修正.
-&...; �ˤĤ��ơ��Ǹ�� ; ���դ��ʤ��ä��������η׻������������
-������
+&...; について,最後の ; を付けなかった場合に幅の計算が狂う問題の
+修正.
--halfdump ���ץ������դ��롥����ؤ����С�(undocumented)
+-halfdump オプションを付ける.将来への布石.(undocumented)
-"#label" �η��� URL �� parseURL2 �Dz��Ϥ������˷�̤����������ʤ�
-�Х��ν�����
+"#label" の形の URL を parseURL2 で解析した場合に結果がおかしくなる
+バグの修正.
1999.3.31
-�ե�����̾�������ʥХ�URL���н褹�뤿�ᡤfollowA �� followI �����
-��URL��2�Х��ȥ����ɤ�ޤ�Ǥ����顤document_code���Ѵ����Ƥ���������
-�ˤ��Ƥߤ��������ȤäƤ⤤�������󥯤Ǥ�URL encode���Ƥ��줨��
+ファイル名が漢字なバカURLに対処するため,followA と followI の中で
+「URLが2バイトコードを含んでいたら,document_codeに変換してから送信」
+にしてみた.漢字使ってもいいからリンクではURL encodeしてくれえ.
-configure ����� 'pxvt' �� 'rxvt' ��������
+configure の中の 'pxvt' を 'rxvt' に訂正.
-<base href="..."> �����ä����ˡ������ʬ��URL���ȻפäƤ�������
-��������base URL ���̤��ݻ����ơ����줬������ˤϤ��������URL��
-�䴰�˻Ȥ����ʤ����ϼ�ʬ��URL��Ȥ����Ȥˤ�����
+<base href="..."> があった場合に,それを自分のURLだと思っていた仕様
+を訂正.base URL を別に保持して,それがある場合にはそれを相対URLの
+補完に使い,ない場合は自分のURLを使うことにした.
1999.3.30
-openSocket() ����ǡ�getprotobyname() �����Ԥ����顤tcp�Υץ��ȥ���
-�ֹ�� 6 �Ƿ���Ǥ����뤳�Ȥˤ�����
+openSocket() の中で,getprotobyname() が失敗したら,tcpのプロトコル
+番号を 6 で決め打ちすることにした.
--dump_source ���ץ�����Ĥ��롥
+-dump_source オプションをつける.
-���ޤ��� makeref ������ץȤ�ź�ա�
+おまけに makeref スクリプトを添付.
-ISO-2022-JP��ʸ���JIS X0201���ʤ����äƤ��ơ�����ľ���JIS X0208
-��������ʸ���������Ƥ����Х�������
+ISO-2022-JPの文書にJIS X0201カナが入っていて,その直後にJIS X0208
+が来る場合に文字化けしていたバグを修正.
1999.3.29
-sigsetjmp() �ؤ��б����Դ������ä���������
+sigsetjmp() への対応が不完全だった.修正.
-':' ���ޥ�ɤ� URL �Ȥߤʤ�ʸ����� ',' ���ɲá�
+':' コマンドで URL とみなす文字種に ',' を追加.
-configure �ǡ������ƥ�� GC library �ΥС�������Ĵ�١��Ť��ä���
-�����Ȥ����ɤ����䤤���碌�뤳�Ȥˤ�����
+configure で,システムの GC library のバージョンを調べ,古かったら
+それを使うかどうか問いあわせることにした.
-sigsetjmp()/siglongjmp() ��¸�ߤ�����ˤϤ������Ȥ����Ȥˤ�����
+sigsetjmp()/siglongjmp() が存在する場合にはそちらを使うことにした.
1999.3.24
-���Υꥻ�å�������б����Դ������ä��Τ�����
+色のリセット問題の対応が不完全だったのを修正.
1999.3.23
-<pre> ��ľ�夬���Ԥ��ä���硤�����̵�뤹��褦������
+<pre> の直後が改行だった場合,それを無視するよう修正.
-�ǥե���Ȥ�ʸ���ο���ü����foreground color�ʳ��ˤ��Ƥ������ˡ�
-bold �θ��̤ν����ǿ����ꥻ�åȤ���Ƥ��ޤ��Х��ν�����
+デフォルトの文字の色を端末のforeground color以外にしていた場合に,
+bold の効果の終わりで色がリセットされてしまうバグの修正.
-HTTP�ǥե���������������ɤ�����ˡ��ե�����̾�ѹ����Ǥ��ʤ�
-�Х��ν�����
+HTTPでファイルをダウンロードする場合に,ファイル名変更ができない
+バグの修正.
1999.3.22
-POST�᥽�åɤα��������redirect���ޤޤ�Ƥ����Ȥ��ˡ�����
-��ư��ؤΥ��������� POST�ˤʤäƤ��ޤ��Х��ν�����
+POSTメソッドの応答の中にredirectが含まれていたときに,その
+移動先へのアクセスが POSTになってしまうバグの修正.
-����Ҥˤʤä� table ����� <nobr>��(��ä����Τˤϡ�</nobr>��)
-�Ȥ���ɽ�������Х��ν�����
+入れ子になった table の中で <nobr>を(もっと正確には,</nobr>を)
+使うと表が崩れるバグの修正.
-���ץ���������ɽ���������ѹ��������������ߤ�����
+オプション設定の表示を大幅変更.セクションを設けた.
-��ưŪ�˾��ֹԤ˥�����URL��ɽ������⡼�ɤ��ɲá�
-< ����(Seiya Yanagita)���� THANKS!
+自動的に状態行にリンク先のURLを表示するモードを追加.
+< 柳田(Seiya Yanagita)さん THANKS!
-POST �᥽�åɤ�ʸ����򥵡��Ф�����Ȥ��ˡ������� LF �Τߤξ���
-CRLF������褦���ѹ���< ���ڷ�줵�� ksuzuki@miyagi-ct.ac.jp THANKS!
+POST メソッドで文字列をサーバに送るときに,行末が LF のみの場合は
+CRLFを送るように変更.< 鈴木健一さん ksuzuki@miyagi-ct.ac.jp THANKS!
-gc�饤�֥��� 4.14alpha �˥С�����󥢥åס�
+gcライブラリを 4.14alpha にバージョンアップ.
1999.3.20
-"M" �dz����֥饦����ư����褦�ˤ�����
+"M" で外部ブラウザを起動するようにした.
1999.3.19
-�طʤ���ˤ��Ƥ��ơ�ʸ������ˤ����Ȥ�����λ����ʸ��������
-�ʤäƤ��ޤ��Х��ν�����
+背景を黒にしていて,文字を白にしたとき,終了時に文字が黒く
+なってしまうバグの修正.
-��������ե���������Хѥ��dz������Ȥ��ˡ��Хåե����դ�URL
-���Ѥ��ä��Х��ν�����
+ローカルファイルを相対パスで開いたときに,バッファに付くURL
+が変だったバグの修正.
1999.3.18
-<img alt="..."> ����� &...; �����ä���硤parsetag �����
-�ǥ����ɤ���Ƥ��ޤ��Τǡ�HTMLlineproc2 �˿��碌������
-�⤦���٥��󥳡��ɤ��ʤ���Фʤ�ʤ��ä���
+<img alt="..."> の中に &...; があった場合,parsetag の中で
+デコードされてしまうので,HTMLlineproc2 に食わせる前に
+もう一度エンコードしなければならなかった.
--dump ���ץ����ǡ�-F (frame��ư����)��ͭ���ˤʤ�褦�ˤ�����
+-dump オプションで,-F (frame自動描画)が有効になるようにした.
-<ADDRESS>..</ADDRESS>������Dz��Ԥ���褦�ˤ�����
-SPACE �����ǥХåե�����Ǥ���ȡ��Хåե��β������ΰ��֤�
-�����Х��ν�����< �Ӹ����� ikehara@hepn5.c.u-tokyo.ac.jp THANKS!
+<ADDRESS>..</ADDRESS>の前後で改行するようにした.
+SPACE キーでバッファを改頁すると,バッファの横方向の位置が
+狂うバグの修正.< 池原さん ikehara@hepn5.c.u-tokyo.ac.jp THANKS!
-���ΥХåե����Ф��ƥ��������ư�򤷤褦�Ȥ���� core dump
-����Х��ν�����< ����� yukihiko@yk.rim.or.jp THANKS!
+空のバッファに対してカーソル移動をしようとすると core dump
+するバグの修正.< 佐野さん yukihiko@yk.rim.or.jp THANKS!
-NO_PROXY �� IP���ɥ쥹(�ΰ���)�����Ǥ���褦�˲��ɡ�
-��³��ۥ��Ȥ�ʣ����IP���ɥ쥹����äƤ�����硤�ǽ�Υ��ɥ쥹
-�ؤ���³�����Ԥ����顤���Υ��ɥ쥹����³���˹Ԥ��褦�ˤ�����
-< ��ͤ��� mit@nines.nec.co.jp THANKS!
+NO_PROXY に IPアドレス(の一部)を指定できるように改良.
+接続先ホストが複数のIPアドレスを持っていた場合,最初のアドレス
+への接続が失敗したら,次のアドレスに接続しに行くようにした.
+< 水戸さん mit@nines.nec.co.jp THANKS!
1999.3.17
-<table>������ҤˤʤäƤ��ơ���¦��</table>�θ夬���Ԥ�
-�ʤ��ä���硤</table>��³��1ʸ������¦��table�Τ����
-�����֤���Ƥ��ޤ��Х��ν�����ʸ�Ϥǽ񤯤ȡ��ɤ������ɾ�
-�ʤΤ��褯�狼��ʤ��ʡ�
+<table>が入れ子になっていて,内側の</table>の後が改行で
+なかった場合,</table>に続く1文字が外側のtableのさらに
+外に置かれてしまうバグの修正.文章で書くと,どういう症状
+なのかよくわからないな.
-frame ����� <pre>..</pre>������ȡ������椬��Ԥ����ˤʤä�
-���ޤ��Х��ν�����
+frame の中に <pre>..</pre>があると,その中が一行おきになって
+しまうバグの修正.
-loadGeneralFile() ����ǡ�cbreak() �⡼�ɤΤޤ� return ����
-���ޤ����Ȥ�����Х���fix. < ��¼���� uemura@sra.co.jp THANKS!
+loadGeneralFile() の中で,cbreak() モードのまま return して
+しまうことがあるバグのfix. < 上村さん uemura@sra.co.jp THANKS!
-<caption>���Ĥ��Ƥ��ʤ��ȥ����̵�¤˳��ݤ��ޤ���Ȥ���
-�������fix��
+<caption>が閉じていないとメモリを無限に確保しまくるという
+バグを一部fix.
1999.3.16
-&hoge; �����Τ�Τ����ޤ����äƤʤ��ä��Τǡ��������������٤�
-�ޤȤ�ˤʤä������б����Ƥ��ʤ� &...; ��Ȥ���ȡ��ޤ�ɽ��
-����Ƥ��ޤ����ޤ���; ��ȴ������Τ�ȤäƤ�Ʊ�����б����񤷤���
+&hoge; 系統のものがうまくいってなかったので,修正.ある程度は
+まともになったが,対応していない &...; を使われると,まだ表が
+崩れてしまう.また,; を抜いたものを使っても同じ.対応は難しい.
-�Ȥʤ���ɽ�ǡ�COLSPAN �� 2 �ʾ�Υ�������η׻���ޤ����äƤ�����
-������
+枠なしの表で,COLSPAN が 2 以上のセルの幅の計算をまちがっていた.
+修正.
1999.3.15
-ɸ�������Ϥ��ɤ����tty�Ǥʤ��ơ�-dump ���ץ�����Ȥ���
-���ޤ�ư���ʤ����Ȥ�����Х���fix.
+標準入出力がどちらもttyでなくて,-dump オプションを使うと
+うまく動かないことがあるバグのfix.
-Accept-Language ���б�������Ⱦü��
+Accept-Language に対応.中途半端.
1999.3.12
-<table border="��">�Ȥ����ե������ڡ��������ä���atoi("��")��
-�ʤ�����ˤʤäơ�table ��ȯ��������fix.
+<table border="2">というフザケたページがあった.atoi("2")が
+なぜか負になって,table が発狂した.fix.
-1�ԥ���������ǡ��Dz��Ԥ�õ�Ƥ��饹�������뤹��褦�ˤ��Ƥߤ���
-(�����äƤ鷺��路�����⡩)
+1行スクロールで,最下行を消去してからスクロールするようにしてみた.
+(かえってわずらわしいかも?)
-ʸ��˴ؤ�������ɽ������ "=" ���ޥ�ɤ��ɲá�
+文書に関する情報を表示する "=" コマンドを追加.
-�����ӥ塼����ư����Ȥ��ˡ�system("cmd &")��ȤäƥХå����饦���
-�˲󤷡�����ե�����ϺǸ�ˤޤȤ�ƺ�����뤳�Ȥˤ�����
+外部ビューアを起動するときに,system("cmd &")を使ってバックグラウンド
+に回し,一時ファイルは最後にまとめて削除することにした.
-loadGeneralFile, openURL �ǡ�is_link �� is_cache ���̡��ʰ����ˤ���
-������Τ�32�ӥåȤΥե饰���ѹ���
+loadGeneralFile, openURL で,is_link と is_cache を別々な引数にして
+いたものを,32ビットのフラグに変更.
-���פȻפ��� allocStr() �����������Ѥ�ͽ�ۤ���롥
+不要と思われる allocStr() を削除.副作用が予想される.
1999.3.11
-configure �ǡ���󥯤��� termcap �ߴ��饤�֥������٤�褦�ˤ�����
-Ʊ���ˡ�����餷���饤�֥�꤬������ termcap ��Ϣ�롼�����ޤफ
-�ɤ����ƥ��Ȥ��뤳�Ȥˤ�����
+configure で,リンクする termcap 互換ライブラリを選べるようにした.
+同時に,それらしいライブラリが本当に termcap 関連ルーチンを含むか
+どうかテストすることにした.
1999.3.10
-Str �����ѿ� s �ˤĤ��ơ�s->ptr[s->length-1] ��Ʊ���� Strlastchar(s)
-���֤���������s->length==0�ξ����н补
+Str 型の変数 s について,s->ptr[s->length-1] を同等の Strlastchar(s)
+に置きかえた.s->length==0の場合の対処.
-<textarea>���ޤ꤫������Ƥ��ޤ��Х���fix.
+<textarea>が折りかえされてしまうバグのfix.
-URL�򳫤��Ȥ��ˡ�file ��ʬ���ʤ��ȸ��ߤ�file���դ��Ƥ��ޤ��Х���fix��
+URLを開くときに,file 部分がないと現在のfileを付けてしまうバグのfix.
-POST method �� form ����������Ȥ��ˡ��ǡ����κǸ��CRLF���դ��ʤ�
-�褦�ˤ�����
+POST method で form を送信するときに,データの最後にCRLFを付けない
+ようにした.
1999.3.9
-resize �����
+resize に対応.
-setlinescols ����� define �ǡ�TIOCGWINSZ �� TIOCWINSZ
-�ȴְ㤨�Ƥ�����< ��¼���� uemura@sra.co.jp THANKS!
+setlinescols の中の define で,TIOCGWINSZ を TIOCWINSZ
+と間違えていた.< 上村さん uemura@sra.co.jp THANKS!
-Reload �ΤȤ��� Pragma: no-cache ����ꤹ��褦�ˤ�����
-< �����ڤ��� sasaki@isoternet.org THANKS!
+Reload のときに Pragma: no-cache を指定するようにした.
+< 佐々木さん sasaki@isoternet.org THANKS!
-Cygwin �Ѥˡ�����ե�����˳�ĥ�Ҥ��դ���褦�ˤ�����
-�ޤ��������ʤɤΰ���ե��������Ȥ��ˡ�fopen(file,"wb")
-��Ȥ��褦�ˤ�����
-< ���Ĥ��� ueda@flab.fujitsu.co.jp THANKS!
+Cygwin 用に,一時ファイルに拡張子を付けるようにした.
+また,画像などの一時ファイルを作るときに,fopen(file,"wb")
+を使うようにした.
+< 上田さん ueda@flab.fujitsu.co.jp THANKS!
-isalpha(), isalnum() ��2�Х���ʸ���ΰ����򿩤碌���Ȥ��ε�ư
-��������������ˡ�ɽ�η�������뤳�Ȥ�����Х��ν�����
+isalpha(), isalnum() に2バイト文字の一部を食わせたときの挙動
+がおかしいために,表の形が崩れることがあるバグの修正.
-<style><!-- ... --></style> �Τ褦��<style>�������椬������
-�ˤʤäƤ�����ˡ�ʸ�����Τ������ȤȤߤʤ���Ƥ��ޤ����Ȥ�
-����Х��ν�����
+<style><!-- ... --></style> のように<style>タグの中がコメント
+になっている場合に,文書全体がコメントとみなされてしまうことが
+あるバグの修正.
-configure �ν������Դ������ä���
+configure の修正が不完全だった.
1999.3.8
-termcap�饤�֥��ˤĤ��ơ�ncurses > curses > termcap �ν��õ��
-�褦�ˤ����������ȼ�äơ�ncurses ����󥯤��줿�Ȥ��ˡ�terms.c
-�� curses ����̾���� ncurses �Ⱦ��ͤ���Τǡ�̾�����ѹ�������
+termcapライブラリについて,ncurses > curses > termcap の順に探す
+ようにした.それに伴って,ncurses がリンクされたときに,terms.c
+の curses 風の名前が ncurses と衝突するので,名前を変更した.
-libftp ��Ȥ��Τ���ơ�ftp���������ؿ��������Ѱդ�����
+libftp を使うのをやめて,ftpアクセス関数を自前で用意した.
-<OL> ����� <LI> ��ɽ����������Υ����󥿤� char ���� int ��
-�ѹ���������3���ۤ��Ƥ�ɽ����������ʤ��褦�ˤ�����
-< ��¼���� takkun@mma.club.uec.ac.jp THANKS!
+<OL> の中の <LI> で表示する数字のカウンタを char から int に
+変更.数字が3桁を越えても表示幅が狂わないようにした.
+< 飯村さん takkun@mma.club.uec.ac.jp THANKS!
-colspan �ޤ��� rowspan ���礭�������Ȥ��ˡ�abort ���뤳�Ȥ�����
-�Х��ν�����< �京���� sakane@d4.bsd.nes.nec.co.jp THANKS!
+colspan または rowspan が大きすぎたときに,abort することがある
+バグの修正.< 坂根さん sakane@d4.bsd.nes.nec.co.jp THANKS!
-ɽ�κǽ�� <a href=".."><h1>...</h1></a>�Τ褦�����Ǥ�����ȡ�
-<h1>�ˤ����Ԥ� </a> ���Ĥ��ʤ��ä��Х��ν�����
+表の最初に <a href=".."><h1>...</h1></a>のような要素があると,
+<h1>による空行が </a> で閉じなかったバグの修正.
1999.3.5
-��ư�������ˡ��Хåե��������ɤߤ��ޤ�ʤ��ä���硤�Ķ��ѿ�
-HTTP_HOME ����ڡ������ɤ�褦�ˤ���������ä�������
+起動した時に,バッファが全く読みこまれなかった場合,環境変数
+HTTP_HOME からページを読むようにした.ちょっと不満.
-ISO-2022-jp ��ɽ�����Ƥ�����ˡ���λ���� US_ASCII ��ؼ�����
-�褦�ˤ�����
+ISO-2022-jp で表示している場合に,終了時に US_ASCII を指示する
+ようにした.
-��������Ǥ���褦�ˤ�����
+色を設定できるようにした.
-<li> �θ�� <P> ��̵���ˡ��빽���ɤ���
+<li> の後の <P> を無効に.結構めんどう.
-colspan ��2�ʾ��ɽ�ˤĤ��ơ�����β����η׻����Ѥ��ä��Τǽ�����
-�������ޤ��ѤʤȤ��������롥����������
+colspan が2以上の表について,各列の横幅の計算が変だったので修正.
+しかしまだ変なところがある.原因不明.
-/etc/mailcap ���ɤ�褦�ˤ�����
+/etc/mailcap も読むようにした.
-terms.c ����� tgetstr()�����ޤ�ư���ʤ����Ȥ�����Х��ν�����
-2�� fclose �� fix. < ���������� ukai@debian.or.jp THANKS!
+terms.c の中の tgetstr()がうまく動かないことがあるバグの修正.
+2重 fclose の fix. < うかいさん ukai@debian.or.jp THANKS!
-<form> ������°�����ʤ����ˡ�form �����ޤ���ᤵ��ʤ��Х��ν�����
+<form> だけで属性がない場合に,form がうまく解釈されないバグの修正.
-<style>..</style>��̵�뤹��褦�ˤ�����
+<style>..</style>を無視するようにした.
-1�ԥ��������뤬��餫��ư���褦�˲��ɡ�
+1行スクロールが滑らかに動くように改良.
1999.3.4
-¸�ߤ��ʤ��ե��������ꤷ�ư۾ェλ�����Ȥ��� reset_tty ���¹Ԥ���
-�ʤ����Ȥ�����Х���fix. < ���Ĥ��� ueda@iias.flab.fujitsu.co.jp THANKS!
+存在しないファイルを指定して異常終了したときに reset_tty が実行され
+ないことがあるバグのfix. < 上田さん ueda@iias.flab.fujitsu.co.jp THANKS!
-http://123.45.67.8/ �η����Ǥ��ޤ���³�Ǥ��ʤ����Ȥ�����Х���fix.
-< ryo ���� ryo@misaki.oneechan.to THANKS!
+http://123.45.67.8/ の形式でうまく接続できないことがあるバグのfix.
+< ryo さん ryo@misaki.oneechan.to THANKS!
-ɽ�����Ǥκǽ��ʸ��������ե��٥åȤǤ��ä����ˡ�����ʸ�������˶���
-1�����ä�ɽ������뤳�Ȥ�����Х���fix��HTMLlineproc1()�ǡ�RB_SPECIAL
-�ե饰��Ω�äƤ������ʸ����ͤ᤿�Ȥ���obuf->prevchar �����ꤹ���
-��˺��Ƥ�������Ǥ��ä���
+表の要素の最初の文字がアルファベットであった時に,その文字の前に空白が
+1個入って表が崩れることがあるバグのfix.HTMLlineproc1()で,RB_SPECIAL
+フラグが立っている場合に文字を詰めたとき,obuf->prevchar を設定するの
+を忘れていたためであった.
-���᡼��ɽ���ǡ�����ե������õ�륿���ߥ󥰤�Ĵ����
+イメージ表示で,一時ファイルを消去するタイミングを調整.
-<span> �Dz��Ԥ���Τϴְ㤤���ä��餷���Τǡ����������Τ�����
-<form>..</form>�Dz��Ԥ���褦�ˤ�����< �Ӹ����� ikehara@hepn5.c.u-tokyo.ac.jp
+<span> で改行するのは間違いだったらしいので,修正.そのかわりに
+<form>..</form>で改行するようにした.< 池原さん ikehara@hepn5.c.u-tokyo.ac.jp
THANKS!
w3m -T text/html -dump < file.html > file.txt
-�ǥե����ޥå��Ȥ���ư���褦�ˤ�����
+でフォーマッタとして動くようにした.
1999.3.3
-����Ҥˤʤä�table�ν����ǡ���¦��table�����dz�¦��table��
-��������ꤷ�Ƥ�����ʬ�����������ɤ��褦�����������ˤ�����ɤ�
-�Τ��ɤ����褯�狼��ʤ���
+入れ子になったtableの処理で,内側のtableの幅で外側のtableの
+列幅を固定している部分を削除.大体良いようだが,本当にこれで良い
+のかどうかよくわからない.
-colspan ��2�ʾ�� <td>�� width ����ꤹ���ɽ�η��������Х���fix.
+colspan が2以上の <td>で width を指定すると表の形が狂うバグのfix.
-ftp �ǤΥǥ��쥯�ȥ�ꥹ�ȤΥ��󥫡������ޤ��դ��Ƥ��ʤ��ä��Х�
-��fix.
+ftp でのディレクトリリストのアンカーがうまく付いていなかったバグ
+のfix.
-Boehm GC library �� 4.13 �˥С�����󥢥åס�
+Boehm GC library を 4.13 にバージョンアップ.
1999.3.2
-Cygwin32�б���< �ޤ��Ҥ����� masahiro@znet.or.jp THANKS!
+Cygwin32対応.< まさひろさん masahiro@znet.or.jp THANKS!
-ISO-2022-JP��ʸ��ǡ������� US_ASCII �� JIS X0201 ��ؼ����ʤ���
-����äƤ�����Ǥ��������������ʤ��褦���ס�
+ISO-2022-JPの文書で,行末に US_ASCII か JIS X0201 を指示しないで
+終わっている場合でも字化けが起こらないよう工夫.
-Editor, Mailer �򥪥ץ������ѹ���ǽ�ˤ�����
+Editor, Mailer をオプションで変更可能にした.
-q �ǽ�λ����Ȥ��˳�ǧ���뤫�ɤ����򥪥ץ������ѹ���ǽ�ˤ�����
+q で終了するときに確認するかどうかをオプションで変更可能にした.
1999.3.1
-ʸ����˥����Ȥ�����ȡ�����ʹߤΥ�������ιԤ����Ԥ��줺��
-ɽ�������Х�������
+文章中にコメントがあると,それ以降のソース上の行が改行されずに
+表示されるバグを修正.
-I �ǥ��᡼����ɽ��������ˡ��ӥ塼����background ��ư���褦�ˤ�����
+I でイメージを表示する場合に,ビューアがbackground で動くようにした.
-q �ǽ�λ����Ȥ��ˡ�����äƤ������ɤ����Ҥͤ뤳�Ȥˤ��Ƥߤ���
-��ɾ�ʤ鸵���᤹ͽ�ꡥ
+q で終了するときに,終わっていいかどうか尋ねることにしてみた.
+不評なら元に戻す予定.
-proxy ��ͳ�� ftp ���Ѥǡ��ե�����̾�����ˤ����Х��򤢤����ٽ�����
+proxy 経由の ftp 利用で,ファイル名生成にいたバグをある程度修正.
-<BASE HREF=".."> �����
+<BASE HREF=".."> に対応.
--dump, -cols ���ץ������ɲá�
+-dump, -cols オプションを追加.
<U>..</U>, <DEL>..</DEL>, <INS>..</INS>, <STRIKE>..</STRIKE>, <S>..</S>
-�ν������ɲá�
+の処理を追加.
-��������ե����뤫��Υ�󥯤�é��Ȥ��ˡ�Referer: ���դ��ʤ��褦���ѹ���
+ローカルファイルからのリンクを辿るときに,Referer: を付けないように変更.
1999.2.26
-<div align=center/right> �����caption���դ���ɽ��Ȥ��ȡ����/����
-���Ǥ��ʤ��Х��ν�����
+<div align=center/right> の中でcaptionの付いた表を使うと,中央/右寄せ
+ができないバグの修正.
-<pre>..</pre>����ζ��Ԥ�̵�뤹��Х������ä���������
+<pre>..</pre>の中の空行を無視するバグがあった.修正.
-"z" �ε�ư�˥Х������ä���������
+"z" の挙動にバグがあった.修正.
-table ����ǡ�<input> ��Ĺ���η׻���ְ�äƤ�����������
+table の中で,<input> の長さの計算を間違っていた.修正.
-config.param �������ͤ�񤯤Ȥ��ˡ�LDFLAGS ��ʣ������ȥ��顼��
-�ФƤ����Х���fix. < ��ͤ��� mit@nines.nec.co.jp THANKS!
+config.param に設定値を書くときに,LDFLAGS が複数あるとエラーが
+出ていたバグのfix. < 水戸さん mit@nines.nec.co.jp THANKS!
-ɽ�����������ɤ�JIS�ˤ�������ư��ɤ��ʤ��ä��Τ������Ʊ���ˡ�
-����ѥͥ��JIS�μ����ܺ٤����٤�褦�ˤ�����
-< ��ͤ��� mit@nines.nec.co.jp ���Ĥ��� ueda@iias.flab.fujitsu.co.jp
+表示漢字コードをJISにした場合の動作が良くなかったのを改善.同時に,
+設定パネルでJISの種類を詳細に選べるようにした.
+< 水戸さん mit@nines.nec.co.jp 上田さん ueda@iias.flab.fujitsu.co.jp
THANKS!
-SIGIOT �Υϥ�ɥ����ǡ�SIGIOT�Υϥ�ɥ�򸵤��ᤷ�Ƥ��� abort()
-����褦�ˤ����������ʥ�ϥ�ɥ��OS��¸���β�ä���Ū��
-< ����� takayuki@ebina.hitachi.co.jp THANKS!
+SIGIOT のハンドラの中で,SIGIOTのハンドラを元に戻してから abort()
+するようにした.シグナルハンドラのOS依存性の解消が目的.
+< 中川さん takayuki@ebina.hitachi.co.jp THANKS!
-ľ��URL�����Ϥ��Ƥ⡤ľ���Υڡ����� Referer: �Ȥ��ƥ����Ф�������
-���ޤäƤ����Х���fix��
+直接URLを入力しても,直前のページが Referer: としてサーバに送られて
+しまっていたバグをfix.
1999.2.25
-Makefile ����� CC=cc �ȤʤäƤ�����ʬ�� config.h �����������
-ư���褦�ˤ�����
+Makefile の中で CC=cc となっていた部分を config.h から取得して
+動くようにした.
-GET �� CGI ������Ȥ��ˡ�ʸ����� : ���ޤޤ�Ƥ���Ȥ��ޤ��Ԥ��ʤ�
-�Х���fix. < ���ܤ��� manome@itlb.te.noda.sut.ac.jp THANKS!
+GET で CGI を送るときに,文字列に : が含まれているとうまく行かない
+バグのfix. < 馬目さん manome@itlb.te.noda.sut.ac.jp THANKS!
1999.2.24
-"S" �ǥХåե�����¸����Ȥ��δ��������ɤ�����������(EUC)�ˤʤäƤ���
-������
+"S" でバッファを保存するときの漢字コードが内部コード(EUC)になっていた
+のを修正.
-"J","K" ��1�ԥ��������뤹�륳�ޥ�ɤ�¸�Ū���ɲá�
-< ����� furukawa@ces.kyutech.ac.jp THANKS!
+"J","K" で1行スクロールするコマンドを実験的に追加.
+< 古川さん furukawa@ces.kyutech.ac.jp THANKS!
-Str.c �� Sprintf() �ǡ�va_arg(*,char) �Ȥ������꤬�ޥ����ä��Τǽ�����
-< ��ޤƤ��� yamate@ebina.hitachi.co.jp THANKS!
+Str.c の Sprintf() で,va_arg(*,char) という指定がマズかったので修正.
+< やまてさん yamate@ebina.hitachi.co.jp THANKS!
-ESC : �� Message-ID �򥢥󥫡��ˤ�����ʬ�ΥХ�fix��
+ESC : で Message-ID をアンカーにする部分のバグfix.
-news: �Υ�󥯤����ޤ�é��ʤ��ä��Х���fix��< �京����
+news: のリンクがうまく辿れなかったバグのfix.< 坂根さん
sakane@d4.bsd.nes.nec.co.jp THANKS!
1999.2.23
-Lynx �������ޥåץե�����������configure�����٤�褦�ˤ�����
-< ���ܤ��� hasimoto@shimada.nuee.nagoya-u.ac.jp THANKS!
+Lynx 風キーマップファイルを作成.configureで選べるようにした.
+< 橋本さん hasimoto@shimada.nuee.nagoya-u.ac.jp THANKS!
1999.2.22
-ɽ����Ǥ� alt �����Ǥ��ޤ꤫������ʤ��ä��Х�(���Τˤϡ�alt ��ʸ����Ĺ��
-ɽ�κǾ����Ȥ���Ƥ��ޤ��Х�)��fix��
+表の中では alt の要素が折りかえされなかったバグ(正確には,alt の文字列長が
+表の最小幅とされてしまうバグ)のfix.
-2/22 �ǥ�꡼����
+2/22 版リリース.
-TAB/ESC TAB �ǡ�form �ˤ����֤褦�ˤ�����< ����� furukawa@ces.kyutech.ac.jp
+TAB/ESC TAB で,form にも飛ぶようにした.< 古川さん furukawa@ces.kyutech.ac.jp
THANKS!
-��������ե����뤸��ʤ���Τ� "E" ���Խ����褦�Ȥ���ȡ����Υե������
-�Խ�����������������ɤ˼��Ԥ���Ȥ����Х���fix.
+ローカルファイルじゃないものを "E" で編集しようとすると,空のファイルを
+編集したあげくリロードに失敗するというバグのfix.
-"g"/"G" ����Ƭ��/�����ԤؤΥ����פ��ѹ�������ޤǤ� "g" ��
-"ESC g" �˥ޥåס� < ����� furukawa@ces.kyutech.ac.jp THANKS!
+"g"/"G" を,先頭行/末尾行へのジャンプに変更.これまでの "g" は
+"ESC g" にマップ. < 古川さん furukawa@ces.kyutech.ac.jp THANKS!
-URL �Υѥ��� . ��ޤ��������������褦�ˤ�����< ���椵��
+URL のパスに . を含む場合に正規化するようにした.< 田中さん
tanaka@sp.mmlab.toshiba.co.jp THANKS!
-�Ķ��ѿ� HTTP_proxy ����ץ�������URL���äƤ����Ȥ��ˡ������
-parse ����Τ�˺��Ƥ�����< ���椵�� tanaka@sp.mmlab.toshiba.co.jp THANKS!
+環境変数 HTTP_proxy からプロキシのURLを取ってきたときに,それを
+parse するのを忘れていた.< 田中さん tanaka@sp.mmlab.toshiba.co.jp THANKS!
-�������뤬���礦������ιԤˤ���Ȥ��� "z" ��Ȥ��ȥ�������פ���Х���fix.
-< ���ܤ��� hasimoto@shimada.nuee.nagoya-u.ac.jp THANKS!
+カーソルがちょうど中央の行にあるときに "z" を使うとコアダンプするバグをfix.
+< 橋本さん hasimoto@shimada.nuee.nagoya-u.ac.jp THANKS!
1999.2.19
-~/.w3m/config ���ʤ��Ȥ��ˡ�~/.mailcap ���ɤޤʤ��Х���fix��
-~/.mailcap ���ʤ��Ȥ��ˡ�searchExtViewer() ����ǥ�������פ���Х�
-��fix.
-nextA() ����ɡ��夫����Ͽ�������󥫡��ˤ����֡�
-prevA() ���ɲá�
+~/.w3m/config がないときに,~/.mailcap を読まないバグをfix.
+~/.mailcap がないときに,searchExtViewer() の中でコアダンプするバグ
+をfix.
+nextA() を改良.後から登録したアンカーにも飛ぶ.
+prevA() を追加.
1999.2.18
-<dl compact> �����
+<dl compact> に対応.
-����Ҥˤʤä�table����ǥ���ǥ�Ȥ��դ��Ķ���ȤäƤ��ơ�������
-��¦��table���Ȥ��ʤ�����ɽ��ɽ���������Х���fix.
+入れ子になったtableの中でインデントの付く環境を使っていて,しかも
+外側のtableに枠がない場合に表の表示が崩れるバグをfix.
1999.2.17
-HTTP_proxy �����Ѥ��Ƥ���Ȥ�����٥���դ��� URL �����ޤ��������ʤ�
-����fix.
+HTTP_proxy を利用しているとき,ラベルの付いた URL がうまく取りだせない
+バグのfix.
-���ץ��������ꤷ���Ȥ��ˡ��Ƽ�proxy �ξ��󤬤�����ȿ�Ǥ���ʤ��ä���
+オプションを設定したときに,各種proxy の情報がすぐに反映されなかった.
1999.2.16
-<script>..</script>�����Ƥ�̵�뤹�륳���ɤǡ�<script><!-- ... --></script>
-�ȤʤäƤ���ȡ�</script>�ǥ�����ץȤ��Ĥ�����Ǥ⥳���Ȥ�³���Ƥ���
-�Ȥߤʤ���Ƥ�����
+<script>..</script>の内容を無視するコードで,<script><!-- ... --></script>
+となっていると,</script>でスクリプトを閉じた後でもコメントが続いている
+とみなされていた.
-�վ�񤭴Ķ��ǡ��񤫤줿ʸ������ʸ��������Ȥ�����Ƥ�����
+箇条書き環境で,書かれた文字数と文字カウントがずれていた.
1999.2.12
-caption �б��ˤȤ�ʤäơ�<tr><td>��Ĥ��ʤ���<table>�����
-ʪ�����֤���ȥ�������פ���Х����������Ƥ�����fix��
+caption 対応にともなって,<tr><td>をつけないで<table>の中に
+物を配置するとコアダンプするバグが混入していた.fix.
-Ĺǯ�η��ƤǤ��ä������̹����롼����ΥХ�(���̤ΰ�������������ʤ�)
-�Ρ����ʤ��Ȥ������fix������
+長年の懸案であった,画面更新ルーチンのバグ(画面の一部が更新されない)
+の,少なくとも一部をfixした.
-table.c, etc.c ����� isspace() �� IS_SPACE() ���ѹ���
-isspace()���Ѥʵ�ư(Solaris��������)�Τ����ǰ����δ��������ڡ���
-���Ȼפ��Ƥ�����
+table.c, etc.c の中の isspace() を IS_SPACE() に変更.
+isspace()の変な挙動(Solarisだけか?)のせいで一部の漢字がスペース
+だと思われていた.
-2/10�ǥ�꡼����
+2/10版リリース.
1999.2.11
-���ץ��������ѥͥ���ߡ�"o"���ޥ�ɡ�
+オプション設定パネルを新設."o"コマンド.
-����ե������ ~/.w3m �˺�뤳�Ȥˤ��롥�ޤ��������
-~/.w3m/config �����ɤळ�Ȥˤ��롥
+一時ファイルを ~/.w3m に作ることにする.また,設定を
+~/.w3m/config から読むことにする.
-�Хåե�������������ƽ�λ����ȥ�������פ���Х�
-�ν�����< �����ڤ��� sasaki@isoternet.org THANKS!
+バッファを全部削除して終了するとコアダンプするバグ
+の修正.< 佐々木さん sasaki@isoternet.org THANKS!
1999.2.9
-����°���� ' ' �ǰϤޤ�Ƥ����Ȥ��ˤ�ư���褦������
-HTMLlineproc1, HTMLlineproc2 ������ȼ��˥��������
-���Ƥ�����Τ�read_token()��Ȥ��褦���줹�롥
-<caption>..</caption>���б����롥
+タグ属性が ' ' で囲まれていたときにも動くよう改善.
+HTMLlineproc1, HTMLlineproc2 の中で独自にタグを解析
+していたものを,read_token()を使うよう統一する.
+<caption>..</caption>に対応する.
1999.2.8
-<SPAN>, </SPAN> �Dz��Ԥ���褦�ˤ��롥Ringring ��ɽ����
-���������ä����ᡥ
-���顼ɽ���Ѥ˥���ѥ��뤷�Ƥ⡤�����ɽ���Ǥ��륹���å�
-��Ĥ���(-M)��
-��ư�����ץ�����ɽ����狼��䤹���ѹ���
+<SPAN>, </SPAN> で改行するようにする.Ringring の表示が
+おかしかったため.
+カラー表示用にコンパイルしても,白黒で表示できるスイッチ
+をつける(-M).
+起動時オプションの表示をわかりやすく変更.
1999.2.6
-�������ʸ����ΰ�����̩����= ��³�������������������
-������γ��ϤȤߤʤ���
-<script>..</script>�����̵�뤹��褦�ˤ��롥
+タグ内の文字列の扱いを厳密化.= に続く引用符だけを本当の
+引用符の開始とみなす.
+<script>..</script>の中を無視するようにする.
1999.2.5
-2/5�ǥ�꡼����
+2/5版リリース.
-<BASE TARGET="hoge">���᤹��褦�ˤ��롥
+<BASE TARGET="hoge">を解釈するようにする.
1999.2.3
-Boehm GC �� 4.13alpha3 ��up��
-location: �إå���redirect�����硤redirect��λ����
-; ���Ǥ��ڤäƤ����Τ�ߤ᤿��
-��ä�table�б���
-frame�б�����������ư����
-table����ǰ۾�ʲ��Ԥ�ȯ������Х���fix�������ϰ���Ǥ�
-�����ʤ��ۤ����ݤ��ä���
+Boehm GC を 4.13alpha3 にup.
+location: ヘッダでredirectする場合,redirect先の指定を
+; で打ち切っていたのを止めた.
+腐ったtable対応.
+frame対応.だいたい動く.
+tableの中で異常な改行が発生するバグのfix.原因は一言では
+言えないほど面倒だった.
1999.2.2
-frame�б�����ꡥ
-<input type=image>�ΰ������ɤ��ʤ��ä��Τǽ�����
-loadGeneralFile() ����ǡ��ե�����ݥ��󥿤�2�� fclose()
-���Ƥ����Х��ν�����< ���ܤ��� shom@i.h.kyoto-u.ac.jp THANKS!
+frame対応に着手.
+<input type=image>の扱いが良くなかったので修正.
+loadGeneralFile() の中で,ファイルポインタを2回 fclose()
+していたバグの修正.< 松本さん shom@i.h.kyoto-u.ac.jp THANKS!
1999.2.1
-<td colspan=2 rowspan=2>�ι��ܤ���ü�ʳ��ˤ��ä�����ɽ��
-���������ޤ��񤫤�ʤ��Х��ν�����
+<td colspan=2 rowspan=2>の項目が左端以外にあった場合に表の
+罫線がうまく書かれないバグの修正.
1999.1.29
-�Ĥ�Ĺ��table���б����ơ�table ���礭�����Ϲ�������
-��ưŪ�˿��Ӥ�褦�˲��ɡ�
+縦に長いtableに対応して,table が大きい場合は行方向に
+自動的に伸びるように改良.
1999.1.28
-file.c, conv.c ����ǡ�����Ĺ�Хåե���ȤäƤ�����ʬ��
-Str �饤�֥���Ȥ��褦���ѹ���
-ư���ǧ��
+file.c, conv.c の中で,固定長バッファを使っている部分を,
+Str ライブラリを使うように変更.
+動作確認:
Solaris 2.5.1
SunOS 4.1.3 w/JLE
HP-UX 9.x
@@ -4249,25 +4249,25 @@ Str �饤�֥���Ȥ��褦���ѹ���
1999.1.27
-<ISINDEX> ���б����롥
-<input type=text accept> ���б����롥
-<select multiple> ���б����롥
-<input type=radio>�ǡ��ǽ�ˤɤ������å�����Ƥ��ʤ�
-���ˡ��ǽ�����Ǥ�����å�����褦�˲��ɤ��褦�Ȥ���
-���ޡ�
-<td>�� rowspan �� colspan ��ξ����2�ʾ���ä�����
-���ޤ�������󥰤��ʤ��Х���fix.
-[TAB] �ǥ��������ư����Ȥ��ˡ����󥫡�ʸ����������
-���֤褦��ư����ѹ���
-Boehm GC 4.12 ��ư�����Ȥ��ǧ��
+<ISINDEX> に対応する.
+<input type=text accept> に対応する.
+<select multiple> に対応する.
+<input type=radio>で,最初にどれもチェックされていない
+場合に,最初の要素をチェックするように改良しようとして
+挫折.
+<td>で rowspan と colspan の両方が2以上だった場合に
+うまくレンダリングしないバグをfix.
+[TAB] でカーソル移動するときに,アンカー文字列の中央に
+飛ぶように動作を変更.
+Boehm GC 4.12 で動くことを確認.
1999.1.26
-table �ǡ�rowspan ��3�ʾ��border=1�ξ��ˡ�ɽ�����
-���Ԥ��Ǥ���Х���fix.
+table で,rowspan が3以上でborder=1の場合に,表の中に
+空行ができるバグをfix.
1999.1.22 beta-990122
-��Ͽ���ϡ�������¥С������˳ʾ夲��
-����ޤǤ� config.h �Խ���������ơ�configure ��񤯡�
-ź�դ�Boehm GC library �� 4.10 ���� 4.11 �˾夲�롥
+記録開始.αからβバージョンに格上げ.
+これまでの config.h 編集方式をやめて,configure を書く.
+添付のBoehm GC library を 4.10 から 4.11 に上げる.
diff --git a/doc-jp/MANUAL.html b/doc-jp/MANUAL.html
index 41d70f1..f7c4988 100644
--- a/doc-jp/MANUAL.html
+++ b/doc-jp/MANUAL.html
@@ -2,532 +2,525 @@
<head><title>w3m manual</title>
</head>
<body>
-<h1>w3m �ޥ˥奢��</h1>
+<h1>w3m マニュアル</h1>
<div align=right>
-��ƣ ��§<br>
+伊藤 彰則<br>
aito@fw.ipsj.or.jp
</div>
-<h2>�⤯��</h2>
+<h2>もくじ</h2>
<menu>
-<li><a href="#Introduction">�Ϥ����</a>
-<li><a href="#Options">��ư���ץ����</a>
-<li><a href="#Color">ʸ���ɽ������</a>
-<li><a href="#Key:orig">��ư��λȤ�����(���ꥸ�ʥ�)</a>
-<li><a href="#Key:lynx">��ư��λȤ�����(Lynx��)</a>
-<li><a href="#Mouse">�ޥ������</a>
-<li><a href="#Key:custom">���������</a>
+<li><a href="#Introduction">はじめに</a>
+<li><a href="#Options">起動オプション</a>
+<li><a href="#Color">文書の表示内容</a>
+<li><a href="#Key:orig">起動後の使いかた(オリジナル)</a>
+<li><a href="#Key:lynx">起動後の使いかた(Lynx風)</a>
+<li><a href="#Mouse">マウス操作</a>
+<li><a href="#Key:custom">キーの定義</a>
<li><a href="#LocalCGI">Local CGI</a>
</menu>
<hr>
<a name="Introduction"></a>
-<h2>�Ϥ����</h2>
-w3m �ϡ��ƥ����ȥ١����Υڡ�����/WWW�֥饦���Ǥ��������Ȥ��ȡ�kterm �ʤɤΥ���饯��
-ü����ǡ���������ե�����򸫤��ꡤWWW�����Ƥ򸫤��ꤹ�뤳�Ȥ��Ǥ��ޤ���
+<h2>はじめに</h2>
+w3m は,テキストベースのページャ/WWWブラウザです.これを使うと,kterm などのキャラクタ
+端末上で,ローカルファイルを見たり,WWWの内容を見たりすることができます.
<hr>
<a name="Options"></a>
-<h2>��ư���ץ����</h2>
+<h2>起動オプション</h2>
-��ư���ΰ����ϼ����̤�Ǥ���
+起動時の引数は次の通りです.
<p>
<pre>
w3m [options] [file|URL]
</pre>
<P>
-�����˥ե�����̾����ꤹ��Ф��Υե������ɽ������URL����ꤹ��Ф������Ƥ�ɽ�����ޤ���
-������ꤷ�ʤ���С�ɸ�����Ϥ����Ƥ�ɽ�����ޤ�����������ɸ�����Ϥ� tty �Ǥ�����ˤϡ�
-���⤻���˽�λ���ޤ���
+引数にファイル名を指定すればそのファイルを表示し,URLを指定すればその内容を表示します.
+何も指定しなければ,標準入力の内容を表示します.ただし,標準入力が tty である場合には,
+何もせずに終了します.
<p>
-���ץ����ϼ����̤�Ǥ���
+オプションは次の通りです.
<dl>
-<dt>+�ֹ�
-<dd>��ư�塤����ι��ֹ�˰�ư���롥
-<dt>-t ��
-<dd>���֤�������ꤹ�롥�ǥե���Ȥ� 8 ��
+<dt>+番号
+<dd>起動後,指定の行番号に移動する.
+<dt>-t 幅
+<dd>タブの幅を指定する.デフォルトは 8 .
<dt>-r
-<dd>text/plain ��ʸ���ɽ�������硤�Ť��Ǥ��ˤ�붯Ĵʸ����ɽ�����ʤ���
-���Υ��ץ������դ��ʤ���硤``A^H_''��A�Υ�������饤��Ȥ���ɽ�����졤
-``A^HA''��A�Υܡ���ɤȤ���ɽ������롥
-<dt>-l �Կ�
-<dd>ɸ�����Ϥ����Ƥ�ɽ������Ȥ�����¸��������Կ�����ꤹ
-�롥�ǥե���Ȥ� 10000��
-<dt>-s
-<dd>Shift_JIS �����ɤ�ɽ�����롥
-<dt>-e
-<dd>EUC �����ɤ�ɽ�����롥
-<dt>-j
-<dd>JIS(ISO-2022-JP) �����ɤ�ɽ�����롥
-<dt>-O e|s|j|N|m|n
-<dd>ɽ�����Ѥ���ʸ�������ɤ���ꤹ�롥
-<dt>-I e|s
-<dd>����ʸ���ʸ�������ɤ���ꤹ�롥
-<dt>-T ������
-<dd>ɽ������ʸ��Υ����פ���ꤹ�롥���λ��꤬�ʤ���硤�ե�����
-̾�γ�ĥ�Ҥˤ�äƼ�ưȽ�̤���롥Ƚ�̤Ǥ��ʤ����� text/plain
-�Ȥߤʤ���롥<p>
-�㡧<br>
-ɸ�����Ϥ��� HTML �ե�������ɤ��ɽ������
+<dd>text/plain の文書を表示する場合,重ね打ちによる強調文字を表示しない.
+このオプションを付けない場合,``A^H_''はAのアンダーラインとして表示され,
+``A^HA''はAのボールドとして表示される.
+<dt>-l 行数
+<dd>標準入力の内容を表示するときに保存される最大行数を指定す
+る.デフォルトは 10000.
+<dt>-O 文字コード
+<dd>表示に用いる文字コードを指定する.
+<dt>-I 文字コード
+<dd>入力文書の文字コードを指定する.
+<dt>-T タイプ
+<dd>表示する文書のタイプを指定する.この指定がない場合,ファイル
+名の拡張子によって自動判別される.判別できない場合は text/plain
+とみなされる.<p>
+例:<br>
+標準入力から HTML ファイルを読んで表示する
<pre>
cat hoge.html | w3m -T text/html
</pre>
<p>
-HTML�ե�����Υ�������ɽ������
+HTMLファイルのソースを表示する
<pre>
w3m -T text/plain hoge.html
</pre>
<dt>-m
-<dd>Internet message �⡼�ɤ�ɽ�����롥Internet message�⡼�ɤξ�硤
-�إå������Ƥ򸫤ơ�Content-Type: ������Ф���򻲹ͤˤ��롥�Żҥ᡼���
-�ͥåȥ˥塼���ε������ɤ�Ȥ���������
+<dd>Internet message モードで表示する.Internet messageモードの場合,
+ヘッダの内容を見て,Content-Type: があればそれを参考にする.電子メールや
+ネットニュースの記事を読むときに便利.
<dt>-v
-<dd>�������ȥ��åץڡ�����ɽ�����롥
+<dd>スタートアップページを表示する.
<dt>-B
-<dd>Bookmark ��ɽ�����롥
+<dd>Bookmark を表示する.
<dt>-bookmark file
-<dd>Bookmark�Υե��������ꤹ�롥
+<dd>Bookmarkのファイルを指定する.
<dt>-M
-<dd>���顼ɽ���򤷤ʤ���
+<dd>カラー表示をしない.
<dt>-F
-<dd>�ե졼���ưɽ�����롥
-<dt>-S
-<dd>Ϣ³������Ԥ�1�ԤˤޤȤ��ɽ�����롥
+<dd>フレームを自動表示する.
+<dt>-s
+<dd>連続する空行を1行にまとめて表示する.
<dt>-X
-<dd>w3m��λ���ˡ������β��̤����ʤ���
+<dd>w3m終了時に,以前の画面に戻らない.
<dt>-W
-<dd>�ޤ��֤���������Ȥ����ɤ������ڤ꤫���롥
+<dd>折り返しサーチを使うかどうかを切りかえる.
<dt>-o option=value
-<dd>���ץ�������ꤹ�롥
-���ץ�����̾�����ͤϡ�~/.w3m/config �ǻ��ꤹ���Τ�Ʊ����
+<dd>オプションを指定する.
+オプションの名前や値は,~/.w3m/config で指定するものと同じ.
<dt>-no-proxy
-<dd>�ץ����������Ѥ��ʤ���
+<dd>プロキシを利用しない.
<dt>-no-mouse
-<dd>�ޥ��������Ѥ��ʤ���
+<dd>マウスを利用しない.
<dt>-cookie
-<dd>���å�����������롥
+<dd>クッキーを処理する.
<dt>-no-cookie
-<dd>���å�����������ʤ���
+<dd>クッキーを処理しない.
<dt>-num
-<dd>���ֹ��ɽ�����롥
+<dd>行番号を表示する.
<dt>-dump
-<dd>URL�����Ƥ��ɤߤ��ߡ��������줿�Хåե������Ƥ�ɸ����Ϥ˽񤭽Ф���
-ʸ�������80��Ȳ��ꤵ��롥�������ϡ����� -cols ���ץ������ѹ���ǽ��
-<dt>-cols ��
-<dd>-dump ���ץ�����Ȥ����ˡ�ʸ���������ꤹ�롥
-<dt>-ppc �ԥ������
-<dd>ʸ����������ꤹ�롥�ǥե���Ȥϥ�����ɥ����礭�����鼫ưŪ�˷׻����롥
-<dt>-ppl �ԥ������
-<dd>ʸ���ν�������ꤹ�롥�ǥե���Ȥϥ�����ɥ����礭�����鼫ưŪ�˷׻����롥
+<dd>URLの内容を読みこみ,整形されたバッファの内容を標準出力に書き出す.
+文書の幅は80桁と仮定される.この幅は,次の -cols オプションで変更可能.
+<dt>-cols 幅
+<dd>-dump オプションを使う場合に,文書の幅を指定する.
+<dt>-ppc ピクセル数
+<dd>文字の幅を指定する.デフォルトはウインドウの大きさから自動的に計算する.
+<dt>-ppl ピクセル数
+<dd>文字の縦幅を指定する.デフォルトはウインドウの大きさから自動的に計算する.
<dt>-dump_source
-<dd>URL�����Ƥ��ɤߤ��ߡ�����������ɸ����Ϥ˽񤭽Ф���
-�����������Ѵ��⤵��ʤ���
+<dd>URLの内容を読みこみ,整形せずに標準出力に書き出す.
+漢字コード変換もされない.
<dt>-dump_head
-<dd>URL�˥������������إå��������Ϥ��롥
+<dd>URLにアクセスし,ヘッダ情報を出力する.
<dt>-dump_both
-<dd>URL�˥������������إå������HTML����������Ϥ��롥
+<dd>URLにアクセスし,ヘッダ情報とHTMLソースを出力する.
<dt>-dump_extra
-<dd>URL�˥�������������ĥ����ȥإå������HTML����������Ϥ��롥
+<dd>URLにアクセスし,拡張情報とヘッダ情報とHTMLソースを出力する.
<dt>-post file
-<dd>�ե���������Ƥ�POST���롥
+<dd>ファイルの内容をPOSTする.
<dt>-header string
-<dd>HTTP�׵�إå����ɲä��롥
+<dd>HTTP要求ヘッダを追加する.
<dt>-config file
-<dd>config�Υե��������ꤹ�롥
+<dd>configのファイルを指定する.
</dl>
<hr>
<a name="Color"></a>
-<h2>ʸ���ɽ������</h2>
+<h2>文書の表示内容</h2>
-HTMLʸ���ɽ�����Ƥ���Ȥ��ˤϡ����Τ褦��ɽ���ˤʤ�ޤ���
+HTML文書を表示しているときには,次のような表示になります.
<div align="center">
<table border="1">
-<tr><th></th><th>���顼ɽ����</th><th>���ɽ����</th></tr>
-<tr><td>���</td><td>�Ŀ�</td><td>����</td></tr>
-<tr><td>����饤�����</td><td>�п�</td><td>ȿžɽ��</td></tr>
-<tr><td>FORM��������ʬ</td><td>�ֿ�</td><td>ȿžɽ��</td></tr>
+<tr><th></th><th>カラー表示時</th><th>白黒表示時</th></tr>
+<tr><td>リンク</td><td>青色</td><td>下線</td></tr>
+<tr><td>インライン画像</td><td>緑色</td><td>反転表示</td></tr>
+<tr><td>FORMの入力部分</td><td>赤色</td><td>反転表示</td></tr>
</table>
</div>
-���顼ɽ�����ο��ϡ����ץ��������ѥͥ� "o" ���ѹ����뤳�Ȥ��Ǥ��ޤ���
+カラー表示時の色は,オプション設定パネル "o" で変更することができます.
<hr>
<a name="Key:orig"></a>
-<h2>��ư��λȤ�����(���ꥸ�ʥ�)</h2>
+<h2>起動後の使いかた(オリジナル)</h2>
-��ư������ϡ�1ʸ���Υ��ޥ�ɤ򥭡��ܡ��ɤ������Ϥ��뤳�Ȥ�w3m�����ޤ���
-���ޥ�ɤˤϼ��Τ褦�ʤ�Τ�����ޤ����ʲ��ε��ҤǤϡ�C-x �ϥ���ȥ�����x
-��ɽ���ޤ����ޤ���SPC �ϥ��ڡ����С���RET �ϥ꥿���󥭡���ESC �ϥ��������ץ����Ǥ���
+起動した後は,1文字のコマンドをキーボードから入力することでw3mを操作します.
+コマンドには次のようなものがあります.以下の記述では,C-x はコントロールx
+を表します.また,SPC はスペースバー,RET はリターンキー,ESC はエスケープキーです.
<P>
-�����ǽ񤤤Ƥ���Τϡ����ꥸ�ʥ��ǤΥ������Ǥ���Lynx���Υ�������Ѥ�
-����ѥ��뤷�Ƥ����ΤˤĤ��Ƥϡ�<a href="#Key:lynx">��ư��λȤ���(Lynx��)</a>
-�򤴤�󤯤�������
+ここで書いてあるのは,オリジナル版のキー操作です.Lynx風のキー操作用に
+コンパイルしてあるものについては,<a href="#Key:lynx">起動後の使い方(Lynx風)</a>
+をごらんください.
-<H3>�ڡ���/���������ư</H3>
+<H3>ページ/カーソル移動</H3>
<table>
-<TR><TD>SPC,C-v<TD>���Υڡ�����ɽ�����ޤ���
-<TR><TD>b,ESC v<TD>���Υڡ�����ɽ�����ޤ���
-<TR><TD>l,C-f,���������<TD>��������򱦤˰�ư���ޤ���
-<TR><TD>h,C-b,���������<TD>��������򺸤˰�ư���ޤ���
-<TR><TD>j,C-n,���������<TD>��������򲼤˰�ư���ޤ���
-<TR><TD>k,C-p,���������<TD>����������˰�ư���ޤ���
-<TR><TD>J<TD>���̤�1�Ծ�˥��������뤷�ޤ���
-<TR><TD>K<TD>���̤�1�Բ��˥��������뤷�ޤ���
-<TR><TD>^,C-a<TD>��Ƭ�˰�ư���ޤ���
-<TR><TD>$,C-e<TD>�����˰�ư���ޤ���
-<TR><TD>w<TD>����ñ��˰�ư���ޤ���
-<TR><TD>W<TD>����ñ��˰�ư���ޤ���
-<TR><TD>&gt;<TD>�������Τ򱦤ˤ��餷�ޤ���(ɽ�����Ƥ򺸤ˤ��餹)
-<TR><TD>&lt;<TD>�������Τ򺸤ˤ��餷�ޤ���(ɽ�����Ƥ򱦤ˤ��餹)
-<TR><TD>.<TD>�������Τ�1ʸ�����ˤ��餷�ޤ���(ɽ�����Ƥ򺸤ˤ��餹)
-<TR><TD>,<TD>�������Τ�1ʸ�����ˤ��餷�ޤ���(ɽ�����Ƥ򱦤ˤ��餹)
-<TR><TD>g,M-&lt;<TD>ʸ��Τ����Ф��ιԤ˰�ư���ޤ���
-<TR><TD>G,M-&gt;<TD>ʸ��Τ����Ф󲼤ιԤ˰�ư���ޤ���
-<TR><TD>ESC g<TD>���̲��ǹ��ֹ�����Ϥ��������ǻ��ꤷ���Ԥ˰�ư���ޤ���
-������ $ �����Ϥ���ȡ��ǽ��Ԥ˰�ư���ޤ���
-<TR><TD>Z<TD>��������Τ�����֤�Ԥ�����˰�ư���ޤ���
-<TR><TD>z<TD>��������Τ���Ԥ���̤�����˰�ư���ޤ���
-<TR><TD>TAB<TD>���Υ�󥯤˰�ư���ޤ���
-<TR><TD>C-u, ESC TAB<TD>���Υ�󥯤˰�ư���ޤ���
-<TR><TD>[<TD>�ǽ�Υ�󥯤˰�ư���ޤ���
-<TR><TD>]<TD>�Ǹ�Υ�󥯤˰�ư���ޤ���
+<TR><TD>SPC,C-v<TD>次のページを表示します.
+<TR><TD>b,ESC v<TD>前のページを表示します.
+<TR><TD>l,C-f,右矢印キー<TD>カーソルを右に移動します.
+<TR><TD>h,C-b,左矢印キー<TD>カーソルを左に移動します.
+<TR><TD>j,C-n,下矢印キー<TD>カーソルを下に移動します.
+<TR><TD>k,C-p,上矢印キー<TD>カーソルを上に移動します.
+<TR><TD>J<TD>画面を1行上にスクロールします.
+<TR><TD>K<TD>画面を1行下にスクロールします.
+<TR><TD>^,C-a<TD>行頭に移動します.
+<TR><TD>$,C-e<TD>行末に移動します.
+<TR><TD>w<TD>次の単語に移動します.
+<TR><TD>W<TD>前の単語に移動します.
+<TR><TD>&gt;<TD>画面全体を右にずらします.(表示内容を左にずらす)
+<TR><TD>&lt;<TD>画面全体を左にずらします.(表示内容を右にずらす)
+<TR><TD>.<TD>画面全体を1文字右にずらします.(表示内容を左にずらす)
+<TR><TD>,<TD>画面全体を1文字左にずらします.(表示内容を右にずらす)
+<TR><TD>g,M-&lt;<TD>文書のいちばん上の行に移動します.
+<TR><TD>G,M-&gt;<TD>文書のいちばん下の行に移動します.
+<TR><TD>ESC g<TD>画面下で行番号を入力し,そこで指定した行に移動します.
+ここで $ を入力すると,最終行に移動します.
+<TR><TD>Z<TD>カーソルのある位置を行の中央に移動します.
+<TR><TD>z<TD>カーソルのある行を画面の中央に移動します.
+<TR><TD>TAB<TD>次のリンクに移動します.
+<TR><TD>C-u, ESC TAB<TD>前のリンクに移動します.
+<TR><TD>[<TD>最初のリンクに移動します.
+<TR><TD>]<TD>最後のリンクに移動します.
</table>
-<H3>�ϥ��ѡ�������</H3>
+<H3>ハイパーリンク操作</H3>
<table>
-<TR><TD WIDTH=100>RET<TD>���ߥ������뤬�����󥯤��ؤ����ʸ����ɤߤ��ߤޤ���
-<TR><TD>a, ESC RET<TD>���ߥ������뤬�����󥯤��ؤ����ʸ���ե��������¸���ޤ���
-<TR><TD>u<TD>���ߥ������뤬�����󥯤��ؤ����URL��ɽ�����ޤ���
-<TR><TD>i<TD>��󥯤˴�Ϣ�դ���줿�����ؤ�URL��ɽ�����ޤ���
-<TR><TD>I<TD>���ߥ������뤬�����󥯤��б����������ɽ�����ޤ���
-<TR><TD>ESC I<TD>���ߥ������뤬�����󥯤��ؤ�
-������ե��������¸���ޤ���
-<TR><TD>:<TD>URL����ʸ������󥯤ˤ��ޤ������ε�ǽ�ϡ�HTML�Ǥʤ�ʸ���
-�ɤ�Ǥ���Ȥ��ˤ�ͭ���Ǥ���
-<TR><TD>ESC :<TD>Message-ID����ʸ�����news: �Υ�󥯤ˤ��ޤ������ε�ǽ�ϡ�HTML�Ǥʤ�ʸ���
-�ɤ�Ǥ���Ȥ��ˤ�ͭ���Ǥ���
-<TR><TD>c<TD>���ߤ�ʸ���URL��ɽ�����ޤ���
-<TR><TD>=<TD>���ߤ�ʸ��˴ؤ�������ɽ�����ޤ���
-<TR><TD>C-g<TD>�ڡ�����Ǥθ��߰��֤�ɽ�����ޤ���
-<TR><TD>C-h<TD>URL�����ɽ�����ޤ���
-<TR><TD>F<TD>&lt;FRAMESET&gt;��ޤ�ʸ���ɽ�����Ƥ���Ȥ��ˡ�&lt;FRAME&gt;
-�����λؤ�ʣ����ʸ���1�Ĥ�ʸ����Ѵ�����ɽ�����ޤ���
-<TR><TD>M<TD>���߸��Ƥ���ڡ����򡤳����֥饦����Ȥä�ɽ�����ޤ���
-2M, 3M ��2���ܤ�3���ܤΥ֥饦����Ȥ��ޤ���
-<TR><TD>ESC M<TD>���ߤΥ����򡤳����֥饦����Ȥä�ɽ�����ޤ���
-2ESC M, 3ESC M ��2���ܤ�3���ܤΥ֥饦����Ȥ��ޤ���
+<TR><TD WIDTH=100>RET<TD>現在カーソルがあるリンクが指す先の文書を読みこみます.
+<TR><TD>a, ESC RET<TD>現在カーソルがあるリンクが指す先の文書をファイルに保存します.
+<TR><TD>u<TD>現在カーソルがあるリンクが指す先のURLを表示します.
+<TR><TD>i<TD>リンクに関連付けられた画像へのURLの表示します.
+<TR><TD>I<TD>現在カーソルがあるリンクに対応する画像を表示します.
+<TR><TD>ESC I<TD>現在カーソルがあるリンクが指す
+画像をファイルに保存します.
+<TR><TD>:<TD>URL風の文字列をリンクにします.この機能は,HTMLでない文書を
+読んでいるときにも有効です.
+<TR><TD>ESC :<TD>Message-ID風の文字列を,news: のリンクにします.この機能は,HTMLでない文書を
+読んでいるときにも有効です.
+<TR><TD>c<TD>現在の文書のURLを表示します.
+<TR><TD>=<TD>現在の文書に関する情報を表示します.
+<TR><TD>C-g<TD>ページ中での現在位置を表示します.
+<TR><TD>C-h<TD>URL履歴を表示します.
+<TR><TD>F<TD>&lt;FRAMESET&gt;を含む文書を表示しているときに,&lt;FRAME&gt;
+タグの指す複数の文書を1つの文書に変換して表示します.
+<TR><TD>M<TD>現在見ているページを,外部ブラウザを使って表示します.
+2M, 3M, ..., 9M で2番目,3番目,9番目のブラウザを使います.
+<TR><TD>ESC M<TD>現在のリンク先を,外部ブラウザを使って表示します.
+2ESC M, 3ESC M, ..., 9ESC M で2番目,3番目,9番目のブラウザを使います.
</table>
-<H3>�ե������URL�ط������</H3>
+<H3>ファイルとURL関係の操作</H3>
<table>
-<TR><TD WIDTH=100>U<TD>URL����ꤷ�Ƴ����ޤ���
-<TR><TD>V<TD>��������ե��������ꤷ�Ƴ����ޤ���
-<TR><TD>@<TD>���ޥ�ɤ�¹Ԥ�����̤������ɤ�Ǥ���ɽ�����ޤ���
-<TR><TD>#<TD>���ޥ�ɤ�¹Ԥ�����̤��ɤߤ��ߤʤ���ɽ�����ޤ���
+<TR><TD WIDTH=100>U<TD>URLを指定して開きます.
+<TR><TD>V<TD>ローカルファイルを指定して開きます.
+<TR><TD>@<TD>コマンドを実行し,結果を全部読んでから表示します.
+<TR><TD>#<TD>コマンドを実行し,結果を読みこみながら表示します.
</table>
-<H3>�Хåե����</H3>
+<H3>バッファ操作</H3>
<table>
-<TR><TD WIDTH=100>B<TD>���߸��Ƥ���Хåե���������������ΥХåե���ɽ�����ޤ���
-<TR><TD>v<TD>HTML�Υ�������ɽ�����ޤ���
-<TR><TD>s<TD>�Хåե�����⡼�ɤ�����ޤ���
-<TR><TD>E<TD>���߸��Ƥ���Хåե�����������ե�����ξ�硤���Υե�����򥨥ǥ���
-���Խ����ޤ������ǥ�����λ�����塤���Υե����������ɤ߹��ߤޤ���
-<TR><TD>C-l<TD>���̤�����褷�ޤ���
-<TR><TD>R<TD>�Хåե�������ɤ߹��ߤޤ���
-<TR><TD>S<TD>�Хåե���ɽ�����Ƥ�ե��������¸���ޤ���
-<TR><TD>ESC s<TD>HTML�Υ�������ե��������¸���ޤ���v �ǥ�������ɽ������ S ��
-��¸����ΤȤۤ�Ʊ���Ǥ�����ESC s ����¸�����ե�����ϴ��������ɤ����ꥸ�ʥ��
-�ޤޤǤ���Τ��Ф��ơ�v S ����¸����ȸ���ɽ���˻ȤäƤ�����������ɤ��Ѵ�����
-����¸����ޤ���
-<TR><TD>ESC e<TD>����ɽ������Ƥ���Хåե���ɽ������Ƥ�������Τޤ�
-���ǥ������Խ����ޤ���
+<TR><TD WIDTH=100>B<TD>現在見ているバッファを削除し,一つ前のバッファを表示します.
+<TR><TD>v<TD>HTMLのソースを表示します.
+<TR><TD>s<TD>バッファ選択モードに入ります.
+<TR><TD>E<TD>現在見ているバッファがローカルファイルの場合,そのファイルをエディタ
+で編集します.エディタを終了した後,そのファイルを再度読み込みます.
+<TR><TD>C-l<TD>画面を再描画します.
+<TR><TD>R<TD>バッファを再度読み込みます.
+<TR><TD>S<TD>バッファの表示内容をファイルに保存します.
+<TR><TD>ESC s<TD>HTMLのソースをファイルに保存します.v でソースを表示して S で
+保存するのとほぼ同じですが,ESC s で保存したファイルは漢字コードがオリジナルの
+ままであるのに対して,v S で保存すると現在表示に使っている漢字コードに変換され
+て保存されます.
+<TR><TD>ESC e<TD>現在表示されているバッファを,表示されている形式のまま
+エディタで編集します.
</table>
-<H3>�Хåե�����⡼��</H3>
-"s" �ǥХåե�����⡼�ɤ����ä��Ȥ��Υ������Ǥ���
+<H3>バッファ選択モード</H3>
+"s" でバッファ選択モードに入ったときのキー操作です.
<table>
-<TR><TD WIDTH=100>k,C-p<TD>��ľ�ΥХåե������򤷤ޤ���
-<TR><TD>j,C-n<TD>��IJ��ΥХåե������򤷤ޤ���
-<TR><TD>D<TD>�������򤷤Ƥ���Хåե��������ޤ���
-<TR><TD>RET<TD>�������򤷤Ƥ���Хåե���ɽ�����ޤ���
+<TR><TD WIDTH=100>k,C-p<TD>一つ上のバッファを選択します.
+<TR><TD>j,C-n<TD>一つ下のバッファを選択します.
+<TR><TD>D<TD>現在選択しているバッファを削除します.
+<TR><TD>RET<TD>現在選択しているバッファを表示します.
</table>
-<H3>�֥å��ޡ������</H3>
+<H3>ブックマーク操作</H3>
<table>
-<TR><TD WIDTH=100>ESC b<TD>�֥å��ޡ������ɤ߹��ߤޤ���
-<TR><TD>ESC a<TD>���߸��Ƥ���ڡ�����֥å��ޡ������ɲä��ޤ���
+<TR><TD WIDTH=100>ESC b<TD>ブックマークを読み込みます.
+<TR><TD>ESC a<TD>現在見ているページをブックマークに追加します.
</table>
-<H3>����</H3>
+<H3>検索</H3>
<table>
-<TR><TD WIDTH=100>/,C-s<TD>���ߤΥ���������֤���ե����������˸����ä�����ɽ���򸡺����ޤ���
-<TR><TD>?,C-r<TD>���ߤΥ���������֤���ե��������Ƭ�˸����ä�����ɽ���򸡺����ޤ���
-<TR><TD>n<TD>���򸡺����ޤ���
-<TR><TD>N<TD>���򸡺����ޤ���
-<TR><TD>C-w<TD>�ޤ��֤������⡼�ɤ��ڤ괹���ޤ���
+<TR><TD WIDTH=100>/,C-s<TD>現在のカーソル位置からファイル末尾に向かって正規表現を検索します.
+<TR><TD>?,C-r<TD>現在のカーソル位置からファイルの先頭に向かって正規表現を検索します.
+<TR><TD>n<TD>次を検索します.
+<TR><TD>N<TD>前を検索します.
+<TR><TD>C-w<TD>折り返し検索モードを切り換えます.
</table>
-<H3>�ޡ������</H3>
+<H3>マーク操作</H3>
<table>
-<TR><TD WIDTH=100>C-SPC<TD>�ޡ��������꡿������ޤ����ޡ�����ȿžɽ������ޤ���
-<TR><TD>ESC p<TD>������Υޡ����˰�ư���ޤ���
-<TR><TD>ESC n<TD>��ĸ�Υޡ����˰�ư���ޤ���
-<TR><TD>"<TD>����ɽ���ǻ��ꤵ�줿ʸ��������ƥޡ������ޤ���
+<TR><TD WIDTH=100>C-SPC<TD>マークを設定/解除します.マークは反転表示されます.
+<TR><TD>ESC p<TD>一つ前のマークに移動します.
+<TR><TD>ESC n<TD>一つ後のマークに移動します.
+<TR><TD>"<TD>正規表現で指定された文字列を全てマークします.
</table>
-<H3>����¾</H3>
+<H3>その他</H3>
<table>
-<TR><TD WIDTH=100>!<TD>�����륳�ޥ�ɤ�¹Ԥ��ޤ���
-<TR><TD>H<TD>�إ�ץե������ɽ�����ޤ���
-<TR><TD>o<TD>���ץ��������ѥͥ��ɽ�����ޤ���
-<TR><TD>C-k<TD>���å���������ɽ�����ޤ���
-<TR><TD>C-c<TD>ʸ����ɤ߹��ߤ����Ǥ��ޤ���
-<TR><TD>C-z<TD>�����ڥ��
-<TR><TD>q<TD>w3m��λ���ޤ������ץ���������ˤ�äơ���λ���뤫�ɤ�����ǧ���ޤ���
-<TR><TD>Q<TD>��ǧ������w3m��λ���ޤ���
+<TR><TD WIDTH=100>!<TD>シェルコマンドを実行します.
+<TR><TD>H<TD>ヘルプファイルを表示します.
+<TR><TD>o<TD>オプション設定パネルを表示します.
+<TR><TD>C-k<TD>クッキー一覧を表示します.
+<TR><TD>C-c<TD>文書の読み込みを中断します.
+<TR><TD>C-z<TD>サスペンド
+<TR><TD>q<TD>w3mを終了します.オプションの設定によって,終了するかどうか確認します.
+<TR><TD>Q<TD>確認せずにw3mを終了します.
</table>
-<H3>���Խ�</H3>
-���̤κDz��Ԥ�ʸ��������Ϥ������ͭ���ʥ������Ǥ���
+<H3>行編集</H3>
+画面の最下行で文字列を入力する場合に有効なキー操作です.
<table>
-<TR><TD WIDTH=100>C-f<TD>��������򱦤˰�ư���ޤ���
-<TR><TD>C-b<TD>��������򺸤˰�ư���ޤ���
-<TR><TD>C-h<TD>���������ľ����ʸ���������ޤ���
-<TR><TD>C-d<TD>����������֤�ʸ���������ޤ���
-<TR><TD>C-k<TD>����������֤����������ޤ���
-<TR><TD>C-u<TD>����������֤������������ޤ���
-<TR><TD>C-a<TD>ʸ�������Ƭ�˰�ư���ޤ���
-<TR><TD>C-e<TD>ʸ����κǸ�˰�ư���ޤ���
-<TR><TD>C-p<TD>�ҥ��ȥ꤫��������ʸ�������Ф��ޤ���
-<TR><TD>C-n<TD>�ҥ��ȥ꤫�鼡��ʸ�������Ф��ޤ���
-<TR><TD>TAB,SPC<TD>�ե�����̾���ϻ��ˡ��ե�����̾���䴰���ޤ���
-<TR><TD>RETURN<TD>���Ϥ�λ���ޤ���
+<TR><TD WIDTH=100>C-f<TD>カーソルを右に移動します.
+<TR><TD>C-b<TD>カーソルを左に移動します.
+<TR><TD>C-h<TD>カーソルの直前の文字を削除します.
+<TR><TD>C-d<TD>カーソル位置の文字を削除します.
+<TR><TD>C-k<TD>カーソル位置から後を削除します.
+<TR><TD>C-u<TD>カーソル位置から前を削除します.
+<TR><TD>C-a<TD>文字列の先頭に移動します.
+<TR><TD>C-e<TD>文字列の最後に移動します.
+<TR><TD>C-p<TD>ヒストリから一つ前の文字列を取り出します.
+<TR><TD>C-n<TD>ヒストリから次の文字列を取り出します.
+<TR><TD>TAB,SPC<TD>ファイル名入力時に,ファイル名を補完します.
+<TR><TD>RETURN<TD>入力を終了します.
</table>
<hr>
<a name="Key:lynx"></a>
-<h2>��ư��λȤ�����(Lynx��)</h2>
-Lynx�������Х���ɤǥ���ѥ��뤷�����λȤ������Ǥ���
-<H3>�ڡ���/���������ư</H3>
+<h2>起動後の使いかた(Lynx風)</h2>
+Lynx風キーバインドでコンパイルした場合の使いかたです.
+<H3>ページ/カーソル移動</H3>
<table>
-<TR><TD>SPC,C-v,+<TD>���Υڡ�����ɽ�����ޤ���
-<TR><TD>b,ESC v,-<TD>���Υڡ�����ɽ�����ޤ���
-<TR><TD>l<TD>��������򱦤˰�ư���ޤ���
-<TR><TD>h<TD>��������򺸤˰�ư���ޤ���
-<TR><TD>j<TD>��������򲼤˰�ư���ޤ���
-<TR><TD>k<TD>����������˰�ư���ޤ���
-<TR><TD>J<TD>���̤�1�Ծ�˥��������뤷�ޤ���
-<TR><TD>K<TD>���̤�1�Բ��˥��������뤷�ޤ���
-<TR><TD>^<TD>��Ƭ�˰�ư���ޤ���
-<TR><TD>$<TD>�����˰�ư���ޤ���
-<TR><TD>&gt;<TD>�������Τ򱦤ˤ��餷�ޤ���(ɽ�����Ƥ򺸤ˤ��餹)
-<TR><TD>&lt;<TD>�������Τ򺸤ˤ��餷�ޤ���(ɽ�����Ƥ򱦤ˤ��餹)
-<TR><TD>C-a<TD>ʸ��Τ����Ф��ιԤ˰�ư���ޤ���
-<TR><TD>C-e<TD>ʸ��Τ����Ф󲼤ιԤ˰�ư���ޤ���
-<TR><TD>G<TD>���̲��ǹ��ֹ�����Ϥ��������ǻ��ꤷ���Ԥ˰�ư���ޤ���
-������ $ �����Ϥ���ȡ��ǽ��Ԥ˰�ư���ޤ���
-<TR><TD>Z<TD>��������Τ�����֤�Ԥ�����˰�ư���ޤ���
-<TR><TD>z<TD>��������Τ���Ԥ���̤�����˰�ư���ޤ���
-<TR><TD>TAB, C-n, �����<TD>���Υ�󥯤˰�ư���ޤ���
-<TR><TD>ESC TAB, C-p, �����<TD>���Υ�󥯤˰�ư���ޤ���
-<TR><TD>C-g<TD>�ڡ�����Ǥθ��߰��֤�ɽ�����ޤ���
+<TR><TD>SPC,C-v,+<TD>次のページを表示します.
+<TR><TD>b,ESC v,-<TD>前のページを表示します.
+<TR><TD>l<TD>カーソルを右に移動します.
+<TR><TD>h<TD>カーソルを左に移動します.
+<TR><TD>j<TD>カーソルを下に移動します.
+<TR><TD>k<TD>カーソルを上に移動します.
+<TR><TD>J<TD>画面を1行上にスクロールします.
+<TR><TD>K<TD>画面を1行下にスクロールします.
+<TR><TD>^<TD>行頭に移動します.
+<TR><TD>$<TD>行末に移動します.
+<TR><TD>&gt;<TD>画面全体を右にずらします.(表示内容を左にずらす)
+<TR><TD>&lt;<TD>画面全体を左にずらします.(表示内容を右にずらす)
+<TR><TD>C-a<TD>文書のいちばん上の行に移動します.
+<TR><TD>C-e<TD>文書のいちばん下の行に移動します.
+<TR><TD>G<TD>画面下で行番号を入力し,そこで指定した行に移動します.
+ここで $ を入力すると,最終行に移動します.
+<TR><TD>Z<TD>カーソルのある位置を行の中央に移動します.
+<TR><TD>z<TD>カーソルのある行を画面の中央に移動します.
+<TR><TD>TAB, C-n, 下矢印<TD>次のリンクに移動します.
+<TR><TD>ESC TAB, C-p, 上矢印<TD>前のリンクに移動します.
+<TR><TD>C-g<TD>ページ中での現在位置を表示します.
</table>
-<H3>�ϥ��ѡ�������</H3>
+<H3>ハイパーリンク操作</H3>
<table>
-<TR><TD WIDTH=100>RET, C-f, �����<TD>���ߥ������뤬�����󥯤��ؤ����ʸ����ɤߤ��ߤޤ���
-<TR><TD>d, ESC RET<TD>���ߥ������뤬�����󥯤��ؤ����ʸ���ե��������¸���ޤ���
-<TR><TD>u<TD>���ߥ������뤬�����󥯤��ؤ����URL��ɽ�����ޤ���
-<TR><TD>i<TD>���ߥ������뤬�����󥯤�ޤ�������Τ�Τ�URL��ɽ�����ޤ���
-<TR><TD>I<TD>���ߥ������뤬�����󥯤��б����������ɽ�����ޤ���
-<TR><TD>ESC I<TD>���ߥ������뤬�����󥯤��ؤ�������ե��������¸���ޤ���
-<TR><TD>:<TD>URL����ʸ������󥯤ˤ��ޤ������ε�ǽ�ϡ�HTML�Ǥʤ�ʸ���
-�ɤ�Ǥ���Ȥ��ˤ�ͭ���Ǥ���
-<TR><TD>ESC :<TD>Message-ID����ʸ�����news: �Υ�󥯤ˤ��ޤ������ε�ǽ�ϡ�HTML�Ǥʤ�ʸ����ɤ�Ǥ���Ȥ��ˤ�ͭ���Ǥ���
-<TR><TD>c<TD>���ߤ�ʸ���URL��ɽ�����ޤ���
-<TR><TD>=<TD>���ߤ�ʸ��˴ؤ�������ɽ�����ޤ���
-<TR><TD>C-h<TD>URL�����ɽ�����ޤ���
-<TR><TD>F<TD>&lt;FRAMESET&gt;��ޤ�ʸ���ɽ�����Ƥ���Ȥ��ˡ�&lt;FRAME&gt;
-�����λؤ�ʣ����ʸ���1�Ĥ�ʸ����Ѵ�����ɽ�����ޤ���
-<TR><TD>M<TD>���߸��Ƥ���ڡ����򡤳����֥饦����Ȥä�ɽ�����ޤ���
-2M, 3M ��2���ܤ�3���ܤΥ֥饦����Ȥ��ޤ���
-<TR><TD>ESC M<TD>���ߤΥ����򡤳����֥饦����Ȥä�ɽ�����ޤ���
-2ESC M, 3ESC M ��2���ܤ�3���ܤΥ֥饦����Ȥ��ޤ���
+<TR><TD WIDTH=100>RET, C-f, 右矢印<TD>現在カーソルがあるリンクが指す先の文書を読みこみます.
+<TR><TD>d, ESC RET<TD>現在カーソルがあるリンクが指す先の文書をファイルに保存します.
+<TR><TD>u<TD>現在カーソルがあるリンクが指す先のURLを表示します.
+<TR><TD>i<TD>現在カーソルがあるリンクを含む画像そのもののURLを表示します.
+<TR><TD>I<TD>現在カーソルがあるリンクに対応する画像を表示します.
+<TR><TD>ESC I<TD>現在カーソルがあるリンクが指す画像をファイルに保存します.
+<TR><TD>:<TD>URL風の文字列をリンクにします.この機能は,HTMLでない文書を
+読んでいるときにも有効です.
+<TR><TD>ESC :<TD>Message-ID風の文字列を,news: のリンクにします.この機能は,HTMLでない文書を読んでいるときにも有効です.
+<TR><TD>c<TD>現在の文書のURLを表示します.
+<TR><TD>=<TD>現在の文書に関する情報を表示します.
+<TR><TD>C-h<TD>URL履歴を表示します.
+<TR><TD>F<TD>&lt;FRAMESET&gt;を含む文書を表示しているときに,&lt;FRAME&gt;
+タグの指す複数の文書を1つの文書に変換して表示します.
+<TR><TD>M<TD>現在見ているページを,外部ブラウザを使って表示します.
+2M, 3M, ..., 9M で2番目,3番目,9番目のブラウザを使います.
+<TR><TD>ESC M<TD>現在のリンク先を,外部ブラウザを使って表示します.
+2ESC M, 3ESC M, ..., 9ESC M で2番目,3番目,9番目のブラウザを使います.
</table>
-<H3>�ե������URL�ط������</H3>
+<H3>ファイルとURL関係の操作</H3>
<table>
-<TR><TD WIDTH=100>g, U<TD>URL����ꤷ�Ƴ����ޤ���
-<TR><TD>V<TD>��������ե��������ꤷ�Ƴ����ޤ���
-<TR><TD>@<TD>���ޥ�ɤ�¹Ԥ�����̤������ɤ�Ǥ���ɽ�����ޤ���
-<TR><TD>#<TD>���ޥ�ɤ�¹Ԥ�����̤��ɤߤ��ߤʤ���ɽ�����ޤ���
+<TR><TD WIDTH=100>g, U<TD>URLを指定して開きます.
+<TR><TD>V<TD>ローカルファイルを指定して開きます.
+<TR><TD>@<TD>コマンドを実行し,結果を全部読んでから表示します.
+<TR><TD>#<TD>コマンドを実行し,結果を読みこみながら表示します.
</table>
-<H3>�Хåե����</H3>
+<H3>バッファ操作</H3>
<table>
-<TR><TD WIDTH=100>B, C-b, �����<TD>���߸��Ƥ���Хåե���������������ΥХåե���ɽ�����ޤ���
-<TR><TD>\<TD>HTML�Υ�������ɽ�����ޤ���
-<TR><TD>s<TD>�Хåե�����⡼�ɤ�����ޤ���
-<TR><TD>E<TD>���߸��Ƥ���Хåե�����������ե�����ξ�硤���Υե�����򥨥ǥ������Խ����ޤ������ǥ�����λ�����塤���Υե����������ɤ߹��ߤޤ���
-<TR><TD>C-l, C-w<TD>���̤�����褷�ޤ���
-<TR><TD>R, C-r<TD>�Хåե�������ɤ߹��ߤޤ���
-<TR><TD>S, p<TD>�Хåե���ɽ�����Ƥ�ե��������¸���ޤ���
-<TR><TD>ESC s<TD>HTML�Υ�������ե��������¸���ޤ���v �ǥ�������ɽ������ S ��
-��¸����ΤȤۤ�Ʊ���Ǥ�����ESC s ����¸�����ե�����ϴ��������ɤ����ꥸ�ʥ��
-�ޤޤǤ���Τ��Ф��ơ�v S ����¸����ȸ���ɽ���˻ȤäƤ�����������ɤ��Ѵ�����
-����¸����ޤ���
-<TR><TD>ESC e<TD>����ɽ������Ƥ���Хåե���ɽ������Ƥ�������Τޤ�
-���ǥ������Խ����ޤ���
+<TR><TD WIDTH=100>B, C-b, 左矢印<TD>現在見ているバッファを削除し,一つ前のバッファを表示します.
+<TR><TD>\<TD>HTMLのソースを表示します.
+<TR><TD>s<TD>バッファ選択モードに入ります.
+<TR><TD>E<TD>現在見ているバッファがローカルファイルの場合,そのファイルをエディタで編集します.エディタを終了した後,そのファイルを再度読み込みます.
+<TR><TD>C-l, C-w<TD>画面を再描画します.
+<TR><TD>R, C-r<TD>バッファを再度読み込みます.
+<TR><TD>S, p<TD>バッファの表示内容をファイルに保存します.
+<TR><TD>ESC s<TD>HTMLのソースをファイルに保存します.v でソースを表示して S で
+保存するのとほぼ同じですが,ESC s で保存したファイルは漢字コードがオリジナルの
+ままであるのに対して,v S で保存すると現在表示に使っている漢字コードに変換され
+て保存されます.
+<TR><TD>ESC e<TD>現在表示されているバッファを,表示されている形式のまま
+エディタで編集します.
</table>
-<H3>�Хåե�����⡼��</H3>
-"s" �ǥХåե�����⡼�ɤ����ä��Ȥ��Υ������Ǥ���
+<H3>バッファ選択モード</H3>
+"s" でバッファ選択モードに入ったときのキー操作です.
<table>
-<TR><TD WIDTH=100>k,C-p<TD>��ľ�ΥХåե������򤷤ޤ���
-<TR><TD>j,C-n<TD>��IJ��ΥХåե������򤷤ޤ���
-<TR><TD>D<TD>�������򤷤Ƥ���Хåե��������ޤ���
-<TR><TD>RET<TD>�������򤷤Ƥ���Хåե���ɽ�����ޤ���
+<TR><TD WIDTH=100>k,C-p<TD>一つ上のバッファを選択します.
+<TR><TD>j,C-n<TD>一つ下のバッファを選択します.
+<TR><TD>D<TD>現在選択しているバッファを削除します.
+<TR><TD>RET<TD>現在選択しているバッファを表示します.
</table>
-<H3>�֥å��ޡ������</H3>
+<H3>ブックマーク操作</H3>
<table>
-<TR><TD WIDTH=100>v, ESC b<TD>�֥å��ޡ������ɤ߹��ߤޤ���
-<TR><TD>a, ESC a<TD>���߸��Ƥ���ڡ�����֥å��ޡ������ɲä��ޤ���
+<TR><TD WIDTH=100>v, ESC b<TD>ブックマークを読み込みます.
+<TR><TD>a, ESC a<TD>現在見ているページをブックマークに追加します.
</table>
-<H3>����</H3>
+<H3>検索</H3>
<table>
-<TR><TD WIDTH=100>/,C-s<TD>���ߤΥ���������֤���ե����������˸����ä�����ɽ���򸡺����ޤ���
-<TR><TD>n<TD>���򸡺����ޤ���
-<TR><TD>w<TD>�ޤ��֤������⡼�ɤ��ڤ괹���ޤ���
+<TR><TD WIDTH=100>/,C-s<TD>現在のカーソル位置からファイル末尾に向かって正規表現を検索します.
+<TR><TD>n<TD>次を検索します.
+<TR><TD>w<TD>折り返し検索モードを切り換えます.
</table>
-<H3>�ޡ������</H3>
+<H3>マーク操作</H3>
<table>
-<TR><TD WIDTH=100>C-SPC<TD>�ޡ��������꡿������ޤ����ޡ�����ȿžɽ������ޤ���
-<TR><TD>P<TD>������Υޡ����˰�ư���ޤ���
-<TR><TD>N<TD>��ĸ�Υޡ����˰�ư���ޤ���
-<TR><TD>"<TD>����ɽ���ǻ��ꤵ�줿ʸ��������ƥޡ������ޤ���
+<TR><TD WIDTH=100>C-SPC<TD>マークを設定/解除します.マークは反転表示されます.
+<TR><TD>P<TD>一つ前のマークに移動します.
+<TR><TD>N<TD>一つ後のマークに移動します.
+<TR><TD>"<TD>正規表現で指定された文字列を全てマークします.
</table>
-<H3>����¾</H3>
+<H3>その他</H3>
<table>
-<TR><TD WIDTH=100>!<TD>�����륳�ޥ�ɤ�¹Ԥ��ޤ���
-<TR><TD>H, ?<TD>�إ�ץե������ɽ�����ޤ���
-<TR><TD>o<TD>���ץ��������ѥͥ��ɽ�����ޤ���
-<TR><TD>C-k<TD>���å���������ɽ�����ޤ���
-<TR><TD>C-c<TD>ʸ����ɤ߹��ߤ����Ǥ��ޤ���
-<TR><TD>C-z<TD>�����ڥ��
-<TR><TD>q<TD>w3m��λ���ޤ������ץ���������ˤ�äơ���λ���뤫�ɤ�����ǧ���ޤ���
-<TR><TD>Q<TD>��ǧ������w3m��λ���ޤ���
+<TR><TD WIDTH=100>!<TD>シェルコマンドを実行します.
+<TR><TD>H, ?<TD>ヘルプファイルを表示します.
+<TR><TD>o<TD>オプション設定パネルを表示します.
+<TR><TD>C-k<TD>クッキー一覧を表示します.
+<TR><TD>C-c<TD>文書の読み込みを中断します.
+<TR><TD>C-z<TD>サスペンド
+<TR><TD>q<TD>w3mを終了します.オプションの設定によって,終了するかどうか確認します.
+<TR><TD>Q<TD>確認せずにw3mを終了します.
</table>
-<H3>���Խ�</H3>
-���̤κDz��Ԥ�ʸ��������Ϥ������ͭ���ʥ������Ǥ���
+<H3>行編集</H3>
+画面の最下行で文字列を入力する場合に有効なキー操作です.
<table>
-<TR><TD WIDTH=100>C-f<TD>��������򱦤˰�ư���ޤ���
-<TR><TD>C-b<TD>��������򺸤˰�ư���ޤ���
-<TR><TD>C-h<TD>���������ľ����ʸ���������ޤ���
-<TR><TD>C-d<TD>����������֤�ʸ���������ޤ���
-<TR><TD>C-k<TD>����������֤����������ޤ���
-<TR><TD>C-u<TD>����������֤������������ޤ���
-<TR><TD>C-a<TD>ʸ�������Ƭ�˰�ư���ޤ���
-<TR><TD>C-e<TD>ʸ����κǸ�˰�ư���ޤ���
-<TR><TD>SPC<TD>�ե�����̾���ϻ��ˡ��ե�����̾���䴰���ޤ���
-<TR><TD>RETURN<TD>���Ϥ�λ���ޤ���
+<TR><TD WIDTH=100>C-f<TD>カーソルを右に移動します.
+<TR><TD>C-b<TD>カーソルを左に移動します.
+<TR><TD>C-h<TD>カーソルの直前の文字を削除します.
+<TR><TD>C-d<TD>カーソル位置の文字を削除します.
+<TR><TD>C-k<TD>カーソル位置から後を削除します.
+<TR><TD>C-u<TD>カーソル位置から前を削除します.
+<TR><TD>C-a<TD>文字列の先頭に移動します.
+<TR><TD>C-e<TD>文字列の最後に移動します.
+<TR><TD>SPC<TD>ファイル名入力時に,ファイル名を補完します.
+<TR><TD>RETURN<TD>入力を終了します.
</table>
<hr>
<a name="Mouse"></a>
-<h2>�ޥ������</h2>
-�ޥ�����ǽ��ON�ˤ��ƥ���ѥ��뤷�Ƥ���С��ޥ�����Ȥä�
-w3m�����뤳�Ȥ��Ǥ��ޤ����ޥ������Ȥ���Τϡ�xterm/kterm/rxvt
-��ȤäƤ�����(���ξ��ˤϡ��Ķ��ѿ�TERM�� xterm �� kterm ��
-���ꤹ��ɬ�פ�����ޤ�)���ޤ��� GPM ��ư���Ƥ���Ķ���ȤäƤ�����
-�Ǥ���
+<h2>マウス操作</h2>
+マウス機能をONにしてコンパイルしてあれば,マウスを使って
+w3mを操作することができます.マウスが使えるのは,xterm/kterm/rxvt
+を使っている場合(この場合には,環境変数TERMを xterm か kterm に
+設定する必要があります),または GPM が動いている環境を使っている場合
+です.
<p>
<table border=0>
-<tr><td>������å�
-<td>���������ޥ�����������ΰ��֤˰�ư���ޤ���
-�⤷��������ȥޥ�����������ΰ��֤�Ʊ���ǡ��������뤬
-��󥯤ξ�ˤ��ä��Ȥ��ϡ����Υ�󥯤򤿤ɤ�ޤ���
-<tr><td>�楯��å�
-<td>���ΥХåե������ޤ���
-<tr><td>������å�
-<td>��˥塼�򳫤��ޤ�����˥塼�ι��ܤ�ޥ��������֤��Ȥ��Ǥ��ޤ���
-<tr><td>���ɥ�å�
-<td>�ڡ����򥹥������뤷�ޤ����ǥե���Ȥ�ư��Ǥϡ�
-�ޥ����Υɥ�å��˹�碌��ʸ������򥹥������뤷�ޤ���
-���ץ��������ѥͥ������ǡ�����ư���դˤ��뤳��
-���Ǥ��ޤ�(�ޥ����Υɥ�å��˹�碌�ơ�������ɥ�������
-���������뤹��)��
+<tr><td>左クリック
+<td>カーソルをマウスカーソルの位置に移動します.
+もしカーソルとマウスカーソルの位置が同じで,カーソルが
+リンクの上にあったときは,そのリンクをたどります.
+<tr><td>中クリック
+<td>前のバッファに戻ります.
+<tr><td>右クリック
+<td>メニューを開きます.メニューの項目もマウスで選ぶことができます.
+<tr><td>左ドラッグ
+<td>ページをスクロールします.デフォルトの動作では,
+マウスのドラッグに合わせて文書の方をスクロールします.
+オプション設定パネルの設定で,この動作を逆にすること
+ができます(マウスのドラッグに合わせて,ウィンドウの方を
+スクロールする).
</table>
<p>
<hr>
<a name="Key:custom"></a>
-<h2>���������</h2>
-~/.w3m/keymap �򵭽Ҥ���ȡ������γ�ꤢ�Ƥ��Ѥ��뤳�Ȥ��Ǥ��ޤ�
-(���Խ��Υ�����������)���㤨�С�
+<h2>キーの定義</h2>
+~/.w3m/keymap を記述すると,キーの割りあてを変えることができます
+(行編集のキー定義を除く).例えば,
<pre>
keymap C-o NEXT_PAGE
</pre>
-�ȵ��Ҥ���ȡ�NEXT_PAGE��ǽ(�̾凉�ڡ����� C-v)�˳�ꤢ�Ƥ���
-������)�� C-o �˳�ꤢ�Ƥ뤳�Ȥ��Ǥ��ޤ���
-���Ѳ�ǽ�ʵ�ǽ�ȡ�����̾���ˤĤ��Ƥϡ�
-<a href="README.func">README.func</a>�򻲾Ȥ��Ƥ���������
-��Ȥ��ơ����ꥸ�ʥ��Lynx���Υ�������ե�����
+と記述すると,NEXT_PAGE機能(通常スペースと C-v)に割りあてられて
+いるもの)を C-o に割りあてることができます.
+利用可能な機能と,その名前については,
+<a href="README.func">README.func</a>を参照してください.
+例として,オリジナルとLynx風のキー定義ファイル
(<a href="keymap.default">keymap.default</a>
-��<a href="keymap.lynx">keymap.lynx</a>)���֤��Ƥ���ޤ���
+と<a href="keymap.lynx">keymap.lynx</a>)が置いてあります.
<hr>
<a name="LocalCGI"></a>
<h2>Local CGI</h2>
-w3m��Ȥ��С�HTTP�����Фʤ���CGI������ץȤ�ư���뤳�Ȥ��Ǥ��ޤ���
-���ΤȤ���w3m�������ФΤդ�򤷤ƥ�����ץȤ�ư�������ν��Ϥ�
-�ɤߤ����ɽ������櫓�Ǥ���
-<a href="file:///$LIB/w3mbookmark?mode=panel&bmark=~/.w3m/bookmark.html&url=MANUAL.html&title=w3m+manual">�֥å��ޡ�������Ͽ</a>��
-<a href="file:///$LIB/w3mhelperpanel?mode=panel">�����ӥ塼�����Խ�</a>
-�ϡ�local CGI�Υ�����ץȤȤ��Ƽ¸�����Ƥ��ޤ���
-local CGI��Ȥ��С�w3m�����ѤΥե��������ϥ��󥿥ե������Ȥ���
-�Ȥ����Ȥ��Ǥ��ޤ���
+w3mを使えば,HTTPサーバなしでCGIスクリプトを起動することができます.
+このとき,w3mがサーバのふりをしてスクリプトを起動し,その出力を
+読みこんで表示するわけです.
+ブックマークの登録と外部ビューアの編集
+は,local CGIのスクリプトとして実現されています.
+local CGIを使えば,w3mを汎用のフォーム入力インタフェースとして
+使うことができます.
<P>
-�������ƥ������ͳ�ˤ�ꡤ��ư����CGI������ץȤϡ����Τɤ줫��
-�ǥ��쥯�ȥ�ˤ���ɬ�פ�����ޤ���
+セキュリティ上の理由により,起動するCGIスクリプトは,次のどれかの
+ディレクトリにある必要があります.
<ul>
-<li>w3m�Υإ�ץե�����ʤɤ��֤��Ƥ���ǥ��쥯�ȥ�
-(ŵ��Ū�ˤ� /usr/local/lib/w3m)�����Υǥ��쥯�ȥ�ϡ�
-$LIB �ǻ��Ȥ��뤳�Ȥ��Ǥ��ޤ���
-<li>/cgi-bin/ �ǥ��쥯�ȥꡥ���Υǥ��쥯�ȥ�ϡ�Ǥ�դξ���
-��ꤢ�Ƥ뤳�Ȥ��Ǥ��ޤ�(���ץ��������ѥͥ�Ρ�/cgi-bin��ɽ�����
-�ǥ��쥯�ȥ�פι���)�������ˤϡ�: �Ƕ��ڤä�ʣ���Υǥ��쥯�ȥ��
-���ꤹ�뤳�Ȥ��Ǥ��ޤ�(�㤨�� /usr/local/cgi-bin:/home/aito/cgi-bin �ʤ�)��
-/cgi-bin/ ��Ȥ����ϡ�
+<li>w3mのヘルプファイルなどが置いてあるディレクトリ
+(典型的には /usr/local/lib/w3m).このディレクトリは,
+$LIB で参照することができます.
+<li>/cgi-bin/ ディレクトリ.このディレクトリは,任意の場所に
+割りあてることができます(オプション設定パネルの「/cgi-binで表される
+ディレクトリ」の項目).ここには,: で区切って複数のディレクトリを
+指定することができます(例えば /usr/local/cgi-bin:/home/aito/cgi-bin など).
+/cgi-bin/ を使う場合は、
<pre>
w3m -o cgi_bin=/path/to/cgi-bin file:/cgi-bin/script.cgi
</pre>
-�Τ褦�� file:/cgi-bin�Ȥ���URL��Ȥ�ɬ�פ�����ޤ���
-������˥����ȥǥ��쥯�ȥ������뤳�Ȥϡ��������ƥ������ͳ�ˤ��
-������ޤ���
+のように file:/cgi-binというURLを使う必要があります。
+この中にカレントディレクトリを入れることは,セキュリティ上の理由により
+薦められません.
</ul>
<p>
-Local CGI�Ȥ��ƻȤ��륹����ץȤǤϡ�w3m�򥳥�ȥ����뤹�뤿��ˡ�
-�ü�ʥإå� `w3m-control:' ��Ȥ����Ȥ��Ǥ��ޤ������Υإå��ˤϡ�
-w3m��Ǥ�դε�ǽ (<a href="README.func">README.func</a>����)���
-���Ȥ��Ǥ��ޤ���ʸ��ɽ�����줿�塤���ε�ǽ���ƤӽФ���ޤ���
-�㤨�С�
+Local CGIとして使われるスクリプトでは,w3mをコントロールするために,
+特殊なヘッダ `w3m-control:' を使うことができます.このヘッダには,
+w3mの任意の機能 (<a href="README.func">README.func</a>参照)を書く
+ことができます.文書が表示された後,その機能が呼び出されます.
+例えば,
<pre>
Content-Type: text/plain
W3m-control: BACK
</pre>
-�Ȥ����إå�����Ϥ�����硤w3m�϶��Υڡ�����ɽ����������ľ���
-���ΥХåե��������ޤ�������ϡ�CGI��¹Ԥ�����ǡ�����ڡ�����
-ɽ���������ʤ�����ͭ���Ǥ����ޤ���
+というヘッダを出力した場合,w3mは空のページを表示し,その直後に
+そのバッファを削除します.これは,CGIを実行した後で,何もページを
+表示したくない場合に有効です.また,
<pre>
Content-Type: text/plain
@@ -535,28 +528,28 @@ W3m-control: DELETE_PREVBUF
contents.....
</pre>
-�ϡ��������Хåե���ľ���ΥХåե����֤������ޤ���
+は,新しいバッファで直前のバッファを置きかえます.
<p>
-��Ĥ� w3m-control: �إå��ˤϡ���Ĥε�ǽ��������ꤹ�뤳�Ȥ��Ǥ��ޤ���
-��������HTTP�쥹�ݥ󥹤����ʣ���� w3m-control: ������뤳�Ȥ��Ǥ���
-�����ǻ��ꤵ�줿��ǽ�Ͻ��֤˼¹Ԥ���ޤ���
-����ˡ�GOTO �ˤϰ�������ꤹ�뤳�Ȥ��Ǥ��ޤ���
+一つの w3m-control: ヘッダには,一つの機能だけを指定することができます.
+ただし,HTTPレスポンスの中に複数の w3m-control: を入れることができ,
+そこで指定された機能は順番に実行されます.
+さらに,GOTO には引数を指定することができます.
<pre>
Content-Type: text/plain
W3m-control: GOTO http://www.yahoo.com/
</pre>
-������ϡ�Location: ��Ȥä��������Ʊ���褦��ư��ޤ���
+この例は,Location: を使った次の例と同じように動作します.
<pre>
Content-Type: text/plain
Location: http://www.yahoo.com/
</pre>
-��������w3m-control: �إå���w3m��������ץȤ�ľ�ܸƤӤ�������������
-ͭ���Ǥ���Ʊ��������ץȤ� HTTP�����з�ͳ�ǸƤӤ�������硤
-w3m-control: �إå���̵�뤵��ޤ���
+ただし,w3m-control: ヘッダはw3mがスクリプトを直接呼びだした時だけに
+有効です.同じスクリプトを HTTPサーバ経由で呼びだした場合,
+w3m-control: ヘッダは無視されます.
</body>
</html>
diff --git a/doc-jp/README b/doc-jp/README
index 074766f..62da344 100644
--- a/doc-jp/README
+++ b/doc-jp/README
@@ -3,31 +3,31 @@
Hironori SAKAMOTO
Fumitoshi UKAI
-1. �Ϥ����
+1. はじめに
- w3m �ϡ�World Wide Web ���б������ڡ�����Ǥ��������ޤǥڡ�����Ǥ�����
-�ƥ����ȥ١��� WWW �֥饦���Ȥ��Ƥ�Ȥ����Ȥ��Ǥ��ޤ���
+ w3m は,World Wide Web に対応したページャです.あくまでページャですが,
+テキストベース WWW ブラウザとしても使うことができます.
- w3m �ϡ�fm �Ȥ����ڡ������١����Ȥ��ƺ���ޤ�����fm �ˤĤ��Ƥξܺ�
-�ϡ�STORY.html ���ɤߤ���������w3m �Υڡ�����Ȥ��Ƥδ���Ū����ħ�ϡ�fm
-�ȤۤȤ��Ʊ���Ǥ���
+ w3m は,fm というページャをベースとして作られました.fm についての詳細
+は,STORY.html をお読みください.w3m のページャとしての基本的な特徴は,fm
+とほとんど同じです.
- w3m �ȼ�����ħ�Ȥ��Ƥϡ����Τ褦�ʤ�Τ�����ޤ���
+ w3m 独自の特徴としては,次のようなものがあります.
- ��WWW �б��ʤΤǡ�HTML ��ʸ����ɤ�Ǥ�����ˤϡ�������Υ�󥯤�é�ä�
- �ꡤ�����򸫤뤳�Ȥ��Ǥ��롥
- ��Internet message ɽ���Τ���Υ⡼�ɤ����롥���λ���Content-Type: ��
- text/html �ξ��ϡ���ưŪ�� HTML ��ʸ��Ȥ���ɽ�����롥�ޤ������Ϥ�
- MIME header �Υǥ����ɤ򤹤롥
- �����Ƥ��� plain text ʸ����� URL ɽ�������ä���硤������ʬ������
- �򤿤ɤ뤳�Ȥ��Ǥ��롥
+ ・WWW 対応なので,HTML の文書を読んでいる時には,その中のリンクを辿った
+ り,画像を見ることができる.
+ ・Internet message 表示のためのモードがある.この時,Content-Type: が
+ text/html の場合は,自動的に HTML の文書として表示する.また,自力で
+ MIME header のデコードをする.
+ ・見ている plain text 文書中に URL 表記があった場合,その部分からリンク
+ をたどることができる.
- ���ߤ��������ϰʲ��Τ褦�ʤ�ΤǤ���
+ 現在の問題点は以下のようなものです.
- ������饤��ޥ˥奢�뤬�ϼ塥��ñ�ʻȤ����ˤĤ��Ƥϡ�MANUAL.html ���ɤ�
- ����������
+ ・オンラインマニュアルが貧弱.簡単な使い方については,MANUAL.html をお読み
+ ください.
- ����ư���ǧ����Ƥ��� OS �ϰʲ����̤�Ǥ���
+ 現在動作が確認されている OS は以下の通りです.
SunOS 4.1.x
HP-UX 9.x, 10.x
Solaris 2.5.x, 2.6, 8, 9
@@ -43,86 +43,79 @@
MacOS X Server
MacOS X 10.1, 10.2, 10.3, 10.4
-2. ���󥹥ȡ���
+2. インストール
-���󥹥ȡ���򤹤�ˤϡ����Τ褦�ˤ��ޤ���
+インストールをするには,次のようにします.
- - GC library (6.1��꿷�������?)�򥤥󥹥ȡ��뤷�Ƥ����ޤ���
- GC library ��
+ - GC library (6.1より新しいもの?)をインストールしておきます。
+ GC library は
http://www.hpl.hp.com/personal/Hans_Boehm/gc/gc_source/
- ��������Ǥ��ޤ���
+ から入手できます。
- GC library 6.1��ȤäƤ������ gc.h �� PREFIX/include ��
- ���󥹥ȡ��뤷�Ƥ���ɬ�פ�����ޤ���
+ GC library 6.1を使っている場合は gc.h を PREFIX/include に
+ インストールしておく必要があります。
# cp gc-6.1/include/gc.h PREFIX/include
- - configure ��¹Ԥ��롥
+ - configure を実行する.
% ./configure
- - make ��¹�
+ - make を実行
% make
- - make install ��¹�
+ - make install を実行
# make install
-�ʾ�ǥ��󥹥ȡ���Ͻ����Ǥ���
+以上でインストールは終わりです.
-���老�Ȥ���������
+機種ごとの注意点:
HP-UX
- HP �� C ����ѥ���(gcc�Ǥʤ�)�ǥ���ѥ��뤹���硤
- configure ��
+ HP の C コンパイラ(gccでなく)でコンパイルする場合,
+ configure の
Input your favorite C-compiler.
(Default: cc)
- �ˡ�cc -Aa -D_HPUX_SOURCE �������Ƥ���������cc
- �������ȥ���ѥ��뤬�̤�ޤ���gcc �ʤ����̤�
- �̤�ޤ������С������Ť�ξ��� -g ���դ���
- ���Ǥ���������
+ に,cc -Aa -D_HPUX_SOURCE と答えてください.cc
+ だけだとコンパイルが通りません.gcc なら普通に
+ 通りますが,バージョン古めの場合は -g を付けな
+ いでください.
OS/2
- emx ��Ȥ����Ȥ� w3m �򥳥�ѥ��뤹�뤳�Ȥ��Ǥ��ޤ���
- �ޤ��ǽ��
+ emx を使うことで w3m をコンパイルすることができます.
+ まず最初に
cd gc
make -f EMX_MAKEFILE
- ��¹Ԥ��� GC �饤�֥��򥳥�ѥ��뤷�Ƥ����Ƥ��顤w3m
- ���Τ򥳥�ѥ��뤷�ޤ����ʤ������顼ɽ�����Ѥˤʤ�餷��
- �Τǡ���Υ����Ѥ˥���ѥ��뤷�������ɤ��Ǥ��礦��
+ を実行して GC ライブラリをコンパイルしておいてから,w3m
+ 本体をコンパイルします.なお,カラー表示が変になるらしい
+ ので,モノクロ用にコンパイルした方が良いでしょう.
Windows
- Windows �� w3m ��ư��������ˤϡ�Windows ��� UNIX�ߴ��Ķ�
- �Ǥ��� Cygwin(��ȯ�Ķ��դ�)��ɬ�פǤ���
- �ܺ٤� README.cygwin �򻲾Ȥ��Ƥ���������
+ Windows で w3m を動かすためには,Windows 上の UNIX互換環境
+ である Cygwin(開発環境付き)が必要です.
+ 詳細は README.cygwin を参照してください.
-3. ���
+3. 著作権
-w3m ������ϡ���ƣ��§��°���Ƥ��ޤ���
+w3m の著作権は,伊藤彰則に属しています.
(C) Copyright 1994-2002 by Akinori Ito
(C) Copyright 2002-2011 by Akinori Ito, Hironori Sakamoto, Fumitoshi Ukai
-4. ���۾��
+4. 配布条件
-���Υ��եȥ������ˤ�ä����ѼԤޤ����軰�Ԥ����餫���ﳲ�������
-��硤��ԤϤ�����Ǥ������餤�ޤ��󡥤��λ���������¤�ˤ���
-�ơ����Υ��եȥ������ϡ�ï�Ǥ��Ԥ��Ǥ�ʤ����ѡ����ѡ����ۤǤ�
-�ޤ���
+このソフトウェアによって利用者または第三者が何らかの被害を受けた
+場合,作者はその責任を一切負いません.この事を承諾する限りにおい
+て,このソフトウェアは,誰でも作者に断りなく利用・改変・配布でき
+ます.
-5. ���
+5. 作者
- ��ƣ ��§
- ���������ر����ظ����
+ 伊藤 彰則
+ 東北大学大学院工学研究科
aito@fw.ipsj.or.jp
-���ߤΥ��ƥ�
- ��ƣ ��
- ��������±�
- satodai@w3m.jp
-
-���ո��������ۤ�ML�ޤǤ��󤻤���������
- w3m-dev@sic.med.tohoku.ac.jp (���ܸ�)
- w3m-dev-en@sic.med.tohoku.ac.jp (�Ѹ�)
- http://w3m.sourceforge.net/
+This package is maintained for Debian <https://www.debian.org>,
+forked from the original version <https://sourceforge.net/projects/w3m/>.
diff --git a/doc-jp/README.SSL b/doc-jp/README.SSL
index 4aedfde..5899bc8 100644
--- a/doc-jp/README.SSL
+++ b/doc-jp/README.SSL
@@ -1,75 +1,76 @@
-SSL ���ݡ��ȤˤĤ���
+SSL サポートについて
- (2000/11/07) ��������
+ (2000/11/07) 岡部克也
okabek@guitar.ocn.ne.jp
- (2001/12/27) ����ʸ��
+ (2001/12/27) 鵜飼文敏
ukai@debian.or.jp
- �� OpenSSL �饤�֥����̤���, SSL �򥵥ݡ��Ȥ��Ƥ��ޤ�.
- ���餫���ᥤ�󥹥ȡ��뤷�Ƥ����Ƥ�������.
+ ・ OpenSSL ライブラリを通じて, SSL をサポートしています.
+ あらかじめインストールしておいてください.
- �� OpenSSL �饤�֥�꤬���󥹥ȡ��뤵��Ƥ���� configure ������ץȼ¹Ի��˼�
- ưŪ�˸��Ф�������Ѳ�ǽ�Ȥʤ�ޤ�.
- �⤷���ޤ�ư���ʤ��Ȥ���, config.h ������å����ƤߤƤ�������. SSL �����Ѥ�
- �뤿��ˤ�, config.h ��, USE_SSL �ޥ������������Ƥ���ɬ�פ�����ޤ�.
- �����, SSL ǧ�ڥ��ݡ��Ȥ����Ѥ������, USE_SSL_VERIFY �ޥ���������å���
- �ƤߤƤ�������.
- ����ѥ���ǥ��顼���Ф����, ��󥫥ե饰�� `-lssl -lcrypto', ����ѥ���
- �ե饰�� '-I(SSLeay/OpenSSL �Υإå�������ǥ��쥯�ȥ�)' �����뤫��ǧ���Ƥ�
- ������.
+ ・ OpenSSL ライブラリがインストールされていれば configure スクリプト実行時に自
+ 動的に検出されて利用可能となります.
+ もしうまく動かないときは, config.h をチェックしてみてください. SSL を利用す
+ るためには, config.h で, USE_SSL マクロが定義されている必要があります.
+ さらに, SSL 認証サポートを利用する場合は, USE_SSL_VERIFY マクロもチェックし
+ てみてください.
+ コンパイルでエラーが出る場合は, リンカフラグに `-lssl -lcrypto', コンパイラ
+ フラグに '-I(SSLeay/OpenSSL のヘッダがあるディレクトリ)' があるか確認してく
+ ださい.
- SSL ���ݡ��Ȥ�ͭ���ˤʤäƤ��뤫�ɤ�����, Option Setting Panel �ˡ�SSL����
- ��פ��ޤޤ�Ƥ��뤫�ɤ����dz�ǧ�Ǥ��ޤ�.
+ SSL サポートが有効になっているかどうかは, Option Setting Panel に「SSLの設
+ 定」が含まれているかどうかで確認できます.
- �� SSL �˴ؤ��ưʲ������꤬��ǽ�ˤʤäƤޤ�:
+ ・ SSL に関して以下の設定が可能になってます:
ssl_forbid_method
- �Ȥ�ʤ�SSL�᥽�åɤΥꥹ��(2: SSLv2, 3: SSLv3, t: TLSv1)
- (�ǥե���Ȥ�<NULL>).
+ 使わないSSLメソッドのリスト(2: SSLv2, 3: SSLv3, t: TLSv1.0,
+ 5: TLSv1.1, 6: TLSv1.2, 7: TLSv1.3)
+ (デフォルトは2, 3).
ssl_verify_server ON/OFF
- SSL�Υ�����ǧ�ڤ�Ԥ�(�ǥե���Ȥ�OFF).
- ssl_cert_file �ե�����̾
- SSL�Υ��饤�������PEM����������ե�����(�ǥե���Ȥ�<NULL>).
- ssl_key_file �ե�����̾
- SSL�Υ��饤�������PEM������̩���ե�����(�ǥե���Ȥ�<NULL>).
- ssl_ca_path �ǥ��쥯�ȥ�̾
- SSL��ǧ�ڶɤ�PEM���������񷲤Τ���ǥ��쥯�ȥ�ؤΥѥ�
- (�ǥե���Ȥ�<NULL>).
- ssl_ca_file �ե�����̾
- SSL��ǧ�ڶɤ�PEM���������񷲤Υե�����(�ǥե���Ȥ�<NULL>).
- ��������SSLEAY_VERSION_NUMBER >= 0x0800�פʴĶ��Ǥʤ���̵�̤ʥ����ɤ���
- ��������ʤΤ�, configure����disable���Ƥ������ۤ����褤�Ǥ��礦.
+ SSLのサーバ認証を行う(デフォルトはON).
+ ssl_cert_file ファイル名
+ SSLのクライアント用PEM形式証明書ファイル(デフォルトは<NULL>).
+ ssl_key_file ファイル名
+ SSLのクライアント用PEM形式秘密鍵ファイル(デフォルトは<NULL>).
+ ssl_ca_path ディレクトリ名
+ SSLの認証局のPEM形式証明書群のあるディレクトリへのパス
+ (デフォルトは<NULL>).
+ ssl_ca_file ファイル名
+ SSLの認証局のPEM形式証明書群のファイル(デフォルトは<NULL>).
+ ただし「SSLEAY_VERSION_NUMBER >= 0x0800」な環境でないと無駄なコードが増
+ えるだけなので, configure時にdisableしておいたほうがよいでしょう.
- �ޤ��ºݤ�ǧ�ڤ�Ԥ����, ssl_ca_path�ޤ���ssl_ca_file��, �����Фθ���
- ��̾���Ƥ���ǧ�ڶɤξ������ (ssl_verify_server��ON/OFF�˴ط�̵��) ����
- ���ʤ��ȥ�����ǧ�ڤ��������ޤ���
+ また実際に認証を行う場合, ssl_ca_pathまたはssl_ca_fileで, サーバの鍵に
+ 署名している認証局の証明書を (ssl_verify_serverのON/OFFに関係無く) 指定
+ しないとサーバ認証は成功しません。
- �̾�Ȥ��Ƥ���ǧ�ڶɤξ�����ϰʲ��ΤȤ����ʤɤ�������Ǥ��ޤ���
+ 通常使われている認証局の証明書は以下のところなどから入手できます。
- * mozilla�Υ������˴ޤޤ�Ƥ���
+ * mozillaのソースに含まれている
mozilla/security/nss/lib/ckfw/builtins/certdata.txt
- ����ź�դ� ruby script �� *.pem�ե�����Ȥ��ƤȤ���������
+ から添付の ruby script で *.pemファイルとしてとりだしたもの
% ruby certdata2pem.rb < certdata.txt
- �ǥ����ȥǥ��쥯�ȥ�� *.pem�ե������Ȥ����
- openssl�� c_rehash ���ޥ�ɤ� hash symlink ��������ޤ���
- ���Υǥ��쥯�ȥ�� ssl_ca_path �����ꤹ�뤳�Ȥ��Ǥ��ޤ���
- �⤷���ϡ�*.pem ��ޤȤ᤿��ĤΥե������������Ƥ�����
- ����� ssl_ca_file �����ꤹ�뤳�Ȥ��Ǥ��ޤ���
+ でカレントディレクトリに *.pemファイルをとりだし
+ opensslの c_rehash コマンドで hash symlink を作成します。
+ このディレクトリを ssl_ca_path に設定することができます。
+ もしくは、*.pem をまとめた一つのファイルを作成しておけば
+ それを ssl_ca_file に設定することができます。
- * mod_ssl�Υ������˴ޤޤ�Ƥ��� pkg.sslcfg/ca-bundle.crt
- ����� PEM�ʤΤǡ����Υե�����Υե�ѥ�̾�� ssl_ca_file ��
- ���ꤹ�뤳�Ȥ��Ǥ��ޤ���
+ * mod_sslのソースに含まれている pkg.sslcfg/ca-bundle.crt
+ これは PEMなので、このファイルのフルパス名を ssl_ca_file に
+ 設定することができます。
- �� �С������ 0.9.5 �ʹߤ� OpenSSL �饤�֥���, ������������뤿��˴��Ĥ�
- �Υ����ɤ����ꤹ��ɬ�פ�����ޤ�.
- �ǥե���ȤǤ� /dev/urandom ������Ф�������Ѥ��ޤ���, ̵����� w3m ����
- ���������ޤ�. �⤷, EGD (Entropy Gathering Daemon) �ޤ��� PRNGD (Pseudo
- Random Number Generator Daemon) �����ѤǤ���Ķ��Ǥ����Ȥ���������,
- USE_EGD �ޥ���������å����ƤߤƤ�������.
+ ・ バージョン 0.9.5 以降の OpenSSL ライブラリは, 乱数を初期化するために幾つか
+ のシードを設定する必要があります.
+ デフォルトでは /dev/urandom があればそれを利用しますが, 無ければ w3m 内部
+ で生成します. もし, EGD (Entropy Gathering Daemon) または PRNGD (Pseudo
+ Random Number Generator Daemon) が利用できる環境でこれを使いたい場合は,
+ USE_EGD マクロをチェックしてみてください.
- �� URL
+ ・ URL
OpenSSL - http://www.openssl.org/
PRNGD - http://www.aet.tu-cottbus.de/personen/jaenicke/postfix_tls/prngd.html
@@ -85,6 +86,9 @@ SSL ���ݡ��ȤˤĤ���
#
# certdata2pem.rb
+if RUBY_VERSION>="1.9"
+ Encoding.default_external="UTF-8"
+end
while line = $stdin.gets
next if line =~ /^#/
next if line =~ /^\s*$/
diff --git a/doc-jp/README.cookie b/doc-jp/README.cookie
index 8741a5f..7c32c7d 100644
--- a/doc-jp/README.cookie
+++ b/doc-jp/README.cookie
@@ -1,62 +1,62 @@
-���å������ݡ��ȤˤĤ���
+クッキーサポートについて
- (2000/11/07) ��������
+ (2000/11/07) 岡部克也
okabek@guitar.ocn.ne.jp
- �� version 0 (����: http://www.netscape.com/newsref/std/cookie_spec.html) ��,
- version 1 (����: http://www.ics.uci.edu/pub/ietf/http/rfc2109.txt,
+ ・ version 0 (参照: http://www.netscape.com/newsref/std/cookie_spec.html) と,
+ version 1 (参照: http://www.ics.uci.edu/pub/ietf/http/rfc2109.txt,
http://www.ics.uci.edu/pub/ietf/http/draft-ietf-http-state-man-mec-12.txt)
- �Υ��å����򥵥ݡ��Ȥ��Ƥ��ޤ�.
+ のクッキーをサポートしています.
- �� ���å����Υ��ݡ��Ȥ� configure ������ץȤμ¹Ի��˼�ưŪ�����򤵤�ޤ���
- �⤷���ޤ�ư���ʤ��Ȥ���, config.h ������å����ƤߤƤ�������. ���å�������
- �Ѥ��뤿��ˤ�, config.h �� USE_COOKIE �ޥ������������Ƥ���ɬ�פ������
- ��.
- �ʤ����⤷���å����򥵥ݡ��Ȥ������ʤ����� --disable-cookie ���ץ�����
- �դ��� configure ������ץȤ�¹Ԥ��Ʋ�������
+ ・ クッキーのサポートは configure スクリプトの実行時に自動的に選択されます。
+ もしうまく動かないときは, config.h をチェックしてみてください. クッキーを利
+ 用するためには, config.h で USE_COOKIE マクロが定義されている必要がありま
+ す.
+ なお、もしクッキーをサポートしたくない場合は --disable-cookie オプションを
+ 付けて configure スクリプトを実行して下さい。
- �� Option Setting Panel (�̾� `o' �����˥Х���ɤ���Ƥ���), �ޤ��ϵ�ư���ץ�
- ��� (-cookie, -no-cookie) �ǻ��Ѥ��뤫�ݤ�������Ǥ��ޤ�.
+ ・ Option Setting Panel (通常 `o' キーにバインドされている), または起動オプシ
+ ョン (-cookie, -no-cookie) で使用するか否かを選択できます.
- �� Option Setting Panel �ǥ��å���������դ��ʤ��褦�ˤ������Ǥ��ޤ�.
- ���ξ��, �ʸ�Υ����Ф��������Ƥ������ƤΥ��å����ϥꥸ�����Ȥ���ޤ���,
- ���˼�����äƤ��륯�å����ˤĤ��ƤϷ�³���ƻ��Ѥ���ޤ�.
+ ・ Option Setting Panel でクッキーを受け付けないようにする事もできます.
+ この場合, 以後のサーバから送られてくる全てのクッキーはリジェクトされますが,
+ 既に受け取っているクッキーについては継続して使用されます.
- �� C-k �ǥ��å���������ɽ���Ǥ��ޤ�. ���β��̤�, ���å�����˻��Ѥ��뤫�ݤ���
- ����Ǥ��ޤ�.
+ ・ C-k でクッキー一覧が表示できます. この画面で, クッキー毎に使用するか否かを
+ 選択できます.
- �� 2000/10/24 ���Ǥ���, Option Setting Panel �ǥ��å���������դ��� (�ޤ��ϼ�
- ���դ��ʤ�) �ɥᥤ�� (�Υꥹ��) ������Ǥ���褦�ˤʤ�ޤ���. �ʲ��Υե���
- �ޥåȤǻ��ꤷ�ޤ�:
+ ・ 2000/10/24 の版から, Option Setting Panel でクッキーを受け付ける (または受
+ け付けない) ドメイン (のリスト) を設定できるようになりました. 以下のフォー
+ マットで指定します:
domain-list = domains
| ""
domains = domain
| domain + "," + domains
- domain = "." + domain-name ; �ɥᥤ��̾�ȥޥå�
- | host-domain-name ; HDN �ȥޥå�
- | ".local" ; . ��ޤޤʤ����Ƥ� HDN �˥ޥå�
- | "." ; ���Ƥ� HDN �˥ޥå�
+ domain = "." + domain-name ; ドメイン名とマッチ
+ | host-domain-name ; HDN とマッチ
+ | ".local" ; . を含まない全ての HDN にマッチ
+ | "." ; 全ての HDN にマッチ
(HDN: host domain name)
- ��Ȥ���, ����Υɥᥤ�� (.xxx.or.jp) �Υ��å����Τߤ�����դ���������,
+ 例として, 特定のドメイン (.xxx.or.jp) のクッキーのみを受け付けたい場合は,
- ����������������������������������������������������������������������������
- ������������� ��
- �� ��
- �����å�������Ѥ��� (*)ON ( )OFF ��
- �����å���������դ��� (*)ON ( )OFF ��
- ������Τ��륯�å����Ǥ�����դ��� [discard] ��
- �����å���������դ��ʤ��ɥᥤ�� [. ] ��
- �����å���������դ���ɥᥤ�� [.xxx.or.jp ] ��
- �� [OK] ��
- ����������������������������������������������������������������������������
+ ┌────────────────────────────────────┐
+ │クッキーの設定 │
+ │ │
+ │クッキーを使用する (*)ON ( )OFF │
+ │クッキーを受け付ける (*)ON ( )OFF │
+ │問題のあるクッキーでも受け付ける [discard] │
+ │クッキーを受け付けないドメイン [. ] │
+ │クッキーを受け付けるドメイン [.xxx.or.jp ] │
+ │ [OK] │
+ └────────────────────────────────────┘
- �Τ褦�����ꤷ�ޤ�.
+ のように設定します.
- �� �ɥᥤ��˴ޤޤ�� "." �ο��� 2 ���⾮�����Ȥ��������ʥ��å�����
- ���ʤ���ޤ� (RFC 2109 4.3.2 ����) ��
- cookie_avoid_wrong_number_of_dots �ǻ��ꤵ�줿�ɥᥤ��Ϥ������¤�
- �����ʤ��ʤ�ޤ���Option Setting Panel �� "[wrong number of dots]
- ��̵�뤹��ɥᥤ��" ������Ǥ��ޤ���
+ ・ ドメインに含まれる "." の数が 2 よりも小さいときは不正なクッキーと
+ 見なされます (RFC 2109 4.3.2 参照) が
+ cookie_avoid_wrong_number_of_dots で指定されたドメインはこの制限を
+ 受けなくなります。Option Setting Panel の "[wrong number of dots]
+ を無視するドメイン" で設定できます。
diff --git a/doc-jp/README.cygwin b/doc-jp/README.cygwin
index 97e14c9..297c34b 100644
--- a/doc-jp/README.cygwin
+++ b/doc-jp/README.cygwin
@@ -1,88 +1,88 @@
-cygwin �� w3m ��Ȥ�
- (2003/02/17) ���Ƿ
+cygwin で w3m を使う
+ (2003/02/17) 渡邉勝之
knabe@sannet.ne.jp
-Windows �� w3m ��ư��������ˤϡ�Windows ��� UNIX�ߴ��Ķ��Ǥ��� Cygwin ��
-ɬ�פǤ���
-Cygwin �˴ؤ������� http://cygwin.com/ �򻲾Ȥ��Ƥ���������
+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 ��Ĥ���ɬ�פ�����ޤ���
+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 ��
-��������Ƥ��뤿�ᡤ����ʹߤΥС���������Ѥ��Ƥ���������
+なお,termcap ないし ncurses パッケージは最新のものを使ってください.特
+に termcap を使う場合,古いパッケージは /etc/termcap の cygwin のエント
+リにバグがあり,表示がおかしくなります.この問題は termcap-20001020-1 で
+修正されているため,これ以降のバージョンを使用してください.
-�ӥ�ɤ���ݤˤϡ� ɬ�� ./configure ���Ƥ��� make ���Ƥ����������ʲ�����
-������ޥ������������ʤ��ʤ뤿�ᡤ�����ư��ʤ��ʤ�ޤ����ޤ�������
-�˥ӥ�ɤǤ��ʤ��������ư��ʤ����ˤϡ��Х����򤹤����˰ʲ�������
-�����å����Ƥ���������
+ビルドする際には, 必ず ./configure してから make してください.以下で説
+明するマクロが定義されなくなるため,正常に動作しなくなります.また,正常
+にビルドできない,正常に動作しない場合には,バグ報告をする前に以下の点を
+チェックしてください.
- o make veryclean ���Ƥ������ ./configure && make ���Ƥߤ롥
- o gcc, binutils ������˥��󥹥ȡ��뤵��Ƥ��뤫���ǧ���롥
- cygwin �� setup.exe �����꤬���ꡤ�ѥå������ե�����Υ����������
- �˼��Ԥ��Ƥ⡤���顼�����򤷤ʤ������ェλ���Ƥ��ޤ����Ȥ������
- ���Ǥ������ξ��ˤϺ��� setup ����ʤ����Ƥ���������
+ 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 �ε��Ҥ�������Ƥ���������
+また Win95/98/ME では,環境変数 CYGWIN に 'ntsec' もしくは 'ntea' が含ま
+れていると,シェルスクリプトに実行属性がつかなくなるため,configure に失
+敗するようです.w3m に限らず,他にも問題が発生するという報告があるため,
+Win95/98/ME で Cygwin を使用する場合には,最初に cygwin1.dll をロードす
+る際の環境変数 CYGWIN から ntsec, ntea の記述を取り除いてください.
-* �ޥ���
+* マクロ
-config.h �ˤϡ�Cygwin �Ķ������˰ʲ��Υޥ�����������Ƥ���ޤ���
+config.h には,Cygwin 環境向けに以下のマクロを定義してあります.
o USE_BINMODE_STREAM
- -dump, -dump_{head,source,both,extra} ���� stdout �ؤν��Ϥ�Х��ʥ�
- �⡼�ɤǹԤ��ޤ���cygwin-1.3.11 �ʹߤǤ����פˤʤäƤ���Ϥ��Ǥ�����
- ����¦�˿��äƤ�������˻Ĥ��Ƥ��ޤ���
- Cygwin, EMX �Ķ��Ƕ��̤Ǥ���
+ -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 �Ķ��Ƕ��̤Ǥ���
+ 'C:', 'C:/', 'file://C:/', 'file://C|/' などのドライブレターを含むパ
+ スを認識し,ファイル名として扱う機能を有効にします.
+ Cygwin, EMX 環境で共通です.
o SUPPORT_NETBIOS_SHARE
- '//NETBIOSHOST/SHARE/PATH', 'file://NETBIOSHOST/SHARE/PATH' ������
- NETBIOS ��ͭ�񸻤ؤΥ��������� ftp: �������ޤǤϤʤ� file: ��������
- �Ȥ��ư�����ǽ��ͭ���ˤ��ޤ���
- Cygwin �Ķ�����ͭ�Ǥ���
+ '//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 �Ķ�����ͭ�Ǥ���
+ Win9X 系の DOS プロンプトで,検索およびフォームへの一行エディタ入力
+ 時に日本語 IME 経由の入力をサポートします.
+ ただし,Win9X 系の DOS プロンプトの実装および Cygwin の tty レイヤー
+ の問題により,ローカルコンソールで TERM=cygwin かつ環境変数 CYGWIN
+ に 'tty' が含まれない場合のみ IME からの入力を許可しています.
+ なお,NT 系ではこのマクロを無効にしても動作は変更されず,ローカルコ
+ ンソールであれば IME による日本語入力が可能です.
+ LANG=JA 指定時の Cygwin 環境に特有です.
-* Native Application �Ȥ�Ϣ��
+* Native Application との連携
-Cygwin �Ķ��ǥӥ�ɤ��� w3m ���� Win32 Native ���ץꥱ��������ư����
-��硤�ѥ��ε��ҷ����ΰ㤤�ˤ�äơ��ե����뤬���Ĥ���ʤ��ʤɤΥ��顼��
-ȯ�����ޤ���
+Cygwin 環境でビルドした w3m から Win32 Native アプリケーションを起動する
+場合,パスの記述形式の違いによって,ファイルが見つからないなどのエラーが
+発生します.
-o ��������CGI
+o ローカルCGI
-Cygwin �Ķ��ǥӥ�ɤ���ȡ�$LIB (�̾�� /usr/local/lib/w3m/cgi-bin) �ʲ�
-�˥��󥹥ȡ��뤵���������� CGI �� cygwin �� /usr/bin/perl ��Ȥ��褦��
-���ꤵ��ޤ���������Ф���Native ���ץꥱ�������� ActivePerl �ʤɤ��
-�Ѥ����硤�ʲ��Τ褦�ʥ�åѡ�������ץȤ��Ѱդ���$LIB �ʲ��γƥ�����
-�ץȤ������Ƥ���������
+Cygwin 環境でビルドすると,$LIB (通常は /usr/local/lib/w3m/cgi-bin) 以下
+にインストールされるローカル CGI は cygwin の /usr/bin/perl を使うように
+設定されます.これに対し,Native アプリケーションの ActivePerl などを使
+用する場合,以下のようなラッパースクリプトを用意し,$LIB 以下の各スクリ
+プトを修正してください.
------ /usr/local/bin/winperl ------
#!/bin/sh
@@ -98,18 +98,18 @@ case $1 in
esac
exec "$PERL" "$SCRIPT" $@
------------------------------------
-��PERL= �ˤ� Cygwin �Ķ����������鸫�� Native Perl �Υѥ��򵭽Ҥ��Ƥ���
- ������cygpath �桼�ƥ���ƥ��� cygwin �ѥå����������äƤ��ޤ���
+※PERL= には Cygwin 環境の内部から見た Native Perl のパスを記述してくだ
+ さい.cygpath ユーティリティは cygwin パッケージに入っています.
-�ʤ����ǥ��쥯�ȥ�ꥹ�Ȥ����Ǥ���С����ץ��������ǡ֥ǥ��쥯�ȥ�ꥹ
-�Ȥ˳������ޥ�ɤ�Ȥ��פ� NO �ˤ���С��������� CGI ��Ȥ鷺�˥ǥ��쥯
-�ȥ�Υ֥饦����Ԥ��ޤ���
+なお,ディレクトリリストだけであれば,オプション設定で「ディレクトリリス
+トに外部コマンドを使う」を NO にすれば,ローカル CGI を使わずにディレク
+トリのブラウズを行います.
-o ���ǥ���
+o エディタ
-w3m �ϥƥ����ȥ��ꥢ�������Խ��ʤɤ˳������ǥ�������Ѥ��ޤ�������������
-������ Win32 Native ���ץꥱ��������Ȥ���硤�ʲ��Υ�����ץȤ�����
-�ǥ����˻��ꤷ�Ƥ���������
+w3m はテキストエリアの内容編集などに外部エディタを使用しますが,外部エデ
+ィタに Win32 Native アプリケーションを使う場合,以下のスクリプトを外部エ
+ディタに指定してください.
------ /usr/local/lib/w3m/winedit ------
#!/bin/sh
@@ -117,61 +117,61 @@ EDITOR='/cygdrive/c/Program Files/sakura/sakura.exe'
FILE=`cygpath -a -w $1`
exec "$EDITOR" "$FILE"
----------------------------------------
-��EDITOR= �ˤ� Cygwin �Ķ�����¦���鸫�� Native ���ץꥱ�������Υѥ���
- ���Ҥ��Ƥ���������
+※EDITOR= には Cygwin 環境の内側から見た Native アプリケーションのパスを
+ 記述してください.
-�ʤ���NT �Ϥ� inetd �򥵡��ӥ��Ȥ���ư�����Ƥ��ơ�localhost �� telnet ��
-��³���Ƥ�����ˤϡ��֥ǥ����ȥåפȤ����ä򥵡��ӥ��˵��ġפ� ON �ˤ�
-�Ƥ����ʤ���� window ��ɽ������ޤ���
+なお,NT 系で inetd をサービスとして動かしていて,localhost に telnet で
+接続している場合には,「デスクトップとの対話をサービスに許可」を ON にし
+ておかなければ window が表示されません.
-* ���ΤΥХ�
+* 既知のバグ
-�ʲ��ϡ�Cygwin �Ķ��� w3m ��ư�����������������Ǥ���
+以下は,Cygwin 環境で w3m を動かした場合の問題点です.
-o -dump, -dump-source ���� LF -> CR+LF ���Ѵ����Ԥ��뤳�Ȥ����롥
+o -dump, -dump-source 時に LF -> CR+LF の変換が行われることがある.
- ����ѥ�����˥ޥ��� USE_BINMODE_STREAM �� define ����Ƥ��ʤ���ǽ����
- ����ޤ���
- ������� configure ���������ǥ���ѥ��뤷�ʤ��������Ķ��ѿ� CYGWIN ��
- binmode �����ꤷ�Ƥ���������
+ コンパイル時にマクロ USE_BINMODE_STREAM が define されていない可能性が
+ あります.
+ きちんと configure したうえでコンパイルしなおすか,環境変数 CYGWIN に
+ binmode を設定してください.
-o Win9X �Ϥ� DOS �ץ���ץȤ� IME ��ͳ�����Ϥ��Ǥ��ʤ���
+o Win9X 系の DOS プロンプトで IME 経由の入力ができない.
- �Ķ��ѿ� CYGWIN �� 'tty' ���ޤޤ�Ƥ���Ȥ��ˤϡ�Cygwin �� tty �쥤��
- ���������򤹤뤿��� IME ��ͳ�����Ϥ�ػߤ��Ƥ��ޤ����Ķ��ѿ� CYGWIN
- ���� 'tty' �������Ƥ���������
+ 環境変数 CYGWIN に 'tty' が含まれているときには,Cygwin の tty レイヤ
+ の問題を回避するために IME 経由の入力を禁止しています.環境変数 CYGWIN
+ から 'tty' を削除してください.
-o Win9X �Ϥ� DOS �ץ���ץȤ� IME �� ON �ˤʤäƤ���ȥ������뤬�����ʤ���
+o Win9X 系の DOS プロンプトで IME が ON になっているとカーソルが効かない.
- Win9X �� DOS �ץ���ץȤ� Cygwin �� tty �쥤�䡼�μ���������Ǥ���
- ����� C-f, C-b, C-p, C-n ��ȤäƤ���������
+ Win9X の DOS プロンプトと Cygwin の tty レイヤーの実装の問題です.
+ 代わりに C-f, C-b, C-p, C-n を使ってください.
-o NT �ϤΥ��ޥ�ɥץ���ץȤDz������椬���������ʤ롥
+o NT 系のコマンドプロンプトで画面制御がおかしくなる.
- �֥쥤�����ȡץ��֤Dz��̥Хåե��Υ������ȥ�����ɥ��Υ�������㤦�ͤ�
- ���ƥХå����������뤬�Ǥ���褦�����ꤷ�Ƥ���ȡ��������椬����������
- �뤳�Ȥ�����褦�Ǥ���
+ 「レイアウト」タブで画面バッファのサイズとウィンドウのサイズを違う値に
+ してバックスクロールができるように設定していると,画面制御がおかしくな
+ ることがあるようです.
-o DOS �ץ���ץȡ����ޥ�ɥץ���ץȤǥޥ������Ȥ��ʤ���
+o DOS プロンプト,コマンドプロンプトでマウスが使えない.
- DOS �ץ���ץȡ��Խ����ץ�����/���ޥ�ɥץ���ץȤΡ֥��ץ����פ�
- �ִʰ��Խ��⡼�ɡפ� ON �ˤʤäƤ���ȡ��ޥ������٥�Ȥ� w3m ���Ϥ���
- �ޤ���OFF �����ꤷ�Ƥ���������
+ DOS プロンプト「編集オプション」/コマンドプロンプトの「オプション」で
+ 「簡易編集モード」が ON になっていると,マウスイベントが w3m に渡され
+ ません.OFF に設定してください.
-o DOS �ץ���ץȡ����ޥ�ɥץ���ץȤǥޥ����ܥ�����Ф���ȿ��������������
+o DOS プロンプト,コマンドプロンプトでマウスボタンに対する反応がおかしい.
- cygwin-1.3.15 �ޤǤδĶ��Ǥϡ��ޥ����α�������ܥ���Υ��������ץ���
- ���󥹤������ؤ�äƤ��ޤ���������� cygwin-1.3.16-1 �ǽ�������Ƥ���
- ������w3m ¦�ΥС������Ƚ�꤬�����ǤϤʤ����ᡤ���Ѥ���Ķ��ǥӥ��
- ����褦�ˤ��Ƥ���������
+ cygwin-1.3.15 までの環境では,マウスの右と中央ボタンのエスケープシー
+ ケンスが入れ替わっていました.これは cygwin-1.3.16-1 で修正されていま
+ すが,w3m 側のバージョン判定が完全ではないため,使用する環境でビルド
+ するようにしてください.
-* ����¾
+* その他
-Cygwin �Ķ��Ǥϡ�DOS �ץ���ץ�/���ޥ�ɥץ���ץȤ�Ȥ����⡤inetd ��
-�����ơ���������� TeraTerm, PuTTY �ʤɤ� telnet ���饤����ȷ�ͳ�ǥ���
-���󤹤롤�ʤ����� rxvt, cygterm ����Ѥ���ۤ�����Ŭ�Ǥ���
+Cygwin 環境では,DOS プロンプト/コマンドプロンプトを使うよりも,inetd を
+あげて,ローカルに TeraTerm, PuTTY などの telnet クライアント経由でログ
+インする,ないしは rxvt, cygterm を使用するほうが快適です.
o rxvt:
rxvt on Cygwin
diff --git a/doc-jp/README.dict b/doc-jp/README.dict
index 9cba287..25c7d98 100644
--- a/doc-jp/README.dict
+++ b/doc-jp/README.dict
@@ -1,34 +1,34 @@
-w3m�ѱ��¼�ŵ������ǽ�ˤĤ���
+w3m用英和辞典検索機能について
-1. �Ϥ����
+1. はじめに
-'webster' ���ޥ�ɤʤɤΤ褦�˼�����������Υ��ޥ�ɤ򤪻�����
-���ˤϡ�w3m ���椫�餽���Ȥ����Ȥ��Ǥ��ޤ������ε�ǽ�ϡ�
-��Ӥ�������(rubikitch@ruby-lang.org)�ˤ���Τ��Ȥ�
-Tushar Samant (scribble at pobox.com)�������򤯤廊�ޤ�����
+'webster' コマンドなどのように辞書を引くためのコマンドをお持ちの
+場合には,w3m の中からそれを使うことができます.この機能は,
+るびきちさん(rubikitch@ruby-lang.org)によるものをもとに
+Tushar Samant (scribble at pobox.com)が修正をくわえました。
-2. ���󥹥ȡ���
+2. インストール
-���ε�ǽ��Ȥ�����ˤϡ�����ѥ��륪�ץ������ǽ񤭤�����
-����ѥ��뤷�ʤ���ɬ�פ�����ޤ���configure ��¹Ԥ��� config.h
-���������줿�塤config.h ���Խ�����
+この機能を使うためには,コンパイルオプションを手で書きかえて
+コンパイルしなおす必要があります.configure を実行して config.h
+が生成された後,config.h を編集して
#undef USE_DICT
-��
+を
#define USE_DICT
-���ѹ�����w3m �򥳥�ѥ��뤷�ʤ����Ƥ���������
-w3m/0.3+cvs-1.373�ʹߤϡ�default��USE_DICT��define����ޤ���
+に変更し,w3m をコンパイルしなおしてください.
+w3m/0.3+cvs-1.373以降は、defaultでUSE_DICTがdefineされます。
-���줫�顤ʸ����򤦤��ȤäƤ��η�̤򤫤���CGI�ץ�������
-���󥹥ȡ��뤷�ޤ���
+それから,文字列をうけとってその結果をかえすCGIプログラムを
+インストールします。
-�Ĥ��Τ褦����ˡ������ޤ�
+つぎのような方法があります
- * �⤷ 'webster'�Ȥ������ޥ�ɤ�����Ф����Τ褦�����Ƥ�'w3mdict'�Ȥ���
- ������ץȤ�Ĥ���ޤ���
+ * もし 'webster'というコマンドがあればいかのような内容の'w3mdict'という
+ スクリプトをつくります。
#!/bin/sh
@@ -36,12 +36,12 @@ w3m/0.3+cvs-1.373�ʹߤϡ�default��USE_DICT��define����ޤ���
echo
webster $QUERY_STRING
- ����� lcoal CGI�Ȥ��ƥ��󥹥ȡ��뤷�ޤ� (w3m�ޥ˥奢��� local CGI
- �Υ���������ߤƤ�������) ������ w3m�Υ��ץ����ڡ�����
- ������������ꤷ�Ƥ���������
+ これを lcoal CGIとしてインストールします (w3mマニュアルの local CGI
+ のセクションをみてください) そして w3mのオプションページで
+ 辞書設定を設定してください。
- * �⤷ʸ�����Google�Ǹ������뵡ǽ���Ĥ���������硢
- �ʲ��Τ褦�� local CGI������ץȤ��Ĥ����ޤ���
+ * もし文字列をGoogleで検索する機能がつかいたい場合、
+ 以下のような local CGIスクリプトがつかえます。
#!/bin/sh
@@ -54,15 +54,15 @@ w3m/0.3+cvs-1.373�ʹߤϡ�default��USE_DICT��define����ޤ���
_END_
- ����Υѥ��򼭽�������ޥ�ɤ�URL�Ȥ������ꤷ�Ƥ���������
+ これのパスを辞書引きコマンドのURLとして設定してください。
-3. �Ȥ�����
+3. 使いかた
-����2�ĤΥ��ޥ�ɤ��Ȥ���褦�ˤʤ�ޤ���
+次の2つのコマンドが使えるようになります.
-ESC w ñ������Ϥ�������򼭽�ǰ�����ɽ�����ޤ���
+ESC w 単語を入力し,それを辞書で引いて表示します.
-ESC W �Хåե���θ��ߥ������뤬����ñ��򼭽�ǰ�����ɽ�����ޤ���
+ESC W バッファ内の現在カーソルがある単語を辞書で引き,表示します.
-�����Υ������ѹ�����ˤϡ�~/.w3m/keymap��DICT_WORD�����DICT_WORD_AT
-�ιԤ��ѹ����Ƥ���������
+これらのキーを変更するには、~/.w3m/keymapのDICT_WORDおよびDICT_WORD_AT
+の行を変更してください。
diff --git a/doc-jp/README.func b/doc-jp/README.func
index 542aaa9..092656e 100644
--- a/doc-jp/README.func
+++ b/doc-jp/README.func
@@ -1,145 +1,150 @@
-ABORT ��ǧ������w3m��λ���ޤ�
-ACCESSKEY Accesskey ��˥塼��Ω���夲�ޤ�
-ALARM ���顼������ꤷ�ޤ�
-ADD_BOOKMARK ���߸��Ƥ���ڡ�����֥å��ޡ������ɲä��ޤ�
-BACK ������ΥХåե���ɽ�����ޤ�
-BEGIN ʸ��Τ����Ф��ιԤ˰�ư���ޤ�
-BOOKMARK �֥å��ޡ������ɤ߹��ߤޤ�
-CENTER_H ��������Τ�����֤�Ԥ�����˰�ư���ޤ�
-CENTER_V ��������Τ���Ԥ���̤�����˰�ư���ޤ�
-CHARSET ����ɽ������Ƥ���ʸ���ʸ�������ɤ��ѹ����ޤ�
-CLOSE_TAB ���ߤΥ��֤��Ĥ��ޤ�
-CLOSE_TAB_MOUSE �ޥ�����������ΰ��֤Υ��֤��Ĥ��ޤ�(�ޥ��������)
-COMMAND w3m�Υ��ޥ�ɤ�¹Ԥ��ޤ�
-COOKIE ���å���������ɽ�����ޤ�
-DEFAULT_CHARSET �ǥե���Ȥ�ʸ���ʸ�������ɤ��ѹ����ޤ�
-DEFINE_KEY �������Ϥȥ��ޥ�ɤ��б���������ޤ�
-DELETE_PREVBUF ���ΥХåե���õ�ޤ�(��� local-CGI ��)
-DICT_WORD ���Ϥ���ñ��򼭽񥳥ޥ�ɤ�Ĵ�٤ޤ�
-DICT_WORD_AT ����������֤�ñ��򼭽񥳥ޥ�ɤ�Ĵ�٤ޤ�
-DISPLAY_IMAGE �������ɹ�/ɽ����Ƴ����ޤ�
-DOWN ���̤�1�Բ��˥��������뤷�ޤ�
-DOWNLOAD ʸ��Υ�������ե��������¸���ޤ�
-DOWNLOAD_LIST ����������ɾ����ΰ�����ɽ�����ޤ�
-EDIT �������ե�����򥨥ǥ������Խ����ޤ�
-EDIT_SCREEN �Хåե���ɽ�����Ƥ򥨥ǥ������Խ����ޤ�
-END ʸ��Τ����Ф󲼤ιԤ˰�ư���ޤ�
-EXEC_SHELL �����륳�ޥ�ɤ�¹Ԥ��ޤ�
-EXIT ��ǧ������w3m��λ���ޤ�
-EXTERN �����֥饦����Ȥä�ɽ�����ޤ�
-EXTERN_LINK ���ߤΥ����򡤳����֥饦����Ȥä�ɽ�����ޤ�
-FRAME <FRAME>�����λؤ�ʸ���1�Ĥ�ʸ����Ѵ�����ɽ�����ޤ�
-GOTO URL����ꤷ�Ƴ����ޤ�
-GOTO_LINE ���̲��ǹ��ֹ�����Ϥ��������ǻ��ꤷ���Ԥ˰�ư���ޤ�
-GOTO_LINK ��󥯤��ؤ����ʸ����ɤߤ��ߤޤ�
-GOTO_RELATIVE ����URL����ꤷ�Ƴ����ޤ�
-HELP �إ�ץե������ɽ�����ޤ�
-HISTORY URL�����ɽ�����ޤ�
-INFO ���ߤ�ʸ��˴ؤ�������ɽ�����ޤ�
-INIT_MAILCAP mailcap ����ɤ߹��ߤ��ޤ�(��� local-CGI ��)
-INTERRUPT ʸ����ɤ߹��ߤ����Ǥ��ޤ�
-ISEARCH �ե�����������ˤफ�äƥ��󥯥��󥿥륵�������ޤ�
-ISEARCH_BACK �ե��������Ƭ�ˤफ�äƥ��󥯥��󥿥륵�������ޤ�
-LEFT �������Τ�1ʸ�����ˤ��餷�ޤ�
-LINE_BEGIN ��Ƭ�˰�ư���ޤ�
-LINE_END �����˰�ư���ޤ�
-LINE_INFO �ڡ�����Ǥθ��߰��֤�ɽ�����ޤ�
-LINK_BEGIN �ǽ�Υ�󥯤˰�ư���ޤ�
-LINK_END �Ǹ�Υ�󥯤˰�ư���ޤ�
-LINK_MENU Link ���ǰ����Υ�˥塼��Ω���夲�ޤ�
-LIST ��󥯤Ȳ����ΰ�����ɽ�����ޤ�
-LIST_MENU ���������Υ�˥塼��Ω���夲��������ʸ����ɤߤ��ߤޤ�
-LOAD ��������ե��������ꤷ�Ƴ����ޤ�
-MAIN_MENU ��˥塼��Ω���夲�ޤ�
-MARK �ޡ��������꡿������ޤ�
-MARK_MID Message-ID����ʸ�����news:�Υ�󥯤ˤ��ޤ�
-MARK_URL URL����ʸ������󥯤ˤ��ޤ�
-MARK_WORD ��������Τ������󥯤ˤ��ޤ�
-MENU ��˥塼��Ω���夲�ޤ�
-MENU_MOUSE �ޥ�����������ΰ��֤ǥ�˥塼��Ω���夲�ޤ�(�ޥ��������)
-MOUSE_TOGGLE �ޥ�����ͭ��/̵����ȥ��뤹��
-MOVE_DOWN ��������򲼤˰�ư���ޤ�(���ڡ������ˤ�Ⱦ�ڡ�������������)
-MOVE_DOWN1 ��������򲼤˰�ư���ޤ�(���ڡ������ˤϣ��ԥ���������)
-MOVE_LEFT ��������򺸤˰�ư���ޤ�(��ü�ξ��ˤ�Ⱦ����ʬ���ե�)
-MOVE_LEFT1 ��������򺸤˰�ư���ޤ�(��ü�ξ��ˤϣ�ʸ��ʬ���ե�)
-MOVE_LIST_MENU ���������Υ�˥塼��Ω���夲������������ư���ޤ�
-MOVE_MOUSE ���������ޥ�����������ΰ��֤˰�ư���ޤ�(�ޥ��������)
-MOVE_RIGHT ��������򱦤˰�ư���ޤ�(��ü�ξ��ˤ�Ⱦ����ʬ���ե�)
-MOVE_RIGHT1 ��������򱦤˰�ư���ޤ�(��ü�ξ��ˤϣ�ʸ��ʬ���ե�)
-MOVE_UP ����������˰�ư���ޤ�(���ڡ������ˤ�Ⱦ�ڡ�������������)
-MOVE_UP1 ����������˰�ư���ޤ�(���ڡ������ˤϣ��ԥ���������)
-MSGS ���顼��å������ΰ�����ɽ��
-NEW_TAB ���������֤򳫤��ޤ�
-NEXT ���ΥХåե���ɽ�����ޤ�
-NEXT_DOWN ��������β�¦�ˤ����󥯤˰�ư���ޤ�
-NEXT_LEFT ��������κ�¦�ˤ����󥯤˰�ư���ޤ�
-NEXT_LEFT_UP ��������κ�¦(̵��������ι԰���)�ˤ����󥯤˰�ư���ޤ�
-NEXT_LINK ���Υ�󥯤˰�ư���ޤ�
-NEXT_MARK ��ĸ�Υޡ����˰�ư���ޤ�
-NEXT_PAGE ���Υڡ�����ɽ�����ޤ�
-NEXT_RIGHT ��������α�¦�ˤ����󥯤˰�ư���ޤ�
-NEXT_RIGHT_DOWN ��������α�¦(̵����м��԰ʹ�)�ˤ����󥯤˰�ư���ޤ�
-NEXT_TAB ���Υ��֤˰�ư���ޤ�
-NEXT_UP ��������ξ�¦�ˤ����󥯤˰�ư���ޤ�
-NEXT_VISITED ����ˬ�줿���ȤΤ����󥯤˰�ư���ޤ�
-NEXT_WORD ����ñ��˰�ư���ޤ�
-NOTHING ���⤷�ޤ���
-NULL ���⤷�ޤ���
-OPTIONS ���ץ��������ѥͥ��ɽ�����ޤ�
-PEEK ���ߤ�ʸ���URL��ɽ�����ޤ�
-PEEK_IMG ���ߥ������뤬�����󥯤�ޤ�������Τ�Τ�URL��ɽ�����ޤ�
-PEEK_LINK ��󥯤��ؤ����URL��ɽ�����ޤ�
-PIPE_BUF �Хåե������Ƥ�ѥ��פ��Ϥ��ޤ�
-PIPE_SHELL ���ޥ�ɤ�¹Ԥ�����̤��ɤߤ��ߤʤ���ɽ�����ޤ�
-PREV ���ΥХåե���ɽ�����ޤ�
-PREV_LINK ���Υ�󥯤˰�ư���ޤ�
-PREV_MARK ������Υޡ����˰�ư���ޤ�
-PREV_PAGE ���Υڡ�����ɽ�����ޤ�
-PREV_TAB ���Υ��֤˰�ư���ޤ�
-PREV_VISITED ����ˬ�줿���ȤΤ����󥯤˰�ư���ޤ�
-PREV_WORD ����ñ��˰�ư���ޤ�
-PRINT �Хåե���ɽ�����Ƥ�ե��������¸���ޤ�
-QUIT w3m��λ���ޤ�
-READ_SHELL ���ޥ�ɤ�¹Ԥ�����̤������ɤ�Ǥ���ɽ�����ޤ�
-REDO Undo ����ä��ޤ�
-REDRAW �����褷�ޤ�
-REG_MARK ����ɽ���ǻ��ꤵ�줿ʸ��������ƥޡ������ޤ�
-REINIT ����ե��������ɹ����ޤ���
-RELOAD �Хåե�������ɤ߹��ߤޤ�
-RESHAPE �ƥ�����󥰤���
-RIGHT �������Τ�1ʸ�����ˤ��餷�ޤ�
-SAVE ʸ��Υ�������ե��������¸���ޤ�
-SAVE_IMAGE ��󥯤��ؤ�������ե��������¸���ޤ�
-SAVE_LINK ��󥯤��ؤ����ʸ���ե��������¸���ޤ�
-SAVE_SCREEN �Хåե���ɽ�����Ƥ�ե��������¸���ޤ�
-SEARCH �ե����������˸����ä�����ɽ���򸡺����ޤ�
-SEARCH_BACK �ե��������Ƭ�˸����ä�����ɽ���򸡺����ޤ�
-SEARCH_FORE �ե����������˸����ä�����ɽ���򸡺����ޤ�
-SEARCH_NEXT ���򸡺����ޤ�
-SEARCH_PREV ���򸡺����ޤ�
-SELECT �Хåե�����⡼�ɤ�����ޤ�
-SELECT_MENU �Хåե������˥塼��Ω���夲�ޤ�
-SETENV �Ķ��ѿ������ꤷ�ޤ�
-SET_OPTION ���ץ��������ꤷ�ޤ�
-SHELL �����륳�ޥ�ɤ�¹Ԥ��ޤ�
-SHIFT_LEFT �������Τ򺸤ˤ��餷�ޤ�
-SHIFT_RIGHT �������Τ򱦤ˤ��餷�ޤ�
-SOURCE HTML�Υ�������ɽ�����ޤ�
-STOP_IMAGE �������ɹ�/ɽ������ߤ��ޤ�
-SUBMIT �ե�����˥��֥ߥåȤ��ޤ�
-SUSPEND �����ڥ��
-TAB_GOTO URL����ꤷ�ƿ��������֤dz����ޤ�
-TAB_GOTO_RELATIVE ����URL����ꤷ�ƿ��������֤dz����ޤ�
-TAB_LEFT ���ߤΥ��֤򺸤˰�ư���ޤ�
-TAB_LINK ��󥯤��ؤ����ʸ��򿷤������֤dz����ޤ�
-TAB_MENU ���������˥塼��Ω���夲�ޤ�
-TAB_MOUSE �ޥ�����������ΰ��֤Υ��֤˰�ư���ޤ�(�ޥ��������)
-TAB_RIGHT ���ߤΥ��֤򱦤˰�ư���ޤ�
-UNDO �Ǹ�Υ��������ư����ä��ޤ�
-UP ���̤�1�Ծ�˥��������뤷�ޤ�
-VERSION w3m �ΥС�������ɽ�����ޤ�
-VIEW HTML�Υ�������ɽ�����ޤ�
-VIEW_BOOKMARK �֥å��ޡ������ɤ߹��ߤޤ�
-VIEW_IMAGE ��󥯤��б����������ɽ�����ޤ�
-WHEREIS �ե����������˸����ä�����ɽ���򸡺����ޤ�
-WRAP_TOGGLE �ޤ��֤������⡼�ɤ��ڤ괹���ޤ�
+ABORT 確認せずにw3mを終了します
+ACCESSKEY Accesskey メニューを立ち上げます
+ADD_BOOKMARK 現在見ているページをブックマークに追加します
+ALARM アラームを設定します
+BACK 一つ前のバッファを表示します
+BEGIN 文書のいちばん上の行に移動します
+BOOKMARK ブックマークを読み込みます
+CENTER_H カーソルのある位置を行の中央に移動します
+CENTER_V カーソルのある行を画面の中央に移動します
+CHARSET 現在表示されている文書の文字コードを変更します
+CLOSE_TAB 現在のタブを閉じます
+CLOSE_TAB_MOUSE マウスカーソルの位置のタブを閉じます(マウス操作用)
+COMMAND w3mのコマンドを実行します
+COOKIE クッキー一覧を表示します
+CURSOR_TOP カーソルを画面のいちばん上の行に移動します
+CURSOR_MIDDLE カーソルを画面の中央の行に移動します
+CURSOR_BOTTOM カーソルを画面のいちばん下の行に移動します
+DEFAULT_CHARSET デフォルトの文書の文字コードを変更します
+DEFINE_KEY キー入力とコマンドの対応を定義します
+DELETE_PREVBUF 前のバッファを消去します(主に local-CGI 用)
+DICT_WORD 入力した単語を辞書コマンドで調べます
+DICT_WORD_AT カーソル位置の単語を辞書コマンドで調べます
+DISPLAY_IMAGE 画像の読込/表示を再開します
+DOWN 画面を1行下にスクロールします
+DOWNLOAD 文書のソースをファイルに保存します
+DOWNLOAD_LIST ダウンロード状況の一覧を表示します
+EDIT ソースファイルをエディタで編集します
+EDIT_SCREEN バッファの表示内容をエディタで編集します
+END 文書のいちばん下の行に移動します
+EXEC_SHELL シェルコマンドを実行します
+EXIT 確認せずにw3mを終了します
+EXTERN 外部ブラウザを使って表示します
+EXTERN_LINK 現在のリンク先を,外部ブラウザを使って表示します
+FRAME <FRAME>タグの指す文書を1つの文書に変換して表示します
+GOTO URLを指定して開きます
+GOTO_HOME ホームページへ戻ります(環境変数HTTP_HOMEまたはWWW_HOMEで指定)
+GOTO_LINE 画面下で行番号を入力し,そこで指定した行に移動します
+GOTO_LINK リンクが指す先の文書を読みこみます
+GOTO_RELATIVE 相対URLを指定して開きます
+HELP ヘルプファイルを表示します
+HISTORY URL履歴を表示します
+INFO 現在の文書に関する情報を表示します
+INTERRUPT 文書の読み込みを中断します
+ISEARCH ファイルの末尾にむかってインクリメンタルサーチします
+ISEARCH_BACK ファイルの先頭にむかってインクリメンタルサーチします
+LEFT 画面全体を1文字左にずらします
+LINE_BEGIN 行頭に移動します
+LINE_END 行末に移動します
+LINE_INFO ページ中での現在位置を表示します
+LINK_BEGIN 最初のリンクに移動します
+LINK_END 最後のリンクに移動します
+LINK_MENU Link 要素一覧のメニューを立ち上げます
+LIST リンクと画像の一覧を表示します
+LIST_MENU リンク先一覧のメニューを立ち上げ、リンク先の文書を読みこみます
+LOAD ローカルファイルを指定して開きます
+MAIN_MENU メニューを立ち上げます
+MARK マークを設定/解除します
+MARK_MID Message-ID風の文字列を,news:のリンクにします
+MARK_URL URL風の文字列をリンクにします
+MARK_WORD カーソルのある語をリンクにします
+MENU メニューを立ち上げます
+MENU_MOUSE マウスカーソルの位置でメニューを立ち上げます(マウス操作用)
+MOUSE_TOGGLE マウスの有効/無効をトグルする
+MOVE_DOWN カーソルを下に移動します(改ページ時には半ページスクロール)
+MOVE_DOWN1 カーソルを下に移動します(改ページ時には1行スクロール)
+MOVE_LEFT カーソルを左に移動します(左端の場合には半画面分シフト)
+MOVE_LEFT1 カーソルを左に移動します(左端の場合には1文字分シフト)
+MOVE_LIST_MENU リンク先一覧のメニューを立ち上げ、カーソルを移動します
+MOVE_MOUSE カーソルをマウスカーソルの位置に移動します(マウス操作用)
+MOVE_RIGHT カーソルを右に移動します(右端の場合には半画面分シフト)
+MOVE_RIGHT1 カーソルを右に移動します(右端の場合には1文字分シフト)
+MOVE_UP カーソルを上に移動します(改ページ時には半ページスクロール)
+MOVE_UP1 カーソルを上に移動します(改ページ時には1行スクロール)
+MSGS エラーメッセージの一覧の表示
+NEW_TAB 新しいタブを開きます
+NEXT 次のバッファを表示します
+NEXT_DOWN カーソルの下側にあるリンクに移動します
+NEXT_HALF_PAGE 半ページ下にスクロールします
+NEXT_LEFT カーソルの左側にあるリンクに移動します
+NEXT_LEFT_UP カーソルの左側(無ければ前の行以前)にあるリンクに移動します
+NEXT_LINK 次のリンクに移動します
+NEXT_MARK 一つ後のマークに移動します
+NEXT_PAGE 次のページを表示します
+NEXT_RIGHT カーソルの右側にあるリンクに移動します
+NEXT_RIGHT_DOWN カーソルの右側(無ければ次行以降)にあるリンクに移動します
+NEXT_TAB 次のタブに移動します
+NEXT_UP カーソルの上側にあるリンクに移動します
+NEXT_VISITED 次の訪れたことのあるリンクに移動します
+NEXT_WORD 次の単語に移動します
+NOTHING 何もしません
+NULL 何もしません
+OPTIONS オプション設定パネルを表示します
+PEEK 現在の文書のURLを表示します
+PEEK_IMG 現在カーソルがあるリンクを含む画像そのもののURLを表示します
+PEEK_LINK リンクが指す先のURLを表示します
+PIPE_BUF バッファの内容をパイプに渡します
+PIPE_SHELL コマンドを実行し,結果を読みこみながら表示します
+PREV 前のバッファを表示します
+PREV_HALF_PAGE 半ページ上にスクロールします
+PREV_LINK 前のリンクに移動します
+PREV_MARK 一つ前のマークに移動します
+PREV_PAGE 前のページを表示します
+PREV_TAB 前のタブに移動します
+PREV_VISITED 前の訪れたことのあるリンクに移動します
+PREV_WORD 前の単語に移動します
+PRINT バッファの表示内容をファイルに保存します
+QUIT w3mを終了します
+READ_SHELL コマンドを実行し,結果を全部読んでから表示します
+REDO Undo を取り消します
+REDRAW 再描画します
+REG_MARK 正規表現で指定された文字列を全てマークします
+REINIT 設定ファイルを再読込します。
+RELOAD バッファを再度読み込みます
+RESHAPE 再レンダリングする
+RIGHT 画面全体を1文字右にずらします
+SAVE 文書のソースをファイルに保存します
+SAVE_IMAGE リンクが指す画像をファイルに保存します
+SAVE_LINK リンクが指す先の文書をファイルに保存します
+SAVE_SCREEN バッファの表示内容をファイルに保存します
+SEARCH ファイル末尾に向かって正規表現を検索します
+SEARCH_BACK ファイルの先頭に向かって正規表現を検索します
+SEARCH_FORE ファイル末尾に向かって正規表現を検索します
+SEARCH_NEXT 次を検索します
+SEARCH_PREV 前を検索します
+SELECT バッファ選択モードに入ります
+SELECT_MENU バッファ選択メニューを立ち上げます
+SETENV 環境変数を設定します
+SET_OPTION オプションを設定します
+SHELL シェルコマンドを実行します
+SHIFT_LEFT 画面全体を左にずらします
+SHIFT_RIGHT 画面全体を右にずらします
+SOURCE HTMLのソースを表示します
+STOP_IMAGE 画像の読込/表示を停止します
+SUBMIT フォームにサブミットします
+SUSPEND サスペンド
+TAB_GOTO URLを指定して新しいタブで開きます
+TAB_GOTO_RELATIVE 相対URLを指定して新しいタブで開きます
+TAB_LEFT 現在のタブを左に移動します
+TAB_LINK リンクが指す先の文書を新しいタブで開きます
+TAB_MENU タブ選択メニューを立ち上げます
+TAB_MOUSE マウスカーソルの位置のタブに移動します(マウス操作用)
+TAB_RIGHT 現在のタブを右に移動します
+UNDO 最後のカーソル移動を取り消します
+UP 画面を1行上にスクロールします
+VERSION w3m のバージョンを表示します
+VIEW HTMLのソースを表示します
+VIEW_BOOKMARK ブックマークを読み込みます
+VIEW_IMAGE リンクに対応する画像を表示します
+WHEREIS ファイル末尾に向かって正規表現を検索します
+WRAP_TOGGLE 折り返し検索モードを切り換えます
diff --git a/doc-jp/README.img b/doc-jp/README.img
index d090bae..79811d3 100644
--- a/doc-jp/README.img
+++ b/doc-jp/README.img
@@ -1,96 +1,96 @@
-w3m �ǥ���饤�������ɽ��
+w3m でインライン画像を表示
- (2002/02/04) ���ܹ�§
+ (2002/02/04) 坂本浩則
hsaka@mth.biglobe.ne.jp
- (2002/10/16) ���침Ƿ
+ (2002/10/16) 伊東宏之
ZXB01226@nifty.com
-�Ϥ����
+はじめに
- w3m �ǥ���饤�������ɽ�������ĥ�Ǥ���
+ w3m でインライン画像を表示する拡張です。
-��ǽ
+機能
- ��X11 ���ü��(xterm,kterm,rxvt,...)�� Linux �� framebuffer ��ޤ���
- Windows ü����˲���(GIF,PNG,JPEG ��)��ɽ�����ޤ���
- ��img �����ǻ��ꤵ�줿����饤�������ɽ���Ǥ��ޤ���
- width,height °���˱�����ɬ�פ��ΰ����ݤ��ƥ�����󥰤��ޤ���
- align °�����б����Ƥ��ޤ���
- ��Content-type: image/* �ʲ����ե������ľ��ɽ���Ǥ��ޤ���
- ��map �������б����Ƥ��ޤ���
- area ������ shape, coords °����ǧ��������˥塼ɽ����������Ǥ��ޤ���
- ��img ������ ismap °�����б����Ƥ��ޤ���
- ��ɸ�ͤ� ?<x>,<y> �Ȥ��� URL ���ɲä�������ޤ���
- ��input ������ type=image °���ǻ��ꤵ�줿����饤�������ɽ���Ǥ��ޤ���
- ��ɸ�ͤ� <name>.x=<x>&<name>.y=<y> �Ȥ�������ޤ���
- ����Ʊ���˲������ɤ߹��ߤޤ���
- �������򥭥�å���Ǥ��ޤ���
- ��GdkPixbuf �����Ѥ������ GIF animation ��ɽ���Ǥ��ޤ���
+ ・X11 上の端末(xterm,kterm,rxvt,...)、 Linux の framebuffer 上または
+ Windows 端末上に画像(GIF,PNG,JPEG 等)を表示します。
+ ・img タグで指定されたインライン画像を表示できます。
+ width,height 属性に応じて必要な領域を確保してレンダリングします。
+ align 属性に対応しています。
+ ・Content-type: image/* な画像ファイルを直接表示できます。
+ ・map タグに対応しています。
+ area タグの shape, coords 属性を認識し、メニュー表示から選択できます。
+ ・img タグの ismap 属性に対応しています。
+ 座標値を ?<x>,<y> として URL に追加して送ります。
+ ・input タグの type=image 属性で指定されたインライン画像を表示できます。
+ 座標値を <name>.x=<x>&<name>.y=<y> として送ります。
+ ・非同期に画像を読み込みます。
+ ・画像をキャッシュできます。
+ ・GdkPixbuf を利用した場合 GIF animation を表示できます。
-�������
+キー操作
DISPLAY_IMAGE
- �������ɹ�/ɽ����Ƴ����ޤ���
+ 画像の読込/表示を再開します。
STOP_IMAGE
- ���ΥХåե��β������ɹ�/ɽ������ߤ��ޤ���
+ そのバッファの画像の読込/表示を停止します。
SET_OPTION display_image=toggle
- �������ɹ�/ɽ�������ؤ��ޤ���
+ 画像の読込/表示を切替えます。
- �ǥե���ȤΥ����ޥåפϤ���ޤ���Τǡ�~/.w3m/keymap ��
+ デフォルトのキーマップはありませんので、~/.w3m/keymap に
keymap X DISPLAY_IMAGE
keymap C-c STOP_IMAGE
keymap t SET_OPTION display_image=toggle
- ���ͤ˵��Ҥ��ƻ��Ѥ��Ƥ���������
+ の様に記述して使用してください。
-���ޥ�ɥ饤�󥪥ץ����
+コマンドラインオプション
-ppc <pixel>
- ��ʸ�����������(pixel ��)����ꤷ�ޤ����ǥե���Ȥϼ�ư���ꡣ
- ���������ꤵ��ʤ�����ü���� font ���礭����ɬ����碌�Ƥ���������
+ 一文字あたりの幅(pixel 値)を指定します。デフォルトは自動設定。
+ 正しく設定されない場合は端末の font の大きさに必ず合わせてください。
-ppl <pixel>
- ��Ԥ��������(pixel ��)����ꤷ�ޤ����ǥե���Ȥϼ�ư���ꡣ
- ���������ꤵ��ʤ�����ü���� font ���礭����ɬ����碌�Ƥ���������
+ 一行あたりの幅(pixel 値)を指定します。デフォルトは自動設定。
+ 正しく設定されない場合は端末の font の大きさに必ず合わせてください。
-���ץ����ѥͥ�
+オプションパネル
pixel_per_char
- ��ʸ�����������(pixel ��)����ꤷ�ޤ����ǥե���Ȥϼ�ư���ꡣ
- ���������ꤵ��ʤ�����ü���� font ���礭����ɬ����碌�Ƥ���������
+ 一文字あたりの幅(pixel 値)を指定します。デフォルトは自動設定。
+ 正しく設定されない場合は端末の font の大きさに必ず合わせてください。
pixel_per_line
- ��Ԥ��������(pixel ��)����ꤷ�ޤ����ǥե���Ȥϼ�ư���ꡣ
- ���������ꤵ��ʤ�����ü���� font ���礭����ɬ����碌�Ƥ���������
+ 一行あたりの幅(pixel 値)を指定します。デフォルトは自動設定。
+ 正しく設定されない場合は端末の font の大きさに必ず合わせてください。
display_image
- ����饤�������ɽ�����ޤ����ǥե���Ȥ� ON��
+ インライン画像を表示します。デフォルトは ON。
auto_image
- ����饤�������ư���ɤ߹��ߤޤ����ǥե���Ȥ� ON��
- OFF �ξ��ϡ����ޥ�� DISPLAY_IMAGE ���ɤ߹��ߤ򳫻Ϥ��ޤ���
+ インライン画像を自動で読み込みます。デフォルトは ON。
+ OFF の場合は、コマンド DISPLAY_IMAGE で読み込みを開始します。
max_load_image
- �������ɤ߹�����κ���ץ����������ǥե���Ȥ� 4��1��8 �ޤ������ǽ��
+ 画像を読み込む時の最大プロセス数。デフォルトは 4。1〜8 まで設定可能。
ext_image_viewer
- ���ޥ�� VIEW_IMAGE('I')�ξ��� Content-type: image/* �Ǥ���
- �����ե���������ӥ塼���ɽ�����ޤ����ǥե���Ȥ� ON��
- OFF �ξ��ϡ�����饤������Ȥ���ľ��ɽ�����ޤ���
+ コマンド VIEW_IMAGE('I')の場合や Content-type: image/* である
+ 画像ファイルを外部ビューワで表示します。デフォルトは ON。
+ OFF の場合は、インライン画像として直接表示します。
image_scale
- �����Υ����������ꤷ�ޤ����ǥե���Ȥ� 100(%)��
- ������ font �ȶ��˻Ȥ����ˤ��ͤ򾮤��������ͭ�ѡ�
+ 画像のスケールを指定します。デフォルトは 100(%)。
+ 小さい font と共に使う場合には値を小さくすると有用。
imgdisplay
- ����饤�������ɽ�����뤿��Υ��ޥ�ɡ��ǥե���Ȥ� w3mimgdisplay��
- ������ "w3mimgdisplay ������" �򻲹ͤˤ��ƥ��ץ�������ꤷ�Ƥ���������
+ インライン画像を表示するためのコマンド。デフォルトは w3mimgdisplay。
+ 下記の "w3mimgdisplay の設定" を参考にしてオプション設定してください。
-ɬ�פʤ��
+必要なもの
- ��X11 ���ѻ�
- * GdkPixbuf (0.16 �ʾ�侩)
+ ・X11 使用時
+ * GdkPixbuf (0.16 以上推奨)
- �ޤ���
+ または
- * Imlib-1.9.8�ʾ� (1.9.10 �ʾ�侩)
+ * Imlib-1.9.8以上 (1.9.10 以上推奨)
ftp://ftp.gnome.org/pub/GNOME/sources/imlib/1.9/
- * libungif-4.1.0b1 �ʾ�
+ * libungif-4.1.0b1 以上
ftp://prtr-13.ucsc.edu/pub/libungif/
http://prtr-13.ucsc.edu/~badger/software/libungif/
- �ʲ��� Imlib �Υ��󥹥ȡ����ɬ��
+ 以下は Imlib のインストールに必要
* libjpeg
ftp://ftp.uu.net/graphics/jpeg/
* libpng
@@ -103,183 +103,183 @@ w3m �ǥ���饤�������ɽ��
* netpbm
http://netpbm.sourceforge.net/
- ��Linux framebuffer ���ѻ�
- * Linux �� 15,16,24,32bpp PACKED-PIXELS TRUE-COLOR/DIRECT-COLOR,
- 8bpp PACKED-PIXELS PSEUDO-COLOR framebuffer �����ѤǤ���Ķ�
- * GdkPixbuf (0.16 �ʾ�侩) �ޤ��� Imlib2 (1.0.6 �ʾ�侩)
+ ・Linux framebuffer 使用時
+ * Linux の 15,16,24,32bpp PACKED-PIXELS TRUE-COLOR/DIRECT-COLOR,
+ 8bpp PACKED-PIXELS PSEUDO-COLOR framebuffer を利用できる環境
+ * GdkPixbuf (0.16 以上推奨) または Imlib2 (1.0.6 以上推奨)
-w3mimgdisplay ������
+w3mimgdisplay の設定
- w3mimgdisplay �ϰʲ��Υ��ץ���������դ��ޤ��Τ�ü���˹�碌��
- ���ץ��������ѥͥ��(�ޤ��� -o ���ץ�����)���ꤷ�Ƥ���������
+ w3mimgdisplay は以下のオプションを受け付けますので端末に合わせて
+ オプション設定パネルで(または -o オプションで)設定してください。
-x <offset_x>
- ü����˲�����ɽ������ X �����θ�����X11 �����Ѥ�����ǥե����
- �� 2 �Ǥ�����xterm �� kterm �Ǥϥ���������С�������׻����Ʋä�
- �褦�Ȥ��ޤ���(����������ʤ����⤷��ޤ���)
- Eterm �Ǥ� 5 �ˤ��٤����⤷��ޤ���
- Linux framebuffer �����Ѥ�����ǥե���Ȥ� 0 �Ǥ���
+ 端末上に画像を表示する X 方向の原点。X11 で利用する場合デフォルト
+ は 2 ですが、xterm や kterm ではスクロールバーの幅を計算して加え
+ ようとします。(正しく出来ないかもしれません。)
+ Eterm では 5 にすべきかもしれません。
+ Linux framebuffer で利用する場合デフォルトは 0 です。
-y <offset_y>
- ü����˲�����ɽ������ Y �����θ������ǥե���Ȥϡ�X11 �Ǥ� 2��
- Linux framebuffer �Ǥ� 0��
- Eterm �Ǥ� 5 �ˤ��٤����⤷��ޤ���
+ 端末上に画像を表示する Y 方向の原点。デフォルトは、X11 では 2、
+ Linux framebuffer では 0。
+ Eterm では 5 にすべきかもしれません。
-bg <background>
- ü�����طʿ����ǥե���Ȥϡ�X11 �Ǥϼ�ư���ꡢLinux framebuffer
- �Ǥ� #000000 (��)��
- #RRGGBB �ǻ��ꤹ����� # �򥨥������פ������ꤷ�Ƥ���������
+ 端末の背景色。デフォルトは、X11 では自動設定、Linux framebuffer
+ では #000000 (黒)。
+ #RRGGBB で指定する場合は # をエスケープして設定してください。
-anim <n>
- ���˥᡼������ɽ���������ե졼�������ꡣ0 �λ������¤ʤ���
- ��λ��ϺǸ夫��Υե졼����ȸ��ʤ��ޤ����ǥե���Ȥ� 100��
+ アニメーションで表示する最大フレーム数を指定。0 の時は制限なし。
+ 負の時は最後からのフレーム数と見なします。デフォルトは 100。
-margin <n>
- �����򥯥ꥢ�����ΰ�Υޡ��������ꤷ�ޤ������������뤷���Ȥ���
- �̤˥��ߤ��ĤäƤ��ޤ����˻��ꤷ�ƤߤƤ���������
- �ǥե���Ȥ� 0��
+ 画像をクリアする領域のマージンを指定します。スクロールしたとき画
+ 面にゴミが残ってしまう場合に指定してみてください。
+ デフォルトは 0。
- ��)
+ 例)
w3m -o 'imgdisplay=w3mimgdisplay -x 5 -bg "#cccccc"'
-����¾
- ��GIF animation �� w3m ����κ������׵�˱����ƥե졼���񤭴�����
- �����ʤΤǾ����ư���ƤϤ���ޤ��󡣳���ư��������ˤ� 'h', 'l' ��
- ��Ŭ���ʥ�����Ϣ�Ǥ��Ƥ���������
- ��framebuffer ����ط��ˤϡ����� URI �Υ����ɤ����Ѥ��ޤ�����
+その他
+ ・GIF animation は w3m からの再描画要求に応じてフレームを書き換える
+ だけなので勝手に動いてはくれません。絵を動かすためには 'h', 'l' 等
+ の適当なキーを連打してください。
+ ・framebuffer 描画関係には、下記 URI のコードを利用しました。
http://www.sainet.or.jp/~yamasaki/download/fb-sample.tar.gz
- ��Windows �Ǥ�ɸ�ॳ�󥽡��롢Cygwin rxvt��PuTTY��ư���ǧ���Ƥ��ޤ���
+ ・Windows では標準コンソール、Cygwin rxvt、PuTTYで動作確認しています。
-������Ͽ
+更新記録
2002/02/04
- * �ɥ�����Ȳ���
+ * ドキュメント改訂
2002/02/01 w3m-0.2.5+cvs-1.287
- * �ܲȤ� CVS �إޡ�����
+ * 本家の CVS へマージ。
2002/01/31 w3m-0.2.4-img-2.2
- * w3m-0.2.4+cvs-1.278 �١�����
+ * w3m-0.2.4+cvs-1.278 ベース。
2002/01/29 w3m-0.2.4-img-2.1
- * w3m-0.2.4+cvs-1.268 �١�����
+ * w3m-0.2.4+cvs-1.268 ベース。
2002/01/28 w3m-0.2.4-img-2.0
- * w3m-0.2.4+cvs-1.265 �١�����
- * pixel_per_char, pixel_per_line ��ư���ꤹ��褦�ˤ�����
- * ü�����طʿ���ư���ꤹ��褦�ˤ�����
- * ���������ط��Υ������� image.c ��ʬΥ��
+ * w3m-0.2.4+cvs-1.265 ベース。
+ * pixel_per_char, pixel_per_line を自動設定するようにした。
+ * 端末の背景色を自動設定するようにした。
+ * 画像処理関係のソースを image.c に分離。
2002/01/08 w3m-0.2.4-img-1.18
- * w3m-0.2.4 �١�����
+ * w3m-0.2.4 ベース。
2001/12/29 w3m-0.2.3.2-img-1.17
- * w3m-0.2.3.2+cvs-1.196 �١�����
+ * w3m-0.2.3.2+cvs-1.196 ベース。
2001/12/25 w3m-0.2.3.2-img-1.16.1
- * [w3m-dev 02698] Thanks > �����Ҥ���kondara.org ����
+ * [w3m-dev 02698] Thanks > かずひこ@kondara.org さん
2001/12/22 w3m-0.2.3.2-img-1.16
- * w3m-0.2.3.2 �١�����
+ * w3m-0.2.3.2 ベース。
2001/12/20 w3m-0.2.3.1-img-1.15
- * w3m-0.2.3.1 �١�����
- * Content-Transfer-Encoding ���������褿������ɽ����ǽ�ˤ�����
+ * w3m-0.2.3.1 ベース。
+ * Content-Transfer-Encoding で送られて来た画像を表示可能にした。
2001/11/29
- * ChangLog 1.71 ������ CVS ���������Ф��ƥޡ�������
+ * ChangLog 1.71 時点の CVS ソースに対してマージ開始
2001/11/17 w3m-0.2.2-img-1.14
- * w3m-0.2.2 �١�����
+ * w3m-0.2.2 ベース。
2001/11/14 w3m-0.2.1-inu-1.6-img-1.13
- * w3m-0.2.1-inu-1.6 �١�����
+ * w3m-0.2.1-inu-1.6 ベース。
2001/11/05 w3m-0.2.1-inu-1.5-img-1.12
- * w3m-0.2.1-inu-1.5 �١�����
- * <area><map> ���Ȥ��ʤ��ʤäƤ����Х��ν�����
- * kterm ��� xwnmo ��Ȥä������б���
+ * w3m-0.2.1-inu-1.5 ベース。
+ * <area><map> が使えなくなっていたバグの修正。
+ * kterm 上で xwnmo を使った場合に対応。
2001/10/03 w3m-0.2.1-inu-1.4-img-1.11
- * w3m-0.2.1-inu-1.4 �١�����
- * ɸ�����Ϥ����ɤ߹�����������Х��ν�����
- * configure �ν�����Thanks > �����
+ * w3m-0.2.1-inu-1.4 ベース。
+ * 標準入力から読み込む時に落ちるバグの修正。
+ * configure の修正。Thanks > 深川さん。
2001/08/01 w3m-0.2.1-img-1.10
- * �����ΰ��֤���Ĵ����
- * ��������ΥХ�������
+ * 画像の位置の微調整。
+ * スケールのバグ修正。
2001/07/31 w3m-0.2.1-img-1.9
- * initImgdisplay() �����Thanks > David.
+ * initImgdisplay() の修正。Thanks > David.
2001/07/29 w3m-0.2.1-img-1.8
- * configure �ν�����Thanks > �京����
+ * configure の修正。Thanks > 坂根さん。
2001/07/28 w3m-0.2.1-img-1.7
- * configure, XMakefile �� patch �����ä�̵���ä���
- * ������ɽ�����ʤ����ν����򥪥ꥸ�ʥ�˶�Ť�����
- * [w3m-dev 02121] �����
+ * configure, XMakefile が patch に入って無かった。
+ * 画像を表示しない場合の処理をオリジナルに近づけた。
+ * [w3m-dev 02121] に対応。
2001/07/27 w3m-0.2.1-img-1.6
- * README.img �� doc-jp �ذ�ư��doc/README.img �������
- * ����饤������б���ʬ�� USE_IMAGE �ޥ�����ʬΥ��
- * configure �ǥ���饤������б�������Ǥ����ͤˤ�����
- * configure �� Imlib ������å������ͤˤ�����
+ * README.img を doc-jp へ移動。doc/README.img を作成。
+ * インライン画像対応部分を USE_IMAGE マクロで分離。
+ * configure でインライン画像対応を選択できる様にした。
+ * configure で Imlib をチェックする様にした。
2001/07/26 w3m-0.2.1-img-1.5
- * w3mimgdisplay ��ɬ�פˤʤ�ޤ�Ω���夲�ʤ��ͤˤ�����
- * w3mimgdisplay ����������ˡ�w3mimgdisplay ���Ω���夲�Ǥ����ͤˤ�����
- * <img align=middle �ξ��η׻��ְ㤤�ν�����
- * [w3m-dev 02118] �����
- * funcname.tab ���ְ�äƤ����Τǽ�����
+ * w3mimgdisplay は必要になるまで立ち上げない様にした。
+ * w3mimgdisplay が落ちた時に、w3mimgdisplay を再立ち上げできる様にした。
+ * <img align=middle の場合の計算間違いの修正。
+ * [w3m-dev 02118] に対応。
+ * funcname.tab が間違っていたので修正。
2001/07/25 w3m-0.2.1-img-1.4
- * w3mimgdisplay ��Ķ��ѿ� WINDOWID �򸫤��ͤ˲��ɡ�
- �ޤ���text window �ο�����ʬ����ɡ�
- * image ������ img ������Ʊ����ΤȤ����ɲá�
- * [w3m-dev 02090], [w3m-dev 02097] �����
+ * w3mimgdisplay を環境変数 WINDOWID を見る様に改良。
+ また、text window の推量部分も改良。
+ * image タグを img タグと同じものとして追加。
+ * [w3m-dev 02090], [w3m-dev 02097] に対応。
2001/07/14 w3m-0.2.1-img-1.3
- * ext_image_viewer �� OFF �ξ��ϲ�����ľ�ܥե졼��ɽ����ǽ�ˤ�����
- * Option Panel �� SEGV ����Х��ν�����
+ * ext_image_viewer が OFF の場合は画像を直接フレーム表示可能にした。
+ * Option Panel が SEGV するバグの修正。
2001/07/13 w3m-0.2.1-img-1.2
- * �����Υ����������������ͤˤ�����
- * SIGUSR1 �Υ֥��å��˴ؤ��뽤����
+ * 画像のスケールを指定出来る様にした。
+ * SIGUSR1 のブロックに関する修正。
2001/07/12 w3m-0.2.1-img-1.1
- * ����������ʳ��� SIGUSR1, SIGWINCH ��֥��å������ͤˤ�����
- * ��������
+ * キー入力中以外は SIGUSR1, SIGWINCH をブロックする様にした。
+ * バグ修正。
2001/07/11 w3m-0.2.1-img-1.0
- * MGL �Ǥβ����ɤ߹��ߤ���ѡ�
+ * MGL 版の画像読み込みを採用。
2001/07/10 w3m-0.2.1-img-0.5
- * ����ι�®����w3mimgdisplay �����פ� XSync() ��ߤ᤿��
- ���פ� drawImage() ��ߤ᤿��
+ * 描画の高速化。w3mimgdisplay で不要な XSync() を止めた。
+ 不要な drawImage() を止めた。
2001/07/08 w3m-0.2.1-img-0.4
- * w3mimgdisplay �Ǥ� Window �μ����� offset_x �Υǥե�����ͤβ��ɡ�
- * <img align=middle �ξ��η׻��ְ㤤�ν�����
- * <img align=left|center|right �Ǥ� <div>��</div> ��Ȥ��ͤˤ��Ƥߤ���
- * w3mimgdisplay �Ǥ� SIGINT ��̵�뤹���ͤˤ�����
- * w3mimgsize �⥪�ץ��������Ǥ����ͤˤ�����
+ * w3mimgdisplay での Window の取得や offset_x のデフォルト値の改良。
+ * <img align=middle の場合の計算間違いの修正。
+ * <img align=left|center|right では <div>〜</div> を使う様にしてみた。
+ * w3mimgdisplay では SIGINT を無視する様にした。
+ * w3mimgsize もオプション設定できる様にした。
2001/07/07 w3m-0.2.1-img-0.3
- * kterm �˸¤餺��X11 ���ü���Ǥϲ���������Ǥ����ͤˤ�����
+ * kterm に限らず、X11 上の端末では画像を描画できる様にした。
2001/07/06 w3m-0.2.1-img-0.2
- * README.img �������
- * kterm-6.2.0-img-0.2.patch �� w3m-0.2.1-img-0.2.patch �˴ޤ���ͤˤ�����
- * �����ɤ�����������¦�ؤν���
+ * README.img を作成。
+ * kterm-6.2.0-img-0.2.patch を w3m-0.2.1-img-0.2.patch に含める様にした。
+ * コードの整理、安全側への修正
2001/07/04 w3m-0.2.1-img-0.1
- * �С������������ϡ�
- * Imlib �б��ǡ�
+ * バージョン管理開始。
+ * Imlib 対応版。
2001/06/30
- * XPM �ǤǤܼۤ�����λ��
+ * XPM 版でほぼ実装完了。
2001/06/19
- * MGL �Ǥ˻ɷ������� img �ؤ��б��Υƥ��Ȥ򳫻ϡ�
+ * MGL 版に刺激を受けて img への対応のテストを開始。
-----------------------------------
-���� ��§ <hsaka@mth.biglobe.ne.jp>
+坂本 浩則 <hsaka@mth.biglobe.ne.jp>
http://www2u.biglobe.ne.jp/~hsaka/
diff --git a/doc-jp/README.keymap b/doc-jp/README.keymap
index cf656e1..bcab902 100644
--- a/doc-jp/README.keymap
+++ b/doc-jp/README.keymap
@@ -1,24 +1,24 @@
-w3m �Υ����Х���ɤˤĤ���
- (1999/06/30) ���� ��§
+w3m のキーバインドについて
+ (1999/06/30) 坂本 浩則
hsaka@mth.biglobe.ne.jp
- ~/.w3m/keymap �˥����Х���ɤ�����Ǥ��ޤ���
- ������ˡ�ϡ�
+ ~/.w3m/keymap にキーバインドを定義できます。
+ 指定方法は、
- keymap ���� ���ޥ�� [����]
+ keymap キー コマンド [引数]
- �Ǥ���
- ��� keymap.default �� keymap.lynx �򸫤Ƥ���������
- ����Ǥ��륳�ޥ�ɤ� README.func �򸫤Ƥ���������
+ です。
+ 例は keymap.default や keymap.lynx を見てください。
+ 設定できるコマンドは README.func を見てください。
- ʣ��ʸ������ʤ륨�������ץ������󥹤ϡ�
- Escape ʸ��
- Escape [ ʸ��, Escape O ʸ��
- Escape [ ���� ~, EScape [ ���� ���� ~
- �Τ������ǽ�Ǥ���
+ 複数文字からなるエスケープシーケンスは、
+ Escape 文字
+ Escape [ 文字, Escape O 文字
+ Escape [ 数字 ~, EScape [ 数字 数字 ~
+ のみ設定可能です。
- �ü�ʸ���ϡ�
+ 特殊文字は、
Ctrl : C-, ^
Escape : ESC-, M-, \e, ^[
@@ -35,8 +35,8 @@ w3m �Υ����Х���ɤˤĤ���
Left : LEFT, ^[[D
^ : \^
- �Ȥ���ɽ�����Ȥ��Ǥ��ޤ���
- �ޤ���ü���ˤ�äƤϡ�
+ として表すことができます。
+ また、端末によっては、
Insert : ^[[2~
PageUp : ^[[5~
@@ -53,6 +53,6 @@ w3m �Υ����Х���ɤˤĤ���
F10 : ^[[21~
Help : ^[[28~
- �ʤɤ���Ѳ�ǽ���⤷��ޤ���
- (�ƥ����Υ����ɤ� Ctrl-V + ���� �dz�ǧ�Ǥ��ޤ���)
+ なども使用可能かもしれません。
+ (各キーのコードは Ctrl-V + キー で確認できます。)
diff --git a/doc-jp/README.m17n b/doc-jp/README.m17n
index 97dac9f..7799d5c 100644
--- a/doc-jp/README.m17n
+++ b/doc-jp/README.m17n
@@ -1,80 +1,80 @@
-��ݲ�/�ޥ����󥬥벽 w3m
+国際化/マルチリンガル化 w3m
2003/03/08
- ���� ��§
+ 坂本 浩則
-�Ϥ����
+はじめに
- w3m ���ݲ�/�ޥ����󥬥벽���ޤ�����w3m-0.4.1 ���Ф����ĥ�Ǥ�
- �ʲ����֤��Ƥ���ޤ���
+ w3m を国際化/マルチリンガル化しました。w3m-0.4.1 に対する拡張版を
+ 以下に置いてあります。
http://www2u.biglobe.ne.jp/~hsaka/w3m/index-ja.html#m17n
patch/w3m-0.4.1-m17n-20030308.tar.gz
patch/README.m17n-ja
- �ޤ���ȯ�ǤǤ��ꡢ(�䤬���ܸ줷���򤵤ʤ�����)��ʬ�ʥƥ��ȤϤǤ���
- ���ޤ��󤬶�̣�������Ϥ������������
+ まだ開発版であり、(私が日本語しか解さないため)十分なテストはできて
+ いませんが興味ある方はお試しください。
- ���ߤΤȤ����ʲ��ε�ǽ������ޤ���
+ 現在のところ以下の機能があります。
-������ʸ��������
+扱える文字コード
- �����ܸ�
+ ・日本語
EUC-JP - US_ASCII, JIS X 0208, JIS X 0201, JIS X 0212
(EUC-JISX0213) (JIS X 0213)
ISO-2022-JP - US_ASCII, JIS X 0208, JIS X 0201, JIS X 0212, etc.
ISO-2022-JP-2 - US_ASCII, JIS X 0208, JIS X 0201, JIS X 0212,
GB 2312, KS X 1001, ISO 8859-1, ISO 8859-7, etc.
ISO-2022-JP-3 - US_ASCII, JIS X 0208, JIS X 0201, JIS X 0213, etc
- Shift_JIS(CP932) - US_ASCII, JIS X 0208, JIS X 0201, CP932 �γ�ĥʸ��
+ Shift_JIS(CP932) - US_ASCII, JIS X 0208, JIS X 0201, CP932 の拡張文字
Shift_JISX0213 - US_ASCII, JIS X 0208, JIS X 0201, JIS X 0213
- ������(���λ�)
+ ・中国語(簡体字)
EUC-CN(GB2312) - US_ASCII, GB 2312
ISO-2022-CN - US_ASCII, GB 2312, CNS-11643-1,..7, etc.
GBK(CP936) - US_ASCII, GB 2312, GBK
GB18030 - US_ASCII, GB 2312, GBK, GB18030, Unicode
HZ-GB-2312 - US_ASCII, GB 2312
- ������(���ѡ����λ�)
+ ・中国語(台湾、繁体字)
EUC-TW - US_ASCII, CNS 11643-1,..16
ISO-2022-CN - US_ASCII, CNS-11643-1,..7, GB 2312, etc.
Big5(CP950) - Big5
HKSCS - Big5, HKSCS
- ���ڹ��
+ ・韓国語
EUC-KR - US_ASCII, KS X 1001 Wansung
ISO-2022-KR - US_ASCII, KS X 1001 Wansung, etc.
Johab - US_ASCII, KS X 1001 Johab
UHC(CP949) - US_ASCII, KS X 1001 Wansung, UHC
- ���٥ȥʥ��
+ ・ベトナム語
TCVN-5712 VN-1, VISCII 1.1, VPS, CP1258
- ��������
+ ・タイ語
TIS-620 (ISO-8859-11), CP874
- ������¾
- US_ASCII, ISO-8859-1 �� 10, 13 �� 15,
+ ・その他
+ US_ASCII, ISO-8859-1 〜 10, 13 〜 15,
KOI8-R, KOI8-U, NeXT, CP437, CP737, CP775, CP850, CP852, CP855, CP856,
CP857, CP860, CP861, CP862, CP863, CP864, CP865, CP866, CP869, CP1006,
CP1250, CP1251, CP1252, CP1253, CP1254, CP1255, CP1256, CP1257
- ��Unicode (UCS-4)
+ ・Unicode (UCS-4)
UTF-8, UTF-7
- ����)
- * JIS X 0201 �Υ����޻���ʬ�� GB 1988(����ASCII) �� US_ASCII �Ȥ���
- �����ޤ�������ϡ�ISO-2022(7bit) ��ɽ����Ƥ���� HTML �Υ�����ʬ��
- �����ʤ��ʤ뤫��Ǥ�������¾�� US_ASCII �� variant �Ϥ��ΤޤޤǤ���
- * JIS C 6226(��JIS) �� JIS X 0208 �Ȥ��ư����ޤ���
- * HZ-GB-2312 �� '~\n' ���б����Ƥ��ޤ���
+ 注意)
+ * JIS X 0201 のローマ字部分と GB 1988(中国語ASCII) は US_ASCII として
+ 扱います。これは、ISO-2022(7bit) で表されていると HTML のタグ部分が
+ 扱えなくなるからです。その他の US_ASCII の variant はそのままです。
+ * JIS C 6226(旧JIS) は JIS X 0208 として扱います。
+ * HZ-GB-2312 の '~\n' は対応していません。
-ɽ��
+表示
- ¿����ɽ�������뤿��ˤϸ��ߤΤȤ����ʲ�����ˡ������ޤ���
+ 多言語表示させるためには現在のところ以下の方法があります。
(1) kterm + ISO-2022-JP/CN/KR
- * kterm �� kterm-6.2.0 ���Ф��ơ�
+ * kterm は kterm-6.2.0 に対して、
http://www.st.rim.or.jp/~hanataka/kterm-6.2.0.ext02.patch.gz
- �� patch �򤢤Ƥ�ȡ�JIS X 0213, CNS 11643 �������Ѳ�ǽ�ˤʤ�ޤ���
+ の patch をあてると、JIS X 0213, CNS 11643 等が使用可能になります。
- * kterm ���Ф��� -fl ���ץ����ޤ��� ~/.Xdefaults ���� fontList ��
- ���ꤷ�ޤ�
+ * kterm に対して -fl オプションまたは ~/.Xdefaults 等で fontList を
+ 設定します
-fl "*--16-*-jisx0213.2000-*,\
*--16-*-jisx0212.1990-0,\
@@ -83,67 +83,67 @@
*--16-*-cns11643.1992-*,\
*--16-*-iso8859-*"
- JIS �ʳ��Υե���Ȥ� X11 (XFree86) �� Mule ������ʪ�˴��Ĥ�����ޤ�����
- Linux �� FreeBSD �� package �����Ȥ��ޤ���
- JIS X 0213 �Υե���Ȥϡ�
+ JIS 以外のフォントは X11 (XFree86) や Mule の配布物に幾つかありますし、
+ Linux や FreeBSD の package からも使えます。
+ JIS X 0213 のフォントは、
http://www.mars.sphere.ne.jp/imamura/jisx0213.html
- �ˤ����Τ��Ȥ��ޤ���
+ にあるものが使えます。
- * w3m-m17n �Υ��ץ���������ɽ�������ɤ� ISO-2022-JP (�⤷����
- ISO-2022-JP-2, KR, CN) �ˤ�����Ҥ� strict_iso2022
- (��̩�� ISO-2022-JP/KR/CN ��Ȥ�) �� OFF �ˤ��ޤ���
+ * w3m-m17n のオプション設定で表示コードを ISO-2022-JP (もしくは
+ ISO-2022-JP-2, KR, CN) にし、後述の strict_iso2022
+ (厳密な ISO-2022-JP/KR/CN を使う) を OFF にします。
(2) xterm + UTF-8
- * xterm �� XFree86 �κǿ��Ǥ�Ȥ��ޤ���xterm-140 �ʹߤ�侩���ޤ���
+ * xterm は XFree86 の最新版を使います。xterm-140 以降を推奨します。
http://www.clark.net/pub/dickey/xterm/xterm.html
- * Unicode �Υե���Ȥ�
+ * Unicode のフォントは
http://www.cl.cam.ac.uk/~mgk25/ucs-fonts.html
http://openlab.ring.gr.jp/efont/
- �ʤɤˤ���ޤ���
+ などにあります。
- * xterm �� -u8 -wc ���ץ�����դ��ǻ��Ѥ��ޤ���
- �ե���Ȥϡ�
+ * xterm を -u8 -wc オプション付きで使用します。
+ フォントは、
-fn "*-medium-*--13-*-iso10646-1" \
-fb "*-bold-*--13-*-iso10646-1" \
-fw "*-medium-*-ja-13-*-iso10646-1"
- ���ͤ˻��ꤷ�ޤ���
+ の様に指定します。
- * w3m-m17n �Υ��ץ���������ɽ�������ɤ� UTF-8 �ˤ��ޤ���
- ��Ҥ� pre_conv (ʸ����ɤ߹��߻���ʸ�������ɤ��Ѵ�����) ��
- ON �ˤ��Ƥ��������ɤ��Ǥ����������Ƥ����ʤ���硢
- ISO 2022 �Ϥ�¿�Х���ʸ������(JIS)�ΰ�����ɽ�������硢
- ������󥰤�������ǽ��������ޤ���
+ * w3m-m17n のオプション設定で表示コードを UTF-8 にします。
+ 後述の pre_conv (文書の読み込み時に文字コードを変換する) を
+ ON にしておく方が良いです。そうしておかない場合、
+ ISO 2022 系の多バイト文字集合(JIS)の一部を表示する場合、
+ レンダリングが崩れる可能性があります。
(3) mlterm + ISO-2022-JP/KR/CN or UTF-8
* Homepage
http://mlterm.sourceforge.net/
- * ���󥳡��ǥ��󥰤� ISO-2022-JP/KR/CN �ޤ��� UTF-8 �ˤ��ޤ���
+ * エンコーディングを ISO-2022-JP/KR/CN または UTF-8 にします。
- ������¿����ɽ���򤵤���Τϰʾ����ˡ�����Ǥ�����
- EUC-JP �ξ�硢����� ISO-8859-* �򵿻�Ū��ɽ�������뤳�Ȥ�Ǥ��ޤ���
+ 本当の多言語表示をさせるのは以上の方法だけですが、
+ EUC-JP の場合、中国語や ISO-8859-* を疑似的に表示させることもできます。
- * kterm �����ܸ��б�ü���Υե���Ȥ� JIS X 0213 �ˤ��ޤ���
- # ���ʤ��Ƥ⤤���ΤǤ��������ʤ�ɽ��ǽ�Ϥ�����ޤ���
+ * kterm や日本語対応端末のフォントを JIS X 0213 にします。
+ # しなくてもいいのですが、かなり表現能力が落ちます。
- * w3m-m17n �Υ��ץ���������ɽ�������ɤ� EUC-JP �ˤ��ޤ���
- ��Ҥ� pre_conv, use_gb12345_map, use_jisx0213 �� ON �ˤ��ޤ���
- EUC-JP �� SS3 (JIS X 0212) ��򤹤�ü���ξ��ϡ�
- use_jisx0212 �� ON �ˤ��ޤ���
+ * w3m-m17n のオプション設定で表示コードを EUC-JP にします。
+ 後述の pre_conv, use_gb12345_map, use_jisx0213 を ON にします。
+ EUC-JP の SS3 (JIS X 0212) を解する端末の場合は、
+ use_jisx0212 も ON にします。
- �ޤ���w3m-m17n ��ɽ�������ɤ����ؤ��뤳�Ȥ��ǽ�Ǥ���
- ü�����ե���Ȥ����ؤ�����ʤ��ʸ��θ���˽��ä�ɽ�������ɤ�
- �ե���Ȥ����ؤ��ƻ��Ѥ��뤳�Ȥ��ǽ�Ǥ���
+ また、w3m-m17n は表示コードを切替えることも可能です。
+ 端末がフォントを切替えられるならば文書の言語に従って表示コードと
+ フォントを切替えて使用することも可能です。
-���ޥ�ɥ饤�󥪥ץ����
+コマンドラインオプション
- -I <ͥ��ʸ�񥳡���>
- -O <ɽ��/���ϥ�����>
+ -I <優先文書コード>
+ -O <表示/出力コード>
- ����Ū�� MIME �Ǥ� charset �Ȥ��ޤ������ʲ���ά�������դ��ޤ���
+ 基本的に MIME での charset としますが、以下の略号も受け付けます。
j(p): ISO-2022-JP
j(p)2: ISO-2022-JP-2
@@ -176,502 +176,502 @@
u(tf8): UTF-8
u(tf)7: UTF-7
-���ץ����ѥͥ�
+オプションパネル
display_charset
- ɽ����ʸ��������
+ 表示用文字コード
document_charset
- ʸ���ɸ���ʸ��������
+ 文書の標準の文字コード
auto_detect
- ʸ����ɤ߹��߻���ʸ�������ɤμ�ưȽ���Ԥ�(�ǥե���� ON)
+ 文書の読み込み時に文字コードの自動判定を行う(デフォルト ON)
system_charset
- �����ƥ��ʸ�������ɡ�����ե������ե�����̾�˻��Ѥ��롣
+ システムの文字コード。設定ファイルやファイル名に使用する。
follow_locale
- Locale(�Ķ��ѿ� LANG) �˽��äơ������ƥ��ʸ�������ɤ����ꤹ�롣
- (�ǥե���� ON)
+ Locale(環境変数 LANG) に従って、システムの文字コードを設定する。
+ (デフォルト ON)
ext_halfdump
- ɽ����ʸ�������ɤ� halfdump �ν��Ϥ�Ԥ�
+ 表示用文字コードで halfdump の出力を行う
search_conv
- ����ʸ�����ʸ���ʸ�������ɤ��Ѵ�����(�ǥե���� ON)
+ 検索文字列を文書の文字コードに変換する(デフォルト ON)
use_wide
- ʣ��������ʸ����Ȥ�(�ǥե���� ON)
+ 複数カラムの文字を使う(デフォルト ON)
use_combining
- ���ʸ����Ȥ�(�ǥե���� ON)
+ 結合文字を使う(デフォルト ON)
use_language_tag
- Unicode �θ��쥿����Ȥ�(�ǥե���� ON)
+ Unicode の言語タグを使う(デフォルト ON)
ucs_conv
- Unicode ��𤷤��������Ѵ�(�ǥե���� ON)
+ Unicode を介したコード変換(デフォルト ON)
pre_conv
- ʸ����ɤ߹��߻���ʸ�������ɤ��Ѵ�����(�ǥե���� OFF)
+ 文書の読み込み時に文字コードを変換する(デフォルト OFF)
fix_width
- ʸ�������Ѥ���Ѵ��򤷤ʤ�(�ǥե���� ON)
- OFF �ˤ���ȥ�����󥰤�������ǽ�������롣
+ 文字幅の変わる変換をしない(デフォルト ON)
+ OFF にするとレンダリングが崩れる可能性がある。
use_gb12345_map
- GB 12345 �� Unicode �ޥåפ� GB 2312 �Ѥ˻Ȥ�(�ǥե���� OFF)
- ON �ˤ���� EUC-CN, HZ �� EUC-JP �� EUC-TW �ǽ��Ϥ������ͭ�ѡ�
+ GB 12345 の Unicode マップを GB 2312 用に使う(デフォルト OFF)
+ ON にすると EUC-CN, HZ を EUC-JP や EUC-TW で出力する場合に有用。
use_jisx0201
- ISO-2022-JP �� JIS X 0201 Roman ��Ȥ�(�ǥե���� OFF)
+ ISO-2022-JP で JIS X 0201 Roman を使う(デフォルト OFF)
use_jisc6226
- ISO-2022-JP �� JIS C 6226:1978 (��JIS) ��Ȥ�(�ǥե���� OFF)
+ ISO-2022-JP で JIS C 6226:1978 (旧JIS) を使う(デフォルト OFF)
use_jisx0201k
- JIS X 0201 Katakana ��Ȥ�(�ǥե���� OFF)
- OFF �ˤ�����̾�� JIS X 0208 ���Ѵ�����롣
+ JIS X 0201 Katakana を使う(デフォルト OFF)
+ OFF にすると通常は JIS X 0208 に変換される。
use_jisx0212
- JIS X 0212:1990 (�������) ��Ȥ�(�ǥե���� OFF)
+ JIS X 0212:1990 (補助漢字) を使う(デフォルト OFF)
use_jisx0213
- JIS X 0213:2000 (2000JIS) ��Ȥ�(�ǥե���� OFF)
- ON �ξ�硢EUC-JP �� EUC-JISX0213 ������
- OFF �ξ�硢Shift_JISX0213 �Ͻ��� Shift_JIS �ˤʤ롣
+ JIS X 0213:2000 (2000JIS) を使う(デフォルト OFF)
+ ON の場合、EUC-JP は EUC-JISX0213 相当。
+ OFF の場合、Shift_JISX0213 は純粋な Shift_JIS になる。
strict_iso2022
- ��̩�� ISO-2022-JP/KR/CN ��Ȥ�(�ǥե���� ON)
- OFF �ˤ���� ISO 2022 �Ϥ�ʸ�����������ɽ��/���Ϥ��롣
+ 厳密な ISO-2022-JP/KR/CN を使う(デフォルト ON)
+ OFF にすると ISO 2022 系の文字集合は全て表示/出力する。
east_asian_width
- ������Unicodeʸ�������Ѥˤ���(�ǥե���� OFF)
- ON �ˤ���� East Asian Ambiguous ʸ�������ѤȤߤʤ���
+ ある種のUnicode文字を全角にする(デフォルト OFF)
+ ON にすると East Asian Ambiguous 文字を全角とみなす。
gb18030_as_ucs
- GB18030 �� 4�Х���ʸ���� Unicode �Ȥ��ư���(�ǥե���� OFF)
+ GB18030 の 4バイト文字を Unicode として扱う(デフォルト OFF)
simple_preserve_space
- ñ��ʶ������¸��
- ON �ˤ�������ܸ�ʤɤǤ�ʸ���֤ζ��򤬺������ʤ���
+ 単純な空白の保存。
+ ON にすると日本語などでも文字間の空白が削除されない。
alt_entity
- ����ƥ��ƥ��� ASCII ������ɽ����ɽ��(�ǥե���� ON)
- OFF �ˤ���� ISO 8859-1 �Ȥ��ư�����
+ エンティティを ASCII の代替表現で表す(デフォルト ON)
+ OFF にすると ISO 8859-1 として扱う。
graphic_char
- �ơ��֥���˥塼���Ȥ� DEC �ü�ʸ��ʸ����Ȥ�(�ǥե���� OFF)
- OFF �ξ�� CJK ��ʸ�������ɡ�UTF-8 �ǤϷ�����Ȥ���
+ テーブルやメニューの枠に DEC 特殊文字文字を使う(デフォルト OFF)
+ OFF の場合 CJK の文字コード、UTF-8 では罫線を使う。
-�������Ѵ�
+コード変換
- ���ƥ����ɴ֤����̤��Ѵ����Ѱդ��Ƥ����Τϡ�
+ ・各コード間で特別の変換を用意しているものは、
* EUC-JP <-> ISO-2022-JP <-> Shift-JIS
* EUC-CN <-> ISO-2022-CN <-> HZ-GB-2312
* EUC-TW <-> ISO-2022-CN
- * EUC-KR <-> ISO-2022-KR <-> Johab (���桢Hanja �Τ�)
- �ΤߤǤ�������ʳ��� Unicode ��𤷤��Ѵ��Ȥʤ�ޤ���
+ * EUC-KR <-> ISO-2022-KR <-> Johab (記号、Hanja のみ)
+ のみです。それ以外は Unicode を介した変換となります。
-ʸ��Υ����ɤ����ؤ�
+文書のコードの切替え
- '=' ��ʸ��ξ����ɽ���������ʸ��Υ����ɤ�����Ǥ����ͤˤʤäƤ��ޤ���
+ '=' で文書の情報を表示させると文書のコードを選択できる様になっています。
- �ޤ���keymap �Ȥ���
+ また、keymap として
keymap C CHARSET
keymap M-c DEFAULT_CHARSET
- ���ͤ����ꤷ�Ƥ����ȡ�C �Ǹ��ߤ�ʸ��Υ����ɤ�M-c ��ɸ���ʸ���
- �����ɤ��ѹ��Ǥ��ޤ���
+ の様に設定しておくと、C で現在の文書のコードを、M-c で標準の文書の
+ コードを変更できます。
-��ԥ��ǥ���
+一行エディタ
- 8bit ʸ���ξ��ϡ�ɽ�������ɤ� 8bit �����ɤξ��Ϥ��Υ����ɤǡ�
- ɽ�������ɤ� 7bit ������(ISO-2022) �ξ��ϡ��б����� EUC ��
- �����ޤ���HZ �Ǥ����Ϥ��б����Ƥ��ޤ���
+ 8bit 文字の場合は、表示コードが 8bit コードの場合はそのコードで、
+ 表示コードが 7bit コード(ISO-2022) の場合は、対応する EUC で
+ 扱います。HZ での入力は対応していません。
- ISO-2022(7bit) �����Ϥ�����ϡ�ISO-2022-JP �� (G0 �Τ߻Ȥ�)
- �����Ȥ��ޤ���
- ��ͳ�ϡ�G1 �� G3 ��Ȥ������ɬ�פ� SI(\017, ^O), SO(\016, ^N)
- SS3(ESC O, ^[O) ��¾�˳�����Ƥ��Ƥ��뤿��Ǥ���
+ ISO-2022(7bit) で入力する場合は、ISO-2022-JP 型 (G0 のみ使う)
+ しか使えません。
+ 理由は、G1 〜 G3 を使うために必要な SI(\017, ^O), SO(\016, ^N)
+ SS3(ESC O, ^[O) が他に割り当てられているためです。
-����ɽ��
+正規表現
- �б����Ƥ��ޤ���[��-��] �ʤɤ���Ѳ�ǽ�Ǥ���
+ 対応しています。[あ-ん] なども使用可能です。
-URL ��ե������ʸ��������
+URL やファイルの文字コード
- ʸ����� URL ��ʸ���ʸ�������ɡ�local �ե������ʸ�������ɤ� SystemCharset
- �Ǥ��Ĥ����ޤ������������̾� % �ǥ��󥳡��ɤ��ư����ޤ���
- ������������ HTTP, GOPHER �ξ��ϥ��󥳡��ɤ����ޤޡ�����¾�ξ��ϡ�
- ���Ϥ� %?? ��ǥ����ɤ���(SystemCharset ���ᤷ�Ƥ���)�����������ޤ���
+ 文書内の URL は文書の文字コード、local ファイルの文字コードは SystemCharset
+ であつかわれます。ただし、通常 % でエンコードして扱われます。
+ アクセス時は HTTP, GOPHER の場合はエンコードしたまま、その他の場合は、
+ 自力で %?? をデコードして(SystemCharset に戻してから)アクセスします。
- * ���ޥ�ɥ饤������Ǥϡ��ǥե���ȤǤ�
- scheme: ��������� URL (#label �� ?query, % �ǤΥ������Ȥ���)
- scheme: ���ʤ��������ƥե�����̾ (#label ���ᤷ�ʤ�)
- �Ȥ��Ƥ��ޤ���
- ���ץ���� argv_is_url=1 ������ URL �����ˤ��뤳�Ȥ�Ǥ��ޤ���
- * LOAD('V') �Ǥ����ƥե�����̾�Ȥ��Ʋ�ᤷ�ޤ���
- * GOTO('U') �ϥ��ޥ�ɥ饤�������Ʊ�������ˤ��Ƥ��ޤ���
- current �� URL �� NULL �ˤ��Ƥ��ޤ���
+ * コマンドライン引数では、デフォルトでは
+ scheme: がある場合ば URL (#label や ?query, % でのクォートを解釈)
+ scheme: がない場合は全てファイル名 (#label も解釈しない)
+ としています。
+ オプション argv_is_url=1 で全て URL 扱いにすることもできます。
+ * LOAD('V') では全てファイル名として解釈します。
+ * GOTO('U') はコマンドラインと全く同じ扱いにしています。
+ current の URL も NULL にしています。
-���ΤΥХ�(�Ȥ���������Τ������)
+既知のバグ(というか問題のある仕様)
- * ���ܸ� L10N �Ϥ��Ƥޤ�����I18N(NLS) ��Ϣ��̤�б��Ǥ���
- * ���ʸ����ʸ�������Ƭ�ˤ�����硢������󥰤������(���⤷��ʤ�)��
- * JIS X 0213 �ϡ��ޤ������㤬���ʤ��������ϻ��˴ؤ��Ƥϡ�JIS X 0208 ��
- JIS X 0212 �Υ��������ץ������󥹤��Ȥ��Ƥ��Ƥ��ɤ߹����ͤˤ��Ƥ��롣
- �ޤ���JIS X 0213 �����ݴ����Ѥ�ä�ʸ���Ǥ� JIS X 0208 �Ȥߤʤ���
- * ISO 2022 �Ǥ� C0, C1 ����ؤλؼ���̵�뤵��ޤ���
- C0 �Ͼ�� ACSII �Υ���ȥ�����ʸ����C1 ��̤���ʸ���Ȥʤ�ޤ���
- * JIS X 0208:1990 �� ESC & @ ��̵�뤵��ޤ���
+ * 日本語 L10N はしてますが、I18N(NLS) 関連は未対応です。
+ * 結合文字が文字列の先頭にきた場合、レンダリングが崩れる(かもしれない)。
+ * JIS X 0213 は、まだ使用例が少ないため入力時に関しては、JIS X 0208 や
+ JIS X 0212 のエスケープシーケンスが使われていても読み込む様にしている。
+ また、JIS X 0213 で包摂基準の変わった文字でも JIS X 0208 とみなす。
+ * ISO 2022 での C0, C1 集合への指示は無視されます。
+ C0 は常に ACSII のコントロール文字、C1 は未定義文字となります。
+ * JIS X 0208:1990 の ESC & @ は無視されます。
-----------------------------------
TODO
- * NLS �б�
- # NLS �饤�֥��(gettext, catgets) ��Ȥ����������ǽ������뤫��
- # ����夤�Ƥ���Ǥ��ɤ��Ȼפ���
- * #undef USE_M17N, #define LANG EN, #undef USE_UNICODE �Υ����å�
- # �������ʤ��Ȥޤ������ʡ���äѤꡣ
+ * NLS 対応
+ # NLS ライブラリ(gettext, catgets) を使うか、自前で処理するか?
+ # 落ち着いてからでも良いと思う。
+ * #undef USE_M17N, #define LANG EN, #undef USE_UNICODE のチェック
+ # 時々やらないとまずいかな。やっぱり。
-----------------------------------
-������Ͽ
+更新記録
2003/03/08 w3m-0.4.1-m17n-20030308
- * w3m-0.4.1 �١���
+ * w3m-0.4.1 ベース
2003/02/24 w3m-0.4-m17n-20030224
- * w3m-0.4 �١���
+ * w3m-0.4 ベース
2003/02/11 w3m-0.4rc1-m17n-20030211
- * w3m-0.4rc1 �١���
+ * w3m-0.4rc1 ベース
2003/02/07 w3m-0.3.2.2-m17n-20030207
- * w3m-0.3.2.2+cvs-1.742 �١���
+ * w3m-0.3.2.2+cvs-1.742 ベース
2003/02/01 w3m-0.3.2.2-m17n-20030201
- * w3m-0.3.2.2+cvs-1.734 �١���
+ * w3m-0.3.2.2+cvs-1.734 ベース
2003/01/31 w3m-0.3.2.2-m17n-20030131
- * w3m-0.3.2.2+cvs-1.732 �١���
+ * w3m-0.3.2.2+cvs-1.732 ベース
2003/01/23 w3m-0.3.2.2-m17n-20030123
- * w3m-0.3.2.2+cvs-1.705 �١���
+ * w3m-0.3.2.2+cvs-1.705 ベース
2003/01/22 w3m-0.3.2.2-m17n-20030122
- * w3m-0.3.2.2+cvs-1.699 �١���
+ * w3m-0.3.2.2+cvs-1.699 ベース
2003/01/01 w3m-0.3.2.2-m17n-20030101
- * w3m-0.3.2.2+cvs-1.655 �١���
+ * w3m-0.3.2.2+cvs-1.655 ベース
2002/12/22 w3m-0.3.2.2-m17n-20021222
- * w3m-0.3.2.2+cvs-1.640 �١���
+ * w3m-0.3.2.2+cvs-1.640 ベース
2002/12/19 w3m-0.3.2.2-m17n-20021219
- * w3m-0.3.2.2+cvs-1.635 �١���
+ * w3m-0.3.2.2+cvs-1.635 ベース
2002/12/07 w3m-0.3.2.2-m17n-20021207
- * w3m-0.3.2.2+cvs-1.599 �١���
- * int != long �ʴĶ��Ǥ��������
+ * w3m-0.3.2.2+cvs-1.599 ベース
+ * int != long な環境での問題を修正
2002/11/27 w3m-0.3.2.1-m17n-20021127
- * w3m-0.3.2.1+cvs-1.562 �١���
+ * w3m-0.3.2.1+cvs-1.562 ベース
2002/11/20 w3m-0.3.2-m17n-20021120
- * w3m-0.3.2+cvs-1.538 �١���
+ * w3m-0.3.2+cvs-1.538 ベース
2002/11/18
- * ʸ�������ɤμ�ưȽ�̤� UTF-7 ���ɲá�
+ * 文字コードの自動判別に UTF-7 を追加。
2002/11/16 w3m-0.3.2-m17n-20021116
- * w3m-0.3.2+cvs-1.526 �١���
+ * w3m-0.3.2+cvs-1.526 ベース
2002/11/13 w3m-0.3.2-m17n-20021113
- * w3m-0.3.2+cvs-1.506 �١���
+ * w3m-0.3.2+cvs-1.506 ベース
2002/11/12 w3m-0.3.2-m17n-20021112
- * w3m-0.3.2+cvs-1.498 �١���
+ * w3m-0.3.2+cvs-1.498 ベース
2002/11/09 w3m-0.3.2-m17n-20021109
- * w3m-0.3.2+cvs-1.490 �١���
+ * w3m-0.3.2+cvs-1.490 ベース
2002/11/07 w3m-0.3.2-m17n-20021107
- * w3m-0.3.2 �١���
- * [w3m-dev 03371] ��Ŭ��
+ * w3m-0.3.2 ベース
+ * [w3m-dev 03371] は適用
2002/10/22 w3m-0.3.1-m17n-20021022
- * w3m-0.3.1+cvs-1.444 �١���
+ * w3m-0.3.1+cvs-1.444 ベース
2002/07/17 w3m-0.3.1-m17n-20020717
- * w3m-0.3.1 �١���
+ * w3m-0.3.1 ベース
2002/05/29 w3m-0.3-m17n-20020529
- * w3m-0.3+cvs-1.379 �١���
+ * w3m-0.3+cvs-1.379 ベース
2002/03/16 w3m-0.3-m17n-20020316
- * w3m-0.3+cvs-1.353 �١���
+ * w3m-0.3+cvs-1.353 ベース
2002/03/11 w3m-0.3-m17n-20020311
- * w3m-0.3+cvs-1.342 �١���
- * ������
+ * w3m-0.3+cvs-1.342 ベース
+ * バグ修正
2002/02/16 w3m-0.2.5-m17n-20020216
- * w3m-0.2.5+cvs-1.319 �١���
- * use_wide ���ץ������ɲ�
+ * w3m-0.2.5+cvs-1.319 ベース
+ * use_wide オプションを追加
2002/02/05 w3m-0.2.5-m17n-20020205
- * w3m-0.2.5+cvs-1.302 �١���
+ * w3m-0.2.5+cvs-1.302 ベース
2002/02/02 w3m-0.2.5-m17n-20020202
- * w3m-0.2.5+cvs-1.291 �١���
+ * w3m-0.2.5+cvs-1.291 ベース
2002/01/31 w3m-0.2.4-m17n-20020131
- * w3m-0.2.4+cvs-1.278 �١���
+ * w3m-0.2.4+cvs-1.278 ベース
2002/01/29 w3m-0.2.4-m17n-20020129
- * w3m-0.2.4+cvs-1.268 �١���
- * ������
+ * w3m-0.2.4+cvs-1.268 ベース
+ * バグ修正
2002/01/28 w3m-0.2.4-m17n-20020128
- * w3m-0.2.4+cvs-1.265 �١���
+ * w3m-0.2.4+cvs-1.265 ベース
2002/01/08 w3m-0.2.4-m17n-20020108
- * w3m-0.2.4 �١���
+ * w3m-0.2.4 ベース
2002/01/07
- * ������ wc_conv,wc_Str_conv �� wc_conv_strict,wc_Str_conv_strict ��
- �֤�������
+ * 一部の wc_conv,wc_Str_conv を wc_conv_strict,wc_Str_conv_strict で
+ 置き換え。
2001/12/31
- * HKSCS �� Unicode �Ѵ�ɽ���ɲ�
- * Big5 �� Unicode �Ѵ�ɽ����
- * Big5 �� CNS11643 ���Ѵ����ѻ�(Unicode �١�����)
- * HKSCS �������
+ * HKSCS の Unicode 変換表を追加
+ * Big5 の Unicode 変換表を修正
+ * Big5 と CNS11643 の変換を廃止(Unicode ベースへ)
+ * HKSCS の扱いを修正
2001/12/30 w3m-0.2.3.2-m17n-20011230
- * w3m-0.2.3.2+cvs-1.196 �١���
+ * w3m-0.2.3.2+cvs-1.196 ベース
2001/12/22 w3m-0.2.3.2-m17n-20011222
- * w3m-0.2.3.2 �١���
- * [w3m-dev-en 00660] INET6 �ΤȤ�����ѥ���Ǥ��ʤ�
- * [w3m-dev-en 00663] WC_N_??? ����������
+ * w3m-0.2.3.2 ベース
+ * [w3m-dev-en 00660] INET6 のときコンパイルできない
+ * [w3m-dev-en 00663] WC_N_??? の2重定義の修正
2001/12/21 w3m-0.2.3.1-m17n-20011221
- * w3m-0.2.3.1 �١���
+ * w3m-0.2.3.1 ベース
2001/12/19
- * HKSCS ���ɲá�Unicode ���Ѵ�ɽ��̤����
- * KOI8-U ���ɲá�
+ * HKSCS を追加。Unicode の変換表は未だ。
+ * KOI8-U を追加。
2001/12/18 w3m-0.2.2-m17n+cvs-1.137
- * ISO 8859-16 �� Unciode �Ѵ�ɽ���ɲ�
- * JIS X 0208(0213) �� 0x7425,0x7426 �� JIS X 0213 ������
- * ������
+ * ISO 8859-16 の Unciode 変換表を追加
+ * JIS X 0208(0213) の 0x7425,0x7426 を JIS X 0213 扱いに
+ * バグ修正
2001/12/17 w3m-0.2.2-m17n+cvs-1.131
2001/12/15 w3m-0.2.2-m17n+cvs-1.124
- * sourceforge.net �� CVS ��١���
- * UTF-7 �����
- * -o ext_halfdump ���ɲá�
- * =?iso-8859-1?q? ���ͤʾ�ʸ���Ǥ� MIME �λ�����б���
- * ISO 2022 �� ESC % ���ɤ����Ф��ͤˤ�����
- * ks_c_5601-1987 (ksc) �� EUC-KR ��ǧ�������ͤˤ�����
- * locale �� zh_TW, zh_HK �λ��Υǥե���Ȥ�ʸ�������ɤ� Big5 �ء�
- * ���ʸ����ľ���Dz��Ԥ���뤳�Ȥ�����Х��ν�����
- * resize �����ʸ���������뤳�Ȥ���������ν�����
- * UTF-8 Ƚ�����ΥХ�������
+ * sourceforge.net の CVS をベース
+ * UTF-7 に対応。
+ * -o ext_halfdump を追加。
+ * =?iso-8859-1?q? の様な小文字での MIME の指定に対応。
+ * ISO 2022 の ESC % を読み飛ばす様にした。
+ * ks_c_5601-1987 (ksc) を EUC-KR と認識する様にした。
+ * locale が zh_TW, zh_HK の時のデフォルトの文字コードを Big5 へ。
+ * 結合文字の直前で改行されることがあるバグの修正。
+ * resize すると文字化けすることがある問題の修正。
+ * UTF-8 判定部のバグ修正。
2001/04/12 w3m-(0.2.1)-m17n-0.19
- * JISX0212, JISX0213 ��"�����"�� Unicode �ؤ��Ѵ��� FULLWIDTH TILDE
- �˽�����
- * MICRO SIGN �� JISX0208 ��"���ꥷ�㾮ʸ���ߥ塼"���Ѵ������ͤˤ�����
+ * JISX0212, JISX0213 の"チルダ"の Unicode への変換を FULLWIDTH TILDE
+ に修正。
+ * MICRO SIGN を JISX0208 の"ギリシャ小文字ミュー"へ変換する様にした。
* [w3m-dev 01892], [w3m-dev 01894], [w3m-dev 01898], [w3m-dev 01902]
- �����
+ に対応。
2001/03/31
- * <_SYMBOL> ��������
- * -dump �λ��Ǥ� pre_conv �Υǥե���Ȥ� OFF��
+ * <_SYMBOL> の実装の修正。
+ * -dump の時でも pre_conv のデフォルトは OFF。
2001/03/29
- * TCVN 5712 �η��ʸ�����б���
- * [w3m-dev 01873], [w3m-dev-en 00411] �����
+ * TCVN 5712 の結合文字に対応。
+ * [w3m-dev 01873], [w3m-dev-en 00411] に対応。
2001/03/28
- * configure �� suffix ̵��������ǽ�ˤ�����(thanks to naddy!)
- * #define USE_SSL �� #undef USE_SSL_VERIFY �ξ��� rc.c ������ѥ���
- �Ǥ��ʤ��Х��ν�����(thanks to naddy!)
- * [w3m-dev 01859] �����
- * Shift-JIS �� 0xA0 �����顼�Ȥʤ�ʤ��Х�������
- * <_SYMBOL> �μ������ѹ���[w3m-dev 01852] ���б���
+ * configure で suffix 無しを指定可能にした。(thanks to naddy!)
+ * #define USE_SSL で #undef USE_SSL_VERIFY の場合に rc.c がコンパイル
+ できないバグの修正。(thanks to naddy!)
+ * [w3m-dev 01859] に対応。
+ * Shift-JIS で 0xA0 がエラーとならないバグ修正。
+ * <_SYMBOL> の実装の変更。[w3m-dev 01852] に対応。
2001/03/24 w3m-(0.2.1)-m17n-0.18
- * w3m-0.2.1 �١���
- * [w3m-dev 01703], [w3m-dev 01814], [w3m-dev 01823] �����
- * ISO-2022-JP-3 �� ISO-2022-JP ��ʬΥ��ISO-2022-JP �Ǥ����Ф�
- JIS X 0212 �� JIS X 0213 ������ʤ��ͤˤ�����
- * ��ưȽ�̤β��ɡ�
+ * w3m-0.2.1 ベース
+ * [w3m-dev 01703], [w3m-dev 01814], [w3m-dev 01823] に対応。
+ * ISO-2022-JP-3 を ISO-2022-JP と分離。ISO-2022-JP では絶対に
+ JIS X 0212 や JIS X 0213 を送らない様にした。
+ * 自動判別の改良。
2001/03/23
- * w3m-0.2.0 �١���
+ * w3m-0.2.0 ベース
2001/02/21
- * CHARSET, DEFAULT_CHARSET �ؿ����ɲá�
- * frame �λ���ʸ��������Ƚ�����ɡ�
+ * CHARSET, DEFAULT_CHARSET 関数を追加。
+ * frame の時の文字コード判定を改良。
2001/03/20
- * FULL WIDTH variant (ASCII �ʳ�)������Ѵ���Ԥ��ͤˤ�����
+ * FULL WIDTH variant (ASCII 以外)からの変換を行う様にした。
2001/03/18 w3m-(0.1.11-pre-hsaka24)-m17n-0.17
- * [w3m-dev 01779] w3m-0.1.11-pre-hsaka24 �ؤ��б���
- * JIS X 0213 �� JIS X 0212 ���ͥ�褹��褦�ˤ�����
+ * [w3m-dev 01779] w3m-0.1.11-pre-hsaka24 への対応。
+ * JIS X 0213 を JIS X 0212 より優先するようにした。
2001/03/14 w3m-(0.1.11-pre-kokb23)-m17n-0.16
- * JIS X 0213 �� Unicode Extention B �Ȥ��Ѵ����ɲá�
- * JIS X 0213 �� Unicode �Ѵ��ν�����
- * UHC ��ϥ󥰥��Ƚ�ꤹ��褦�˽�����
- * pre_conv = ON �ξ��ϡ�search_conv ��̵�뤹�롣
+ * JIS X 0213 と Unicode Extention B との変換を追加。
+ * JIS X 0213 と Unicode 変換の修正。
+ * UHC をハングルと判定するように修正。
+ * pre_conv = ON の場合は、search_conv を無視する。
2001/03/09 w3m-(0.1.11-pre-kokb23)-m17n-0.15
- * wc_wchar_t �����(��� Unicode ��)��
- * Unicode �ΰ����δ��Ĥ��ΥХ�������
- * GBK, GB18030 �ǽ��Ϥ������ use_gb12345_map ��̵���ˤ�����
- * -dump �λ��Ͼ�� pre_conv = ON��
- * -dump �� -halfdump �λ���;�פʽ����Ϥ��ʤ��ͤˤ�����
- * system ��ʸ�������ɤ�Ķ��ѿ� LC_CTYPE -> LANG -> LC_ALL �ν������
- �����ͤˤ�����
+ * wc_wchar_t を改良(主に Unicode 用)。
+ * Unicode の扱いの幾つかのバグ修正。
+ * GBK, GB18030 で出力する場合は use_gb12345_map は無効にした。
+ * -dump の時は常に pre_conv = ON。
+ * -dump や -halfdump の時は余計な処理はしない様にした。
+ * system の文字コードを環境変数 LC_CTYPE -> LANG -> LC_ALL の順で設定
+ する様にした。
* [w3m-dev 01724], [w3m-dev 01726], [w3m-dev 01752], [w3m-dev 01753],
- [w3m-dev 01754] �����
+ [w3m-dev 01754] に対応。
2001/03/06 w3m-(0.1.11-pre-kokb23)-m17n-0.14
- * Language tag (UTR#7) ���б����Ƥߤ���
- * GB18030, Johab �� Unicode �Ѵ����ΥХ�������
- * Unicode �� full width �η��ʸ��(�Ҥ餬�ʤ������ʤ�)�� precompose �Ǥ���
- ���ʤ��ä��Х��ν�����(w3m-m17n-0.10 ��ľ�����Ϥ���ľ�äƤ��ʤ��ä�)
+ * Language tag (UTR#7) に対応してみた。
+ * GB18030, Johab と Unicode 変換部のバグ修正。
+ * Unicode の full width の結合文字(ひらがなの濁音など)を precompose できて
+ いなかったバグの修正。(w3m-m17n-0.10 で直したはずが直っていなかった)
2001/03/04 w3m-(0.1.11-pre-kokb23)-m17n-0.13
- * GBK(CP936), GB18030, UHC(CP949) �����
- * GB2312, GB12345 �� Unicode �Υޥåԥ󥰥ơ��֥�� CP936, GB18030 ��
- �ߴ��ˤ�����(������: 0xA1A4, 0xA1AA)
- * Unicode �� 0xFFFE, 0xFFFF �򤽤Τޤ��̤��ͤˤ�����(GB18030 �Ȥθߴ���)
- * Unicode �� NBSP �� 0x80 �ˤʤäƤ����Х�������
+ * GBK(CP936), GB18030, UHC(CP949) に対応。
+ * GB2312, GB12345 の Unicode のマッピングテーブルを CP936, GB18030 と
+ 互換にした。(コード: 0xA1A4, 0xA1AA)
+ * Unicode の 0xFFFE, 0xFFFF をそのまま通す様にした。(GB18030 との互換性)
+ * Unicode の NBSP が 0x80 になっていたバグ修正。
2001/03/03 w3m-(0.1.11-pre-kokb23)-m17n-0.12
- * CP932 ���б���Shift_JIS �� CP932 ���̣�����ΤȤ���Shift_JISX0213 ��
- �������ʤ�������Ƚ�̤��ʤ���
- * JIS X 0213 �б��ˤ��ʤ�Х������ä��Τǽ�������������̩�� JIS X 0213 ��
- ���äƤϤ��ʤ���
- * JIS X 0208 �� Unicode �Υޥåԥ󥰥ơ��֥�� CP932 �Τ�Τ��֤�������
- "��", "��", "��", "��", "��", "��", "��"
- Unicode �� JIS X 0208 ��ξ����0x00A5 (YEN SIGN) �� "��" ���Ѵ���
- * Unicode �ؤ��Ѵ����Υ��顼�����ΥХ��ν�����
- * CP1258 �Ǥν��ϻ��ΤΥХ�������
- * ɸ�����Ϥ���Υǡ����� vwSrc �� HTML ɽ��������ΰ���ե������
- * configure �� typo ������(���Ť��� thanks!)
- * HTML ���°���ͤ� URL �κǽ�ȺǸ�ζ���ʸ���Ϻ������褦�ˤ�����
- (���Ť��� thanks!)
+ * CP932 に対応。Shift_JIS は CP932 を意味するものとし、Shift_JISX0213 は
+ 明示しないかぎり判別しない。
+ * JIS X 0213 対応にかなりバグがあったので修正。ただし厳密に JIS X 0213 に
+ 従ってはいない。
+ * JIS X 0208 → Unicode のマッピングテーブルを CP932 のものに置き換え。
+ "\", "~", "∥", "-", "¢", "£", "¬"
+ Unicode → JIS X 0208 は両方。0x00A5 (YEN SIGN) も "¥" へ変換。
+ * Unicode への変換時のエラー処理のバグの修正。
+ * CP1258 での出力時ののバグ修正。
+ * 標準入力からのデータを vwSrc で HTML 表示する時の一時ファイルの
+ * configure の typo 修正。(下津さん thanks!)
+ * HTML 中の属性値の URL の最初と最後の空白文字は削除するようにした。
+ (下津さん thanks!)
2001/02/15 w3m-(0.1.11-pre-kokb23)-m17n-0.11
- * Strdelete �ΥХ������ˤޤ����Τǡ��Ȥꤢ����������
+ * Strdelete のバグが非常にまずいので、とりあえず公開。
2001/01/29
- * Refresh �����Хѥ��ξ���ư��Ƥ��ʤ��ä��Τ�����
- # ���⤽�� goURL() ��Ȥ��Τ��ޤ����󤸤�...
+ * Refresh で相対パスの場合に動作していなかったのを修正。
+ # そもそも goURL() を使うのがまずいんじゃ...
2001/01/23
- * Strdelete �ν����򸵤��ᤷ����(�京���� thanks!)
+ * Strdelete の処理を元に戻した。(坂根さん thanks!)
2001/01/19 w3m-(0.1.11-pre-kokb23)-m17n-0.10
- * Unicode �� full width �η��ʸ��(�Ҥ餬�ʤ������ʤ�)�� precompose �Ǥ���
- ���ʤ��ä��Х��ν�����
- * [w3m-dev 01650], [w3m-dev 01651], [w3m-dev 01560] �����
+ * Unicode の full width の結合文字(ひらがなの濁音など)を precompose できて
+ いなかったバグの修正。
+ * [w3m-dev 01650], [w3m-dev 01651], [w3m-dev 01560] に対応。
2001/01/17 w3m-(0.1.11-pre-kokb23)-m17n-0.9
* [w3m-dev 01617], [w3m-dev 01621], [w3m-dev 01624], [w3m-dev 01625],
- [w3m-dev 01635], [w3m-dev 01643], [w3m-dev 01647] �����
+ [w3m-dev 01635], [w3m-dev 01643], [w3m-dev 01647] に対応。
-2001/01/16 w3m-(0.1.11-pre-kokb23)-m17n-0.8 (�֤�����)
- * typo ����(�京���� thanks!)
+2001/01/16 w3m-(0.1.11-pre-kokb23)-m17n-0.8 (置き換え)
+ * typo 修正(坂根さん thanks!)
2001/01/14 w3m-(0.1.11-pre-kokb23)-m17n-0.8
- * JIS X 0213-2 �˥Х������뤬�Ȥꤢ�����������롣
+ * JIS X 0213-2 にバグがあるがとりあえず公開する。
2000/12/29
- * [w3m-dev 01594] ���б���(��ޤƤ��� thanks!)
- * [w3m-dev 01602] �����
+ * [w3m-dev 01594] に対応。(やまてさん thanks!)
+ * [w3m-dev 01602] に対応。
2000/12/27
- * UCS-2/4 �ΰ�������ɡ�Unicode �ʳ��� 31�Ĥ� 16bitʸ�����åȡ�
- 7�Ĥ� 32bitʸ�����åȤ����Ѳ�ǽ��
- # �Ȥ�������Τ��� �� GB18030 �ǻȤ����Ȥˤʤꤽ��
- PCSW(Shift_JIS,Big5,��) �ΰ����ˤĤ��Ƥ���ɤ�Ͱ��档
- * checkType() �� s->length > size �ξ��ν����˥Х������ä���Τ�����
- # ������ľ�ä�̵���ä���(��ޤƤ��� thanks!)
- * Big5 �� Level1 �� Level2 ��ʬ������֤��ְ�äƤ�����
- # ��ǯ�᤯�Τ���ΥХ����ʤ����Ť��ʤ��ä��Τ�������
+ * UCS-2/4 の扱いを改良。Unicode 以外の 31個の 16bit文字セット、
+ 7個の 32bit文字セットが使用可能。
+ # 使う事あるのか? → GB18030 で使うことになりそう
+ PCSW(Shift_JIS,Big5,等) の扱いについても改良を考案中。
+ * checkType() で s->length > size の場合の処理にバグがあったものを修正。
+ # 全然、直って無かった。(やまてさん thanks!)
+ * Big5 の Level1 と Level2 を分ける位置が間違っていた。
+ # 一年近く昔からのバグ。なぜ気づかなかったのだろう。
2000/12/25 w3m-(0.1.11-pre-kokb23)-m17n-0.7
- * UCS-2/4 �ΰ�����¾�� 16/32bit �����ɤ��Ȥ����ͤ˲��ɤ��뤿�ᡢ
- �Ȥꤢ������w3m-m17n-0.7 �Ȥ��ƤޤȤ�롣
- * [w3m-dev 01564] ���б���(��ޤƤ��� thanks!)
+ * UCS-2/4 の扱いを他の 16/32bit コードが使える様に改良するため、
+ とりあえず、w3m-m17n-0.7 としてまとめる。
+ * [w3m-dev 01564] に対応。(やまてさん thanks!)
2000/12/24
- * Johab ���б��������� Unicode �Ѵ��ơ��֥����������ʤ��ä����ᡢ
- �ü���Ѵ��ˤʤäƤ��ޤ��������˷礱��褦�ˤʤäƤ��ޤä���
- * wtf_gr_ces �� KS X 1001 ���ä����˥ϥ󥰥뤬 "�狼����" ����ʤ�
- �Х��ν�����
- * UCS ����ǥϥ󥰥��Ƚ�ꤹ�륳���ɥݥ���Ȥ����䤷����
- * file ̾��� '+' ��ޤ� file �˥��������Ǥ��ʤ��ʤäƤ����Х��ν�����
+ * Johab に対応。自前の Unicode 変換テーブルを持ちたくなかったため、
+ 特殊な変換になってしまい汎用性に欠けるようになってしまった。
+ * wtf_gr_ces が KS X 1001 だった場合にハングルが "わかち書き" されない
+ バグの修正。
+ * UCS の中でハングルと判定するコードポイントを増やした。
+ * file 名中に '+' を含む file にアクセスできなくなっていたバグの修正。
2000/12/23
- * checkType() �� s->length > size �ξ��ν����˥Х������ä���Τ�����
- * UTF-8 �β��ϤǸ����٤��ǤϤʤ���������(������������)�Υ����å���
- �Ԥ��ͤˤ�����
- * WC_CCS_SET �� WC_CCS_TYPE ��Ʊ���Ƥ����Х��ν���(�ɤ�ư���Ƥ��ʤ�)
- * Big5 ��ɽ���򤽤ΤޤޤΥ�����(WC_CCS_BIG5)�� CS94 ���Υ�����
- (WC_CCS_BIG5_1, WC_CCS_BIG5_2)��ξ����Ȥ����ͤˤ�����
+ * checkType() で s->length > size の場合の処理にバグがあったものを修正。
+ * UTF-8 の解析で現れるべきではないシーケンス(サロゲート等)のチェックを
+ 行う様にした。
+ * WC_CCS_SET と WC_CCS_TYPE を混同していたバグの修正(良く動いてたなぁ)
+ * Big5 の表現をそのままのコード(WC_CCS_BIG5)と CS94 型のコード
+ (WC_CCS_BIG5_1, WC_CCS_BIG5_2)の両方を使える様にした。
2000/12/22
- * [w3m-dev 01555], [w3m-dev 01556] �����
+ * [w3m-dev 01555], [w3m-dev 01556] に対応。
2000/12/21 w3m-(0.1.11-pre-kokb23)-m17n-0.6
- * ISO 2022 �� SS2, SS3 �˴ؤ��뽤����Ŭ�Ѥ���Ƥ��ʤ��ä��ΤǺƽ�����
- * [w3m-dev 01531], [w3m-dev 01534] �����
- * textarea ���Խ������塢�ɤ߹���Ȥ��� auto detect �� ON �ˤ�����
- DisplayCharset �� 7bit ������(�ä� ISO-2022-JP)�ξ����б���
- * form ��Ǥ� PC_UNKNOWN �ν������ɲá�
- * form ��Ǥ� PC_CTRL ������ 2 �ˤʤäƤ�����Τ�����
- * form ��Ǥη��ʸ��(width=0)���н衣
- * DEL �� wtf_width_map �� 2 �ˤʤäƤ����Х��ν�����
- * table ��� <hr> ������ȥ�����󥰤������Х��ν�����(��ޤƤ��� thanks!)
- * pager �⡼�ɤ��� HTML view ������� buf->document_charset ��
- saveBuffer �����ͤˤ�����
- * entity �����������
- * DocumentCharset �� UTF-8 �ξ��� auto detect �� ISO-8859-1 ��Ƚ�̤���
- ���Ȥ�ߤ᤿��ISO-2022 �Τ�Ƚ�̤��롣
- * wc_ces �� wc_ccs �� typo ����
- * sourcefile �� load ������Ͼ�� file_to_url() �����ͤˤ�����
+ * ISO 2022 の SS2, SS3 に関する修正が適用されていなかったので再修正。
+ * [w3m-dev 01531], [w3m-dev 01534] に対応。
+ * textarea を編集した後、読み込むときに auto detect を ON にした。
+ DisplayCharset が 7bit コード(特に ISO-2022-JP)の場合に対応。
+ * form 中での PC_UNKNOWN の処理を追加。
+ * form 中での PC_CTRL の幅が 2 になっていたものを修正。
+ * form 中での結合文字(width=0)に対処。
+ * DEL の wtf_width_map が 2 になっていたバグの修正。
+ * table 中に <hr> があるとレンダリングが崩れるバグの修正。(やまてさん thanks!)
+ * pager モードから HTML view する場合は buf->document_charset で
+ saveBuffer する様にした。
+ * entity の扱いの整理。
+ * DocumentCharset が UTF-8 の場合の auto detect で ISO-8859-1 を判別する
+ ことを止めた。ISO-2022 のみ判別する。
+ * wc_ces と wc_ccs の typo を修正
+ * sourcefile を load する場合は常に file_to_url() する様にした。
2000/12/20 w3m-(0.1.11-pre-kokb23)-m17n-0.5
- * entity �ΰ����β��ɡ�conv_entity ��ľ�ܸƤ֥����ɤ��б���
- * ANSI color escape sequence ���
+ * entity の扱いの改良。conv_entity を直接呼ぶコードに対応。
+ * ANSI color escape sequence 対応。
2000/12/19
- * �ڡ�����⡼�ɤ� \b �β��ϻ��ΥХ�������(�京���� thanks!)
- * <ol><li> �θ�ζ���ʸ�����������ʤ��Х�������
- * Str.c ��� strncpy �� bcopy �ء�
- * ���Υ����å�(�ä� unsigned char �� char)��(�京���� thanks!)
- * �ޥ����ΰ����� () �ǰϤ�Ǥ��ʤ��ä���Τν�����
- * libwc/Makefile �� ranlib �򤽤Τޤ޻ȤäƤ����Τ�ޥ����ˡ�
+ * ページャモードで \b の解析時のバグ修正。(坂根さん thanks!)
+ * <ol><li> の後の空白文字が削除されないバグ修正。
+ * Str.c 内の strncpy を bcopy へ。
+ * 型のチェック(特に unsigned char と char)。(坂根さん thanks!)
+ * マクロの引数を () で囲んでいなかったものの修正。
+ * libwc/Makefile で ranlib をそのまま使っていたのをマクロに。
2000/12/18
- * -I ���ץ���󤬻��ꤵ��Ƥ����硢���ޥ�ɥ饤��Υե�����ޤ���
- URL ���ɤ߹��ߤ˴ؤ��Ƥϥإå��� <META> �� Content-Type �Ǥ�
- charset �λ����Ŭ�Ѥ��ʤ��ͤ��ѹ���
- * <META> �Ǥ� charset �λ��꤬���ꥢ����Ƥ��ʤ��Х��ν�����
+ * -I オプションが指定されている場合、コマンドラインのファイルまたは
+ URL の読み込みに関してはヘッダや <META> の Content-Type での
+ charset の指定を適用しない様に変更。
+ * <META> での charset の指定がクリアされていないバグの修正。
2000/12/17 w3m-(0.1.11-pre-kokb23)-m17n-0.4
- * [w3m-dev 01515], [w3m-dev 01516] �����
- * INTSPACE �ν����˴ؤ��륳����������
- * �ơ��֥���Ȥʤɤ� symbol �˴ؤ���Х�������
- * ɽ����������������˥��ߤ��Ǥ�����ν�����
+ * [w3m-dev 01515], [w3m-dev 01516] に対応。
+ * INTSPACE の処理に関するコード整理。
+ * テーブルの枠などの symbol に関するバグ修正。
+ * 表示する時、ごく稀にゴミがでる問題の修正。
2000/12/16 w3m-(0.1.11-pre-kokb23)-m17n-0.3
- * w3m-0.1.11-pre-kokb23 ���
+ * w3m-0.1.11-pre-kokb23 対応。
2000/12/16 w3m-(0.1.11-pre-kokb22)-m17n-0.2
- * �ơ��֥���Ȥ������Ǥ������ʥޥå��򤹤����������
- ��碌�� <UL> �ε�������Ʊ�������˲��ɡ�
- * #ifdef __EMX__ �ξ��� CodePage ���� DisplayCharset �������ꤹ����
- �ˤ��Ƥߤ���(ư���̤��ǧ)
+ * テーブルの枠が検索でおかしなマッチをする問題を修正。
+ 合わせて <UL> の記号等も同じ処理に改良。
+ * #ifdef __EMX__ の場合に CodePage から DisplayCharset 等を設定する様
+ にしてみた。(動作は未確認)
2000/12/15
- * ISO 2022 �� SS2, SS3 �˴ؤ��뽤����
- * SHOW_PARAMS �˴ؤ��뽤����
- * loadHTMLString �Ǻ��������Хåե��ˤ�ʸ�������ɤ�Ŭ�����ꡣ
+ * ISO 2022 の SS2, SS3 に関する修正。
+ * SHOW_PARAMS に関する修正。
+ * loadHTMLString で作成したバッファにも文字コードを適宜設定。
2000/12/15 w3m-(0.1.11-pre-kokb22)-m17n-0.1
- * �ǽ�� alpha ��꡼��
- * configure �����
+ * 最初の alpha リリース
+ * configure に対応。
-----------------------------------
-���� ��§ <hsaka@mth.biglobe.ne.jp>
+坂本 浩則 <hsaka@mth.biglobe.ne.jp>
http://www2u.biglobe.ne.jp/~hsaka/
diff --git a/doc-jp/README.mailcap b/doc-jp/README.mailcap
index 7cec03e..212bed4 100644
--- a/doc-jp/README.mailcap
+++ b/doc-jp/README.mailcap
@@ -1,47 +1,47 @@
-mailcap ���ݡ��ȤˤĤ���
+mailcap サポートについて
- (2000/11/07) ��������
+ (2000/11/07) 岡部克也
okabek@guitar.ocn.ne.jp
- �� 2000/10/6 ���Ǥ���, mailcap �Υե������ test, nametemplate, needsterminal,
- copiousoutput, edit (����: RFC 1524) �򸫤�褦�ˤʤ�ޤ���.
- �ޤ� 2000/10/26 ���Ǥ����, mailcap �� mime.types �ե�����ξ�꤬ Option
- Setting Panel ���ѹ��Ǥ���褦�ˤʤ�ޤ���.
+ ・ 2000/10/6 の版から, mailcap のフィールド test, nametemplate, needsterminal,
+ copiousoutput, edit (参照: RFC 1524) を見るようになりました.
+ また 2000/10/26 の版からは, mailcap と mime.types ファイルの場所が Option
+ Setting Panel で変更できるようになりました.
- �� mailcap ��� %s �ϳ������ޥ�ɤ��Ϥ��ѥ�̾, %t �� content-type ���ִ������
- ��.
+ ・ mailcap 中の %s は外部コマンドに渡すパス名, %t は content-type で置換されま
+ す.
- �� �⤷ mailcap ����ȥ�� test=command �ե�����ɤ�¸�ߤ����� command �μ�
- �Է�̤����Ǥ���Ȥ��Τ�, �������ޥ�ɤ��¹Ԥ���ޤ�. �㤨��
+ ・ もし mailcap エントリに test=command フィールドが存在する場合 command の実
+ 行結果が真であるときのみ, 外部コマンドが実行されます. 例えば
image/gif; xv '%s'; test=test "$DISPLAY"
- �Τ褦�˽񤱤�, DISPLAY �Ķ��ѿ������åȤ���Ƥ���Ȥ��Τ� xv ���¹Ԥ����
- ��.
+ のように書けば, DISPLAY 環境変数がセットされているときのみ xv が実行されま
+ す.
- �� �⤷ mailcap ����ȥ�� copiousoutput �ե�����ɤ�¸�ߤ�����, �������ޥ�
- �ɤ�ɸ����ϤϥХåե����ɤ߹��ޤ�ޤ�.
- ��:
+ ・ もし mailcap エントリに copiousoutput フィールドが存在する場合, 外部コマン
+ ドの標準出力はバッファに読み込まれます.
+ 例:
application/x-troff-man;/usr/bin/nroff -mandoc;copiousoutput
- LESSOPEN ���ޥ�ɤǤǤ������, ����ʬ������֤�����������Ǥ��ޤ�. ���Τ���
- LESSOPEN �����Ѥϥ��ץ���󰷤��ˤʤ�ޤ���.
+ LESSOPEN コマンドでできる事は, 大部分これで置き換える事ができます. そのため
+ LESSOPEN の利用はオプション扱いになりました.
- w3m �γ�ĥ�ե�����ɤȤ���, x-htmloutput ������ޤ�. copiousoutput ��Ʊ�ͤ�
- ���ޥ�ɤμ¹Է�̤��Хåե����ɤ߹��ޤ�ޤ���, HTML �Ȥ��ƥ�����󥰤���
- �꤬�ۤʤ�ޤ�. ���ε�ǽ��Ȥ�����, w3m �Ѥ� mailcap �ե�������̤��Ѱդ�
- �뤫, ¾�Υ֥饦���Ѥ� x-htmloutput ��ޤޤʤ�����ȥ�������֤��Ƥ�������
- �����⤷��ޤ���.
- (2001/08/01) ����
- htmloutput �� x-htmloutput
+ w3m の拡張フィールドとして, x-htmloutput があります. copiousoutput と同様に
+ コマンドの実行結果がバッファに読み込まれますが, HTML としてレンダリングする
+ 所が異なります. この機能を使う場合は, w3m 用の mailcap ファイルを別に用意す
+ るか, 他のブラウザ用に x-htmloutput を含まないエントリを前に置いておくと良
+ いかもしれません.
+ (2001/08/01) 坂本
+ htmloutput → x-htmloutput
- �� nametemplate= �ϳ������ޥ�ɤ��Ϥ��ե�����̾�γ�ĥ�Ҥ���ꤷ�ޤ�.
- �ƥ�ݥ��ե��������Ȥ�, �̾︵�� URL �γ�ĥ�Ҥ��ե�����̾���դ�����
- ����, nametemplate= �ե�����ɤˤ�ä��ѹ���������Ǥ��ޤ�.
- ��:
+ ・ nametemplate= は外部コマンドに渡すファイル名の拡張子を指定します.
+ テンポラリファイルを作るとき, 通常元の URL の拡張子がファイル名に付けられま
+ すが, nametemplate= フィールドによって変更する事ができます.
+ 例:
application/x-dvi;xdvi '%s';test=test -n "$DISPLAY";nametemplate=%s.dvi
- �� needsterminal, edit �ˤĤ��Ƥ� RFC 1524 �򸫤Ƥ�������.
+ ・ needsterminal, edit については RFC 1524 を見てください.
diff --git a/doc-jp/README.menu b/doc-jp/README.menu
index 0cb8424..0b75e93 100644
--- a/doc-jp/README.menu
+++ b/doc-jp/README.menu
@@ -1,106 +1,106 @@
-w3m �Υ�˥塼�ˤĤ���
- (2002/11/27) ���� ��§
+w3m のメニューについて
+ (2002/11/27) 坂本 浩則
hsaka@mth.biglobe.ne.jp
-[1] �������
-
- ������Ū�ʤ��
-
- HELP, INS ���� : ��˥塼��Ω���夲
- HELP, INS ����, C-c, : ��˥塼�ξõ�
- RET(C-m, C-j), SPC, ������ : ����
- BS(C-h), DEL(C-?), ������ : ���
- C-n, j, ������ : ���ι��ܤ�
- C-p, k, ������ : ��ι��ܤ�
- J : ���ܤ��˥���������
- K : ���ܤ򲼤˥���������
- C-a : ��Ƭ�ι��ܤ�
- C-e : �Ǹ�ι��ܤ�
- C-f, C-v : ���ڡ����ι��ܤ�
- C-b, M-v : ���ڡ����ι��ܤ�
- C-s, / : ���ܤ򲼤˸����äƸ���
- C-r, ? : ���ܤ��˸����äƸ���
- n : ���ι��ܤ򸡺�
- N : ���ι��ܤ򸡺�
- C-z : �����ڥ��
-
- # INS ���̾� ^[[2~ �Ǥ��� ^[[L(���󥽡���), ^[[E(PocketBSD) �ˤ�
- �Х���ɤ��Ƥ���ޤ���
+[1] キー操作
+
+ ・一般的なもの
+
+ HELP, INS キー : メニューの立ち上げ
+ HELP, INS キー, C-c, : メニューの消去
+ RET(C-m, C-j), SPC, →キー : 選択
+ BS(C-h), DEL(C-?), ←キー : 戻る
+ C-n, j, ↓キー : 下の項目へ
+ C-p, k, ↑キー : 上の項目へ
+ J : 項目を上にスクロール
+ K : 項目を下にスクロール
+ C-a : 先頭の項目へ
+ C-e : 最後の項目へ
+ C-f, C-v : 次ページの項目へ
+ C-b, M-v : 前ページの項目へ
+ C-s, / : 項目を下に向かって検索
+ C-r, ? : 項目を上に向かって検索
+ n : 次の項目を検索
+ N : 前の項目を検索
+ C-z : サスペンド
+
+ # INS は通常 ^[[2~ ですが ^[[L(コンソール), ^[[E(PocketBSD) にも
+ バインドしてあります。
MenuKeymap, MenuEscKeymap, MenuEscBKeymap, MenuEscDKeymap (menu.c)
- �����
+ で定義
- �����̤Υ�˥塼��
+ ・個別のメニュー用
- MenuItem ��¤�� (menu.h) �� char *keys ������(ʣ����ǽ)
- �嵭�Υ������˾�񤭤���ޤ���
+ MenuItem 構造体 (menu.h) の char *keys に設定(複数可能)
+ 上記のキー操作に上書きされます。
-[2] �ޥ���
+[2] マウス
- �ܥ��� : ��˥塼��Ω���夲
+ ボタン3 : メニューの立ち上げ
- Ω���夲��
+ 立ち上げ後
- �ܥ���/�� (����) : ����
- �� (��,MENU_NOP) : ���⤷�ʤ�
- �� (�ȳ�) : ���(��˥塼�ξõ�)
- �� ( : ) : ���ڡ����ޤ������ڡ����ι��ܤ�
- (Ĺ����˥塼�ξ��)
- �� (�ɥ�å�) : ����������
+ ボタン1/3 (項目) : 選択
+ ″ (枠,MENU_NOP) : 何もしない
+ ″ (枠外) : 戻る(メニューの消去)
+ ″ ( : ) : 次ページまたは前ページの項目へ
+ (長いメニューの場合)
+ ″ (ドラッグ) : スクロール
-[3] ��˥塼�Υ������ޥ���
+[3] メニューのカスタマイズ
- ~/.w3m/menu �˥�˥塼������Ǥ��ޤ���
- ��˥塼�ϡ�
+ ~/.w3m/menu にメニューを定義できます。
+ メニューは、
menu MENU_ID
- ����
+ 項目
:
end
- �Ȥ������ꤷ�ޤ����ƹ��ܤˤϡ�
+ として設定します。各項目には、
- func LABEL FUNCTION KEYS [DATA] ���ޥ�ɼ¹�
- popup LABEL MENU_ID KEYS ���֥�˥塼Ω���夲
- nop LABEL ���⤷�ʤ�(���ѥ졼���䥿���ȥ�)
+ func LABEL FUNCTION KEYS [DATA] コマンド実行
+ popup LABEL MENU_ID KEYS サブメニュー立ち上げ
+ nop LABEL 何もしない(セパレータやタイトル)
- �������ǽ�Ǥ���
- ��� menu.default �� menu.submenu �򸫤Ƥ���������
- ����Ǥ��륳�ޥ��(FUNCTION)�� README.func �򸫤Ƥ���������
- MENU_ID �Ȥ��� "Main" �ϥᥤ���˥塼�ˡ�"Select" �ϥХåե�����
- ��˥塼�ˡ�"SelectTab" �ϥ��������˥塼��ͽ�󤵤�Ƥ��ޤ���
- KEYS �ϥХ���ɤ��륭����ʣ�������ǽ�Ǥ���
- DATA �����ꤵ��Ƥ���Х��ޥ��(FUNCTION)�ΰ����Ȥ��ƻȤ��ޤ���
+ を設定可能です。
+ 例は menu.default や menu.submenu を見てください。
+ 設定できるコマンド(FUNCTION)は README.func を見てください。
+ MENU_ID として "Main" はメインメニューに、"Select" はバッファ選択
+ メニューに、"SelectTab" はタブ選択メニューに予約されています。
+ KEYS はバインドするキーで複数指定可能です。
+ DATA が設定されていればコマンド(FUNCTION)の引数として使われます。
-[4] ��ȯ�ˤĤ���
+[4] 開発について
- ��˥塼�롼�������� mainMenu(), optionMenu() �򸫤��ʬ����Ȼפ��ޤ���
- ���Υ롼����Ȱʲ��� MenuItem ��¤�Τ��������С��ۤȤ�ɤΥ�˥塼�ϡ�
- ����Ǥ���Ȼפ��ޤ���
+ メニュールーチンの例は mainMenu(), optionMenu() を見れば分かると思います。
+ このルーチンと以下の MenuItem 構造体を定義すれば、ほとんどのメニューは、
+ 設定できると思います。
- MenuItem ��¤�� (menu.h)
+ MenuItem 構造体 (menu.h)
struct {
- int type; /* ������ */
- char *label; /* ��٥� */
- int *variable; /* VALUE_MENU �ξ������ꤹ���ѿ� */
- int value; /* VALUE_MENU �ξ������ꤹ���� */
- void (*func)(); /* ���򤵤줿���˼¹Ԥ���ؿ� */
- struct _Menu *popup; /* ���֥�˥塼 */
- char *keys; /* �Х���ɤ��륭��(ʣ����ǽ) */
+ int type; /* タイプ */
+ char *label; /* ラベル */
+ int *variable; /* VALUE_MENU の場合に設定する変数 */
+ int value; /* VALUE_MENU の場合に設定する値 */
+ void (*func)(); /* 選択された時に実行する関数 */
+ struct _Menu *popup; /* サブメニュー */
+ char *keys; /* バインドするキー(複数可能) */
} MenuItem;
- ������ type �ϰʲ��Τ�Τ����ѤǤ��ޤ���
+ タイプ type は以下のものが使用できます。
- MENU_NOP (1) : �ʤˤ⤷�ʤ��������Ǥ��ʤ���
- (�����ȥ�䥻�ѥ졼����)
- MENU_FUNC (2) : �ؿ���¹�
- MENU_VALUE (4) : �ѿ�(*variable)����(value)������
- MENU_POPUP (8) : ���֥�˥塼��Ω���夲��
+ MENU_NOP (1) : なにもしない。選択もできない。
+ (タイトルやセパレータ用)
+ MENU_FUNC (2) : 関数を実行
+ MENU_VALUE (4) : 変数(*variable)に値(value)を設定
+ MENU_POPUP (8) : サブメニューを立ち上げる
- MENU_FUNC �� MENU_VALUE �� (MENU_FUNC | MENU_VALUE) ��
- ���ꤹ�뤳�Ȥ�ξ����ư��򤷤ޤ���(�ѿ����꤬��Ǥ�)
+ MENU_FUNC と MENU_VALUE は (MENU_FUNC | MENU_VALUE) と
+ 設定することで両方の動作をします。(変数設定が先です)
- ������ϡ�MainMenuItem (menu.c) �� new_option_menu() �򸫤Ƥ���������
+ 設定例は、MainMenuItem (menu.c) や new_option_menu() を見てください。
diff --git a/doc-jp/README.migemo b/doc-jp/README.migemo
index 439644d..5e16388 100644
--- a/doc-jp/README.migemo
+++ b/doc-jp/README.migemo
@@ -1,39 +1,39 @@
-w3m �� Migemo (�����޻�����)��Ԥ�
+w3m で Migemo (ローマ字検索)を行う
- (2002/02/23) ������
+ (2002/02/23) 日台健一
hidai@nmn.jp
- �� Migemo ���Ѥ��뤳�Ȥǥ����޻��Υ��󥯥��󥿥븡����Ԥ����Ȥ��Ǥ��ޤ�.
- ���餫���� Migemo �����󥹥ȡ��뤵��Ƥ���ɬ�פ�����ޤ�.
+ ・ Migemo を用いることでローマ字のインクリメンタル検索を行うことができます.
+ あらかじめ Migemo がインストールされている必要があります.
http://migemo.namazu.org/
- �� configure ������ץȼ¹Ի��� --with-migemo ���ץ������դ��뤳�Ȥ����Ѳ�
- ǽ�Ȥʤ�ޤ�.
+ ・ configure スクリプト実行時に --with-migemo オプションを付けることで利用可
+ 能となります.
- �� ���ץ����ѥͥ�ˤưʲ�������򤷤ޤ�. ����Υѥ���Ŭ�ڤ˽񤭴����Ʋ�����.
+ ・ オプションパネルにて以下の設定をします. 辞書のパスは適切に書き換えて下さい.
- Migemo ����Ѥ��� ... ON
- Migemo ���ޥ�� ..... migemo -t egrep /usr/local/share/migemo/migemo-dict
+ Migemo を使用する ... ON
+ Migemo コマンド ..... migemo -t egrep /usr/local/share/migemo/migemo-dict
- �� ���������ꤵ��Ƥ���С��̾�θ����ˤ����ƥ����޻��������Ǥ���Ϥ��Ǥ�.
- �����޻��������Ԥ��Ƥ��ʤ��褦�Ǥ���С����ι��ܤ��ǧ���Ʋ�����.
+ ・ 正しく設定されていれば、通常の検索においてローマ字検索ができるはずです.
+ ローマ字検索が行われていないようであれば、次の項目を確認して下さい.
- �� ���ޤ�ư���ʤ��Ȥ��ϡ��ʲ��Τ褦�� migemo ���ޥ�ɤ�ư���ǧ�򤷤Ʋ�����.
- ���Ϥ��������޻����Ф��ơ������Ÿ����������ɽ�������Ϥ����������Ǥ�.
- (���ޥ�ɤϡ����ץ����ѥͥ�Ρ�Migemo ���ޥ�ɡפ����ꤷ�����)
+ ・ うまく動かないときは、以下のように migemo コマンドの動作確認をして下さい.
+ 入力したローマ字に対して、それを展開した正規表現が出力されれば成功です.
+ (コマンドは、オプションパネルの「Migemo コマンド」に設定したもの)
% migemo -t egrep /usr/local/share/migemo/migemo-dict
migemo
- migemo|���������|�ߤ���|�ߥ���
+ migemo|migemo|みげも|ミゲモ
romaji
- romaji|��������|���ޤ�|��(���޻�|�ޥ�)
+ romaji|romaji|ろまじ|ロ(ーマ字|マジ)
- �� �ǥե���ȤǤϡ�/ ? ���̾�θ�����C-s C-r �����󥯥��󥿥븡���˥Х����
- ����Ƥ��ޤ�. / ? �ǥ��󥯥��󥿥븡����Ԥ��ˤϡ�~/.w3m/keymap �˰ʲ���
- ����򤷤ޤ�.
+ ・ デフォルトでは、/ ? が通常の検索、C-s C-r がインクリメンタル検索にバインド
+ されています. / ? でインクリメンタル検索を行うには、~/.w3m/keymap に以下の
+ 設定をします.
keymap / ISEARCH
keymap ? ISEARCH_BACK
- �� Migemo ����°�� migemo-server ����Ѥ���ɬ�פϤ���ޤ���. w3m �� migemo ��
- �ޥ�ɤ�ľ�ܼ¹� (popen(3)) ���ޤ�.
+ ・ Migemo に付属の migemo-server を使用する必要はありません. w3m は migemo コ
+ マンドを直接実行 (popen(3)) します.
diff --git a/doc-jp/README.mouse b/doc-jp/README.mouse
index 31fd11e..3a0bf49 100644
--- a/doc-jp/README.mouse
+++ b/doc-jp/README.mouse
@@ -1,28 +1,28 @@
-~/.w3m/mouse �η����ϡ�
+~/.w3m/mouse の形式は、
-menu ��˥塼��ʸ����(�ǥե���Ȥʤ�)
-lastline �Dz��Ԥ�ʸ����(�ǥե���ȡآ㢬����)
-button �ֹ� ���� �ؿ� [����]
+menu メニューの文字列(デフォルトなし)
+lastline 最下行の文字列(デフォルト『≪↑↓』)
+button 番号 位置 関数 [引数]
-�ֹ�: 1�ĺ��ܥ���
- 2����ܥ���
- 3�ı��ܥ���
+番号: 1…左ボタン
+ 2…中ボタン
+ 3…右ボタン
-����: menu <x1> <x2> �� ��˥塼��ǥ���å�
- lastline <x1> <x2> �� �Dz��Ԥǥ���å�
- default �� ¾�����̵꤬�����Υǥե����
- anchor �� ���󥫡���ǥ���å�
- active �� �����ƥ��֤ʥ��󥫡���ǥ���å�
- tab �� ���־�ǥ���å�
+位置: menu <x1> <x2> … メニュー上でクリック
+ lastline <x1> <x2> … 最下行でクリック
+ default … 他の設定が無い時のデフォルト
+ anchor … アンカー上でクリック
+ active … アクティブなアンカー上でクリック
+ tab … タブ上でクリック
-<x1> : ��ü�Υ�������
-<x2> : ��ü�Υ�����
+<x1> : 左端のカラム位置
+<x2> : 右端のカラム位
-�Ǥ���
-�ߴ����Τ���� <����> �Ǥ� menu �Ͼ�ά��ǽ�Ǥ���
+です。
+互換性のために <位置> での menu は省略可能です。
-�ǥե���Ȥ�����(func.c ��)�ϡ�
+デフォルトの設定(func.c 内)は、
button 1 default MOVE_MOUSE
button 2 default BACK
@@ -33,34 +33,34 @@ button 1 active GOTO_LINK
button 1 tab TAB_MOUSE
button 2 tab CLOSE_TAB_MOUSE
-lastline "�㢬��"
+lastline "≪↑↓"
button 1 lastline 0 1 BACK
button 1 lastline 2 3 PREV_PAGE
button 1 lastline 4 5 NEXT_PAGE
-��Ʊ���Ǥ���(����ޤǤ�Ʊ���Ϥ�)
+と同等です。(これまでと同じはず)
-���㤨�С�
+・例えば、
button 1 anchor COMMAND "MOVE_MOUSE; GOTO_LINK"
- �����ꤹ��ȥ����ƥ��֤Ǥʤ����󥫡���Ǥ⺸����å����������ǡ�
- ���������Ӥޤ���(GUI �֥饦����Ʊ���ͤ�ư��)
+ と設定するとアクティブでないアンカー上でも左クリックしただけで、
+ リンク先に飛びます。(GUI ブラウザと同じ様な動作)
-��~/.w3m/menu ��
+・~/.w3m/menu で
menu Active
- func "��󥯤�ɽ�� (a)" GOTO_LINK "a"
- func "���������֤�ɽ�� (t)" TAB_LINK "t"
- func "��󥯤���¸ (d)" SAVE_LINK "d"
- func "�����֥饦����ɽ�� (m)" EXTERN_LINK "m"
+ func "リンクを表示 (a)" GOTO_LINK "a"
+ func "新しいタブで表示 (t)" TAB_LINK "t"
+ func "リンクを保存 (d)" SAVE_LINK "d"
+ func "外部ブラウザで表示 (m)" EXTERN_LINK "m"
end
- ���ͤ����ꤷ�Ƥ����ơ�~/.w3m/mouse ��
+ の様に設定しておいて、~/.w3m/mouse で
button 3 anchor MENU_MOUSE Active
- �����ꤹ��ȡ����󥫡���DZ�����å�������ȥ��󥫡��Ѥ�
- ��˥塼�������ޤ���
+ と設定すると、アンカー上で右クリックしするとアンカー用の
+ メニューが開きます。
-����ʴ����ǻȤäƤߤƤ���������
+こんな感じで使ってみてください。
diff --git a/doc-jp/README.passwd b/doc-jp/README.passwd
index efefdb3..9d2bd43 100644
--- a/doc-jp/README.passwd
+++ b/doc-jp/README.passwd
@@ -1,22 +1,22 @@
-HTTP $BG'>Z$N$"$k%Z!<%8$dG'>Z$N$"$k(B proxy $B$KBP$7$F!"(B
-$B%f!<%6L>$H%Q%9%o!<%I$r@_Dj$7$F$*$/$3$H$,=PMh$^$9!#(B
+HTTP 認証のあるページや認証のある proxy に対して、
+ユーザ名とパスワードを設定しておくことが出来ます。
-passwd_file $B$G;XDj$7$?%U%!%$%k$K<!$N$h$&$K=q$$$F$*$1$P$=$l$r8+$^$9!#(B
+passwd_file で指定したファイルに次のように書いておけばそれを見ます。
-machine $B%[%9%HL>(B
-port $B%]!<%HHV9f(B
-path $B%m!<%+%k%Q!<%H(B
-realm realm$B$NJ8;zNs(B
-login $B%f!<%6L>(B
-passwd $B%Q%9%o!<%I(B
+machine ホスト名
+port ポート番号
+path ローカルパート
+realm realmの文字列
+login ユーザ名
+passwd パスワード
proxy
-machine$B$G$O$8$^$C$F<!$N(Bmachine$B$^$G!#(B
-netrc$B$.$_$G$9$,4JC1$K$9$k$?$a$K0l9T$E$D!#(B
-port, path, realm $B$O>JN,2DG=(B
+machineではじまって次のmachineまで。
+netrcぎみですが簡単にするために一行づつ。
+port, path, realm は省略可能
-proxy $B$H=q$$$?>l9g$O(B proxy $B$N%Q%9%o!<%I$H$_$J$7$^$9!#(B
+proxy と書いた場合は proxy のパスワードとみなします。
-passwd_file $B$,B>$N%f!<%6!<$+$iFI$a$k>l9g7Y9p$,=P$^$9$,!"(BOS $B$N@)8B$J$I$G(B
-$B%U%!%$%k$N%Q!<%_%C%7%g%s$rJQ$($i$l$J$$>l9g$O$3$N7Y9p$r(B
-disable_secret_security_check $B$N@_Dj$GL58z$K$G$-$^$9!#(B
+passwd_file が他のユーザーから読める場合警告が出ますが、OS の制限などで
+ファイルのパーミッションを変えられない場合はこの警告を
+disable_secret_security_check の設定で無効にできます。
diff --git a/doc-jp/README.pre_form b/doc-jp/README.pre_form
index eef127f..fe86f69 100644
--- a/doc-jp/README.pre_form
+++ b/doc-jp/README.pre_form
@@ -1,10 +1,10 @@
-pre_form: $BFCDj$N%5%$%H$r3+$$$?;~$K!"(Bform $B$rM=$a@_Dj$9$k5!G=$G$9!#(B
+pre_form: 特定のサイトを開いた時に、form を予め設定する機能です。
-$BNI$/;H$&7G<(HD$H$+$G$OJXMx$H;W$$$^$9$,!"0BA4@-$,5>@7$K$J$k$+$b(B
-$B$7$l$^$;$s!#FC$K(B submit $B$O5$$r$D$1$F;H$C$F2<$5$$!#(B
+良く使う掲示板とかでは便利と思いますが、安全性が犠牲になるかも
+しれません。特に submit は気をつけて使って下さい。
-$B%G%U%)%k%H$N@_Dj%U%!%$%k$O(B ~/.w3m/pre_form $B$G$9!#(B
-$B@_Dj%U%)!<%^%C%H$O!"(B
+デフォルトの設定ファイルは ~/.w3m/pre_form です。
+設定フォーマットは、
url <url>|/<re-url>/
form [<name>] <action>
@@ -21,15 +21,15 @@ textarea <name>
:
/textarea
-$B$G$9!#(B
-<action> $B$,@_Dj$7$F$"$k;~$O!"0lCW$9$k(B action $BB0@-$r;}$D(B form $B$N$_(B
-$B@_Dj$7$^$9!#(B
-text, file, password, select, textarea $B$O0lCW$9$k(B name $BB0@-$r;}$D(B
-input, select $B$^$?$O(B textarea $BMWAG$N(B value $BB0@-$r@_Dj$7$^$9!#(B
-checkbox, radio $B$O(B name $BB0@-$H(B value $BB0@-$,0lCW$9$k(B input $BMWAG$r(B
-check $B$7$^$9!#(B
-<checked> $B$,(B 0$B!"(Bno $B$^$?$O(B off $B$N>l9g$O(B checkbox $B$N(B check $B$r30$7$^$9!#(B
-submit, image $B$N>l9g!"(B<name> $B$,@_Dj$7$F$"$k;~$O!"0lCW$9$k(B name $BB0@-(B
-($B$H(B value $BB0@-(B)$B$r;}$D(B input $BMWAG$r(B submit $B$7$^$9!#(B<name> $B$r@_Dj$7$F(B
-$B$$$J$$>l9g$O!":G8e$N(B input type=submit $BMWAG$r(B submit $B$7$^$9!#(B
-<name> $B$d(B <value> $B$O!"%7%'%k$NMM$K(B \,'$B!A(B',"$B!A(B" $B$G%/%)!<%H2DG=$G$9!#(B
+です。
+<action> が設定してある時は、一致する action 属性を持つ form のみ
+設定します。
+text, file, password, select, textarea は一致する name 属性を持つ
+input, select または textarea 要素の value 属性を設定します。
+checkbox, radio は name 属性と value 属性が一致する input 要素を
+check します。
+<checked> が 0、no または off の場合は checkbox の check を外します。
+submit, image の場合、<name> が設定してある時は、一致する name 属性
+(と value 属性)を持つ input 要素を submit します。<name> を設定して
+いない場合は、最後の input type=submit 要素を submit します。
+<name> や <value> は、シェルの様に \,'〜',"〜" でクォート可能です。
diff --git a/doc-jp/README.siteconf b/doc-jp/README.siteconf
new file mode 100644
index 0000000..d638a9a
--- /dev/null
+++ b/doc-jp/README.siteconf
@@ -0,0 +1,73 @@
+siteconf: サイト別カスタマイズ
+
+siteconf は、 URL のパターンと、それに紐付けられた設定から成ります。
+siteconf を使うと、サイト毎に文字コードを指定して "decode_url"
+の出力を改善したり、 Google のリダイレクタを迂回して性能や
+プライバシーを向上させたりすることができます。
+
+デフォルトでは siteconf は ~/.w3m/siteconf から読み込まれます。
+
+===== 構文 =====
+
+url <url>|/<re-url>/|m@<re-url>@i [exact]
+substitute_url "<destination-url>"
+url_charset <charset>
+no_referer_from on|off
+no_referer_to on|off
+user_agent "string"
+
+後ろの方に書かれたものが優先されます。
+
+===== 例 =====
+
+url m!^https?://([a-z]+\.)?twitter\.com/!
+substitute_url "https://nitter.net/"
+
+twitter.com を代替サイトに転送します。
+
+url "http://your.bookmark.net/"
+no_referer_from on
+
+your.bookmark.net から張ったリンクを辿る際に、 HTTP referer を
+送らないようにします。
+
+url "http://www.google.com/url?" exact
+substitute_url "file:///cgi-bin/your-redirector.cgi?"
+
+Google のリダイレクタを local CGI に転送します。
+
+url /^http:\/\/[a-z]*\.wikipedia\.org\//
+url_charset utf-8
+
+同時に "decode_url" オプションをオンにすると、 Wikipedia への
+リンクを UTF-8 としてデコードして表示します。
+
+url m@^https?://(.*\.)google\.com/@
+user_agent "Lynx/2.8.8dev.3 libwww-FM/2.14 SSL-MM/1.4.1"
+
+Google に Lynx であると告げます。(これによりテキストブラウザ向けページが
+返ります)
+
+url m!^https?://([a-z]+\.)?twitter\.com/!
+user_agent "Googlebot/2.1"
+
+Twitter に Googlebot であると告げます。(これによりJavaScriptが無効の
+ブラウザが拒否されずにページが返ります)
+
+===== 正規表現について =====
+
+次の正規表現はいずれも同じ意味を表します。
+
+/http:\/\/www\.example\.com\//
+m/http:\/\/www\.example\.com\//
+m@http://www\.example\.com/@
+m!http://www\.example\.com/!
+
+最後に 'i' 修飾子を付けると、大文字小文字を区別せずに照合を行います。
+例えば、 m@^http://www\.example\.com/abc/@i は以下のいずれとも一致します。
+
+http://www.example.com/abc/
+http://www.example.com/Abc/
+http://www.example.com/ABC/
+
+ただし、ホスト名の部分は常に小文字に変換してから比較します。
diff --git a/doc-jp/README.tab b/doc-jp/README.tab
index 61f7c58..144b081 100644
--- a/doc-jp/README.tab
+++ b/doc-jp/README.tab
@@ -1,43 +1,43 @@
-w3m $B$r%?%V%V%i%&%62=(B
+w3m をタブブラウザ化
-$B%-!<A`:n$ODj5A$7$F$$$^$;$s$N$G!"0J2<$N4X?t$rE,Ev$J%-!<$K@_Dj$7$F(B
-$B$*;H$$2<$5$$!#(B
+キー操作は定義していませんので、以下の関数を適当なキーに設定して
+お使い下さい。
- NEW_TAB $B?7$7$$%?%V$r3+$$$F!"8=:_$N%Z!<%8$NJ#@=$r:n$j$^$9(B
- TAB_LINK $B%j%s%/$,;X$9@h$NJ8=q$r?7$7$$%?%V$G3+$-$^$9(B
- $B?t(B(N) + TAB_LINK $B$@$H!"(BN $BHVL\$N%?%V$G3+$-$^$9(B
- TAB_GOTO URL$B$r;XDj$7$F?7$7$$%?%V$G3+$-$^$9(B
- $B?t(B(N) + TAB_GOTO $B$@$H!"(BN $BHVL\$N%?%V$G3+$-$^$9(B
+ NEW_TAB 新しいタブを開いて、現在のページの複製を作ります
+ TAB_LINK リンクが指す先の文書を新しいタブで開きます
+ 数(N) + TAB_LINK だと、N 番目のタブで開きます
+ TAB_GOTO URLを指定して新しいタブで開きます
+ 数(N) + TAB_GOTO だと、N 番目のタブで開きます
TAB_GOTO_RELATIVE
- $BAjBP(BURL$B$r;XDj$7$F?7$7$$%?%V$G3+$-$^$9(B
- $B?t(B(N) + TAB_GOTO_RELATIVE $B$@$H!"(BN $BHVL\$N%?%V$G3+$-$^$9(B
- CLOSE_TAB $B8=:_$N%?%V$rJD$8$^$9(B
- $B?t(B(N) + CLOSE_TAB $B$@$H!"(BN $BHVL\$N%?%V$rJD$8$^$9(B
- NEXT_TAB $B<!$N%?%V$K0\F0$7$^$9(B
- $B?t(B(N) + NEXT_TAB $B$@$H!"(BN $B$@$1<!$N%?%V$K0\F0$7$^$9(B
- PREV_TAB $BA0$N%?%V$K0\F0$7$^$9(B
- $B?t(B(N) + PREV_TAB $B$@$H!"(BN $B$@$1A0$N%?%V$K0\F0$7$^$9(B
- TAB_RIGHT $B8=:_$N%?%V$r1&$K0\F0$7$^$9(B
- $B?t(B(N) + TAB_RIGHT $B$@$H!"8=:_$N%?%V$r(B N $B$@$11&$K0\F0$7$^$9(B
- TAB_LEFT $B8=:_$N%?%V$r:8$K0\F0$7$^$9(B
- $B?t(B(N) + TAB_LEFT $B$@$H!"8=:_$N%?%V$r(B N $B$@$1:8$K0\F0$7$^$9(B
- TAB_MENU $B%?%VA*Br%a%K%e!<$rN)$A>e$2$^$9(B
- $B%?%VA*Br%a%K%e!<$NA`:n$O%P%C%U%!A*Br%a%K%e!<$HF1MM$G$9!#(B
+ 相対URLを指定して新しいタブで開きます
+ 数(N) + TAB_GOTO_RELATIVE だと、N 番目のタブで開きます
+ CLOSE_TAB 現在のタブを閉じます
+ 数(N) + CLOSE_TAB だと、N 番目のタブを閉じます
+ NEXT_TAB 次のタブに移動します
+ 数(N) + NEXT_TAB だと、N だけ次のタブに移動します
+ PREV_TAB 前のタブに移動します
+ 数(N) + PREV_TAB だと、N だけ前のタブに移動します
+ TAB_RIGHT 現在のタブを右に移動します
+ 数(N) + TAB_RIGHT だと、現在のタブを N だけ右に移動します
+ TAB_LEFT 現在のタブを左に移動します
+ 数(N) + TAB_LEFT だと、現在のタブを N だけ左に移動します
+ TAB_MENU タブ選択メニューを立ち上げます
+ タブ選択メニューの操作はバッファ選択メニューと同様です。
-$B$^$?!"%^%&%9$G$NA`:n$b=PMh$^$9!#(B
+また、マウスでの操作も出来ます。
- $B:8%\%?%s(B $B!D(B $B%?%V>e$G%/%j%C%/$9$k$H!"$=$N%?%V$K0\F0$7$^$9(B
- $B%?%V$+$iJL$N%?%V$^$G%I%i%C%0$9$k$H!"%?%V$r0\F0$7$^$9!#(B
- $B%j%s%/$+$i%?%V$^$G%I%i%C%0$9$k$H!"$=$N%?%V$G%j%s%/$r3+$-$^$9(B
- $B1&>e6y$N!V(Bx$B!W$r%/%j%C%/$9$k$H!"8=:_$N%?%V$rJD$8$^$9(B
- $BCf%\%?%s(B $B!D(B $B%?%V>e$G%/%j%C%/$9$k$H!"%?%V$rJD$8$^$9(B
- $B1&%\%?%s(B $B!D(B $BFC$K$J$7(B(= $B%a%K%e!<$r3+$/(B)
+ 左ボタン … タブ上でクリックすると、そのタブに移動します
+ タブから別のタブまでドラッグすると、タブを移動します。
+ リンクからタブまでドラッグすると、そのタブでリンクを開きます
+ 右上隅の「x」をクリックすると、現在のタブを閉じます
+ 中ボタン … タブ上でクリックすると、タブを閉じます
+ 右ボタン … 特になし(= メニューを開く)
-$B%*%W%7%g%s$H$7$F!"(B
+オプションとして、
- open_tab_blank $B!D(B target $B$,(B _blank $B$+(B _new $B$N>l9g$O?7$7$$%?%V$G3+$/(B
- $B%G%U%)%k%H$O(B OFF
- close_tab_back $B!D(B $BLa$k;~$K%P%C%U%!$,:G8e$J$i%?%V$rJD$8$k(B
- $B%G%U%)%k%H$O(B OFF (= Can't back...)
+ open_tab_blank … target が _blank か _new の場合は新しいタブで開く
+ デフォルトは OFF
+ close_tab_back … 戻る時にバッファが最後ならタブを閉じる
+ デフォルトは OFF (= Can't go back...)
-$B$rDI2C$7$F$$$^$9!#(B
+を追加しています。
diff --git a/doc-jp/STORY.html b/doc-jp/STORY.html
index a3b22a4..7f78106 100644
--- a/doc-jp/STORY.html
+++ b/doc-jp/STORY.html
@@ -1,193 +1,193 @@
<html>
<head>
-<title>w3m�γ�ȯ�ˤĤ���</title>
+<title>w3mの開発について</title>
</head>
<body>
-<h1>w3m�γ�ȯ�ˤĤ���</h1>
+<h1>w3mの開発について</h1>
<div align=right>
1999/2/18<br>
-1999/3/8����<br>
-��ƣ ��§<br>
+1999/3/8改訂<br>
+伊藤 彰則<br>
aito@fw.ipsj.or.jp
</div>
-<h2>�Ϥ����</h2>
-w3m�ϡ�WWW���б������ڡ�����/�֥饦���ǡ��ƥ����ȥ١�����ư����
-w3m�˺Ǥ�ᤤ���ץꥱ�������Ȥ��ơ�ͭ̾�ʥƥ����ȥ١����֥饦��
-<a href="http://www.lynx.browser.org/">Lynx</a>�����롥��������w3m�ˤ�
-Lynx�ˤʤ������Ĥ�����ħ�����롥�㤨�С�
+<h2>はじめに</h2>
+w3mは,WWWに対応したページャ/ブラウザで,テキストベースで動く.
+w3mに最も近いアプリケーションとして,有名なテキストベースブラウザ
+<a href="http://www.lynx.browser.org/">Lynx</a>がある.しかし,w3mには
+Lynxにないいくつかの特徴がある.例えば,
<UL>
-<LI>table��������󥰤Ǥ��롥
-<LI>frame��������󥰤Ǥ���(frame��table���Ѵ�����ɽ���������)��
-<LI>ɸ�����Ϥ��ɤ��ɽ�����뤳�Ȥ��Ǥ��롥
-(�Ƕ��Lynx �Ǥϡ���������ˤ���ɸ�����Ϥ���ʸ����ɤळ�Ȥ��Ǥ���
-�����Ǥ���
+<LI>tableがレンダリングできる.
+<LI>frameがレンダリングできる(frameをtableに変換して表示するだけ).
+<LI>標準入力を読んで表示することができる.
+(最近のLynx では,こんな風にして標準入力から文書を読むことができる
+そうです:
<pre>
lynx /dev/fd/0 &lt; file
</pre>
-����Linux�ǤϳΤ���ư���褦�Ǥ���)
-<LI>�ڤ��ƾ�������strip�������w3m�ΥХ��ʥꥵ�����ϡ�Sparc�ξ���
-260KByte��Ǥ���(version beta-990217����)��
-���ʤߤ�Lynx�ΥХ��ʥ�� 1.8MB�ʾ夢�롥
+うん,Linuxでは確かに動くようです.)
+<LI>軽くて小さい.stripした後のw3mのバイナリサイズは,Sparcの場合で
+260KByte弱である(version beta-990217現在).
+ちなみにLynxのバイナリは 1.8MB以上ある.
</UL>
-�ʤɤ����������Lynx ��ͥ�줿�֥饦���ǡ�w3m�ˤʤ�¿���ε�ǽ��
-���äƤ��롥Lynx�ˤ��ä�w3m�ˤʤ���ǽ�ϡ��㤨��
+などだ.もちろん,Lynx は優れたブラウザで,w3mにない多くの機能を
+持っている.Lynxにあってw3mにない機能は,例えば
<UL>
-<LI>Cookie���
-<LI>˭�٤ʥ��ץ�������ꡥ
-<LI>¿����б���
+<LI>Cookie対応.
+<LI>豊富なオプション設定.
+<LI>多国語対応.
</UL>
-�ʤɤʤɡ�Lynx �ˤ�˭�٤ʥɥ�����Ȥ⤢�ꡤ����w3m�ˤϤۤȤ�ɤޤȤ��
-�ɥ�����Ȥ��ʤ����ɥ�����ȤϺ���β������
+などなど.Lynx には豊富なドキュメントもあり,一方w3mにはほとんどまともな
+ドキュメントがない.ドキュメントは今後の課題だ.
<P>
-�Ȥ����櫓�ǡ�w3m�ϴ�¸�Υ֥饦��(Netscape�Ϥ������Lynx��)������
-�����ΤǤ�<strong>�ʤ�</strong>������Ǥ�w3m�ϲ��Τ���ˤ���Τ���
-����ϡ�����Ū�ˡ֤���äȡ� web ��Ȥ������������������³���줿�Ķ��ǡ�
-�֤���ä�web�򸫤˹Ԥ������פȤ���Netscape��Ω��������Τϥ��饤�餹�롥
-Lynx��Ω��������Τˤ���äȴ֤����롥
-��������w3m�ϰ�֤�Ω�������ꡤ�ޥ���ˤۤȤ����ô�򤫤��ʤ���
-�����Ǿ���򸫤ơ���äȾܺ٤˸������Ȥ��ˡ��Ϥ����¾�Υ֥饦����Ȥ�
-�Τ�����äȤ��ξ�硤�ۤȤ�ɤ�w3m�����ǽ�ʬ�ʤΤ�����
+というわけで,w3mは既存のブラウザ(Netscapeはもちろん,Lynxも)を代替
+するものでは<strong>ない</strong>.それではw3mは何のためにあるのか?
+それは,日常的に「ちょっと」 web を使うためだ.専用線で接続された環境で,
+「ちょっとwebを見に行きたい」とき,Netscapeを立ちあげるのはイライラする.
+Lynxも立ちあがるのにちょっと間がある.
+その点,w3mは一瞬で立ちあがり,マシンにほとんど負担をかけない.
+そこで情報を見て,もっと詳細に見たいときに,はじめて他のブラウザを使う
+のだ.もっとも私の場合,ほとんどはw3mだけで十分なのだが.
-<h2>w3m������</h2>
+<h2>w3mの誕生</h2>
<P>
-w3m �����Ȥϡ�fm
-�Ȥ����ڡ�����(more��less�ο���)���ä���fm���񤫤줿�Τ�1991ǯ����
-(��Ͽ���Ƥ��ʤ��ä��Τ����Τ����դϤ狼��ʤ�)�ǡ������ޤ�WWW��
-����Ū�ǤϤʤ��ä�(¸�ߤ��ʤ��ä�����)�����������֥֥饦���פȤ����С�less�ʤɤ�
-�ե�����򸫤�ġ���Τ��Ȥ�ؤ��Ƥ�����
+w3m の前身は,fm
+というページャ(moreやlessの親戚)だった.fmが書かれたのは1991年以前
+(記録していなかったので正確な日付はわからない)で,当時まだWWWは
+一般的ではなかった(存在しなかったかも).その当時「ブラウザ」といえば,lessなどの
+ファイルを見るツールのことを指していた.
<P>
-fm �ϡ������䤬�񤤤Ƥ���
-�����ѤΥץ�������ǥХå����뤿��˽񤤤���Τ����ץ������ξ���
-��ȥ졼�����뤿�ᡤ�ץ��������������֤�䡹�ȥե�����˥���פ���
-����򸫤ʤ���ǥХå��򤷤Ƥ�������������Ǥ��������֤�1�Ԥ˥ץ���
-���Ƥ������ᡤ���Υե������1�Ԥ���ɴʸ�����ä��������more��less��
-����ȡ��Ԥ��ޤ��֤���뤿�ᡤ�����������狼��ʤ��ʤäƤ��ޤ��Τ��ä���
-�����ǻ�ϡ��Ԥ��ޤ��֤��ʤ��ڡ�����Ǥ���fm��񤤤���ʪ��Ū��1�Ԥ�
-���̤ξ�Ǥ�1�Ԥǡ����̤���Ϥ߽Ф�����ʬ�򸫤�ˤϡ��������Τ򤺤餹
-�Ȥ����߷פˤ������������80x24�β��̤�ȤäƤ����Τǡ�fm �ϥǥХå�
-�ˤȤƤ���Ω�ä���
+fm は,当時私が書いていた
+研究用のプログラムをデバッグするために書いたものだ.プログラムの状態
+をトレースするため,プログラムの内部状態を延々とファイルにダンプし,
+それを見ながらデバッグをしていた.ある時点での内部状態を1行にプリント
+していたため,そのファイルは1行が数百文字あった.それをmoreやlessで
+見ると,行が折り返されるため,何が何だかわからなくなってしまうのだった.
+そこで私は,行を折り返さないページャであるfmを書いた.物理的な1行は
+画面の上でも1行で,画面からはみ出した部分を見るには,画面全体をずらす
+という設計にした.当時私は80x24の画面を使っていたので,fm はデバッグ
+にとても役立った.
<P>
-���Τ��������WWW��¸�ߤ��ΤäƻȤ��Ϥ��᤿�������ȤäƤ����֥饦���ϡ�
-XMosaic �� Chimera ���ä����ä� Chimera �Ϸڤ��Τǰ��Ѥ��Ƥ�����
-��̣�����ä��Τ� HTML �� HTTP ���ٶ��򤷤Ƥߤ������Ƴ���ñ�ʤΤǡ�
-����ʤ鼫ʬ�Ǥ�֥饦�����񤱤�ΤǤϤʤ����Ȼפä���������HTTP��
-GOPHER�ץ��ȥ�����Ӥ����������٤ǡ����˴�ñ�ʤ�Τ��ä����ޤ���
-HTML �� 2.0 �ǡ��Ԥ��ޤ��֤��Ȳվ�񤭤��ۤȤ�����Ƥ��ä���
-�����ǡ�fm �ˤ���äȼ������ơ�WWW�֥饦�����äƤߤ������줬w3m���ä���
-���ʤߤˡ�w3m �� WWW-wo-Miru (���ܸ��)��ά�ǡ�fm (File-wo-Miru)��
-��ä����ǽ�� w3m ��񤤤��Τϡ�1995ǯ��Ƭ���ä��Ȼפ���
+そのうち,私もWWWの存在を知って使いはじめた.当時使っていたブラウザは,
+XMosaic と Chimera だった.特に Chimera は軽いので愛用していた.
+興味があったので HTML と HTTP の勉強をしてみたが,案外簡単なので,
+これなら自分でもブラウザが書けるのではないかと思った.当時のHTTPは
+GOPHERプロトコルに毛が生えた程度で,非常に簡単なものだった.また,
+HTML は 2.0 で,行の折り返しと箇条書きがほとんど全てだった.
+そこで,fm にちょっと手を入れて,WWWブラウザを作ってみた.これがw3mだった.
+ちなみに,w3m は WWW-wo-Miru (日本語だ)の略で,fm (File-wo-Miru)に
+倣った.最初に w3m を書いたのは,1995年初頭だったと思う.
-<h2>w3m������Ⱥ���</h2>
+<h2>w3mの没落と再生</h2>
<p>
-������衤���äȻ�� w3m ��֥ڡ�����פȤ��ƻȤäƤ������ե������
-�Żҥ᡼�롤�ޥ˥奢��ʤɤ��ɤ�Ȥ��ˡ�less������ˤ��Ƥ����Τ���
-w3m��web�򸫤뤳�Ȥ�������ä��������θ� w3m ������˸����ʤ��ڡ�����
-¿���ʤä�(����¿����table��ȤäƤ���)���Ȥ⤢�äơ�web�֥饦����
-���ƤϤۤȤ�ɻȤ�ʤ��ʤäƤ��������� table �Υ�����󥰤�Ƥ
-�������Ȥ����ä������񤷤��Τ����äƤ��ä���
+それ以来,ずっと私は w3m を「ページャ」として使っていた.ファイルや
+電子メール,マニュアルなどを読むときに,lessの代わりにしていたのだ.
+w3mでwebを見ることも時々あったが,その後 w3m で正常に見られないページが
+多くなった(その多くはtableを使っていた)こともあって,webブラウザと
+してはほとんど使わなくなっていた.一度 table のレンダリングを検討
+したことがあったが,難しいので放ってあった.
<P>
-�⤦���� w3m �˼������뵤�ˤʤä��Τϡ�1998ǯ�Τ��Ȥ���ư����2�Ĥ��ä���
-������������ϵҰ�������Ȥ��ƥܥ��ȥ���ؤ��ںߤ��Ƥ��ꡤ¿�����֤�;͵�����ä�
-���Ȥ���ġ��⤦��Ĥϡ���������� HTML �ǽ񤤤Ƥ��ơ���̤�ɤ����Ƥ�ɽ��
-�������ʤä������������ޤǤ�ɽ�� &lt;pre&gt;..&lt;/pre&gt;�ǽ񤤤Ƥ����Τ�����
-plain text��ɽ����Τ��鷺��路���ƻ����ʤ��ä����Ȥ��Ȥ������Ǥ��ʤ��ʤä�
-&lt;table&gt;������Ȥä�������������Ⱥ��٤� Netscape ��Ȥ�ʤ������郎
-�����ʤ��ʤäƤ��ޤä��������ǡ�w3m �� table ��
-������󥰤��Ǥ���褦�ˤ��褦�Ȼ�ߤ���
+もう一度 w3m に手を入れる気になったのは,1998年のことだ.動機は2つあった.
+その当時,私は客員研究員としてボストン大学に滞在しており,多少時間に余裕があった
+ことが一つ.もう一つは,研究日誌を HTML で書いていて,結果をどうしても表に
+したくなったためだ.それまでは表を &lt;pre&gt;..&lt;/pre&gt;で書いていたのだが,
+plain textで表を作るのがわずらわしくて仕方なかった.とうとう我慢できなくなって
+&lt;table&gt;タグを使ったが,そうすると今度は Netscape を使わないと日誌が
+見られなくなってしまった.そこで,w3m で table の
+レンダリングができるようにしようと試みた.
<P>
-��Ȥ��Ƥϡ�����ۤ�ʣ���Ǥʤ�ɽ�򸫤뤳�Ȥ��Ǥ���н�ʬ���ä����Ȥ�������
-Ⱦü��table���б�������̡����̤Υ쥤�����Ȥ�table��ȤäƤ���ڡ�����
-ɽ���������㤰����ˤʤäƤ��ޤä�����ɡ���ɽ�������ơס֤���¾�Υڡ���
-�⤽�������˸�����פ褦�ˤ��뤿��ˤϡ�table��ɽ���������˶᤯�ʤ����
-�ʤ�ʤ��Τ��ä������ƻ����
+私としては,それほど複雑でない表を見ることができれば十分だった.ところが,
+半端にtableに対応した結果,画面のレイアウトにtableを使っているページの
+表示がぐちゃぐちゃになってしまった.結局,「表が見られて」「その他のページ
+もそこそこに見られる」ようにするためには,tableの表示が完璧に近くなければ
+ならないのだった.茨の道だ.
<P>
-��ɡ��빽���֤������ä��������Ȥ�
-���Ѥˤʤ��Τ��Ǥ����Ȼפ���table �μ����˵���褯���ơ����� form �����
-����������ǡ�w3m�Ϥܼۤ��Ѥˤʤ�֥饦���Ȥ������ޤ��Ѥ�ä��Τ���
+結局,結構時間がかかったが,何とか
+実用になるものができたと思う.table の実装に気をよくして,次に form を実装
+した.これで,w3mはほぼ実用になるブラウザとして生まれ変わったのだ.
-<h2>w3m�Ǥ�table�Υ�����󥰥��르�ꥺ��</h2>
+<h2>w3mでのtableのレンダリングアルゴリズム</h2>
-HTML��table�Υ�����󥰤Ϸ빽�񤷤���LaTeX �� tabular �Τ褦�ˡ�
-��ɽ�γ����������ꤹ�뤫������ʤ����ɬ�פʺ�����������
-�Ȥ����Τʤ��äϴ�ñ�ʤΤ�����HTML��table�ϡֲ��̤�Ŭ���˼��ޤ�褦�ˡ�
-����������ꤷ�ơ�ɽ�����Ƥ�Ŭ�����ޤ꤫�����ʤ���Фʤ�ʤ���
-���η���򤤤�������ˤ���ȡ�����ɽ�����Ť餯�ʤäƤ��ޤ���
-�ޤ���table������ҤˤǤ���Τǡ����줬�ä���ؤ�䤳�������Ƥ��롥
-�����ǡ�w3m�Ǥϼ��Τ褦�ʥ��르�ꥺ���������ꤷ�Ƥ��롥
+HTMLのtableのレンダリングは結構難しい.LaTeX の tabular のように,
+「表の各列の幅を指定するか,さもなければ必要な最大の幅を取る」
+というのなら話は簡単なのだが,HTMLのtableは「画面に適当に収まるように」
+列の幅を設定して,表の内容を適当に折りかえさなければならない.
+幅の決定をいいかげんにすると,非常に表が見づらくなってしまう.
+また,tableは入れ子にできるので,それが話を一層ややこしくしている.
+そこで,w3mでは次のようなアルゴリズムで幅を決定している.
<OL>
-<LI>�ޤ�����������Ƥκ������ȺǾ�������롥�������Ȥ����Τϡ�
-�⤷������Ǥ⹭��������줿�Ȥ����顤���粿��ˤʤ뤫�Ȥ������
-��������Ū�ˤϡ�&lt;BR&gt;��&lt;P&gt;�Ƕ��ڤ�줿�����Ĺ���ˤʤ롥
-�Ǿ����ϡ�����������������������Ƥ��ͤ���ʤ��Ȥ����³�����
-�Ǥ��롥ɽ�����Ƥ����ܸ�����ξ��ˤϺǾ����Ͼ��2�Ǥ��ꡤ
-internationalization �Ȥ���ñ�줬�ޤޤ�Ƥ���кǾ�����20
-�Ǥ��롥�ޤ���ɽ�����&lt;pre&gt;..&lt;/pre&gt;�����ä���硤
-���ΰ�Ԥ�Ĺ���κ����ͤ��Ǿ����ˤʤ롥
-<LI>�⤷��WIDTH°��������������ꤷ�Ƥ���С�������򤽤��ͤǸ���
-���롥�����������������Ǿ������⾮������С��������Ǿ����Ǹ��ꤹ�롥
-<LI>��κ�����(�ޤ��ϸ�����)���פ��ơ����̤������⹭�����ɤ�����Ĵ�٤롥
-�⤷��פ����̤˼��ޤ�ʤ顤�����ͤ��������Ȥ��ƻȤ���
-<LI>�⤷��פ����̤˼��ޤ�ʤ���С����Τ褦�ˤ���������ꤹ�롥
+<LI>まず,各列の内容の最大幅と最小幅を求める.最大幅というのは,
+もしいくらでも広い幅が取れたとしたら,最大何桁になるかというもの
+だ.一般的には,&lt;BR&gt;や&lt;P&gt;で区切られた段落の長さになる.
+最小幅は,それより列の幅が狭いと内容が詰められないという限界の幅
+である.表の内容が日本語だけの場合には最小幅は常に2であり,
+internationalization という単語が含まれていれば最小幅は20
+である.また,表の中に&lt;pre&gt;..&lt;/pre&gt;があった場合,
+その一行の長さの最大値が最小幅になる.
+<LI>もし,WIDTH属性で列の幅が指定してあれば,列の幅をその値で固定
+する.ただし,その幅が最小幅よりも小さければ,列の幅を最小幅で固定する.
+<LI>列の最大幅(または固定幅)を合計して,画面の幅よりも広いかどうかを調べる.
+もし合計が画面に収まるなら,その値を各列の幅として使う.
+<LI>もし合計が画面に収まらなければ,次のようにして幅を決定する.
<OL>
-<LI>���̤������顤�������ꤵ�줿������ι�פ����������� W �Ȥ��롥
-<LI>�������ꤵ��Ƥ��ʤ�����Ф��ơ�����κ��������п������㤷�� W ����ʬ���롥
-<LI>�⤷��ʬ���줿�����Ǿ������⾮������С������������Ǿ����Ǹ��ꤷ��
-������ʬ����ľ����
+<LI>画面の幅から,幅が固定された列の幅の合計を引く.これを W とする.
+<LI>幅が固定されていない列に対して,各列の最大幅の対数に比例して W を配分する.
+<LI>もし配分された幅が最小幅よりも小さければ,その列の幅を最小幅で固定し,
+幅の配分をやり直す.
</OL>
</OL>
-������ʬ����������п������㤵���Ƥ��뤬������Ǥ����Τ��ɤ�����Ƥ���פ��롥
-�����������������Τ�Τ����㤵������Ỵ�ʤ��Ȥˤʤ롥table ����̥쥤������
-�˻ȤäƤ�����硤�������Ĺ��ʸ�Ϥ�����ȡ������󤬲��̤����ΤۤȤ�ɤ�Ȥä�
-���ޤ���������п�����ʤ��� n �躬�Ǥ⤤�����⤷��ʤ���
+幅の配分を最大幅の対数に比例させているが,これでいいのかどうか検討を要する.
+ただし,最大幅そのものに比例させると悲惨なことになる.table を画面レイアウト
+に使っていた場合,ある列に長い文章があると,その列が画面の幅のほとんどを使って
+しまうからだ.対数じゃなくて n 乗根でもいいかもしれない.
<P>
-�嵭�Υ��르�ꥺ��Ǥϡ����̤��������ΤǤ��뤳�Ȥ�����ˤʤäƤ��롥�Ȥ�������
-����ǤϺ����礬���롥�ɤ�������礫�Ȥ����ȡ�ɽ������ҤˤʤäƤ��������
-��¦��ɽ���������狼��ʤ�����¦��ɽ��������󥰤Ǥ��ʤ�������¦��ɽ��
-������󥰤��Ƥߤʤ��ȳ�¦��ɽ����������Ǥ��ʤ��Ȥ���̷��˴٤롥WIDTH°��
-�����ꤷ�Ƥ��������Ϥʤ��Τ����������Ǥʤ����ˤϡ����
-����¦��ɽ�����ϡ���¦��ɽ������0.8�ܡפǷ���Ǥ����Ƥ��ޤ����Ȥˤ�����
-�ۤȤ�ɤξ��Ϥ��������ʤ���������ɽ�����ɽ������Ҥˤ���2���¤٤�ȡ�
-��¦��ɽ��ɬ�����̤�Ϥߤ����Ƥ��ޤ��褦�ˤʤä����⤷��̩�ˤ������̤˼���
-�褦�Ȥ���ȡ���ö������󥰤������Τ�����Ĵ�٤����ȡ��������ꤷ�ʤ�����
-�⤦���٥�����󥰤���Ȥ����������«����ޤǷ����֤��ʤ���Фʤ�ʤ���
-Netscape�ϡ�¿ʬ������äƤ���Τ�������
+上記のアルゴリズムでは,画面の幅が既知であることが前提になっている.ところが,
+これでは困る場合がある.どういう場合かというと,表が入れ子になっている場合だ.
+外側の表の列幅がわからないと内側の表がレンダリングできないが,内側の表を
+レンダリングしてみないと外側の表の幅が決定できないという矛盾に陥る.WIDTH属性
+が指定してあれば問題はないのだが,そうでない場合には,結局
+「内側の表の幅は,外側の表の幅の0.8倍」で決め打ちしてしまうことにした.
+ほとんどの場合はこれで問題ないが,ある表の中に表を入れ子にして2つ並べると,
+外側の表が必ず画面をはみだしてしまうようになった.もし厳密にこれを画面に収め
+ようとすると,一旦レンダリングして全体の幅を調べたあと,幅を設定しなおして
+もう一度レンダリングするという過程を収束するまで繰り返さなければならない.
+Netscapeは,多分これをやっているのだろう.
-<h2>���Ѥ����饤�֥��</h2>
+<h2>利用したライブラリ</h2>
-w3m �ϡ�
+w3m は,
<a href="http://www.hpl.hp.com/personal/Hans_Boehm/gc/">Boehm GC</a>
-�Ȥ����饤�֥������Ѥ��Ƥ��롥����ϻ䤬�񤤤���ΤǤϤʤ�����
-����ѥ�������ص���ͤ������ۥѥå������˴ޤ�Ƥ��롥
+というライブラリを利用している.これは私が書いたものではないが,
+コンパイル時の便宜を考えて配布パッケージに含めている.
<P>
-# Boehm GC �ϡ�w3m-0.4.2 �ʹߤΥѥå������ˤϴޤޤ�Ƥ��ޤ���
+# Boehm GC は、w3m-0.4.2 以降のパッケージには含まれていません。
<P>
-�ʤ���libwww �ϻȤäƤ��ʤ���
+なお,libwww は使っていない.
<P>
-Boehm GC�ϡ�C����Ȥ��륬�١������쥯������table ���������������ˤ����
-�Ȥ��Ϥ��᤿�Τ��������˲�Ŭ���ä���GC�ʤ��Ǥϡ�w3m��table��form�����
-���뺬������ˤ��ä����ɤ������路����Boehm GC�����ѤˤĤ��Ƥϡ���
+Boehm GCは,Cから使えるガベージコレクタだ.table を実装したあたりにこれを
+使いはじめたのだが,非常に快適だった.GCなしでは,w3mにtableやformを実装
+する根性が私にあったかどうか疑わしい.Boehm GCの利用については,「
<a href="http://homepage2.nifty.com/aito/gc/gc.html">
-Boehm GC��Ȥ���</a>�פȤ���ʸ�Ϥ�񤤤��Τǡ�����⸫�Ƥ�����������ɤ�
-�Ȼפ���
+Boehm GCを使おう</a>」という文章を書いたので,それも見ていただけると良い
+と思う.
<P>
-beta-990304������ΥС������Ǥϡ�
-<a href="http://home.cern.ch/~orel/libftp/libftp/libftp.html">LIBFTP</a>��
-�����饤�֥���ȤäƤ�����
-libftp ��Ȥä���ͳ�ϡ�FTP�ץ��ȥ��뤬 HTTP ����٤����ݤ��ä��������
-���������饤���󥹤����꤬���ꤽ�����Ȥ������ȤʤΤǡ�Ʊ���δؿ�(�Υ��֥��å�)
-�����ǽ񤤤Ƥ��ޤä���
+beta-990304より前のバージョンでは,
+<a href="http://home.cern.ch/~orel/libftp/libftp/libftp.html">LIBFTP</a>と
+いうライブラリを使っていた.
+libftp を使った理由は,FTPプロトコルが HTTP に比べて面倒だったためだ.
+しかし,ライセンスの問題がありそうだということなので,同等の関数(のサブセット)
+を自前で書いてしまった.
<P>
-���ʤߤˡ�w3m��UNIX������ɽ���饤�֥��� curses �饤�֥���ȤäƤ��ʤ���
-�ɤ���⼫���δؿ������������������Ѱդ�����ͳ�ϡ�fm��񤤤�������
-���ܸ���̤�ޤȤ�ǥե꡼������ɽ����curses�Υ饤�֥�꤬�ʤ��ä��������
-���ߤǤϤɤ����¸�ߤ��뤷��¾�Υ饤�֥���Ȥä�����®�����ʤΤ�����
-���ݤʤΤǸ��ߤޤǤ��μ�����������äƤ��롥
+ちなみに,w3mはUNIXの正規表現ライブラリと curses ライブラリを使っていない.
+どちらも自前の関数群だ.これらを自前で用意した理由は,fmを書いた当時,
+日本語の通るまともでフリーな正規表現とcursesのライブラリがなかったためだ.
+現在ではどちらも存在するし,他のライブラリを使った方が速そうなのだが,
+面倒なので現在までこの実装を引きずっている.
-<h2>�����ͽ��</h2>
+<h2>今後の予定</h2>
-...�ʤ���w3m�Ϸڲ��������ʤΤǡ����ޤ굡ǽ�����ܤ��Ƥ��ޤ���w3m�ȼ���
-�ɤ��������뤫������ȤϤ��äƤ⡤�ޤ��Х���¿���Τǡ�������fix��
-���Ƥ��������ȻפäƤ��롥
+...ない.w3mは軽快さが売りなので,あまり機能を満載してしまうとw3m独自の
+良さが失われるからだ.とはいっても,まだバグが多いので,それらのfixは
+していきたいと思っている.
</body>
</html>
diff --git a/doc-jp/keymap.default b/doc-jp/keymap.default
index 0ecf14f..174e4ed 100644
--- a/doc-jp/keymap.default
+++ b/doc-jp/keymap.default
@@ -11,6 +11,7 @@
# Left : LEFT, ^[[D
keymap C-@ MARK
+keymap C-_ GOTO_HOME
keymap C-a LINE_BEGIN
keymap C-b MOVE_LEFT
keymap C-e LINE_END
diff --git a/doc-jp/keymap.lynx b/doc-jp/keymap.lynx
index 869c716..e4085c8 100644
--- a/doc-jp/keymap.lynx
+++ b/doc-jp/keymap.lynx
@@ -46,7 +46,7 @@ keymap - PREV_PAGE
keymap . RIGHT
keymap / SEARCH
keymap : MARK_URL
-keymap ; MARK_WORD
+keymap ";" MARK_WORD
keymap < SHIFT_LEFT
keymap = INFO
keymap > SHIFT_RIGHT
diff --git a/doc-jp/menu.default b/doc-jp/menu.default
index 67f0361..234c46d 100644
--- a/doc-jp/menu.default
+++ b/doc-jp/menu.default
@@ -7,29 +7,29 @@
# end
#
# MENU_ID
-# Main: �ᥤ���˥塼
-# Select: �Хåե������˥塼
+# Main: メインメニュー
+# Select: バッファ選択メニュー
menu Main
- func "��� (b)" BACK "b"
- popup "�Хåե����� (s)" Select "s"
- popup "�������� (t)" SelectTab "tT"
- func "��������ɽ�� (v)" VIEW "vV"
- func "���������Խ� (e)" EDIT "eE"
- func "����������¸ (S)" SAVE "S"
- func "���ɤ߹��� (r)" RELOAD "rR"
- nop "����������������"
- func "��󥯤�ɽ�� (a)" GOTO_LINK "a"
- func "�����֤�ɽ�� (n)" TAB_LINK "nN"
- func "��󥯤���¸ (A)" SAVE_LINK "A"
- func "������ɽ�� (i)" VIEW_IMAGE "i"
- func "��������¸ (I)" SAVE_IMAGE "I"
- func "�ե졼��ɽ�� (f)" FRAME "fF"
- nop "����������������"
- func "�֥å��ޡ��� (B)" BOOKMARK "B"
- func "�إ�� (h)" HELP "hH"
- func "���ץ���� (o)" OPTIONS "oO"
- nop "����������������"
- func "��λ (q)" QUIT "qQ"
+ func "戻る (b)" BACK "b"
+ popup "バッファ選択 (s)" Select "s"
+ popup "タブ選択 (t)" SelectTab "tT"
+ func "ソースを表示 (v)" VIEW "vV"
+ func "ソースを編集 (e)" EDIT "eE"
+ func "ソースを保存 (S)" SAVE "S"
+ func "再読み込み (r)" RELOAD "rR"
+ nop "────────"
+ func "リンクを表示 (a)" GOTO_LINK "a"
+ func "新タブで表示 (n)" TAB_LINK "nN"
+ func "リンクを保存 (A)" SAVE_LINK "A"
+ func "画像を表示 (i)" VIEW_IMAGE "i"
+ func "画像を保存 (I)" SAVE_IMAGE "I"
+ func "フレーム表示 (f)" FRAME "fF"
+ nop "────────"
+ func "ブックマーク (B)" BOOKMARK "B"
+ func "ヘルプ (h)" HELP "hH"
+ func "オプション (o)" OPTIONS "oO"
+ nop "────────"
+ func "終了 (q)" QUIT "qQ"
end
diff --git a/doc-jp/menu.submenu b/doc-jp/menu.submenu
index 062fac1..032ad8a 100644
--- a/doc-jp/menu.submenu
+++ b/doc-jp/menu.submenu
@@ -7,38 +7,38 @@
# end
#
# MENU_ID
-# Main: �ᥤ���˥塼
-# Select: �Хåե������˥塼
+# Main: メインメニュー
+# Select: バッファ選択メニュー
menu Main
- func "��� (b)" BACK "b"
- popup "�Хåե����>(f)" Buffer "fF"
- popup "������ >(l)" Link "lL"
- nop "����������������"
- popup "�֥å��ޡ���>(B)" Bookmark "B"
- func "�إ�� (h)" HELP "hH"
- func "���ץ���� (o)" OPTIONS "oO"
- nop "����������������"
- func "��λ (q)" QUIT "qQ"
+ func "戻る (b)" BACK "b"
+ popup "バッファ操作>(f)" Buffer "fF"
+ popup "リンク操作 >(l)" Link "lL"
+ nop "────────"
+ popup "ブックマーク>(B)" Bookmark "B"
+ func "ヘルプ (h)" HELP "hH"
+ func "オプション (o)" OPTIONS "oO"
+ nop "────────"
+ func "終了 (q)" QUIT "qQ"
end
menu Buffer
- popup "�Хåե����� (s)" Select "s"
- func "��������ɽ�� (v)" VIEW "vV"
- func "���������Խ� (e)" EDIT "eE"
- func "����������¸ (S)" SAVE "S"
- func "���ɤ߹��� (r)" RELOAD "rR"
+ popup "バッファ選択 (s)" Select "s"
+ func "ソースを表示 (v)" VIEW "vV"
+ func "ソースを編集 (e)" EDIT "eE"
+ func "ソースを保存 (S)" SAVE "S"
+ func "再読み込み (r)" RELOAD "rR"
end
menu Link
- func "��󥯤�ɽ�� (a)" GOTO_LINK "a"
- func "��󥯤���¸ (A)" SAVE_LINK "A"
- func "������ɽ�� (i)" VIEW_IMAGE "i"
- func "��������¸ (I)" SAVE_IMAGE "I"
- func "�ե졼��ɽ�� (f)" FRAME "fF"
+ func "リンクを表示 (a)" GOTO_LINK "a"
+ func "リンクを保存 (A)" SAVE_LINK "A"
+ func "画像を表示 (i)" VIEW_IMAGE "i"
+ func "画像を保存 (I)" SAVE_IMAGE "I"
+ func "フレーム表示 (f)" FRAME "fF"
end
menu Bookmark
- func "�֥å��ޡ������ɤ߹��� (b)" BOOKMARK "bB"
- func "�֥å��ޡ������ɲ� (a)" ADD_BOOKMARK "aA"
+ func "ブックマークを読み込む (b)" BOOKMARK "bB"
+ func "ブックマークに追加 (a)" ADD_BOOKMARK "aA"
end
diff --git a/doc-jp/w3m.1 b/doc-jp/w3m.1
index 89aacb6..08caf8e 100644
--- a/doc-jp/w3m.1
+++ b/doc-jp/w3m.1
@@ -1,5 +1,5 @@
.\"
-.TH W3M 1 "Jun 6 2000" "UNIX"
+.TH W3M 1 "2016-04-02" "w3m 0.5.3"
.SH NAME
.B w3m
\- text base pager/WWW browser
@@ -7,164 +7,155 @@
.B w3m
[options] [file | URL]
.SH DESCRIPTION
-.SS �Ϥ����
+.SS はじめに
.B w3m
-�ϡ��ƥ����ȥ١����Υڡ�����/WWW�֥饦���Ǥ��������Ȥ��ȡ�
+は,テキストベースのページャ/WWWブラウザです.これを使うと,
.I kterm\fR(1)
-�ʤɤΥ���饯��ü����ǡ���������ե�����򸫤��ꡤWWW�����Ƥ򸫤��ꤹ�뤳��
-���Ǥ��ޤ���
+などのキャラクタ端末上で,ローカルファイルを見たり,WWWの内容を見たりすること
+ができます.
.PP
-�����˥ե�����̾����ꤹ��Ф��Υե������ɽ������URL����ꤹ��Ф������Ƥ�ɽ
-�����ޤ���������ꤷ�ʤ���С�ɸ�����Ϥ����Ƥ�ɽ�����ޤ�����������ɸ�����Ϥ�
+引数にファイル名を指定すればそのファイルを表示し,URLを指定すればその内容を表
+示します.何も指定しなければ,標準入力の内容を表示します.ただし,標準入力が
.I tty\fR(4)
-�Ǥ�����ˤϡ����⤻���˽�λ���ޤ���
+である場合には,何もせずに終了します.
.PP
-���ץ����ϼ����̤�Ǥ���
+オプションは次の通りです.
.TP
-.BI + �ֹ�
-��ư�塤����ι��ֹ�˰�ư���롥
+.BI + 番号
+起動後,指定の行番号に移動する.
.TP
-.BI \-t\ ��
-���֤�������ꤹ�롥�ǥե���Ȥ� 8��
+.BI \-t\ 幅
+タブの幅を指定する.デフォルトは 8.
.TP
.B \-r
-text/plain��ʸ���ɽ�������硤�Ť��Ǥ��ˤ�붯Ĵʸ����ɽ�����ʤ���
-���Υ��ץ������դ��ʤ���硤
+text/plainの文書を表示する場合,重ね打ちによる強調文字を表示しない.
+このオプションを付けない場合,
``A^H_''
-��A�Υ�������饤��Ȥ���ɽ�����졤
+はAのアンダーラインとして表示され,
``A^HA''
-��A�Υܡ���ɤȤ���ɽ������롥
+はAのボールドとして表示される.
.TP
-.BI \-l\ �Կ�
-ɸ�����Ϥ����Ƥ�ɽ������Ȥ�����¸��������Կ�����ꤹ�롥
-�ǥե���Ȥ�10000��
+.BI \-l\ 行数
+標準入力の内容を表示するときに保存される最大行数を指定する.
+デフォルトは10000.
.TP
-.B \-s
-Shift_JIS�����ɤ�ɽ�����롥
-.TP
-.B \-e
-EUC�����ɤ�ɽ�����롥
-.TP
-.B \-j
-JIS (ISO-2022-JP)�����ɤ�ɽ�����롥
+.BI \-O\ 文字コード
+表示に使う文字コードを指定する.
.TP
-.BI \-O\ e|s|j|N|m
-ɽ���˻Ȥ�ʸ�������ɤ���ꤹ��.
+.BI \-I\ 文字コード
+入力文書の文字コードを指定する.
.TP
-.BI \-I\ e|s
-����ʸ���ʸ�������ɤ���ꤹ�롥
-.TP
-.BI \-T\ ������
-ɽ������ʸ��Υ����פ���ꤹ�롥���λ��꤬�ʤ���硤�ե�����̾�γ�ĥ�Ҥˤ�ä�
-��ưȽ�̤���롥Ƚ�̤Ǥ��ʤ�����text/plain�Ȥߤʤ���롥
+.BI \-T\ タイプ
+表示する文書のタイプを指定する.この指定がない場合,ファイル名の拡張子によって
+自動判別される.判別できない場合はtext/plainとみなされる.
.PP
.RS
-.B �㡧
+.B 例:
.TP
cat hoge*.html | w3m -T text/html
-ɸ�����Ϥ���HTML�ե�������ɤ��ɽ������
+標準入力からHTMLファイルを読んで表示する
.TP
w3m -T text/plain hoge*.html
-HTML�ե�����Υ�������ɽ������
+HTMLファイルのソースを表示する
.RE
.TP
.B \-m
-Internet message�⡼�ɤ�ɽ�����롥Internet message�⡼�ɤξ�硤
-�إå������Ƥ򸫤ơ�Content-Type: ������Ф���򻲹ͤˤ��롥�Żҥ᡼���
-�ͥåȥ˥塼���ε������ɤ�Ȥ���������
+Internet messageモードで表示する.Internet messageモードの場合,
+ヘッダの内容を見て,Content-Type: があればそれを参考にする.電子メールや
+ネットニュースの記事を読むときに便利.
.TP
.B \-v
-visual startup�⡼�ɡ�
-���ޥ�ɥ饤������� URL ��ե��������ꤷ�Ƥ��ʤ��Ƥ�
-������̤�ɽ�������.
+visual startupモード.
+コマンドライン引数に URL やファイルを指定していなくても
+初期画面が表示される.
.TP
.B \-B
-Bookmark��ɽ�����롥
+Bookmarkを表示する.
.TP
.BI \-bookmark\ file
-Bookmark �Υե��������ꤹ�롥
+Bookmark のファイルを指定する.
.TP
.B \-M
-���顼ɽ���򤷤ʤ���
+カラー表示をしない.
.TP
.B \-F
-�ե졼���ưɽ�����롥
+フレームを自動表示する.
.TP
-.B \-S
-Ϣ³������Ԥ�1�ԤˤޤȤ��ɽ�����롥
+.B \-s
+連続する空行を1行にまとめて表示する.
.TP
.B \-X
.B w3m
-��λ���ˡ������β��̤����ʤ���
+終了時に,以前の画面に戻らない.
.TP
.BI \-title =TERM
-ü���Υ����ȥ�ʸ��������ꤹ��.
+端末のタイトル文字列を設定する.
.TP
.B \-W
-�ޤ��֤���������Ȥ����ɤ������ڤ꤫���롥
+折り返しサーチを使うかどうかを切りかえる.
.TP
.BI \-o\ option=value
-���ץ�������ꤹ�롥
+オプションを指定する.
.TP
.B \-show-option
-���ѤǤ��륪�ץ�����ɽ������.
+利用できるオプションを表示する.
.TP
.B \-no\-proxy
-�ץ����������Ѥ��ʤ���
+プロキシを利用しない.
.TP
.B \-no\-mouse
-�ޥ��������Ѥ��ʤ���
+マウスを利用しない.
.TP
.B \-cookie
-���å�����������롥
+クッキーを処理する.
.TP
.B \-no\-cookie
-���å�����������ʤ���
+クッキーを処理しない.
.TP
.B \-num
-���ֹ��ɽ�����롥
+行番号を表示する.
.TP
.B \-dump
-URL�����Ƥ��ɤߤ��ߡ��������줿�Хåե������Ƥ�ɸ����Ϥ˽񤭽Ф���
-ʸ�������80��Ȳ��ꤵ��롥�������ϡ�����
+URLの内容を読みこみ,整形されたバッファの内容を標準出力に書き出す.
+文書の幅は80桁と仮定される.この幅は,次の
.B \-cols
-���ץ������ѹ���ǽ��
+オプションで変更可能.
.TP
-.BI \-cols\ ��
+.BI \-cols\ 幅
.B \-dump
-���ץ�����Ȥ����ˡ�ʸ���������ꤹ�롥
+オプションを使う場合に,文書の幅を指定する.
.TP
-.BI \-ppc\ �ԥ������
-ʸ����������ꤹ�롥�ǥե���Ȥ� 8.0��
+.BI \-ppc\ ピクセル数
+文字の幅を指定する.デフォルトは 8.0.
.TP
.B \-dump_source
-URL�����Ƥ��ɤߤ��ߡ�����������ɸ����Ϥ˽񤭽Ф��������������Ѵ��⤵��ʤ���
+URLの内容を読みこみ,整形せずに標準出力に書き出す.漢字コード変換もされない.
.TP
.B \-dump_head
-URL�˥������������إå��������Ϥ��롥
+URLにアクセスし,ヘッダ情報を出力する.
.TP
.B \-dump_both
-URL�˥������������إå������HTML����������Ϥ��롥
+URLにアクセスし,ヘッダ情報とHTMLソースを出力する.
.TP
.B \-dump_extra
-URL�˥�������������ĥ����ȥإå������HTML����������Ϥ��롥
+URLにアクセスし,拡張情報とヘッダ情報とHTMLソースを出力する.
.TP
.BI \-post\ file
-�ե���������Ƥ�POST���롥
+ファイルの内容をPOSTする.
.TP
.BI \-header\ string
-HTTP�׵�إå����ɲä��롥
+HTTP要求ヘッダを追加する.
.TP
.BI \-config\ file
-config�Υե��������ꤹ�롥
+configのファイルを指定する.
.TP
.B -help
-�إ�פ�ɽ������.
+ヘルプを表示する.
.TP
.B -version
-w3m version��ɽ������.
-.SS ʸ���ɽ������
-HTMLʸ���ɽ�����Ƥ���Ȥ��ˤϡ����Τ褦��ɽ���ˤʤ�ޤ���
+w3m versionを表示する.
+.SS 文書の表示内容
+HTML文書を表示しているときには,次のような表示になります.
.in +8n
.TS
box tab(;);
@@ -172,342 +163,342 @@ l|c|c
l|c|c
l|c|c
l|c|c.
-;���顼ɽ����;���ɽ����
+;カラー表示時;白黒表示時
_
-���;�Ŀ�;����
-����饤�����;�п�;ȿžɽ��
-FORM��������ʬ;�ֿ�;ȿžɽ��
+リンク;青色;下線
+インライン画像;緑色;反転表示
+FORMの入力部分;赤色;反転表示
.TE
.PP
-���顼ɽ�����ο��ϡ����ץ��������ѥͥ�
+カラー表示時の色は,オプション設定パネル
.B o
-���ѹ����뤳�Ȥ��Ǥ��ޤ���
-.SS ��ư��λȤ�����
-��ư������ϡ�1ʸ���Υ��ޥ�ɤ򥭡��ܡ��ɤ������Ϥ��뤳�Ȥ�
+で変更することができます.
+.SS 起動後の使いかた
+起動した後は,1文字のコマンドをキーボードから入力することで
.B w3m
-�����ޤ���
+を操作します.
.PP
-���ޥ�ɤˤϼ��Τ褦�ʤ�Τ�����ޤ����ʲ��ε��ҤǤϡ�
+コマンドには次のようなものがあります.以下の記述では,
.B C-x
-�ϥ���ȥ�����x��ɽ���ޤ����ޤ���
+はコントロールxを表します.また,
.B SPC
-�ϥ��ڡ����С���
+はスペースバー,
.B RET
-�ϥ꥿���󥭡���
+はリターンキー,
.B ESC
-�ϥ��������ץ����Ǥ���
+はエスケープキーです.
.PP
-�����ǽ񤤤Ƥ���Τϡ����ꥸ�ʥ��ǤΥ������Ǥ���
+ここで書いてあるのは,オリジナル版のキー操作です.
.\" \fIlynx\fr(1)
-.\" ���Υ�������Ѥ˥���ѥ��뤷�Ƥ����ΤˤĤ��Ƥϡ�
+.\" 風のキー操作用にコンパイルしてあるものについては,
.\" \fIw3m_lynx(1)
-.\" �򤴤�󤯤�������
-.SS �ڡ���/���������ư
+.\" をごらんください.
+.SS ページ/カーソル移動
.TP 1i
.B SPC, C-v
-���Υڡ�����ɽ�����ޤ���
+次のページを表示します.
.TP
.B b, "ESC v"
-���Υڡ�����ɽ�����ޤ���
+前のページを表示します.
.TP
-.B l, C-f, ���������
-��������򱦤˰�ư���ޤ���
+.B l, C-f, 右矢印キー
+カーソルを右に移動します.
.TP
-.B h, C-b, ���������
-��������򺸤˰�ư���ޤ���
+.B h, C-b, 左矢印キー
+カーソルを左に移動します.
.TP
-.B j, C-n, ���������
-��������򲼤˰�ư���ޤ���
+.B j, C-n, 下矢印キー
+カーソルを下に移動します.
.TP
-.B k, C-p, ���������
-����������˰�ư���ޤ���
+.B k, C-p, 上矢印キー
+カーソルを上に移動します.
.TP
.B J
-���̤�1�Ծ�˥��������뤷�ޤ���
+画面を1行上にスクロールします.
.TP
.B K
-���̤�1�Բ��˥��������뤷�ޤ���
+画面を1行下にスクロールします.
.TP
.B ^
-��Ƭ�˰�ư���ޤ���
+行頭に移動します.
.TP
.B $
-�����˰�ư���ޤ���
+行末に移動します.
.TP
.B w
-����ñ��˰�ư���ޤ���
+次の単語に移動します.
.TP
.B W
-����ñ��˰�ư���ޤ���
+前の単語に移動します.
.TP
.B >
-�������Τ򱦤ˤ��餷�ޤ���(ɽ�����Ƥ򺸤ˤ��餹)
+画面全体を右にずらします.(表示内容を左にずらす)
.TP
.B <
-�������Τ򺸤ˤ��餷�ޤ���(ɽ�����Ƥ򱦤ˤ��餹)
+画面全体を左にずらします.(表示内容を右にずらす)
.TP
.B ". "
-�������Τ�1ʸ�����ˤ��餷�ޤ���(ɽ�����Ƥ򺸤ˤ��餹)
+画面全体を1文字右にずらします.(表示内容を左にずらす)
.TP
.B ", "
-�������Τ�1ʸ�����ˤ��餷�ޤ���(ɽ�����Ƥ򱦤ˤ��餹)
+画面全体を1文字左にずらします.(表示内容を右にずらす)
.TP
.B g, M-<
-ʸ��Τ����Ф��ιԤ˰�ư���ޤ���
+文書のいちばん上の行に移動します.
.TP
.B G, M->
-ʸ��Τ����Ф󲼤ιԤ˰�ư���ޤ���
+文書のいちばん下の行に移動します.
.TP
.B "ESC g"
-���̲��ǹ��ֹ�����Ϥ��������ǻ��ꤷ���Ԥ˰�ư���ޤ���
-������
+画面下で行番号を入力し,そこで指定した行に移動します.
+ここで
.B $
-�����Ϥ���ȡ��ǽ��Ԥ˰�ư���ޤ���
+を入力すると,最終行に移動します.
.TP
.B Z
-��������Τ�����֤�Ԥ�����˰�ư���ޤ���
+カーソルのある位置を行の中央に移動します.
.TP
.B z
-��������Τ���Ԥ���̤�����˰�ư���ޤ���
+カーソルのある行を画面の中央に移動します.
.TP
.B TAB
-���Υ�󥯤˰�ư���ޤ���
+次のリンクに移動します.
.TP
.B C-u, "ESC TAB"
-���Υ�󥯤˰�ư���ޤ���
+前のリンクに移動します.
.TP
.B [
-�ǽ�Υ�󥯤˰�ư���ޤ���
+最初のリンクに移動します.
.TP
.B ]
-�Ǹ�Υ�󥯤˰�ư���ޤ���
-.SS �ϥ��ѡ�������
+最後のリンクに移動します.
+.SS ハイパーリンク操作
.TP
.B RET
-���ߥ������뤬�����󥯤��ؤ����ʸ����ɤߤ��ߤޤ���
+現在カーソルがあるリンクが指す先の文書を読みこみます.
.TP
.B a, "ESC RET"
-���ߥ������뤬�����󥯤��ؤ����ʸ���ե��������¸���ޤ���
+現在カーソルがあるリンクが指す先の文書をファイルに保存します.
.TP
.B u
-���ߥ������뤬�����󥯤��ؤ����URL��ɽ�����ޤ���
+現在カーソルがあるリンクが指す先のURLを表示します.
.TP
.B i
-��󥯤˴�Ϣ�դ���줿�����ؤ�URL��ɽ�����ޤ���
+リンクに関連付けられた画像へのURLの表示します.
.TP
.B I
-���ߥ������뤬�����󥯤��б����������ɽ�����ޤ���
+現在カーソルがあるリンクに対応する画像を表示します.
.TP
.B "ESC I"
-���ߥ������뤬�����󥯤��ؤ�������ե��������¸���ޤ���
+現在カーソルがあるリンクが指す画像をファイルに保存します.
.TP
.B ":"
-URL����ʸ������󥯤ˤ��ޤ������ε�ǽ�ϡ�HTML�Ǥʤ�ʸ���
-�ɤ�Ǥ���Ȥ��ˤ�ͭ���Ǥ���
+URL風の文字列をリンクにします.この機能は,HTMLでない文書を
+読んでいるときにも有効です.
.TP
.B "ESC :"
-Message-ID����ʸ�����news: �Υ�󥯤ˤ��ޤ������ε�ǽ�ϡ�HTML�Ǥʤ�ʸ���
-�ɤ�Ǥ���Ȥ��ˤ�ͭ���Ǥ���
+Message-ID風の文字列を,news: のリンクにします.この機能は,HTMLでない文書を
+読んでいるときにも有効です.
.TP
.B c
-���ߤ�ʸ���URL��ɽ�����ޤ���
+現在の文書のURLを表示します.
.TP
.B =
-���ߤ�ʸ��˴ؤ�������ɽ�����ޤ���
+現在の文書に関する情報を表示します.
.TP
.B C-g
-�ڡ�����Ǥθ��߰��֤�ɽ�����ޤ���
+ページ中での現在位置を表示します.
.TP
.B C-h
-URL�����ɽ�����ޤ���
+URL履歴を表示します.
.TP
.B F
-<FRAMESET>��ޤ�ʸ���ɽ�����Ƥ���Ȥ��ˡ�<FRAME>�����λؤ�ʣ����ʸ���1�Ĥ�
-ʸ����Ѵ�����ɽ�����ޤ���
+<FRAMESET>を含む文書を表示しているときに,<FRAME>タグの指す複数の文書を1つの
+文書に変換して表示します.
.TP
.B M
-���߸��Ƥ���ڡ����򡤳����֥饦����Ȥä�ɽ�����ޤ���
-.B 2M, 3M
-��2���ܤ�3���ܤΥ֥饦����Ȥ��ޤ���
+現在見ているページを,外部ブラウザを使って表示します.
+.B 2M, 3M, ..., 9M
+で2番目,3番目,9番目のブラウザを使います.
.TP
.B "ESC M"
-���ߤΥ����򡤳����֥饦����Ȥä�ɽ�����ޤ���
-.B "2ESC M", "3ESC M"
-��2���ܤ�3���ܤΥ֥饦����Ȥ��ޤ���
-.SS �ե������URL�ط������
+現在のリンク先を,外部ブラウザを使って表示します.
+.B "2ESC M", "3ESC M", ..., "9ESC M"
+で2番目,3番目,9番目のブラウザを使います.
+.SS ファイルとURL関係の操作
.TP
.B U
-URL����ꤷ�Ƴ����ޤ���
+URLを指定して開きます.
.TP
.B V
-��������ե��������ꤷ�Ƴ����ޤ���
+ローカルファイルを指定して開きます.
.TP
.B @
-���ޥ�ɤ�¹Ԥ�����̤������ɤ�Ǥ���ɽ�����ޤ���
+コマンドを実行し,結果を全部読んでから表示します.
.TP
.B #
-���ޥ�ɤ�¹Ԥ�����̤��ɤߤ��ߤʤ���ɽ�����ޤ���
-.SS �Хåե����
+コマンドを実行し,結果を読みこみながら表示します.
+.SS バッファ操作
.TP
.B B
-���߸��Ƥ���Хåե���������������ΥХåե���ɽ�����ޤ���
+現在見ているバッファを削除し,一つ前のバッファを表示します.
.TP
.B v
-HTML�Υ�������ɽ�����ޤ���
+HTMLのソースを表示します.
.TP
.B s
-�Хåե�����⡼�ɤ�����ޤ���
+バッファ選択モードに入ります.
.TP
.B E
-���߸��Ƥ���Хåե�����������ե�����ξ�硤���Υե�����򥨥ǥ������Խ�����
-�������ǥ�����λ�����塤���Υե����������ɤ߹��ߤޤ���
+現在見ているバッファがローカルファイルの場合,そのファイルをエディタで編集しま
+す.エディタを終了した後,そのファイルを再度読み込みます.
.TP
.B C-l
-���̤�����褷�ޤ���
+画面を再描画します.
.TP
.B R
-�Хåե�������ɤ߹��ߤޤ���
+バッファを再度読み込みます.
.TP
.B S
-�Хåե���ɽ�����Ƥ�ե��������¸���ޤ���
+バッファの表示内容をファイルに保存します.
.TP
.B "ESC s"
-HTML�Υ�������ե��������¸���ޤ���
+HTMLのソースをファイルに保存します.
.B v
-�ǥ�������ɽ������
+でソースを表示して
.B S
-����¸����ΤȤۤ�Ʊ���Ǥ�����
+で保存するのとほぼ同じですが,
.B "ESC s"
-����¸�����ե�����ϴ��������ɤ����ꥸ�ʥ�ΤޤޤǤ���Τ��Ф��ơ�
+で保存したファイルは漢字コードがオリジナルのままであるのに対して,
.B "v S"
-����¸����ȸ���ɽ���˻ȤäƤ�����������ɤ��Ѵ��������¸����ޤ���
+で保存すると現在表示に使っている漢字コードに変換されて保存されます.
.TP
.B "ESC e"
-����ɽ������Ƥ���Хåե���ɽ������Ƥ�������Τޤޥ��ǥ������Խ����ޤ���
-.SS �Хåե�����⡼��
+現在表示されているバッファを,表示されている形式のままエディタで編集します.
+.SS バッファ選択モード
.B s
-�ǥХåե�����⡼�ɤ����ä��Ȥ��Υ������Ǥ���
+でバッファ選択モードに入ったときのキー操作です.
.TP
.B k, C-p
-��ľ�ΥХåե������򤷤ޤ���
+一つ上のバッファを選択します.
.TP
.B j, C-n
-��IJ��ΥХåե������򤷤ޤ���
+一つ下のバッファを選択します.
.TP
.B D
-�������򤷤Ƥ���Хåե��������ޤ���
+現在選択しているバッファを削除します.
.TP
.B RET
-�������򤷤Ƥ���Хåե���ɽ�����ޤ���
-.SS �֥å��ޡ������
+現在選択しているバッファを表示します.
+.SS ブックマーク操作
.TP
.B "ESC b"
-�֥å��ޡ������ɤ߹��ߤޤ���
+ブックマークを読み込みます.
.TP
.B "ESC a"
-���߸��Ƥ���ڡ�����֥å��ޡ������ɲä��ޤ���
-.SS ����
+現在見ているページをブックマークに追加します.
+.SS 検索
.TP
.B /, C-s
-���ߤΥ���������֤���ե����������˸����ä�����ɽ���򸡺����ޤ���
+現在のカーソル位置からファイル末尾に向かって正規表現を検索します.
.TP
.B ?, C-r
-���ߤΥ���������֤���ե��������Ƭ�˸����ä�����ɽ���򸡺����ޤ���
+現在のカーソル位置からファイルの先頭に向かって正規表現を検索します.
.TP
.B n
-���򸡺����ޤ���
+次を検索します.
.TP
.B N
-���򸡺����ޤ���
+前を検索します.
.TP
.B C-w
-�ޤ��֤������⡼�ɤ��ڤ괹���ޤ���
-.SS �ޡ������
+折り返し検索モードを切り換えます.
+.SS マーク操作
.TP
.B C-SPC
-�ޡ��������꡿������ޤ����ޡ�����ȿžɽ������ޤ���
+マークを設定/解除します.マークは反転表示されます.
.TP
.B "ESC p"
-������Υޡ����˰�ư���ޤ���
+一つ前のマークに移動します.
.TP
.B "ESC n"
-��ĸ�Υޡ����˰�ư���ޤ���
+一つ後のマークに移動します.
.TP
.B "\""
-����ɽ���ǻ��ꤵ�줿ʸ��������ƥޡ������ޤ���
-.SS ����¾
+正規表現で指定された文字列を全てマークします.
+.SS その他
.TP
.B !
-�����륳�ޥ�ɤ�¹Ԥ��ޤ���
+シェルコマンドを実行します.
.TP
.B H
-�إ�ץե������ɽ�����ޤ���
+ヘルプファイルを表示します.
.TP
.B o
-���ץ��������ѥͥ��ɽ�����ޤ���
+オプション設定パネルを表示します.
.TP
.B C-k
-���å���������ɽ�����ޤ���
+クッキー一覧を表示します.
.TP
.B C-c
-ʸ����ɤ߹��ߤ����Ǥ��ޤ���
+文書の読み込みを中断します.
.TP
.B C-z
-�����ڥ�ɤ��ޤ���
+サスペンドします.
.TP
.B q
.B w3m
-��λ���ޤ������ץ���������ˤ�äơ���λ���뤫�ɤ�����ǧ���ޤ���
+を終了します.オプションの設定によって,終了するかどうか確認します.
.TP
.B Q
-��ǧ������
+確認せずに
.B w3m
-��λ���ޤ���
-.SS ���Խ�
-���̤κDz��Ԥ�ʸ��������Ϥ������ͭ���ʥ������Ǥ���
+を終了します.
+.SS 行編集
+画面の最下行で文字列を入力する場合に有効なキー操作です.
.TP
.B C-f
-��������򱦤˰�ư���ޤ���
+カーソルを右に移動します.
.TP
.B C-b
-��������򺸤˰�ư���ޤ���
+カーソルを左に移動します.
.TP
.B C-h
-���������ľ����ʸ���������ޤ���
+カーソルの直前の文字を削除します.
.TP
.B C-d
-����������֤�ʸ���������ޤ���
+カーソル位置の文字を削除します.
.TP
.B C-k
-����������֤����������ޤ���
+カーソル位置から後を削除します.
.TP
.B C-u
-����������֤������������ޤ���
+カーソル位置から前を削除します.
.TP
.B C-a
-ʸ�������Ƭ�˰�ư���ޤ���
+文字列の先頭に移動します.
.TP
.B C-e
-ʸ����κǸ�˰�ư���ޤ���
+文字列の最後に移動します.
.TP
.B C-p
-�ҥ��ȥ꤫��������ʸ�������Ф��ޤ���
+ヒストリから一つ前の文字列を取り出します.
.TP
.B C-n
-�ҥ��ȥ꤫�鼡��ʸ�������Ф��ޤ���
+ヒストリから次の文字列を取り出します.
.TP
.B TAB, SPC
-�ե�����̾���ϻ��ˡ��ե�����̾���䴰���ޤ���
+ファイル名入力時に,ファイル名を補完します.
.TP
.B RET
-���Ϥ�λ���ޤ���
+入力を終了します.
.SH SEE ALSO
.I kterm\fR(1),
.\" .I lynx\fR(1),
.\" .I w3m_lynx\fR(1),
.I tty\fR(4)
.SH AUTHOR
-��ƣ ��§
+伊藤 彰則
.br
aito@fw.ipsj.or.jp
diff --git a/doc/FAQ.html b/doc/FAQ.html
index ed2a704..ca82c67 100644
--- a/doc/FAQ.html
+++ b/doc/FAQ.html
@@ -1,291 +1,763 @@
-<HTML>
-<HEAD>
-<TITLE>W3M FAQ</TITLE>
-</HEAD>
-<BODY>
-<p>&nbsp;
-<center><h1>Frequently Asked Questions and Answers about w3m</h1></center>
-<div align=right>
-Akinori Ito<br>
-aito@fw.ipsj.or.jp<br>
-Corrected by Tom Berger &lt;tom.be@gmx.net&gt;
-</div>
-<p>
-<b><center><font size=+1><u><a name="index">Index</a></u></font></center></b>
-<p>
-<br>
-<ul>
-<li><h2><a href="#general">General Questions, How to Get It, Required Environment</a></h2></li>
-<ul>
-<li><h3>How do I pronounce &quot;w3m&quot;?</h3>
-<li><h3>Why is it called &quot;w3m&quot;?</h3>
-<li><h3>On which platforms does w3m work?</h3>
-<li><h3>Where can I get more information about w3m?</h3>
-<li><h3>Is there a mailing list for w3m?</h3>
-<li><h3>Are there any binary distributions?</h3>
-</ul>
-<br>
-<li><a href="#install"><h2>Compile and Install</h2></a>
-<br>
-<li><a href="#command"><h2>Options, Commands, Usage</h2></a>
-<ul>
-<li><h3>w3m quits if started without parameters. What's wrong?</h3>
-<li><h3>w3m starts with black characters on a black screen. How do I change this?</h3>
-<li><h3>Does w3m support colours?</h3>
-<li><h3>Does w3m support monochrome display?</h3>
-<li><h3>How do I shift the display?</h3>
-<li><h3>How do I move from anchor to anchor?</h3>
-<li><h3>Netscape displays a word red, but w3m doesn't. Why?</h3>
-<li><h3>How do I change the colour of anchor-/image-/form links?</h3>
-<li><h3>w3m doesn't seem to use the variable EDITOR. Why? </h3>
-<li><h3>How do I quit a search or URL text input?</h3>
-</ul>
-<br>
-<li><a href="#www"><h2>Questions about WWW usage</h2></a>
-<ul>
-<li><h3>How do I fill in forms with w3m?</h3>
-<li><h3>Seems like w3m is slower than Netscape or Lynx. Why?</h3>
-<li><h3>Loading time doesn't decrease when loading a previously seen page</h3>
-<li><h3>How do I download a linked file?</h3>
-<li><h3>How do I specify a proxy server?</h3>
-<li><h3>w3m freezes when I invoke an external browser.</h3>
-<li><h3>How do I change the default image viewer?</h3>
-<li><h3>How do I enter a URL?</h3>
-<li><h3>w3m appends a URL to the former one despite of having cleared the line with Ctrl-u. What to do?</h3>
-</ul>
-<br>
-<li><a href="#other"><h2>Misc</a></h2>
-<ul>
-<li><h3>What is w3m's configuration file?</h3>
-<li><h3>What are these w3mxxxx files in my ~/.w3m directory for?</h3>
-</ul>
-<br>&nbsp;
-<br>
-<u><h2><a name="general">General Questions, How to Get It, Required Environment</a></h2></u>
-<br>
-<dl>
-<dt><h3>How do I pronounce &quot;w3m&quot;?</h3>
-<dd>It's &quot;W-three-M&quot;. It doesn't rhyme with &quot;pteranodon&quot;.
-<p>
-<dt><h3>Why is it called &quot;w3m&quot;?</h3>
-<dd>It's an abbreviation of &quot;WWW-wo-Miru&quot;, which is Japanese for
-&quot;See the WWW&quot;. So in English the name of this browser would be
-something like &quot;stw3&quot;.
-<p>
-<dt><h3>On which platforms does w3m work?</h3>
-<dd>It runs on various versions of Unix, since version 990226 on OS/2 and since
-version 990303 also on MS-Windows with Cygwin32.
-<br>
-Current versions have been confirmed to run on:
-<ul>
-<li>SunOS 4.1.x
-<li>HP-UX 9.x, 10.x
-<li>Solaris 2.5.x, 2.6, 8
-<li>Linux 2.0.30
-<li>FreeBSD 2.2.8, 3.1, 3.2, 4.6
-<li>NetBSD/macppc, m68k
-<li>EWS4800 Rel.12.2 Rev.A
-<li>Digital UNIX: v3.2D, v4.0D
-<li>IRIX 5.3, IRIX 6.5
-<li>OS/2 with emx
-<li>Windows 9x/NT with Cygwin32 b20.1
-<li>MS-DOS with DJGPP and WATT32 packet driver
-<li>MacOS X Server
-<li>MacOS X 10.1, 10.2
-</ul>
-<dt><h3>Where can I get more information about w3m?</h3>
-<dd>At the <a href="http://w3m.sourceforge.net/index.en.html">English w3m home page</a>.
-<dt><h3>Is there a mailing list for w3m?</h3>
-<dd>There is a mailing list for developpers (w3m-dev-en). Please see
-<a href="http://w3m.sourceforge.net/index.en.html">w3m page</a>
-for details. You may also mail your comments to <a href="mailto:aito@fw.ipsj.or.jp">the author</a>.
-<dt><h3>Are there any binary distributions?</h3>
-<dd>So far there are only binaries for the win/cygnus32 version. You can get
-them from <a href="http://prdownloads.sourceforge.net/w3m/">here</a>.
-Contact <a href="mailto:aito@fw.ipsj.or.jp">the author</a> if you want to contribute binaries for other platforms.
-</dd>
-</dl>
-<br>
-<div align=right>
-<i>Up to <a href="#index">index</a></i>
-</div>
-<br>
-<u><h2><a name="install">Compile and Install</a></h2></u>
-No problem :-)
-<u><h2><a name="command">Options, Commands, Usage</a></h2></u>
-<br>
-<dl>
-<dt><h3>w3m quits if started without parameters. What's wrong?</h3>
-<dd>w3m is a <b>pager</b>. Therefore it just quits when invoked without any
-arguments. Possible arguments are:
-<ol>
-<li>A filename or an URL
-<li>Pipe from standard input
-<li>The -B option (Show bookmark file)
-<li>The -v option (visual startup)
-<li>From a specified HTTP_HOME or WWW_HOME variable
-</ol>
-<p>
-<dt><h3>w3m starts with black characters on black background. How do I change
-this?</h3>
-<dd>
-When compiled with colour support, w3m assumes a white background and therefore
-displays black characters.
-<br>
-You may either change the background colour of your terminal (e.g. with the -bg
-option in a xterm) or take these steps:
-<ul>
-<li>invoke w3m with 'w3m -M' (for monochrome),
-<li>type 'o' for getting to the options screen
-<li><b>Mark 'Display with colour' as ON</b> and choose an arbitrary colour.
-Click on [OK].
-</ul>
-<p>
-<dt><h3>Does w3m support colours?</h3>
-<dd>Yes. When you run './configure', answer the question
-<p>
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+ <head>
+ <style>
+ span.mono {
+ font-family:mono;
+ }
+ </style>
+ <meta http-equiv=content-type content="text/html;charset=US-ASCII">
+ <title>W3M FAQ</title>
+ </head>
+ <body>
+ <h1 align="center">
+ Frequently Asked Questions and Answers about w3m
+ </h1>
+ <p align="right">
+ Akinori Ito &lt;aito@fw.ipsj.or.jp&gt;<br>
+ Corrected by Tom Berger &lt;tom.be@gmx.net&gt;
+ </p>
+ <h2 id="index">
+ <u>
+ Index
+ </u>
+ </h2>
+ <ul>
+ <li>
+ <a href="#general">
+ <b>
+ General Questions, How to Get It, Required Environment
+ </b>
+ </a>
+ </li>
+ <ul>
+ <li>
+ <b>
+ How do I pronounce <q>w3m</q>?
+ </b>
+ </li>
+ <li>
+ <b>
+ Why is it called <q>w3m</q>?
+ </b>
+ </li>
+ <li>
+ <b>
+ On which platforms does w3m work?
+ </b>
+ </li>
+ <li>
+ <b>
+ Where can I get more information about w3m?
+ </b>
+ </li>
+ <li>
+ <b>
+ Is there a mailing list for w3m?
+ </b>
+ </li>
+ <li>
+ <b>
+ Are there any binary distributions?
+ </b>
+ </li>
+ </ul>
+ <li>
+ <a href="#install">
+ <b>
+ Compile and Install
+ </b>
+ </a>
+ </li>
+ <li>
+ <a href="#command">
+ <b>
+ Options, Commands, Usage
+ </b>
+ </a>
+ </li>
+ <ul>
+ <li>
+ <b>
+ w3m quits if started without parameters. What's wrong?
+ </b>
+ </li>
+ <li>
+ <b>
+ w3m starts with black characters on a black background. How do
+ I change this?
+ </b>
+ </li>
+ <li>
+ <b>
+ Does w3m support colors?
+ </b>
+ </li>
+ <li>
+ <b>
+ Does w3m support monochrome displays?
+ </b>
+ </li>
+ <li>
+ <b>
+ How do I shift the display?
+ </b>
+ </li>
+ <li>
+ <b>
+ How do I move between hyperlinks?
+ </b>
+ </li>
+ <li>
+ <b>
+ Graphical browsers display a word red, but w3m doesn't. Why?
+ </b>
+ </li>
+ <li>
+ <b>
+ How do I change the colors for hyperlinks, images and form fields?
+ </b>
+ </li>
+ <li>
+ <b>
+ w3m doesn't seem to use the variable EDITOR. Why?
+ </b>
+ </li>
+ <li>
+ <b>
+ How do I quit a search or URL text input?
+ </b>
+ </li>
+ </ul>
+ <li>
+ <a href="#www">
+ <b>
+ Questions about WWW usage
+ </b>
+ </a>
+ </li>
+ <ul>
+ <li>
+ <b>
+ How do I fill in forms with w3m?
+ </b>
+ </li>
+ <li>
+ <b>
+ Seems like w3m is slower than some other browsers. Why?
+ </b>
+ </li>
+ <li>
+ <b>
+ Loading time doesn't decrease when loading a previously seen
+ page.
+ </b>
+ </li>
+ <li>
+ <b>
+ How do I download a linked file?
+ </b>
+ </li>
+ <li>
+ <b>
+ How do I specify a proxy server?
+ </b>
+ </li>
+<!-- deleted, see mail dated Mon, 04 Apr 2016 20:50:27 +0900 (JST)
+from Tatsuya Kinoshita <tats@debian.org>
+ <li>
+ <b>
+ w3m freezes when I invoke an external browser.
+ </b>
+ </li>
+-->
+ <li>
+ <b>
+ How do I change the default image viewer?
+ </b>
+ </li>
+ <li>
+ <b>
+ How do I enter a URL?
+ </b>
+ </li>
+ <li>
+ <b>
+ w3m appends a URL to the former one even when I clear the line
+ with <span class="mono">CTRL-u</span>. What should I do?
+ </b>
+ </li>
+ </ul>
+ <li>
+ <a href="#other">
+ <b>
+ Miscellaneous
+ </b>
+ </a>
+ </li>
+ <ul>
+ <li>
+ <b>
+ What is w3m's configuration file?
+ </b>
+ </li>
+ <li>
+ <b>
+ What are these w3mxxxx files in my ~/.w3m directory for?
+ </b>
+ </li>
+ </ul>
+ </ul>
+ <h2 id="general">
+ <u>
+ General Questions, How to Get It, Required Environment
+ </u>
+ </h2>
+ <dl>
+ <dt>
+ <b>
+ How do I pronounce <q>w3m</q>?
+ </b>
+ </dt>
+ <dd>
+ <p>
+ It's <q>W-three-M</q>. It doesn't rhyme with <q>pteranodon</q>.
+ </p>
+ </dd>
+ <dt>
+ <b>
+ Why is it called <q>w3m</q>?
+ </b>
+ </dt>
+ <dd>
+ <p>
+ It's an abbreviation of <q>WWW-wo-Miru</q>, which is Japanese
+ for <q>See the WWW</q>. So in English the name of this browser
+ would be something like <q>stw3</q>.
+ </p>
+ </dd>
+ <dt>
+ <b>
+ On which platforms does w3m work?
+ </b>
+ </dt>
+ <dd>
+ <p>
+ It runs on various versions of Unix, since version 990226 on OS/2
+ and since version 990303 also on MS-Windows with Cygwin32.
+ </p>
+ <p>
+ More recent versions have been confirmed to run on:
+ </p>
+ <ul>
+ <li>
+ SunOS 4.1.x
+ </li>
+ <li>
+ HP-UX 9.x, 10.x
+ </li>
+ <li>
+ Solaris 2.5.x, 2.6, 8
+ </li>
+ <li>
+ Linux 2.0.1 to 3.17
+ </li>
+ <li>
+ FreeBSD 2.2.8, 3.1, 3.2, 4.6
+ </li>
+ <li>
+ NetBSD/macppc, m68k
+ </li>
+ <li>
+ EWS4800 Rel.12.2 Rev.A
+ </li>
+ <li>
+ Digital UNIX: v3.2D, v4.0D
+ </li>
+ <li>
+ IRIX 5.3, IRIX 6.5
+ </li>
+ <li>
+ OS/2 with emx
+ </li>
+ <li>
+ Windows 9x/NT with Cygwin32 b20.1
+ </li>
+ <li>
+ MS-DOS with DJGPP and WATT32 packet driver
+ </li>
+ <li>
+ MacOS X Server
+ </li>
+ <li>
+ MacOS X 10.1, 10.2
+ </li>
+ </ul>
+ </dd>
+ <dt>
+ <b>
+ Where can I get more information about w3m?
+ </b>
+ </dt>
+ <dd>
+ <p>
+ At the
+ <a href="http://w3m.sourceforge.net/index.en.html">English w3m
+ home page</a>.
+ </p>
+ </dd>
+ <dt>
+ <b>
+ Is there a mailing list for w3m?
+ </b>
+ </dt>
+ <dd>
+ <p>
+ There is a mailing list for developers (w3m-dev-en). Please see
+ the <a href="http://w3m.sourceforge.net/index.en.html">w3m home
+ page</a> for details. You may also mail your comments to
+ <a href="mailto:aito@fw.ipsj.or.jp">the author</a>.
+ </p>
+ </dd>
+ <dt>
+ <b>
+ Are there any binary distributions?
+ </b>
+ </dt>
+ <dd>
+ <p>
+ So far there are only binaries for the win/cygnus32 version.
+<!--
+ You can get them from
+ <a href="http://prdownloads.sourceforge.net/w3m/">here</a>.
+!-->
+ Contact <a href="mailto:aito@fw.ipsj.or.jp">the author</a> if you
+ want to contribute binaries for other platforms.
+ </p>
+ </dd>
+ </dl>
+ <p align="right">
+ <i>
+ Up to <a href="#index">index</a>
+ </i>
+ </p>
+ <h2 id="install">
+ <u>
+ Compile and Install
+ </u>
+ </h2>
+ <p>
+ No problem :-)
+ </p>
+ <h2 id="command">
+ <u>
+ Options, Commands, Usage
+ </u>
+ </h2>
+ <dl>
+ <dt>
+ <b>
+ w3m quits if started without parameters. What's wrong?
+ </b>
+ </dt>
+ <dd>
+ <p>
+ w3m is a <b>pager</b>. Therefore it just quits when invoked
+ without any arguments. It keeps running
+ </p>
+ <ul>
+ <li>
+ with a filename or URL as argument
+ </li>
+ <li>
+ with data piped from standard input
+ </li>
+ <li>
+ when invoked with option -B to show the bookmark file
+ </li>
+ <li>
+ when invoked with option -v to welcome users with a built-in page
+ </li>
+ <li>
+ with specified HTTP_HOME or WWW_HOME variable
+ </li>
+ </ul>
+ </dd>
+ <dt>
+ <b>
+ w3m starts with black characters on a black background. How do I
+ change this?
+ </b>
+ </dt>
+ <dd>
+ <p>
+ When compiled with color support, w3m assumes a white background
+ and therefore displays black characters.
+ </p>
+ <p>
+ You may either change the background color of your terminal
+ (e.g. with the -bg option in a xterm) or take these steps
+ </p>
+ <ol>
+ <li>
+ invoke monochrome mode of w3m with <span class="mono">w3m -M</span>
+ </li>
+ <li>
+ type <q>o</q> to get to the options setting panel
+ </li>
+ <li>
+ mark <q>Display with color</q> as <q>YES</q> and choose an
+ arbitrary color
+ </li>
+ <li>
+ click on [OK].
+ </li>
+ </ol>
+ </dd>
+ <dt>
+ <b>
+ Does w3m support colors?
+ </b>
+ </dt>
+ <dd>
+ <p>
+ Yes. When you run <q>./configure</q>, answer the question
+ </p>
<pre>
-Let's do some configurations. Choose config option among the list."
+ Let's do some configurations. Choose config option among the list.
-1 - Baby model (no color, no menu, no mouse, no cookie, no SSL)
-2 - Little model (color, menu, no mouse, no cookie, no SSL)
-3 - Mouse model (color, menu, mouse, no cookie, no SSL)
-4 - Cookie model (color, menu, mouse, cookie, no SSL)
-5 - Monster model (with everything; you need openSSL library)
-6 - Customize
-Which?
+ 1 - Baby model (no color, no menu, no mouse, no cookie, no SSL)
+ 2 - Little model (color, menu, no mouse, no cookie, no SSL)
+ 3 - Mouse model (color, menu, mouse, no cookie, no SSL)
+ 4 - Cookie model (color, menu, mouse, cookie, no SSL)
+ 5 - Monster model (with everything; you need openSSL library)
+ 6 - Customize
+ Which?
</pre>
-<p>
-with 2,3,4 or 5.
-<p>
-<dt><h3>Does w3m support monochrome display?</h3>
-<dd>Yes. You may either
-<ol>
-<li>Answer the above mentioned 'configure' question with 1, or
-<li>Invoke w3m with the -M option, or
-<li>Type 'o' within w3m to enter the options screen and turn off colour display
-mode.
-</ol>
-<dt><h3>How do I shift the display?</h3>
-<dd>You can shift the display by moving the cursor to the edge of the screen. You
-may also use the "&gt;"/"&lt;" or "."/"," keys.
-<br>
-Another idea would be adjusting the xterm with the -geometry option (e.g.
-something like 'xterm -geometry 110x45 -bg white -name w3m -e w3m -B').
-<dt><h3>How do I move from anchor to anchor?</h3>
-<dd>You can move to the next anchor using TAB. ESC TAB moves cursor to the previous anchor.
-<p>
-<dt><h3>Netscape displays a word red, but w3m doesn't. Why?</h3>
-<dd>w3m doesn't support &lt;FONT COLOR=".."&gt; tags. It won't be impossible to implement this, but I think it would make the document more difficult to read.
-<p>
-<dt><h3>How do I change the colour of anchor-/image-/form links?</h3>
-<dd>Type 'o' within w3m to get the 'options' screen. You can change these
-settings there.
-<dt>
-<dt><h3>w3m doesn't seem to use the variable EDITOR. Why? </h3>
-<dd><dd>Go to the 'options' screen using the "o" key. Any entry in the 'Editor' field will override the environment variable.
-<br>
-If you want to use the editor specified by EDITOR blank the field and push [OK].
-<p>
-<dt><h3>How do I quit a search or URL text input?</h3>
-<dd>Clear input text using Ctrl-u and hit RETURN.
-</dd>
-</dl>
-<br>
-<div align=right>
-<i>Up to <a href="#index">index</a></i>
-</div>
-<br>
-<u><h2><a name="www">Questions about WWW usage</a></h2></u>
-<br>
-<dl>
-<dt><h3>How do I fill in forms with w3m?</h3>
-<dd>Form input fields are displayed in red (or reverse). Move the cursor to
-them and hit RETURN. Then,
-<ul>
-<li>if it is a text input field, put in your text on the bottom line,
-<li>if it is a radiobutton or checkbox, that item is selected,
-<li>if it is a textarea, an editor is spawned,
-<li>if it is 'submit' or 'reset', well, just do it.
-</ul>
-<dt><h3>Seems like w3m is slower than Netscape or Lynx. Why?</h3>
-<dd>w3m renders a HTML document in two passes. Therefore it displays the documentnot before having read the entire document.
-<br>
-Netscape or Lynx display the document before having read the whole page,
-and therefore seem faster.
-<p>
-<dt><h3>Loading time doesn't decrease when loading a previously seen page</h3>
-<dd>w3m doesn't have its own cache. Therefore, it reads the document
-from the server each time it accesses it. If possible, use a cache server.
-<p>
-<dt><h3>How do I download a linked file?</h3>
-<dd>Use 'a' (or 'd' with Lynx-like keybindings) or ESC RET. If you want to download an inline image, use ESC 'I'.
-<p>
-<dt><h3>How do I specify a proxy server?</h3>
-<dd>Set the environment variable HTTP_PROXY or use the option setting panel
-("o" key). For example, if you want to use port 8000 of proxy.hogege.com, specify
-<p>
-<pre>
- http://proxy.hogege.com:8000/
-</pre>
-<p>
-<dt><h3>w3m freezes when I invoke an external browser.</h3>
-<dd>Enter w3m's option screen using the 'o' key and specify
-<p>
-<pre>
- netscape %s &
-</pre>
-<p>
-(if you are using netscape).
-<p>
-<dt><h3>How do I change the default image viewer?</h3>
-<dd>By default w3m uses xv to view images. If you want to change it into, let's say, 'display', add the following line to ~/.w3m/mailcap or /etc/mailcap.
-<p>
+ <p>
+ with 2, 3, 4, or 5.
+ </p>
+ </dd>
+ <dt>
+ <b>
+ Does w3m support monochrome displays?
+ </b>
+ </dt>
+ <dd>
+ <p>
+ Yes. You may either
+ </p>
+ <ul>
+ <li>
+ Answer the above-mentioned <q>configure</q> question with 1,
+ or
+ </li>
+ <li>
+ Invoke w3m with the -M option, or
+ </li>
+ <li>
+ Type <q>o</q> within w3m to enter the options setting panel and turn
+ off color display mode.
+ </li>
+ </ul>
+ </dd>
+ <dt>
+ <b>
+ How do I shift the display?
+ </b>
+ </dt>
+ <dd>
+ <p>
+ You can shift the display by moving the cursor to the edge of
+ the screen. You may also use the following commands
+ </p>
+ <ul>
+ <li>SHIFT_LEFT and SHIFT_RIGHT, bound to the keys <span class="mono">&gt;</span> and <span class="mono">&lt;</span></li>
+ <li>SHIFT_LEFT1 and SHIFT_RIGHT1, bound to the keys <span class="mono">.</span> and <span class="mono">,</span></li>
+ </ul>
+ <p>
+ Another idea would be adjusting the xterm with the -geometry
+ option e.g. something like
+ </p>
+ <pre> xterm -geometry 110x45 -bg white -name w3m -e w3m -B</pre>
+ </dd>
+ <dt>
+ <b>
+ How do I move between hyperlinks?
+ </b>
+ </dt>
+ <dd>
+ <p>
+
+ You can move to the next hyperlink
+ using <span class="mono">TAB</span>. <span class="mono">ESC
+ TAB</span> moves the cursor to the previous hyperlink. (see
+ Section <a href="MANUAL.html#Functions" target="_blank">
+ Functions and Key bindings</a> of w3m's manual)
+
+ </p>
+ </dd>
+ <dt>
+ <b>
+ Graphical browsers display a word red, but w3m doesn't. Why?
+ </b>
+ </dt>
+ <dd>
+ <p>
+ w3m doesn't support the attribute COLOR="..." of HTML. It wouldn't
+ be impossible to implement this, but I think it would make
+ documents more difficult to read.
+ </p>
+ </dd>
+ <dt>
+ <b>
+ How do I change the colors for hyperlinks, images and form fields?
+ </b>
+ </dt>
+ <dd>
+ <p>
+ Type <q>o</q> within w3m to get the options panel. You
+ can change these settings there.
+ </p>
+ </dd>
+ <dt>
+ <b>
+ w3m doesn't seem to use the variable EDITOR. Why?
+ </b>
+ </dt>
+ <dd>
+ <p>
+ Go to the options setting panel using the <q>o</q> key. Any
+ entry in the <q>Editor</q> field overrides the environment
+ variable.
+ </p>
+ <p>
+ If you want to use the editor specified by EDITOR, blank the
+ field and save the settings using the button [OK].
+ </p>
+ </dd>
+ <dt>
+ <b>
+ How do I quit a search or URL text input?
+ </b>
+ </dt>
+ <dd>
+ <p>
+ Clear input text using <span class="mono">CTRL-u</span> and hit <span class="mono">RETURN</span>.
+ </p>
+ </dd>
+ </dl>
+ <p align="right">
+ <i>
+ Up to <a href="#index">index</a>
+ </i>
+ </p>
+ <h2 id="www">
+ <u>
+ Questions about WWW usage
+ </u>
+ </h2>
+ <dl>
+ <dt>
+ <b>
+ How do I fill in forms with w3m?
+ </b>
+ </dt>
+ <dd>
+ <p>
+ Form input fields are displayed in red (or reverse). Move the
+ cursor to them. Then, if it is
+ </p>
+ <ul>
+ <li>
+ a text input field, hit <span class="mono">RETURN</span>
+ put in your text on the bottom line. Press
+ <span class="mono">RETURN</span> again
+ </li>
+ <li>
+ a radiobutton or checkbox, pressing
+ <span class="mono">RETURN</span> changes or toggles the selection
+ </li>
+ <li>
+ a textarea, pressing
+ <span class="mono">RETURN</span> spawns an editor
+ </li>
+ <li>
+ a <q>submit</q> or <q>reset</q> field,
+ the respective action is performed.
+ </li>
+ </ul>
+ </dd>
+ <dt>
+ <b>
+ Seems like w3m is slower than some other browsers. Why?
+ </b>
+ </dt>
+ <dd>
+ <p>
+ w3m renders a HTML document in two passes. Therefore it doesn't
+ start to display the document until it has finished reading it.
+ </p>
+ <p>
+ Most other browsers display the document before having read the
+ whole page, and therefore seem faster.
+ </p>
+ </dd>
+ <dt>
+ <b>
+ Loading time doesn't decrease when loading a previously seen
+ page.
+ </b>
+ </dt>
+ <dd>
+ <p>
+ w3m doesn't have its own cache. Therefore, it reads the document
+ from the server each time it accesses it. If possible, use a
+ cache server.
+ </p>
+ </dd>
+ <dt>
+ <b>
+ How do I download a linked file?
+ </b>
+ </dt>
+ <dd>
+ <p>
+ Use <q>a</q> (or <q>d</q> with Lynx-like keybindings) or
+ <span class="mono">ESC RET</span>.
+ If you want to download an inline image, use
+ <span class="mono">ESC I</span>. (see
+ Section <a href="MANUAL.html#Functions" target="_blank">
+ Functions and Key bindings</a> of w3m's manual)
+ </p>
+ </dd>
+ <dt>
+ <b>
+ How do I specify a proxy server?
+ </b>
+ </dt>
+ <dd>
+ <p>
+ Set the environment variables HTTP_PROXY, HTTPS_PROXY, GOPHER_PROXY
+ and FTP_PROXY, or use the options setting panel (<q>o</q> key). For
+ example, if you want to use port 8000 of proxy.example.org, specify
+ </p>
+ <pre> http://proxy.example.org:8000/</pre>
+ </dd>
+<!-- deleted, see mail dated Mon, 04 Apr 2016 20:50:27 +0900 (JST)
+from Tatsuya Kinoshita <tats@debian.org>
+ <dt>
+ <b>
+ w3m freezes when I invoke an external browser.
+ </b>
+ </dt>
+ <dd>
+ <p>
+ Enter w3m's option screen using the <q>o</q> key and specify
+ </p>
+ <pre> firefox %s &</pre>
+ <p>
+ (if you are using Firefox). Note that %s is replaced with the URL
+ when invoking.
+ </p>
+ </dd>
+ -->
+ <dt>
+ <b>
+ How do I change the default image viewer?
+ </b>
+ </dt>
+ <dd>
+ <p>
+ By default w3m uses xv to view images. If you want to change it
+ into, let's say, <q>display</q>, add the following line to
+ ~/.w3m/mailcap or /etc/mailcap:
+ </p>
<pre>
-image/*; display %s
+ image/*; display %s
</pre>
-<p>
-You can specify external viewers of other file types as well:
-<p>
+ <p>
+ You can specify external viewers of other file types as well:
+ </p>
<pre>
-image/*; display %s
-application/postscript; ghostview %s
-application/x-dvi; xdvi %s
+ image/*; display %s
+ application/postscript; ghostview %s
+ application/x-dvi; xdvi %s
</pre>
-<dt><h3>How do I enter a URL?</h3>
-<dd>Type SHIFT-U
-<p>
-<dt><h3>w3m appends a URL to the former one despite of having cleared the line
-with Ctrl-u. What to do?</h3>
-<dd>Enter the <i>complete</i> adress, e.g. http://www.slashdot.org.
-</dd>
-</dl>
-<br>
-<div align=right>
-<i>Up to <a href="#index">index</a></i>
-</div>
-<br>
-<u><h2><a name="other">Miscellaneous</a></h2></u>
-<br>
-<dl>
-<dt><h3>What is w3m's configuration file?</h3>
-<dd>It is ~/.w3m/config.
-With this file, you can adjust w3m's behavior by changing values of options
-that are described to be varied with the option setting panel.
-Each line contains setting for one option, which is a pair of an option name
-and its value with a space as a separator.
-<p>
-<dt><h3>What are these w3mxxxx files in my ~/.w3m directory for?</h3>
-<dd>These are temporary files used by w3m when reading documents from a
-WWW server. They are not cache files and are usually deleted when w3m is
-terminated. If there remain any temp files, please remove them by yourself.
-<p>
-</dd>
-</dl>
-<br>
-<div align=right>
-<i>Up to <a href="#index">index</a></i>
-</div>
-<br>
-</BODY>
-</HTML>
+ </dd>
+ <dt>
+ <b>
+ How do I enter a URL?
+ </b>
+ </dt>
+ <dd>
+ <p>
+ Type <span class="mono">U</span>
+ </p>
+ </dd>
+ <dt>
+ <b>
+ w3m appends a URL to the former one even when I clear the line
+ with <span class="mono">CTRL-u</span>. What should I do?
+ </b>
+ </dt>
+ <dd>
+ <p>
+ Enter the <i>complete</i> address, e.g. http://www.slashdot.org.
+ </p>
+ </dd>
+ </dl>
+ <p align="right">
+ <i>
+ Up to <a href="#index">index</a>
+ </i>
+ </p>
+ <h2 id="other">
+ <u>
+ Miscellaneous
+ </u>
+ </h2>
+ <dl>
+ <dt>
+ <b>
+ What is w3m's configuration file?
+ </b>
+ </dt>
+ <dd>
+ <p>
+ It is ~/.w3m/config.
+ </p>
+
+ <p>
+ With this file, each user can adjust w3m's behavior by changing
+ the values of options whose effects are described in the options
+ setting panel. Each line contains one option setting, consisting
+ of an option name and its value with a space as a separator.
+ </p>
+
+ <p>Without a user-specific configuration file, w3m honours
+ the system wide configuration file /etc/w3m/config.
+ </p>
+
+ </dd>
+ <dt>
+ <b>
+ What are these w3mxxxx files in my ~/.w3m directory for?
+ </b>
+ </dt>
+ <dd>
+ <p>
+ These are temporary files used by w3m when reading documents
+ from a WWW server. They are not cache files and are usually
+ deleted when w3m is terminated. If any temp files are left
+ behind, please remove them yourself.
+ </p>
+ </dd>
+ </dl>
+ <p align="right">
+ <i>
+ Up to <a href="#index">index</a>
+ </i>
+ </p>
+ </body>
+</html>
diff --git a/doc/HISTORY b/doc/HISTORY
index b8f5b94..7f7ae2b 100644
--- a/doc/HISTORY
+++ b/doc/HISTORY
@@ -588,7 +588,7 @@ From: Okabe Katsuya <okabek@guitar.ocn.ne.jp>
* space characters in a buffer are mapped into 0x80-0x9f.
* unprintable characters (0x80-0xa0) are displayed as \xxx.
-From: Tsutomu Okada ($B2,ED(B $BJY(B) <okada@furuno.co.jp>
+From: Tsutomu Okada <okada@furuno.co.jp>
Subject: [w3m-dev 01354] minimize when #undef USE_GOPHER or USE_NNTP
2000/11/16
@@ -1422,7 +1422,7 @@ HTML4.0 ID attribute support.
From: Okabe Katsuya <okabe@fphy.hep.okayama-u.ac.jp>
table get weird when it contains <input type=hidden>.
-$B=$@5!%(B
+Fixed.
2000.2.12
From: Rogue Metal - Jake Moorman <roguemtl@stampede.org>
@@ -1649,15 +1649,15 @@ From: patakuti
If an <input type=button> tag has no `name' attribute,
w3m adds it an inappropriate name attribute.
-From: $B$d$^(B
+From: Yama
Now w3m can handle a frameset that has both ROWS and COLS.
From: aito
Now bookmarking is done by a separate command w3mbookmark.
-C-s $B$G2hLLI=<($,;_$^$C$F$$$?%P%0$N=$@5!%(B
+Bug fix that C-s hangs.
-$BJ8;zF~NO;~$K(B C-g $B$GCf;_$G$-$k$h$&$K$7$?!%(B
+Enable C-g to quit for keyboard input.
From: hovav@cs.stanford.edu
When downloading a file, an attempt to save it to a non-exist
@@ -1699,7 +1699,7 @@ Menu behavior is changed.
* Clicking outside the menu causes cancellation of sub-menu.
* <, >, +, - abandoned
-From: $B$*$+$@(B <okada@furuno.co.jp>
+From: Okada <okada@furuno.co.jp>
Now C-a/C-e are bound to 'jump to the first/last item in menu.'
From: "OMAE, jun" <jun-o@osb.att.ne.jp>
diff --git a/doc/MANUAL.html b/doc/MANUAL.html
index aff0189..91a3485 100644
--- a/doc/MANUAL.html
+++ b/doc/MANUAL.html
@@ -1,535 +1,2437 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
-<head><title>w3m manual</title>
-</head>
-<body>
-<h1>w3m MANUAL</h1>
-<div align=right>
-Akinori Ito<br>
-aito@fw.ipsj.or.jp
-</div>
-<h2>Index</h2>
-<menu>
-<li><a href="#Introduction">Introduction</a>
-<li><a href="#Options">Options</a>
-<li><a href="#Color">Document color</a>
-<li><a href="#Key:orig">Key binding</a>
-<li><a href="#Key:lynx">Lynx-like key binding</a>
-<li><a href="#Mouse">Mouse operation</a>
-<li><a href="#Key:custom">Key customization</a>
-<li><a href="#LocalCGI">Local CGI</a>
-</menu>
-
-<hr>
-<a name="Introduction"></a>
-<h2>Introduction</h2>
-w3m is a pager/text-based WWW browser. You can browse local documents and/or
-documents on the WWW using a terminal emulator.
-
-<hr>
-<a name="Options"></a>
-<h2>Options</h2>
-
-Command line usage is
-<p>
+ <head>
+ <title>w3m manual</title>
+ <style>
+ span.mono {
+ font-family:mono;
+ }
+ </style>
+ <meta http-equiv="content-type" content="text/html;charset=UTF-8">
+ </head>
+ <body>
+ <!--
+insertions tagged with "mh 2016-03-29" and "mh 2016-06-11" come from the latest version of manual page w3m (1)
+ -->
+
+ <h1>w3m MANUAL</h1>
+ <div align="right">
+ Akinori Ito<br>
+ aito@fw.ipsj.or.jp
+ </div>
+ <h2>Index</h2>
+ <ul>
+ <li>
+ <a href="#Introduction">
+ Introduction
+ </a>
+ </li>
+ <li>
+ <a href="#Options">
+ Options
+ </a>
+ </li>
+ <li>
+ <a href="#Color">
+ Document Colors
+ </a>
+ </li>
+ <li>
+ <a href="#Functions">
+ Functions and Key bindings
+ </a>
+ </li>
+<!-- mh 2016-06-13 obsolete
+ <li>
+ <a href="#Key:lynx">
+ Lynx-like key bindings
+ </a>
+ </li>
+-->
+ <li>
+ <a href="#Mouse">
+ Mouse Operation
+ </a>
+ </li>
+<!-- mh 2016-06-13 obsolete
+ <li>
+ <a href="#Key:custom">
+ Key customization
+ </a>
+ </li>
+ -->
+ <li>
+ <a href="#LocalCGI">
+ Local CGI scripts
+ </a>
+ </li>
+ </ul>
+ <hr>
+ <h2 id="Introduction">
+ Introduction
+ </h2>
+ <p>
+ w3m is a pager/text-based WWW browser. You can browse local
+ documents and/or documents on the WWW using a terminal emulator.
+ </p>
+ <hr>
+ <h2 id="Options">
+ Options
+ </h2>
+ <p>
+ Command line usage is
+ </p>
+<!-- mh 2016-08-06 invocation adapted to w3m(1). w3m accepts several options and several targets -->
<pre>
- w3m [options] [file|URL]
+ w3m [option]... [file|URL]...
</pre>
-<P>
-If you specify filenames/URLs on command line, these documents are displayed.
-If you specify nothing, w3m reads a document from standard input and display it.
-If no filename and/or URLs are specified and standard input is tty, w3m terminates
-without displaying anything.
+ <p>
+ If you specify filenames/URLs on the command line, these documents
+ are displayed. If you specify nothing, w3m will read a document
+ from standard input and display it. If it doesn't find a document
+ there either then normally w3m will terminate.
+ </p>
+ <p>
+ Options include:
+ </p>
+ <dl>
+<h3>General options</h3>
+ <dt>
+ -B
+ </dt>
+ <dd>
+ <p>
+ <!-- mh 2016-03-29-->
+ with no other target defined, use the bookmark page for startup
+ </p>
+ </dd>
+ <dt>
+ -M
+ </dt>
+ <dd>
+ <p>
+ <!-- mh 2016-03-29-->
+ monochrome display
+ </p>
+ </dd>
+ <dt>
+ -no-mouse
+ </dt>
+ <dd>
+ <p>
+ deactivate mouse support.
+ </p>
+ </dd>
+ <dt>
+ -num
+ </dt>
+ <dd>
+ <p>
+ <!-- mh 2016-03-29-->
+ display each line's number
-<p>
-Options are as follows:
-<dl>
-<dt>+&lt;line number&gt;
-<dd>Move to the specified line.
-<dt>-t width
-<dd>Specify tab width. Default is 8.
-<dt>-r
-<dd>When displaying text/plain document, prohibit emphasis using backspace.
-If you don't specify this option,
-``A^H_'' is interpreted as underlined character and ``A^HA'' as a bold character.
-<dt>-l number
-<dd>Specify line number preserved internally when reading text/plain document
-fron standard input. Default is 10000.
-<dt>-s
-<dd>Display documents with Shift_JIS code.
-<dt>-e
-<dd>Display documents with EUC_JP code.
-<dt>-j
-<dd>Display documents with ISO-2022-JP code.
-<dt>-T type
-<dd>Specify document type. Without this option, document type
-is determined from extension of a file. If the determination
-fails, the document is regarded as text/plain.
-<p>
-Example:<br>
-Read HTML document from standard input and display it
+ </p>
+ </dd>
+<!-- mh 2016-08-06 commented out. As implementation is not verified.
+ <dt>
+ -ppc <i>num</i>
+ </dt>
+ <dd>
+ <p>
+ width of <i>num</i> pixels per character. Range of 4.0 to 32.0,
+ default 8.0. Larger values will make tables
+ narrower. (Implementation not verified)
+ </p>
+ </dd>
+-->
+ <dt>
+ -v
+ </dt>
+ <dd>
+ <p>
+ <!-- mh 2016-03-29-->
+ with no other target defined, welcome users with a built-in page
+ </p>
+ </dd>
+ <dt>
+ -W
+ </dt>
+ <dd>
+ <p>
+ <!-- mh 2016-03-29-->
+ toggle wrapping mode in searches
+ </p>
+ </dd>
+ <dt>
+ -X
+ </dt>
+ <dd>
+ <p>
+ upon exit, do not reinitialize the terminal.
+ </p>
+ </dd>
+ <dt>
+ +<i>num</i>
+ </dt>
+ <dd>
+ <p><!--mh 2016-06-11 -->
+ go to line <i>num</i>; only effective for numbers larger
+ than the number of lines in the terminal
+ </p>
+ </dd>
+<h3>Browser options</h3>
+ <dt>
+ -cols <i>num</i>
+ </dt>
+ <dd>
+ <p>
+ <!-- mh 2016-06-11 -->
+ with stdout as destination; HTML is rendered to lines of <i>num</i>
+ characters
+ </p>
+ </dd>
+ <dt>
+ -cookie
+ </dt>
+ <dd>
+ <p>
+ <!-- mh 2016-03-29-->
+ use stored cookies and accept new ones
+ </p>
+ </dd>
+ <dt>
+ -no-cookie
+ </dt>
+ <dd>
+ <p>
+ <!-- mh 2016-03-29-->
+ neither use stored cookies nor accept new ones
+
+ </p>
+ </dd>
+ <dt>
+ -F
+ </dt>
+ <dd>
+ <p>
+ <!-- mh 2016-03-29-->
+ render frames
+ </p>
+ </dd>
+ <dt>
+ -no-graph
+ </dt>
+ <dd>
+ <p>
+ <!-- mh 2016-03-29-->
+ do not use graphic characters for drawing HTML table and frame
+ borders
+ </p>
+ </dd>
+ <dt>
+ -header <i>string</i>
+ </dt>
+ <dd>
+ <p>
+ <!-- mh 2016-03-29-->
+ append <i>string</i> to the HTTP(S) request. Expected to match
+ the header syntax <span class="mono">"Variable: Value"</span>
+ </p>
+ </dd>
+ <dt>
+ -m
+ </dt>
+ <dd>
+ <p>
+ display document using <q>Internet message mode</q>. With this
+ option, w3m determines document type from header information.
+ This is useful when reading e-mail or Usenet news posts.
+<!-- mh 2016-03-29
+Render the body of Usenet messages according to the header <q>Content-type</q>
+-->
+ </p>
+ </dd>
+ <dt>
+ -no-proxy
+ </dt>
+ <dd>
+ <p>
+ <!-- mh 2016-06-11-->
+ do not use proxy
+ </p>
+ </dd>
+ <dt>
+ -post <i>file</i>
+ </dt>
+ <dd>
+ <p><!--funktionierend 2016-06-28T08:22>-->
+ use POST method to upload data defined in <i>file</i>. The
+ syntax to be used is <span class="mono">"var1=value1[&amp;var2=value2]…"</span>
+ </p>
+ </dd>
+<h3>Text pager options</h3>
+ <dt>
+ -l <i>num</i>
+ </dt>
+ <dd>
+ <p>
+ <!-- mh2016-06-11-->
+ number of lines preserved internally when receiving plain text
+ from stdin (default 10,000)
+ </p>
+ </dd>
+ <dt>
+ -r
+ </dt>
+ <dd>
+ <p>
+ <!-- mh 2016-03-29 -->
+ use caret notation to display special escape characters (such as
+ ANSI escapes or nroff-style backspaces for bold and underlined
+ characters) instead of processing them
+ </p>
+ </dd>
+ <dt>
+ -s
+ </dt>
+ <dd>
+ <p>
+ <!-- mh 2016-03-29-->
+ squeeze multiple blank lines into one
+ </p>
+ </dd>
+
+ <dt>
+ <!--mh 2016-03-29 --> -t <i>num</i>
+ </dt>
+ <dd>
+ <p>
+ <!--mh 2016-03-29--> set tab width to <i>num</i> columns. No effect on stdout
+ </p>
+ </dd>
+<h3>Data type/encoding options</h3>
+ <dt>
+ -I <i>charset</i>
+ </dt>
+ <dd>
+ <p>
+ <!-- mh 2016-03-29-->
+ user defined character encoding of input data
+ </p>
+ </dd>
+ <dt>
+ -O <i>charset</i>
+ </dt>
+ <dd>
+ <p>
+ <!-- mh 2016-03-29 -->
+ user defined character encoding of output data
+ </p>
+ </dd>
+ <dt>
+ -T <i>type</i>
+ </dt>
+ <dd>
+ <p>
+ <!-- mh 2016-06-11-->
+ explicit characterization of input data by MIME type. Without
+ this option, document type is determined from the extension of a
+ file. If the determination fails, the document is regarded as
+ text/plain. For example:
+ </p>
+ <p>
+ Read HTML document from standard input and display it
+ </p>
<pre>
- cat hoge.html | w3m -T text/html
+ cat example.html | w3m -T text/html
</pre>
-<p>
-Display HTML source
+ <p>
+ Display HTML source
+ </p>
<pre>
- w3m -T text/plain hoge.html
+ w3m -T text/plain example.html
</pre>
-<dt>-m
-<dd>Display document with Internet message mode.
-With this option, w3m determines document type from header information.
-It is useful when reading E-mail or NetNews messages.
-<dt>-v
-<dd>visual startup mode.
-<dt>-B
-<dd>Show the bookmark.
-<dt>-bookmark file
-<dd>Specify bookmark file.
-<dt>-M
-<dd>Monochrome display mode.
-<dt>-F
-<dd>Automatically render frame.
-<dt>-S
-<dd>Squeeze blank lines.
-<dt>-X
-<dd>Upon exit, do not display preserved screen.
-<dt>-W
-<dd>Toggle wrap search mode.
-<dt>-o option=value
-<dd>Specify option. The option names and values are
-same as that appears in ~/.w3m/config.
-<dt>-cookie
-<dd>Process cookies.
-<dt>-no-cookie
-<dd>Don't process cookies.
-<dt>-num
-<dd>Show linenumber.
-<dt>-dump
-<dd>Read document specified by URL and dump formatted text into standard
-output. The width of the document become 80. This width can be overridden
-with -cols option.
-<dt>-cols width
-<dd>Specify document width. Used with -dump option.
-<dt>-ppc count
-<dd> Specify the number of pixels per character (default 8.0). Larger
- values will make tables narrower.
-<dt>-dump_source
-<dd>Read document specified by URL and dump the source.
-<dt>-dump_head
-<dd>Read document specified by URL and dump headers.
-<dt>-dump_both
-<dd>Read document specified by URL and dump headers and the source.
-<dt>-dump_extra
-<dd>Read document specified by URL and dump extra informations, headers and the source.
-<dt>-post file
-<dd>use POST method with file content.
-<dt>-header string
-<dd>insert string as a header.
-<dt>-no-proxy
-<dd>Don't use proxy server.
-<dt>-no-graph
-<dd>Use ASCII character to draw frames.
-<dt>-no-mouse
-<dd>Don't activate mouse.
-<dt>-config file
-<dd>specify config file.
-</dl>
-
-<hr>
-<a name="Color"></a>
-<h2>Document color</h2>
-
-Links and images are displayed as follows.
-<div align="center">
-<table border="1">
-<tr><th>&nbsp;</th><th>Color mode</th><th>Monochrome mode</th></tr>
-<tr><td>links</td><td>blue</td><td>underline</td></tr>
-<tr><td>inline images</td><td>green</td><td>reverse</td></tr>
-<tr><td>form input</td><td>red</td><td>reverse</td></tr>
-</table>
-</div>
-These colors can be customized using option setting command "o".
-
-<hr>
-<a name="Key:orig"></a>
-<h2>Key binding</h2>
-
-After invocation, you can operate w3m by one-character commands from
-the keyboard.
-<P>
-Here's the original key-binding table. If you are using Lynx-like key
-bindings, see <a href="#Key:lynx">the Lynx-like key binding</a>.
-
-<H3>Page/Cursor motion</H3>
-<table>
-<TR><TD WIDTH=100>SPC,C-v<TD>Forward page
-<TR><TD>b,ESC v<TD>Backward page
-<TR><TD>l,C-f<TD>Cursor right
-<TR><TD>h,C-b<TD>Cursor left
-<TR><TD>j,C-n<TD>Cursor down
-<TR><TD>k,C-p<TD>Cursor up
-<TR><TD>J<TD>Roll up one line
-<TR><TD>K<TD>Roll down one line
-<TR><TD>^,C-a<TD>Go to the beginning of line
-<TR><TD>$,C-e<TD>Go to the end of line
-<TR><TD>w<TD>Go to next word
-<TR><TD>W<TD>Go to previous word
-<TR><TD>&gt;<TD>Shift screen right
-<TR><TD>&lt;<TD>Shift screen left
-<TR><TD>.<TD>Shift screen one column right
-<TR><TD>,<TD>Shift screen one column left
-<TR><TD>g,M-&lt;<TD>Go to the first line
-<TR><TD>G,M-&gt;<TD>Go to the last line
-<TR><TD>ESC g<TD>Go to specified line
-<TR><TD>Z<TD>Move to the center line
-<TR><TD>z<TD>Move to the center column
-<TR><TD>TAB<TD>Move to next hyperlink
-<TR><TD>C-u,ESC TAB<TD>Move to previous hyperlink
-<TR><TD>[<TD>Move to the first hyperlink
-<TR><TD>]<TD>Move to the last hyperlink
-</table>
-
-<H3>Hyperlink operation</H3>
-<table>
-<TR><TD WIDTH=100>RET<TD>Follow hyperlink
-<TR><TD>a, ESC RET<TD>Save link to file
-<TR><TD>u<TD>Peek link URL
-<TR><TD>i<TD>Peek image URL
-<TR><TD>I<TD>View inline image
-<TR><TD>ESC I<TD>Save inline image to file
-<TR><TD>:<TD>Mark URL-like strings as anchors
-<TR><TD>ESC :<TD>Mark Message-ID-like strings as news anchors
-<TR><TD>c<TD>Peek current URL
-<TR><TD>=<TD>Display information about current document
-<TR><TD>C-g<TD>Show current line number
-<TR><TD>C-h<TD>View history of URL
-<TR><TD>F<TD>Render frame
-<TR><TD>M<TD>Browse current document using external browser
-(use 2M and 3M to invoke second and third browser)
-<TR><TD>ESC M<TD>Browse link using external browser
-(use 2ESC M and 3ESC M to invoke second and third browser)
-</table>
-
-<H3>File/Stream operation</H3>
-<table>
-<TR><TD WIDTH=100>U<TD>Open URL
-<TR><TD>V<TD>View new file
-<TR><TD>@<TD>Execute shell command and load
-<TR><TD>#<TD>Execute shell command and browse
-</table>
-
-<H3>Buffer operation</H3>
-<table>
-<TR><TD WIDTH=100>B<TD>Back to the previous buffer
-<TR><TD>v<TD>View HTML source
-<TR><TD>s<TD>Select buffer
-<TR><TD>E<TD>Edit buffer source
-<TR><TD>C-l<TD>Redraw screen
-<TR><TD>R<TD>Reload buffer
-<TR><TD>S<TD>Save buffer
-<TR><TD>ESC s<TD>Save source
-<TR><TD>ESC e<TD>Edit buffer image
-</table>
-
-<H3>Buffer selection mode</H3>
-<table>
-<TR><TD WIDTH=100>k, C-p<TD>Select previous buffer
-<TR><TD>j, C-n<TD>Select next buffer
-<TR><TD>D<TD>Delect current buffer
-<TR><TD>RET<TD>Go to the selected buffer
-</table>
-
-<H3>Bookmark operation</H3>
-<table>
-<TR><TD WIDTH=100>ESC b<TD>Load bookmark
-<TR><TD>ESC a<TD>Add current to bookmark
-</table>
-
-<H3>Search</H3>
-<table>
-<TR><TD WIDTH=100>/,C-s<TD>Search forward
-<TR><TD>?,C-r<TD>Search backward
-<TR><TD>n<TD>Search next
-<TR><TD>N<TD>Search previous
-<TR><TD>C-w<TD>Toggle wrap search mode
-</table>
-
-<H3>Mark operation</H3>
-<table>
-<TR><TD WIDTH=100>C-SPC<TD>Set/unset mark
-<TR><TD>ESC p<TD>Go to previous mark
-<TR><TD>ESC n<TD>Go to next mark
-<TR><TD>"<TD>Mark by regular expression
-</table>
-
-<H3>Miscellany</H3>
-<table>
-<TR><TD WIDTH=100>!<TD>Execute shell command
-<TR><TD>H<TD>Help (load this file)
-<TR><TD>o<TD>Set option
-<TR><TD>C-k<TD>Show cookie jar
-<TR><TD>C-c<TD>Stop
-<TR><TD>C-z<TD>Suspend
-<TR><TD>q<TD>Quit (with confirmation, if you like)
-<TR><TD>Q<TD>Quit without confirmation
-</table>
-
-<H3>Line-edit mode</H3>
-<table>
-<TR><TD WIDTH=100>C-f<TD>Move cursor forward
-<TR><TD>C-b<TD>Move cursor backward
-<TR><TD>C-h<TD>Delete previous character
-<TR><TD>C-d<TD>Delete current character
-<TR><TD>C-k<TD>Kill everything after cursor
-<TR><TD>C-u<TD>Kill everything before cursor
-<TR><TD>C-a<TD>Move to the top of line
-<TR><TD>C-e<TD>Move to the bottom of line
-<TR><TD>C-p<TD>Fetch the previous string from the history list
-<TR><TD>C-n<TD>Fetch the next string from the history list
-<TR><TD>TAB,SPC<TD>Complete filename
-<TR><TD>RETURN<TD>Accept
-</table>
-
-<hr>
-<a name="Key:lynx"></a>
-<h2>Lynx-like key binding</h2>
-
-If you have chosen `Lynx-like key binding' at the compile time,
-you can use the following key binding.
-
-<H3>Page/Cursor motion</H3>
-<table>
-<TR><TD WIDTH=100>SPC,C-v,+<TD>Forward page
-<TR><TD>b,ESC v,-<TD>Previous page
-<TR><TD>l<TD>Cursor right
-<TR><TD>h<TD>Cursor left
-<TR><TD>j<TD>Cursor down
-<TR><TD>k<TD>Cursor up
-<TR><TD>J<TD>Roll up one line
-<TR><TD>K<TD>Roll down one line
-<TR><TD>^<TD>Go to the beginning of line
-<TR><TD>$<TD>Go to the end of line
-<TR><TD>&gt;<TD>Shift screen right
-<TR><TD>&lt;<TD>Shift screen left
-<TR><TD>C-a<TD>Go to the first line
-<TR><TD>C-e<TD>Go to the last line
-<TR><TD>G<TD>Go to the specified line
-<TR><TD>Z<TD>Move to the center line
-<TR><TD>z<TD>Move to the center column
-<TR><TD>TAB,C-n,Down arrow<TD>Move to next hyperlink
-<TR><TD>ESC TAB,C-p,Up arrow<TD>Move to previous link
-<TR><TD>C-g<TD>Show current page position
-</table>
-
+ </dd>
+<h3>Options for data output, followed by immediate exit</h3>
+ <dt>
+ -dump
+ </dt>
+ <dd>
+ <p>
+ read document specified by URL and dump page rendered as text
+ into standard output.
+ <!-- mh 2016-03-29 -->
+ Is set implicitly when output is directed
+ to a file or pipe. A width of 80 columns is used unless option
+ -cols sets another value.
+ </p>
+ </dd>
+ <dt>
+ -dump_source
+ </dt>
+ <dd>
+ <p>
+ <!-- mh 2016-03-29-->
+ dump the page's source code into stdout
+ </p>
+ </dd>
+ <dt>
+ -dump_head
+ </dt>
+ <dd>
+ <p>
+ <!-- mh 2016-03-29-->
+ dump response of a HEAD request for a URL into stdout
+ </p>
+ </dd>
+ <dt>
+ -dump_both
+ </dt>
+ <dd>
+ <p>
+ <!-- mh 2016-03-29-->
+ dump HEAD, and source code for a URL into stdout
-<H2>Hyperlink operation</H2>
-<table>
-<TR><TD WIDTH=100>RET, C-f, Right arrow<TD>Follow hyperlink
-<TR><TD>d, ESC RET<TD>Save link to file
-<TR><TD>u<TD>Peek link URL
-<TR><TD>i<TD>Peek image URL
-<TR><TD>I<TD>View inline image
-<TR><TD>ESC I<TD>Save inline image to file
-<TR><TD>:<TD>Mark URL-like strings as anchors
-<TR><TD>ESC :<TD>Mark Message-ID-like strings as news anchors
-<TR><TD>c<TD>Peek current URL
-<TR><TD>=<TD>Display information about current document
-<TR><TD>C-h<TD>View history of URL
-<TR><TD>F<TD>Render frame
-<TR><TD>M<TD>Browse current document using external browser
-(use 2M and 3M to invoke second and third browser)
-<TR><TD>ESC M<TD>Browse link using external browser
-(use 2ESC M and 3ESC M to invoke second and third browser)
-</table>
+ </p>
+ </dd>
+ <dt>
+ -dump_extra
+ </dt>
+ <dd>
+ <p>
+ <!-- mh 2016-03-29-->
+ dump HEAD, source code, and extra information for a URL into
+ stdout
+ </p>
+ </dd>
-<H2>File/Stream operation</H2>
-<table>
-<TR><TD WIDTH=100>g,U<TD>Open URL
-<TR><TD>V<TD>View new file
-<TR><TD>@<TD>Execute shell command and load
-<TR><TD>#<TD>Execute shell command and browse
-</table>
+<h3>Options for overriding default settings and resources</h3>
+
+ <dt>
+ -bookmark <i>file</i>
+ </dt>
+ <dd>
+ <p>
+ <!-- mh 2016-03-29-->
+ use <i>file</i> instead of the default bookmark.html file
+ </p>
+ </dd>
+ <dt>
+ -config <i>file</i>
+ </dt>
+ <dd>
+ <p>
+ <!--mh 2016-06-11-->
+ use <i>file</i> instead of the default configuration file
+ </p>
+ </dd>
+ <dt>
+ -o <i>option</i>=<i>value</i>
+ </dt>
+ <dd>
+ <p>
+ <!-- mh 2016-03-29-->
+ modify one configuration item with an explicitly given value; without <i>option=value</i>, equivalent to <i>-show-option</i>
+ </p>
+ </dd>
+ </dl>
+ <hr>
+ <h2 id="Color">
+ Document Colors
+ </h2>
+ <p>
+ Hyperlinks and images are displayed as follows.
+ </p>
+ <div align="center">
+ <table border="1">
+ <tr>
+ <th>
+ </th>
+ <th>
+ Color mode
+ </th>
+ <th>
+ Monochrome mode
+ </th>
+ </tr>
+ <tr>
+ <td>
+ Hyperlinks
+ </td>
+ <td>
+ blue
+ </td>
+ <td>
+ underline
+ </td>
+ </tr>
+ <tr>
+ <td>
+ Inline images
+ </td>
+ <td>
+ green
+ </td>
+ <td>
+ reverse
+ </td>
+ </tr>
+ <tr>
+ <td>
+ Form input
+ </td>
+ <td>
+ red
+ </td>
+ <td>
+ reverse
+ </td>
+ </tr>
+ </table>
+ </div>
+ <p>
+ These colors can be customized using the options setting command
+ <i>o</i>.
+ </p>
+ <hr>
+ <h2 id="Functions">
+ Functions and Key bindings
+ </h2>
+
+ <p>
+ After invocation, you can control w3m by typing in functions by name
+ or with keystroke combinations bound to a function. There are
+ default key bindings.
+<!-- mh 2016-06-13 obsolete
+ If you prefer using Lynx-like
+ key bindings, make w3m start with the respective keymap file keymap.lynx. (see w3m (1)).-->
+ </p>
+<!--
+ <h2 id="Key:custom">
+ Key customization
+ </h2>
+-->
+ <p>
+ You can customize the key bindings (except those for menu
+ operations and line-editing) in a ~/.w3m/keymap file. For example,
+ </p>
-<H2>Buffer operation</H2>
-<table>
-<TR><TD WIDTH=100>B, C-b, Left arrow<TD>Back to the previous buffer
-<TR><TD>\<TD>View HTML source
-<TR><TD>s, C-h<TD>Select buffer
-<TR><TD>E<TD>Edit buffer source
-<TR><TD>C-l, C-w<TD>Redraw screen
-<TR><TD>R, C-r<TD>Reload buffer
-<TR><TD>S, p<TD>Save buffer
-<TR><TD>ESC s<TD>Save source
-<TR><TD>ESC e<TD>Edit buffer image
-</table>
-
-<H2>Buffer selection mode</H2>
-<table>
-<TR><TD WIDTH=100>k, C-p<TD>Select previous buffer
-<TR><TD>j, C-n<TD>Select next buffer
-<TR><TD>D<TD>Delect current buffer
-<TR><TD>RET<TD>Go to the selected buffer
-</table>
-
-<H2>Bookmark operation</H2>
-<table>
-<TR><TD WIDTH=100>v, ESC b<TD>Load bookmark
-<TR><TD>a, ESC a<TD>Add current to bookmark
-</table>
-
-<H2>Search</H2>
-<table>
-<TR><TD WIDTH=100>/, C-s<TD>Search forward
-<TR><TD>n<TD>Search next
-<TR><TD>w<TD>Toggle wrap search mode
-</table>
-
-<H2>Mark operation</H2>
-<table>
-<TR><TD WIDTH=100>C-SPC<TD>Set/unset mark
-<TR><TD>P<TD>Go to previous mark
-<TR><TD>N<TD>Go to next mark
-<TR><TD>"<TD>Mark by regular expression
-</table>
-
-<H2>Miscellany</H2>
-<table>
-<TR><TD WIDTH=100>!<TD>Execute shell command
-<TR><TD>H, ?<TD>Help (load this file)
-<TR><TD>o<TD>Set option
-<TR><TD>C-k<TD>Show cookie jar
-<TR><TD>C-c<TD>Stop
-<TR><TD>C-z<TD>Suspend
-<TR><TD>q<TD>Quit (with confirmation, if you like)
-<TR><TD>Q<TD>Quit without confirmation
-</table>
-
-<H2>Line-edit mode</H2>
-<table>
-<TR><TD WIDTH=100>C-f<TD>Move cursor forward
-<TR><TD>C-b<TD>Move cursor backward
-<TR><TD>C-h<TD>Delete previous character
-<TR><TD>C-d<TD>Delete current character
-<TR><TD>C-k<TD>Kill everything after cursor
-<TR><TD>C-u<TD>Kill everything before cursor
-<TR><TD>C-a<TD>Move to the top of line
-<TR><TD>C-e<TD>Move to the bottom of line
-<TR><TD>C-p<TD>Fetch the previous string from the history list
-<TR><TD>C-n<TD>Fetch the next string from the history list
-<TR><TD>TAB,SPC<TD>Complete filename
-<TR><TD>RETURN<TD>Accept
-</table>
-
-<hr>
-<a name="Mouse"></a>
-<h2>Mouse operation</h2>
-If w3m is compiled with mouse option and you are using
-xterm/kterm/rxvt (in this case, you have to set the TERM
-environment variable to `xterm' or `kterm'.) or GPM
-environment, you can use mouse
-for the navigation.
-<p>
-<table border=0>
-<tr><td>left click
-<td>Move the cursor to the place pointed by the mouse cursor.
-If you click the cursor and it is on an anchor, follow the anchor.
-<tr><td>middle click
-<td>Back to the previous buffer.
-<tr><td>right click
-<td>Open pop-up menu. You can choose an item by clicking it.
-<tr><td>left drag
-<td>Scroll document. The default behavior is to grab the document
-and drag it. You can reverse the behavior (grab the window and drag it)
-with the option setting panel.
-</table>
-<p>
+<pre>
+ keymap C-o NEXT_PAGE
+</pre>
+ <p>
+ binds the command <span class="mono">NEXT_PAGE</span> (normally bound to SPC and C-v)
+ to control-o. See <a href="README.func">README.func</a> for a list
+ of available functions. Original and Lynx-like keymap definitions
+ are provided as examples: <a href="keymap.default">keymap.default</a>
+ and <a href="keymap.lynx">keymap.lynx</a>.
+ </p>
-<hr>
-<a name="Key:custom"></a>
-<h2>Key customization</h2>
-You can customize the key binding (except line-editing keymap)
-by describing ~/.w3m/keymap. For example,
-<pre>
+ <p>
+ Throughout, the <i>C-</i> and <i>M-</i> notations indicate the
+ modifiers <i>control</i> and <i>meta</i>. The <i>ALT</i>-key
+ replaces the latter whereas pressing the <i>ESC</i>-key toggles
+ between <i>meta</i>-modified and simple keystrokes. The minus
+ indicates pressing the keys simultaneously wheras a space
+ represents that one key is pressed after the other, i.e. <i>2 M</i>
+ simply means <i>2</i> followed by <i>M</i>.
+ </p>
- keymap C-o NEXT_PAGE
-</pre>
-binds `NEXT_PAGE' function (normally bound to SPC and C-v)
-to control-o. See <a href="README.func">README.func</a> for
-list of available functions. Original and Lynx-like keymap
-definitions are provided (<a href="keymap.default">keymap.default</a>
-and <a href="keymap.lynx">keymap.lynx</a>) as examples.
+ <table border="1" width="100%">
+ <colgroup>
+ <col width="20%">
+ <col width="20%">
+ <col width="20%">
+ <col width="40%">
+ </colgroup>
+ <tr>
+ <th rowspan="2">
+ Function
+ </th>
+ <th colspan="2">Key binding
+ </th>
+ <th rowspan="2">
+ Description
+ </th>
+ </tr>
+ <tr>
+ <th>
+ Default
+ </th>
+ <th>
+ Lynx-like
+ </th>
+ </tr>
+ <tr>
+ <td colspan="4">
+ <h3>In-page navigation</h3>
+</td>
+ </tr>
+ <tr>
+ <td>
+ NEXT_PAGE
+ </td>
+ <td>
+ SPC, C-v, +, PGDN
+ </td>
+ <td>
+ SPC, C-v, +
+ </td>
+ <td>
+ Scroll one page downwards
+ </td>
+ </tr>
+ <tr>
+ <td>
+ PREVIOUS_PAGE
+ </td>
+ <td>
+ b, M-v, -, PGUP
+ </td>
+ <td>
+ b, M-v, -
+ </td>
+ <td>
+ Scroll one page upwards
+ </td>
+ </tr>
+ <tr>
+ <td>
+ MOVE_RIGHT
+ </td>
+ <td>
+ l, C-f, RIGHT
+ </td>
+ <td>
+ l
+ </td>
+ <td>
+ Move cursor right (with a half-screen shift at the screen edge)
+ </td>
+ </tr>
+ <tr>
+ <td>
+ MOVE_LEFT
+ </td>
+ <td>
+ h, C-b, LEFT
+ </td>
+ <td>
+ h
+ </td>
+ <td>
+ Move cursor left (with a half-screen shift at the screen edge)
+ </td>
+ </tr>
+ <tr>
+ <td>
+ MOVE_DOWN
+ </td>
+ <td>
+ j, C-n, DOWN
+ </td>
+ <td>
+ j
+ </td>
+ <td>
+ Move cursor down (with a one-line scroll at the screen edge)
+ </td>
+ </tr>
+ <tr>
+ <td>
+ MOVE_UP
+ </td>
+ <td>
+ k, C-p, UP
+ </td>
+ <td>
+ k
+ </td>
+ <td>
+ Move cursor up (with a one-line scroll at the screen edge)
+ </td>
+ </tr>
+ <tr>
+ <td>
+ UP
+ </td>
+ <td>
+ J
+ </td>
+ <td>
+ J
+ </td>
+ <td>
+ Scroll the screen up one line
+ </td>
+ </tr>
+ <tr>
+ <td>
+ DOWN
+ </td>
+ <td>
+ K
+ </td>
+ <td>
+ K
+ </td>
+ <td>
+ Scroll the screen down one line
+ </td>
+ </tr>
+ <tr>
+ <td>
+ LINE_BEGIN
+ </td>
+ <td>
+ ^, C-a
+ </td>
+ <td>
+ ^
+ </td>
+ <td>
+ Go to the beginning of the line
+ </td>
+ </tr>
+ <tr>
+ <td>
+ LINE_END
+ </td>
+ <td>
+ $, C-e
+ </td>
+ <td>
+ $
+ </td>
+ <td>
+ Go to the end of the line
+ </td>
+ </tr>
+ <tr>
+ <td>
+ NEXT_WORD
+ </td>
+ <td>
+ w
+ </td>
+ <td>
+ w
+ </td>
+ <td>
+ Move to the next word
+ </td>
+ </tr>
+ <tr>
+ <td>
+ PREVIOUS_WORD
+ </td>
+ <td>
+ W
+ </td>
+ <td>
+ W
+ </td>
+ <td>
+ Move to the previous word
+ </td>
+ </tr>
+ <tr>
+ <td>
+ SHIFT_RIGHT
+ </td>
+ <td>
+ >
+ </td>
+ <td>
+ >
+ </td>
+ <td>
+ Shift screen right
+ </td>
+ </tr>
+ <tr>
+ <td>
+ SHIFT_LEFT
+ </td>
+ <td>
+ <
+ </td>
+ <td>
+ <
+ </td>
+ <td>
+ Shift screen left
+ </td>
+ </tr>
+ <tr>
+ <td>
+ RIGHT
+ </td>
+ <td>
+ .
+ </td>
+ <td>
+ .
+ </td>
+ <td>
+ Shift screen one column right
+ </td>
+ </tr>
+ <tr>
+ <td>
+ LEFT
+ </td>
+ <td>
+ ,
+ </td>
+ <td>
+ ,
+ </td>
+ <td>
+ Shift screen one column left
+ </td>
+ </tr>
+ <tr>
+ <td>
+ BEGIN
+ </td>
+ <td>
+ g, M-<, HOME
+ </td>
+ <td>
+ C-a, M-<
+ </td>
+ <td>
+ Go to the first line
+ </td>
+ </tr>
+ <tr>
+ <td>
+ END
+ </td>
+ <td>
+ G, M->, END
+ </td>
+ <td>
+ C-e, M->
+ </td>
+ <td>
+ Go to the last line
+ </td>
+ </tr>
+ <tr>
+ <td>
+ GOTO_LINE
+ </td>
+ <td>
+ M-g
+ </td>
+ <td>
+ G
+ </td>
+ <td>
+ Go to the specified line
+ </td>
+ </tr>
+ <tr>
+ <td>
+ LINE_INFO
+ </td>
+ <td>
+ C-g
+ </td>
+ <td>
+ C-g
+ </td>
+ <td>
+ Display current position in document
+ </td>
+ </tr>
+ <tr>
+ <td>
+ CENTER_H
+ </td>
+ <td>
+ Z
+ </td>
+<!--Correction by mh 2014-04-06
+Description for keybinding of z and Z had been mingled
+-->
+ <td>
+ Z
+ </td>
+ <td>
+ Center screen right and left of the cursor column
+ </td>
+ </tr>
+ <tr>
+ <td>
+ CENTER_V
+ </td>
+ <td>
+ z
+ </td>
+ <td>
+ z
+ </td>
+ <td>
+ Center screen above and below the cursor line
+ </td>
+ </tr>
+ <tr>
+ <td>
+ NEXT_LINK
+ </td>
+ <td>
+ TAB
+ </td>
+ <td>
+ TAB, C-n, DOWN
+ </td>
+ <td>
+ Move to the next hyperlink
+ </td>
+ </tr>
+ <tr>
+ <td>
+ PREVIOUS_LINK
+ </td>
+ <td>
+ M-TAB, C-u
+ </td>
+ <td>
+ M-TAB, C-u, C-p, UP
+ </td>
+ <td>
+ Move to the previous hyperlink
+ </td>
+<!-- Annotion mh 2016-04-06
+Keybinding description for C-g had been moved as it did not fit to "Hyperlink operation" and position in the default and lynx-like series differed
+ -->
+ </tr>
+ <tr>
+ <td>
+ LINK_BEGIN
+ </td>
+ <td>
+ [
+ </td>
+ <td>
+ [
+ </td>
+ <td>
+ Move to the first hyperlink
+ </td>
+ </tr>
+ <tr>
+ <td>
+ LINK_END
+ </td>
+ <td>
+ ]
+ </td>
+ <td>
+ ]
+ </td>
+ <td>
+ Move to the last hyperlink
+ </td>
+ </tr>
+<tr>
+<td>MOVE_LIST_MENU</td>
+<td>M-m</td>
+<td>M-m</td>
+<td>Pop up menu to navigate between hyperlinks</td>
+</tr>
+<!-- </table>-->
+ <tr>
+ <td colspan="4">
+ <h3>Hyperlink Operations</h3>
+ </td>
+ </tr>
+<!-- <table>-->
+ <tr>
+ <td>
+ GOTO_LINK
+ </td>
+ <td>
+ C-j, C-m, RET
+ </td>
+ <td width="100">
+ C-f, C-j, C-m, RET, RIGHT
+ </td>
+ <td>
+ Follow current hyperlink in a new buffer
+ </td>
+ </tr>
+<tr>
+<td>LIST_MENU</td>
+<td>M-l</td>
+<td>M-l</td>
+<td>Pop up hyperlink menu and select one to be followed</td>
+</tr>
+ <tr>
+ <td>
+ SAVE_LINK
+ </td>
+ <td>
+ a, M-RET
+ </td>
+ <td>
+ d, M-RET
+ </td>
+ <td>
+ Save the hyperlink target
+ </td>
+ </tr>
+ <tr>
+ <td>
+ PEEK_LINK
+ </td>
+ <td>
+ u
+ </td>
+ <td>
+ u
+ </td>
+ <td>
+ Show target address
+ </td>
+ </tr>
+ <tr>
+ <td>
+ PEEK_IMG
+ </td>
+ <td>
+ i
+ </td>
+ <td>
+ i
+ </td>
+ <td>
+ Show image address
+ </td>
+ </tr>
+ <tr>
+ <td>
+ VIEW_IMAGE
+ </td>
+ <td>
+ I
+ </td>
+ <td>
+ I
+ </td>
+ <td>
+ Display image in viewer
+ </td>
+ </tr>
+ <tr>
+ <td>
+ SAVE_IMAGE
+ </td>
+ <td>
+ M-I
+ </td>
+ <td>
+ M-I
+ </td>
+ <td>
+ Save inline image
+ </td>
+ </tr>
+<tr>
+<td>MARK_WORD</td>
+<td>;</td>
+<td>;</td>
+<td>Turn current word into hyperlink</td>
+</tr>
+ <tr>
+ <td>
+ MARK_URL
+ </td>
+ <td>
+ :
+ </td>
+ <td>
+ :
+ </td>
+ <td>
+ Turn URL-like strings into hyperlinks
+ </td>
+ </tr>
+ <tr>
+ <td>
+ MARK_MID
+ </td>
+ <td>
+ M-:
+ </td>
+ <td>
+ M-:
+ </td>
+ <td>
+<!-- changed due to mail dated Mon, 04 Apr 2016 00:47:09 +0900 (JST)
+from Tatsuya Kinoshita -->
+ Turn Message-ID-like strings into hyperlinks
+ </td>
+ </tr>
+ <tr>
+ <td>
+ PEEK
+ </td>
+ <td>
+ c
+ </td>
+ <td>
+ c
+ </td>
+ <td>
+ Show current address
+ </td>
+ </tr>
+ <tr>
+ <td>
+ INFO
+ </td>
+ <td>
+ =
+ </td>
+ <td>
+ =
+ </td>
+ <td>
+ Display information about the current document
+ </td>
+ </tr>
+ <tr>
+ <td>
+ HISTORY
+ </td>
+ <td>
+ C-h
+ </td>
+ <td>
+ C-h
+ </td>
+ <td>
+ Show browsing history
+ </td>
+ </tr>
+ <tr>
+ <td>
+ EXTERN
+ </td>
+ <td>
+ M
+ </td>
+ <td>
+ M
+ </td>
+ <td>
+ Browse current document using external browser (prefix 2, 3, ...,
+ or 9 to invoke alternate configured browsers, e.g. 3 M)
+ </td>
+ </tr>
+ <tr>
+ <td>
+ EXTERN_LINK
+ </td>
+ <td>
+ M-M
+ </td>
+ <td>
+ M-M
+ </td>
+ <td>
+ Browse link using external browser (prefixed as above, e.g.
+ 3 M-M)
+ </td>
+ </tr>
+<!-- </table>-->
+ <tr>
+ <td colspan="4">
+ <h3>Bookmark management</h3>
+ </td>
+ </tr>
+<!-- <table>-->
+ <tr>
+ <td>
+ BOOKMARK
+ </td>
+ <td>
+ M-b
+ </td>
+ <td>
+ v, M-b
+ </td>
+ <td>
+ View bookmarks
+ </td>
+ </tr>
+ <tr>
+ <td>
+ ADD_BOOKMARK
+ </td>
+ <td>
+ M-a
+ </td>
+ <td>
+ a, M-a
+ </td>
+ <td>
+ Add current page to bookmarks
+ </td>
+ </tr>
+<!-- </table>-->
+ <tr>
+ <td colspan="4">
+ <h3>File/Stream Operations</h3>
+ </td>
+ </tr>
+<!-- <table>-->
+ <tr>
+ <td>
+ GOTO
+ </td>
+ <td>
+ U
+ </td>
+ <td>
+ g, U
+ </td>
+ <td>
+ Open specified document in a new buffer
+ </td>
+ </tr>
+<tr>
+<td>GOTO_RELATIVE</td>
+<td>M-u</td>
+<td>M-u</td>
+<td>Open relative address in a new buffer</td>
+</tr>
+ <tr>
+ <td>
+ LOAD
+ </td>
+ <td>
+ V
+ </td>
+ <td>
+ V
+ </td>
+ <td>
+ Open local file in a new buffer
+ </td>
+ </tr>
+ <tr>
+ <td>
+ READ_SHELL
+ </td>
+ <td>
+ @
+ </td>
+ <td>
+ @
+ </td>
+ <td>
+ <!--Execute shell command and view output-->
+ <!--mh 2016-06-13 No difference to PIPE_SHELL could be discerned-->
+ Execute shell command and display output in a new buffer
+ </td>
+ </tr>
+ <tr>
+ <td>
+ PIPE_SHELL
+ </td>
+ <td>
+ #
+ </td>
+ <td>
+ #
+ </td>
+ <td>
+ <!--Execute shell command and browse output-->
+ <!--mh 2016-06-13 No difference to READ_SHELL could be discerned-->
+ Execute shell command and display output in a new buffer
+ </td>
+ </tr>
+<!-- </table>-->
+ <tr>
+ <td colspan="4">
+ <h3>Content Operations</h3>
+ </td>
+ </tr>
+<!-- <table>-->
+ <tr>
+ <td>
+ VIEW <!-- is an alias to SOURCE -->
+ </td>
+ <td>
+ v
+ </td>
+ <td>
+ \
+ </td>
+ <td>
+ Toggle between source code and rendered view of the document
+ </td>
+ </tr>
+<tr>
+<td>LIST</td>
+<td>L</td>
+<td>L</td>
+<td>List link elements, hyperlinks and images</td>
+</tr>
+ <tr>
+ <td>
+ FRAME
+ </td>
+ <td>
+ F
+ </td>
+ <td>
+ F
+ </td>
+ <td>
+ Toggle rendering HTML frames
+ </td>
+ </tr>
+ <tr>
+ <td>
+ REDRAW
+ </td>
+ <td>
+ C-l
+ </td>
+ <td>
+ C-l, C-w
+ </td>
+ <td>
+ Draw the screen anew
+ </td>
+ </tr>
+ <tr>
+ <td>
+ RELOAD
+ </td>
+ <td>
+ R
+ </td>
+ <td>
+ R, C-r
+ </td>
+ <td>
+ Load current document anew
+ </td>
+ </tr>
+ <tr>
+ <td>
+ EDIT
+ </td>
+ <td>
+ E
+ </td>
+ <td>
+ E
+ </td>
+ <td>
+ Edit local source
+ </td>
+ </tr>
+ <tr>
+ <td>
+ EDIT_SCREEN
+ </td>
+ <td>
+ M-e
+ </td>
+ <td>
+ M-e
+ </td>
+ <td>
+ Edit rendered copy of document
+ </td>
+ </tr>
+<tr>
+<td>PIPE_BUF</td>
+<td>|</td>
+<td>|</td>
+<td>Pipe current buffer through a shell command and display output</td>
+</tr>
+ <tr>
+ <td>
+ DOWNLOAD <!-- is an alias to SAVE -->
+ </td>
+ <td>
+ M-s
+ </td>
+ <td>
+ M-s
+ </td>
+ <td>
+ Save document source
+ </td>
+ </tr>
+ <tr>
+ <td>
+ SAVE_SCREEN
+ </td>
+ <td>
+ S
+ </td>
+ <td>
+ S, p
+ </td>
+ <td>
+ Save rendered document
+ </td>
+ </tr>
+<!-- </table>-->
+ <tr>
+ <td colspan="4">
+ <h3>Buffer/Tab Navigation</h3>
+ </td>
+ </tr>
+<!-- <table>-->
+ <tr>
+ <td>
+ BACK
+ </td>
+ <td>
+ B
+ </td>
+ <td>
+ B, C-b, LEFT
+ </td>
+ <td>
+ Close current buffer and return to the one below in stack
+ </td>
+ </tr>
+ <tr>
+ <td>
+ GOTO_HOME
+ </td>
+ <td>
+ C-_
+ </td>
+ <td>
+ </td>
+ <td>
+ Return to the homepage (specified HTTP_HOME or WWW_HOME variable)
+ </td>
+ </tr>
+ <tr>
+ <td>
+ SELECT_MENU
+ </td>
+ <td>
+ s
+ </td>
+ <td>
+ s, C-h
+ </td>
+ <td>
+ Pop up buffer-stack menu
+ </td>
+ </tr>
+ <tr>
+ <td>
+ TAB_MENU
+ </td>
+ <td>
+ M-t
+ </td>
+ <td>
+ M-t
+ </td>
+ <td>
+ Pop up tab selection menu
+ </td>
+ </tr>
+ <tr>
+ <td>
+ NEW_TAB
+ </td>
+ <td>
+ T
+ </td>
+ <td>
+ T
+ </td>
+ <td>
+ Open a new tab (with current document)
+ </td>
+ </tr>
+ <tr>
+ <td>
+ TAB_LINK
+ </td>
+ <td>
+ C-t
+ </td>
+ <td>
+ C-t
+ </td>
+ <td>
+ Follow current hyperlink in a new tab
+ </td>
+ </tr>
+ <tr>
+ <td>
+ NEXT_TAB
+ </td>
+ <td>
+ }
+ </td>
+ <td>
+ }
+ </td>
+ <td>
+ Switch to the next tab
+ </td>
+ </tr>
+ <tr>
+ <td>
+ PREV_TAB
+ </td>
+ <td>
+ {
+ </td>
+ <td>
+ {
+ </td>
+ <td>
+ Switch to the previous tab
+ </td>
+ </tr>
+ <tr>
+ <td>
+ CLOSE_TAB
+ </td>
+ <td>
+ C-q
+ </td>
+ <td>
+ C-q
+ </td>
+ <td>
+ Close the current tab
+ </td>
+ </tr>
+<!-- </table>-->
+ <tr>
+ <td colspan="4">
+ <h3>Searches</h3>
+ </td>
+ </tr>
+<!-- <table>-->
+ <tr>
+ <td>
+ SEARCH
+ </td>
+ <td>
+ /
+ </td>
+ <td>
+ /, C-s
+ </td>
+ <td>
+ Search forward
+ </td>
+ </tr>
+ <tr>
+ <td>
+ SEARCH_BACK
+ </td>
+ <td>
+ ?
+ </td>
+ <td>
+ </td>
+ <td>
+ Search backward
+ </td>
+ </tr>
+ <tr>
+ <td>
+ ISEARCH
+ </td>
+ <td>
+ C-s
+ </td>
+ <td>
+ </td>
+ <td>
+ Incremental search forward
+ </td>
+ </tr>
+ <tr>
+ <td>
+ ISEARCH_BACK
+ </td>
+ <td>
+ C-r
+ </td>
+ <td>
+ </td>
+ <td>
+ Incremental search backward
+ </td>
+ </tr>
+ <tr>
+ <td>
+ SEARCH_NEXT
+ </td>
+ <td>
+ n
+ </td>
+ <td>
+ n
+ </td>
+ <td>
+ Continue search forward
+ </td>
+ </tr>
+ <tr>
+ <td>
+ SEARCH_PREV
+ </td>
+ <td>
+ N
+ </td>
+ <td>
+ </td>
+ <td>
+ Continue search backward
+ </td>
+ </tr>
+ <tr>
+ <td>
+ WRAP_TOGGLE
+ </td>
+ <td>
+ C-w
+ </td>
+ <td>
+ w
+ </td>
+ <td>
+ Toggle wrapping mode in searches
+ </td>
+ </tr>
+<!-- </table>-->
+ <tr>
+ <td colspan="4">
+ <h3>Mark Management</h3>
+ </td>
+ </tr>
+<!-- <table>-->
+ <tr>
+ <td>
+ MARK
+ </td>
+ <td>
+ C-SPC
+ </td>
+ <td>
+ C-SPC
+ </td>
+ <td>
+ Set/unset mark
+ </td>
+ </tr>
+ <tr>
+ <td>
+ PREV_MARK
+ </td>
+ <td>
+ M-p
+ </td>
+ <td>
+ P
+ </td>
+ <td>
+ Go to the previous mark
+ </td>
+ </tr>
+ <tr>
+ <td>
+ NEXT_MARK
+ </td>
+ <td>
+ M-n
+ </td>
+ <td>
+ N
+ </td>
+ <td>
+ Go to the next mark
+ </td>
+ </tr>
+ <tr>
+ <td>
+ REG_MARK
+ </td>
+ <td>
+ "
+ </td>
+ <td>
+ "
+ </td>
+ <td>
+ Mark all occurrences of a pattern
+ </td>
+ </tr>
+<!-- </table>-->
+ <tr>
+ <td colspan="4">
+ <h3>Miscellaneous</h3>
+ </td>
+ </tr>
+<!-- <table>-->
+ <tr>
+ <td>
+ COMMAND
+ </td>
+ <td>
+ M-c
+ </td>
+ <td>
+ M-c
+ </td>
+ <td>
+ Invoke one or more semicolon-separated w3m functions
+ </td>
+ </tr>
+<!--
+TODO: Where does this key binding M-Fn come from. I do not find a Fn-key on my keyboard. I do not know how to type in the keystroke combinations listed in keymap.default which are
+keymap M-[E MENU
+keymap M-[L MENU
+keymap M-[2~ MENU
+keymap M-[28~ MENU
+<tr>
+<td>MENU</td>
+<Td>M-Fn</Td>
+<td></td>
+<td>Pop up menu</td>
+</tr>
+-->
+ <tr>
+ <td>
+ HELP
+ </td>
+ <td>
+ H
+ </td>
+ <td>
+ H, ?
+ </td>
+ <td>
+ Show help panel
+ </td>
+ </tr>
+ <tr>
+ <td>
+ OPTIONS
+ </td>
+ <td>
+ o
+ </td>
+ <td>
+ o
+ </td>
+ <td>
+ Display options setting panel
+ </td>
+ </tr>
+<tr>
+<td>SET_OPTION</td>
+<td>M-o</td>
+<td>M-o</td>
+<td>Set option</td>
+</tr>
+<tr>
+<td>DEFINE_KEY</td>
+<td>M-k</td>
+<td>M-k</td>
+<td>Define a binding between a key stroke combination and a command</td>
+</tr>
+<tr>
+<td>MOUSE_TOGGLE</td>
+<td>m</td>
+<td>m</td>
+<td>Toggle mouse support</td>
+</tr>
+<tr>
+<td>DOWNLOAD_LIST</td>
+<td>D</td>
+<td>D</td>
+<td>Display downloads panel</td>
+</tr>
+ <tr>
+ <td>
+ COOKIE
+ </td>
+ <td>
+ C-k
+ </td>
+ <td>
+ C-k
+ </td>
+ <td>
+ Show cookie jar
+ </td>
+ </tr>
+<!--
+mh 2016-06-12 Interrupt is an alias to SUSPEND, no need to mention it here
+ <tr>
+ <td>
+ INTERRUPT
+ </td>
+ <td>
+ C-c
+ </td>
+ <td>
+ C-c
+ </td>
+ <td>
+ Interrupt
+ </td>
+ </tr>
+-->
+<tr>
+<td>UNDO</td>
+<td>(</td>
+<td>(</td>
+<td>Cancel the last cursor movement</td>
+</tr>
+<tr>
+<td>REDO</td>
+<td>)</td>
+<td>)</td>
+<td>Cancel the last undo</td>
+</tr>
+ <tr>
+ <td>
+ EXEC_SHELL <!-- is an alias of SHELL -->
+ </td>
+ <td>
+ !
+ </td>
+ <td>
+ !
+ </td>
+ <td>
+ Execute shell command
+ </td>
+ </tr>
+<tr>
+<td>DICT_WORD</td>
+<td>M-w</td>
+<td>M-w</td>
+<td>Execute dictionary command (see <a href="README.dict">README.dict</a>)</td>
+</tr>
+<tr>
+<td>DICT_WORD_AT</td>
+<td>M-W</td>
+<td>M-W</td>
+<td>Execute dictionary command for word at cursor</td>
+</tr>
+<tr>
+<td>VERSION</td>
+<td>r</td>
+<td>r</td>
+<td>Display the version of w3m</td>
+</tr>
+ <tr>
+ <td>
+ SUSPEND
+ </td>
+ <td>
+ C-z
+ </td>
+ <td>
+ C-z
+ </td>
+ <td>
+ Suspend w3m to background. (To be withdrawn with shell
+ command <span class="mono">fg</span>.)
+ </td>
+ </tr>
+ <tr>
+ <td>
+ QUIT
+ </td>
+ <td>
+ q
+ </td>
+ <td>
+ q
+ </td>
+ <td>
+ Quit with confirmation request
+ </td>
+ </tr>
+ <tr>
+ <td>
+ EXIT
+ </td>
+ <td>
+ Q
+ </td>
+ <td>
+ Q
+ </td>
+ <td>
+ Quit at once
+ </td>
+ </tr>
+ </table>
-<hr>
-<a name="LocalCGI"></a>
-<h2>Local CGI</h2>
-You can run CGI scripts using w3m, without any HTTP server.
-It means that w3m behaves like an HTTP server and activates CGI script,
-then w3m reads the output of the script and display it. The
-<a href="file:///$LIB/w3mbookmark?mode=panel&bmark=~/.w3m/bookmark.html&url=MANUAL.html&title=w3m+manual">bookmark registration</a>
-and <a href="file:///$LIB/w3mhelperpanel?mode=panel">helper-app editor</a>
-are realized as local CGI scripts.
-Using local CGI, w3m can be used as a general purpose form interface.
-<P>
-For security reason, CGI scripts invoked by w3m must be in one of
-these directories.
-<ul>
-<li>The directory where w3m-related files are stored
-(typically /usr/local/lib/w3m). This directory can be referred
-as $LIB.
-<li>/cgi-bin/ directory. You can map /cgi-bin/ to any directory you like
-with option setting panel (``Directory corresponds to /cgi-bin'' field).
-You can specify multiple paths separated by `:', like
-/usr/local/cgi-bin:/home/aito/cgi-bin. To use /cgi-bin/ directory,
-you must use file:/cgi-bin URL as follows:
+ <p>
+ There are the following operational modes with built-in key
+ bindings for relevant functions. These bindings are not subject to
+ the DEFINE_KEY function or entries in the file keymap.
+ </p>
+
+ <table border="1" width="100%">
+ <colgroup>
+ <col width="20%">
+ <col width="40%">
+ <col width="40%">
+ </colgroup>
+ <tr>
+ <th>
+ Function<br>(internal name)
+ </th>
+ <th>Key binding
+ </th>
+ <th>
+ Description
+ </th>
+ </tr>
+ <tr>
+ <td colspan="3">
+ <h3>Menu Selection Mode</h3>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ BUF:NEXT</td>
+ <td>
+ j, C-n, DOWN
+ </td>
+ <td>
+ Next item
+ </td>
+ </tr>
+ <tr>
+ <td>BUF:PREV
+ </td>
+ <td>
+ k, C-p, UP
+ </td>
+ <td>
+ Previous item
+ </td>
+ </tr>
+ <tr>
+ <td>
+ BUF:DELETE</td>
+ <td>
+ D
+ </td>
+ <td>
+ Delete item
+ </td>
+ </tr>
+ <tr>
+ <td>
+ BUF:GO
+ </td>
+ <td>
+ SPC, RET, RIGHT
+ </td>
+ <td>
+ Select item
+ </td>
+ </tr>
+<!-- </table>-->
+ <tr>
+ <td colspan="3">
+ <h3>Popup Menu Mode</h3>
+ </td>
+ </tr>
+<!-- <table>-->
+ <tr>
+ <td>
+MENU:SELECT
+ </td>
+ <td>
+ SPC, RET, RIGHT</td>
+ <td>
+ Select
+ </td>
+ </tr>
+ <tr>
+ <td>
+MENU:CLOSE
+ </td>
+ <td>C-c
+ </td>
+ <td>
+ Close menu
+ </td>
+ </tr>
+ <tr>
+ <td>
+MENU:CANCEL
+ </td>
+ <td>
+ LEFT, BKSPC, C-h</td>
+ <td>
+ One selection step backward
+ </td>
+ </tr>
+ <tr>
+ <td>
+MENU:DOWN
+ </td>
+ <td>j, C-n, DOWN
+ </td>
+ <td>
+ Move to the next item
+ </td>
+ </tr>
+ <tr>
+ <td>
+MENU:UP
+ </td>
+ <td>
+ k, C-p, UP</td>
+ <td>
+ Move to the previous item
+ </td>
+ </tr>
+ <tr>
+ <td>
+MENU:LINE_UP
+ </td>
+ <td>K
+ </td>
+ <td>
+ Scroll up one item
+ </td>
+ </tr>
+ <tr>
+ <td>
+MENU:LINE_DOWN
+ </td>
+ <td>J
+ </td>
+ <td>
+ Scroll down one item
+ </td>
+ </tr>
+ <tr>
+ <td>
+MENU:TOP
+ </td>
+ <td>C-a
+ </td>
+ <td>
+ Move to the first item
+ </td>
+ </tr>
+ <tr>
+ <td>
+MENU:LAST
+ </td>
+ <td>C-e
+ </td>
+ <td>
+ Move to the final item
+ </td>
+ </tr>
+ <tr>
+ <td>
+MENU:NEXT
+ </td>
+ <td>C-v, C-f
+ </td>
+ <td>Go to the next page
+ </td>
+ </tr>
+ <tr>
+ <td>
+MENU:PREV
+ </td>
+ <td>ESC v, C-b
+ </td>
+ <td>
+ Go to the previous page
+ </td>
+ </tr>
+ <tr>
+ <td>
+MENU:SEARCH_FORE
+ </td>
+ <td>C-s, /
+ </td>
+ <td>
+ Search forward
+ </td>
+ </tr>
+ <tr>
+ <td>
+MENU:SEARCH_BACK
+ </td>
+ <td>
+ C-r, ?</td>
+ <td>
+ Search backward
+ </td>
+ </tr>
+ <tr>
+ <td>
+MENU:SEARCH_NEXT
+ </td>
+ <td>
+ n</td>
+ <td>
+ Search for the next match</td>
+ </tr>
+ <tr>
+ <td>
+MENU:SEARCH_PREV
+ </td>
+ <td>
+ N</td>
+ <td>
+ Search for the previous match</td>
+ </tr>
+<!--mh 2016-06-12 Pressing C-z in menu mode (with menu active) has the same effect as in normal operation of w3m: Browser gets in the background
+ <tr>
+ <td>
+MENU:SUSPEND
+ </td>
+ <td>
+ C-z</td>
+ <td>
+ Suspend</td>
+ </tr>
+-->
+<!-- </table>-->
+ <tr>
+ <td colspan="3">
+ <h3>Line-editing Mode</h3>
+ </td>
+ </tr>
+<!-- <table>-->
+ <tr>
+ <td>
+ LINEEDIT:FORWARD
+ </td>
+ <td width="100">
+ C-f, RIGHT
+ </td>
+ <td>
+ Move cursor forward
+ </td>
+ </tr>
+ <tr>
+ <td>
+LINEEDIT:BACK
+ </td>
+ <td>
+ C-b, LEFT
+ </td>
+ <td>
+ Move cursor backward
+ </td>
+ </tr>
+ <tr>
+ <td>
+LINEEDIT:BS
+ </td>
+ <td>
+ C-h, BKSPC
+ </td>
+ <td>
+ Delete previous character
+ </td>
+ </tr>
+ <tr>
+ <td>
+LINEEDIT:DEL
+ </td>
+ <td>
+ C-d
+ </td>
+ <td>
+ Delete current character
+ </td>
+ </tr>
+ <tr>
+ <td>
+LINEEDIT:KILL_AFTER
+ </td>
+ <td>
+ C-k
+ </td>
+ <td>
+ Delete everything after cursor
+ </td>
+ </tr>
+ <tr>
+ <td>
+LINEEDIT:KILL_BEFORE
+ </td>
+ <td>
+ C-u
+ </td>
+ <td>
+ Delete everything before cursor
+ </td>
+ </tr>
+ <tr>
+ <td>
+LINEEDIT:TOP
+ </td>
+ <td>
+ C-a
+ </td>
+ <td>
+ Move to the beginning of the line
+ </td>
+ </tr>
+ <tr>
+ <td>
+LINEEDIT:BOTTOM
+ </td>
+ <td>
+ C-e
+ </td>
+ <td>
+ Move to the end of the line
+ </td>
+ </tr>
+ <tr>
+ <td>
+LINEEDIT:PREV
+ </td>
+ <td>
+ C-p, UP
+ </td>
+ <td>
+ Fetch the previous string from the history list
+ </td>
+ </tr>
+ <tr>
+ <td>
+LINEEDIT:NEXT
+ </td>
+ <td>
+ C-n, DOWN
+ </td>
+ <td>
+ Fetch the next string from the history list
+ </td>
+ </tr>
+ <tr>
+ <td>
+LINEEDIT:COMPLETE
+ </td>
+ <td>
+ TAB, SPC
+ </td>
+ <td>
+ Try to complete filename
+ </td>
+ </tr>
+ <tr>
+ <td>
+LINEEDIT:EDITOR
+ </td>
+ <td>
+ C-o
+ </td>
+ <td>
+ Edit with external editor
+ </td>
+ </tr>
+ <tr>
+ <td>
+LINEEDIT:ACCEPT
+ </td>
+ <td>
+ RET
+ </td>
+ <td>
+ Accept input line
+ </td>
+ </tr>
+ </table>
+<!-- mh 2016-06-12 As it suffices to use the provided keymap file for Lynx-like keybindings and this file is listed in section FILES of man w3m (1), the following hint for getting w3m with Lynx-like key bindings has been deleted.
+ <p>
+ If w3m was compiled with <q>Lynx-like key bindings</q>, you can use
+ the following key bindings.
+ </p>
+-->
+<!-- mh 2016-06-12 Remark is obsolete as the two sets key binding are presented along within tables
+ <hr>
+ <h2 id="Key:lynx">
+ <p>
+ The Lynx-like configuration leaves keymappings unchanged in the
+ menu-selection and line-editing modes.
+ </p>
+ </h2>
+-->
+ <hr>
+ <h2 id="Mouse">
+ Mouse Operation
+ </h2>
+ <p>
+ If w3m is compiled with mouse support and you are invoking w3m
+ either from a console with GPM or from an X terminal emulator, you
+ can use the mouse for navigation (in the case of rxvt, you need to
+ set the TERM environment variable to <q>xterm</q> or <q>kterm</q>).
+ </p>
+ <p>An introduction to configure mouse actions is provided
+ with <a href="README.mouse">README.mouse</a>.
+ </p>
+ <table border="1">
+ <colgroup>
+ <col width="20%">
+ <col width="80%">
+ </colgroup>
+ <tr>
+ <th>Operation
+ </th>
+ <th>Description
+ </th>
+ </tr>
+ <tr>
+ <td>
+ left click
+ </td>
+ <td>
+<b>First:</b><br>
+Moves the cursor to the place indicated by the mouse pointer.<br>
+<b>Then:</b><br>
+Follows a hyperlink the cursor is currently located and the mouse points to.
+ </td>
+ </tr>
+ <tr>
+ <td>
+ middle click
+ </td>
+ <td>
+ Back to the previous buffer.
+ </td>
+ </tr>
+ <tr>
+ <td>
+ right click
+ </td>
+ <td>
+ Open pop-up menu. You can choose an item by clicking it.
+ </td>
+ </tr>
+ <tr>
+ <td>
+ left drag
+ </td>
+ <td>
+ Scroll document. The default behavior is to grab the document
+ and drag it. You can reverse the behavior (grab the window and
+ drag it) with the options setting panel.
+ </td>
+ </tr>
+ </table>
+ <hr>
+ <h2 id="LocalCGI">
+ Local CGI scripts
+ </h2>
+ <p>
+ You can run CGI scripts using w3m, without any HTTP server.
+ This means that w3m behaves like an HTTP server and runs the CGI
+ script, then reads the output of the script and displays it. For
+ example, the bookmark registration system and default directory
+ browser are realized as local CGI scripts. Moreover, such scripts
+ allow w3m to be used as a form interface to acquire all kinds of
+ data.
+ </p>
+ <p>
+ For security reason, CGI scripts invoked by w3m must be in one of
+ the following directories:
+ </p>
+ <ul>
+ <li>
+ The directory where w3m-related files are stored (typically
+ /usr/local/lib/w3m). This directory can be referenced as $LIB.
+ </li>
+ <li>
+ The /cgi-bin/ directory. You can map /cgi-bin/ to any directory you
+ like in the options setting panel (the <q>Directory corresponds to
+ /cgi-bin</q> field). You can specify multiple paths separated by
+ <q>:</q>, like /usr/local/cgi-bin:/home/aito/cgi-bin. It is not
+ recommended to include the current directory to this path. To use
+ a /cgi-bin/ directory, you must use a file:/cgi-bin URL as follows:
+ </li>
<pre>
w3m -o cgi_bin=/path/to/cgi-bin file:/cgi-bin/script.cgi
</pre>
-It is not recommended to include current directory to this path.
-</ul>
-<p>
-The CGI script can use special header `w3m-control:' to control w3m.
-This field can take any function (see <a href="README.func">README.func</a>),
-and the specified function is invoked after the document is displayed.
-For example, The CGI output
+ </ul>
+ <p>
+ The CGI script can use the special header
+ <span class="mono">w3m-control:</span> to
+ control w3m. This field can take any function (see
+ <a href="README.func">README.func</a>), and the specified function
+ is invoked after the document is displayed. For example, the CGI
+ output
+ </p>
<pre>
-
Content-Type: text/plain
W3m-control: BACK
-
</pre>
-will display blank page and delete that buffer immediately.
-This is useful when you don't want to display any page after
-the script is invoked. The next example
+ <p>
+ will display a blank page and delete that buffer immediately.
+ This is useful when you don't want to display any page after
+ the script is invoked. The next example
+ </p>
<pre>
-
Content-Type: text/plain
W3m-control: DELETE_PREVBUF
-
contents.....
</pre>
-will override the current buffer.
-<p>
-One w3m-control: header have to contain only one function, but you can
-include more than one w3m-control: lines in the HTTP header.
-In addition, you can specify an argument to GOTO function:
+ <p>
+ will override the current buffer.
+ </p>
+ <p>
+ Each header <span class="mono">w3m-control:</span> can
+ contain only one function, but you can
+ include more than one <span class="mono">w3m-control:</span>
+ line in the HTTP header.
+ In addition, you can specify an argument to the GOTO function:
+ </p>
<pre>
-
Content-Type: text/plain
-W3m-control: GOTO http://www.yahoo.com/
-
+W3m-control: GOTO http://www.example.org/
</pre>
-This example works exactly the same way to the Location header:
+ <p>
+ This example works exactly the same way as the Location header:
+ </p>
<pre>
-
Content-Type: text/plain
-Location: http://www.yahoo.com/
-
+Location: http://www.example.org/
</pre>
-Note that this header has no effect when the CGI script is invoked
-through HTTP server.
-
-</body>
+ <p>
+ Note that this header has no effect when the CGI script is invoked
+ through an HTTP server.
+ </p>
+ </body>
</html>
diff --git a/doc/README b/doc/README
index 324ea3e..0dc1901 100644
--- a/doc/README
+++ b/doc/README
@@ -110,12 +110,5 @@ Initial author:
Faculty of Engineering, Tohoku University
aito@fw.ipsj.or.jp
-Current Maintainer
- Dai Sato
- Tohoku University Hospital
- satodai@w3m.jp
-
-Feel free to send your opinion to the w3m mailing-lists.
- w3m-dev@sic.med.tohoku.ac.jp (Japanese)
- w3m-dev-en@sic.med.tohoku.ac.jp (English)
- http://w3m.sourceforge.net/
+This package is maintained for Debian <https://www.debian.org>,
+forked from the original version <https://sourceforge.net/projects/w3m/>.
diff --git a/doc/README.cookie b/doc/README.cookie
index 56cca50..71523e0 100644
--- a/doc/README.cookie
+++ b/doc/README.cookie
@@ -9,21 +9,21 @@ cookie support of w3m
http://www.ics.uci.edu/pub/ietf/http/draft-ietf-http-state-man-mec-12.txt)
cookie.
- * If you wont to disable cookie support, run configure script with
+ * If you want to disable cookie support, run the configure script with
--disable-cookie option.
- * You can choose to use cookie or not on the Option Setting Panel or
+ * You can choose to use cookies or not on the Option Setting Panel or
-cookie and -no-cookie option.
- * You can disable cookie on the Option Setting Panel. In this case
- all cookies are rejected, however, cookies which accepted before
- disable cookie are used.
+ * You can disable cookies on the Option Setting Panel. In this case
+ all new cookies are rejected, however, cookies which were accepted before
+ cookies were disabled are used.
- * You can see list of accepted cookies with C-k. In this panel, you
+ * You can see the list of accepted cookies with C-k. In this panel, you
can choose to use each cookie or not.
- * You can specify domains accept or not accept cookies on the Option
- Setting Panel. Domains are specified with following format.
+ * You can specify domains from which to accept or not accept cookies
+ on the Option Setting Panel. Domains are specified in the following format:
domain-list = domains
| ""
@@ -37,7 +37,7 @@ cookie support of w3m
(HDN: host domain name)
- �� If the number of "." in domain name is lesser than 2, it is
+ * If the number of "." in domain name is fewer than 2, it is
assumed as invalid cookie (cf. RFC 2109 4.3.2), however, you can
use cookie_avoid_wrong_number_of_dots to avoid this
restriction. You can set this in "Domains to avoid [wrong number
diff --git a/doc/README.dict b/doc/README.dict
index bd82cdb..88f4b1a 100644
--- a/doc/README.dict
+++ b/doc/README.dict
@@ -2,14 +2,14 @@ Dictionary look-up hack for w3m
1. INTRODUCTION
-If you have dictionary look-up command (like 'webster'), you can
-look a word in a document using w3m. This dictionary-lookup code
+If you have a dictionary look-up command (such as 'webster'), you can
+look up words in a document using w3m. This dictionary-lookup code
was contributed by `Rubikitch' (rubikitch@ruby-lang.org), and
-further modifed by Tushar Samant (scribble at pobox.com).
+further modified by Tushar Samant (scribble at pobox.com).
2. INSTALLATION
-To make use of dictionary look-up, you currently must change a
+To make use of the dictionary look-up, you currently must change a
compile option by hand. After running configure, edit config.h
and change
@@ -19,7 +19,7 @@ to
#define USE_DICT
-and recompile w3me (i.e. type "make install").
+and recompile w3m (i.e. type "make install").
Note that w3m/0.3+cvs-1.373 or later, USE_DICT is defined by default.
Then find or install a CGI program which takes a word as a query
diff --git a/doc/README.func b/doc/README.func
index 0b2c034..3bdec74 100644
--- a/doc/README.func
+++ b/doc/README.func
@@ -1,145 +1,150 @@
-ABORT Quit w3m without confirmation
-ACCESSSKEY Popup acceskey menu
-ADD_BOOKMARK Add current page to bookmark
+ABORT Quit at once
+ACCESSKEY Pop up accesskey menu
+ADD_BOOKMARK Add current page to bookmarks
ALARM Set alarm
-BACK Back to previous buffer
+BACK Close current buffer and return to the one below in stack
BEGIN Go to the first line
-BOOKMARK Read bookmark
-CENTER_H Move to the center line
-CENTER_V Move to the center column
-CHARSET Change the current document charset
-CLOSE_TAB Close current tab
-CLOSE_TAB_MOUSE Close tab on mouse cursor (for mouse action)
-COMMAND Execute w3m command(s)
+BOOKMARK View bookmarks
+CENTER_H Center on cursor column
+CENTER_V Center on cursor line
+CHARSET Change the character encoding for the current document
+CLOSE_TAB Close tab
+CLOSE_TAB_MOUSE Close tab at mouse pointer
+COMMAND Invoke w3m function(s)
COOKIE View cookie list
-DEFAULT_CHARSET Change the default document charset
-DEFINE_KEY Define a binding between a key stroke and a user command
-DELETE_PREVBUF Delete previous buffer (mainly for local-CGI)
+CURSOR_TOP Move cursor to the top line on the screen
+CURSOR_MIDDLE Move cursor to the middle line on the screen
+CURSOR_BOTTOM Move cursor to the bottom line on the screen
+DEFAULT_CHARSET Change the default character encoding
+DEFINE_KEY Define a binding between a key stroke combination and a command
+DELETE_PREVBUF Delete previous buffer (mainly for local CGI-scripts)
DICT_WORD Execute dictionary command (see README.dict)
-DICT_WORD_AT Execute dictionary command for word at cursor
+DICT_WORD_AT Execute dictionary command for word at cursor
DISPLAY_IMAGE Restart loading and drawing of images
-DOWN Scroll down one line
-DOWNLOAD Save document source to file
-DOWNLOAD_LIST Display download list panel
-EDIT Edit current document
-EDIT_SCREEN Edit currently rendered document
+DOWN Scroll the screen down one line
+DOWNLOAD Save document source
+DOWNLOAD_LIST Display downloads panel
+EDIT Edit local source
+EDIT_SCREEN Edit rendered copy of document
END Go to the last line
-EXEC_SHELL Execute shell command
-EXIT Quit w3m without confirmation
-EXTERN Execute external browser
-EXTERN_LINK View current link using external browser
-FRAME Render frame
-GOTO Go to URL
-GOTO_LINE Go to specified line
-GOTO_LINK Go to current link
-GOTO_RELATIVE Go to relative URL
-HELP View help
-HISTORY View history of URL
-INFO View info of current document
-INTERRUPT Stop loading document
-INIT_MAILCAP Reread mailcap (mainly for local-CGI)
-ISEARCH Incremental search forward
+EXEC_SHELL Execute shell command and display output
+EXIT Quit at once
+EXTERN Display using an external browser
+EXTERN_LINK Display target using an external browser
+FRAME Toggle rendering HTML frames
+GOTO Open specified document in a new buffer
+GOTO_HOME Return to the homepage (specified HTTP_HOME or WWW_HOME variable)
+GOTO_LINE Go to the specified line
+GOTO_LINK Follow current hyperlink in a new buffer
+GOTO_RELATIVE Go to relative address
+HELP Show help panel
+HISTORY Show browsing history
+INFO Display information about the current document
+INTERRUPT Suspend w3m to background
+ISEARCH Incremental search forward
ISEARCH_BACK Incremental search backward
-LEFT Shift screen one column
-LINE_BEGIN Go to the beginning of line
-LINE_END Go to the end of line
-LINE_INFO Show current line number
-LINK_BEGIN Go to the first link
-LINK_END Go to the last link
-LINK_MENU Popup link element menu
-LIST Show all links and images
-LIST_MENU Popup link list menu and go to selected link
-LOAD Load local file
-MAIN_MENU Popup menu
+LEFT Shift screen one column left
+LINE_BEGIN Go to the beginning of the line
+LINE_END Go to the end of the line
+LINE_INFO Display current position in document
+LINK_BEGIN Move to the first hyperlink
+LINK_END Move to the last hyperlink
+LINK_MENU Pop up link element menu
+LIST Show all URLs referenced
+LIST_MENU Pop up menu for hyperlinks to browse to
+LOAD Open local file in a new buffer
+MAIN_MENU Pop up menu
MARK Set/unset mark
-MARK_MID Mark Message-ID-like strings as anchors
-MARK_URL Mark URL-like strings as anchors
-MARK_WORD Mark current word as anchor
-MENU Popup menu
-MENU_MOUSE Popup menu at mouse cursor (for mouse action)
-MOUSE_TOGGLE Toggle activity of mouse
-MOVE_DOWN Move cursor down (a half screen scroll at the end of screen)
-MOVE_DOWN1 Move cursor down (1 line scroll at the end of screen)
-MOVE_LEFT Move cursor left (a half screen shift at the left edge)
-MOVE_LEFT1 Move cursor left (1 columns shift at the left edge)
-MOVE_LIST_MENU Popup link list menu and move cursor to selected link
-MOVE_MOUSE Move cursor to mouse cursor (for mouse action)
-MOVE_RIGHT Move cursor right (a half screen shift at the right edge)
-MOVE_RIGHT1 Move cursor right (1 columns shift at the right edge)
-MOVE_UP Move cursor up (a half screen scroll at the top of screen)
-MOVE_UP1 Move cursor up (1 line scrol at the top of screen)
-MSGS Display error messages
-NEW_TAB Open new tab
-NEXT Move to next buffer
-NEXT_DOWN Move to next downward link
-NEXT_LEFT Move to next left link
-NEXT_LEFT_UP Move to next left (or upward) link
-NEXT_LINK Move to next link
-NEXT_MARK Move to next word
-NEXT_PAGE Move to next page
-NEXT_RIGHT Move to next right link
-NEXT_RIGHT_DOWN Move to next right (or downward) link
-NEXT_TAB Move to next tab
-NEXT_UP Move to next upward link
-NEXT_VISITED Move to next visited link
-NEXT_WORD Move to next word
-NOTHING Do nothing
+MARK_MID Turn Message-ID-like strings into hyperlinks
+MARK_URL Turn URL-like strings into hyperlinks
+MARK_WORD Turn current word into hyperlink
+MENU Pop up menu
+MENU_MOUSE Pop up menu at mouse pointer
+MOUSE_TOGGLE Toggle mouse support
+MOVE_DOWN Cursor down
+MOVE_DOWN1 Cursor down. With edge touched, slide
+MOVE_LEFT Cursor left
+MOVE_LEFT1 Cursor left. With edge touched, slide
+MOVE_LIST_MENU Pop up menu to navigate between hyperlinks
+MOVE_MOUSE Move cursor to mouse pointer
+MOVE_RIGHT Cursor right
+MOVE_RIGHT1 Cursor right. With edge touched, slide
+MOVE_UP Cursor up
+MOVE_UP1 Cursor up. With edge touched, slide
+MSGS Display error messages
+NEW_TAB Open a new tab (with current document)
+NEXT Switch to the next buffer
+NEXT_DOWN Move downward to the next hyperlink
+NEXT_HALF_PAGE Scroll down half a page
+NEXT_LEFT Move left to the next hyperlink
+NEXT_LEFT_UP Move left or upward to the next hyperlink
+NEXT_LINK Move to the next hyperlink
+NEXT_MARK Go to the next mark
+NEXT_PAGE Scroll down one page
+NEXT_RIGHT Move right to the next hyperlink
+NEXT_RIGHT_DOWN Move right or downward to the next hyperlink
+NEXT_TAB Switch to the next tab
+NEXT_UP Move upward to the next hyperlink
+NEXT_VISITED Move to the next visited hyperlink
+NEXT_WORD Move to the next word
+NOTHING Do nothing
NULL Do nothing
-OPTIONS Option setting panel
-PEEK Peek current URL
-PEEK_IMG Peek image URL
-PEEK_LINK Peek link URL
-PIPE_BUF Send rendered document to pipe
-PIPE_SHELL Execute shell command and browse
-PREV Move to previous buffer
-PREV_LINK Move to previous link
-PREV_MARK Move to previous mark
-PREV_PAGE Move to previous page
-PREV_TAB Move to previous tab
-PREV_VISITED Move to previous visited link
-PREV_WORD Move to previous word
-PRINT Save buffer to file
-QUIT Quit w3m
-READ_SHELL Execute shell command and load
+OPTIONS Display options setting panel
+PEEK Show current address
+PEEK_IMG Show image address
+PEEK_LINK Show target address
+PIPE_BUF Pipe current buffer through a shell command and display output
+PIPE_SHELL Execute shell command and display output
+PREV Switch to the previous buffer
+PREV_HALF_PAGE Scroll up half a page
+PREV_LINK Move to the previous hyperlink
+PREV_MARK Go to the previous mark
+PREV_PAGE Scroll up one page
+PREV_TAB Switch to the previous tab
+PREV_VISITED Move to the previous visited hyperlink
+PREV_WORD Move to the previous word
+PRINT Save rendered document
+QUIT Quit with confirmation request
+READ_SHELL Execute shell command and display output
REDO Cancel the last undo
-REDRAW Redraw screen
-REG_MARK Set mark using regexp
-REINIT Reload configuration files
-RELOAD Reload buffer
-RESHAPE Re-render buffer
+REDRAW Draw the screen anew
+REG_MARK Mark all occurences of a pattern
+REINIT Reload configuration file
+RELOAD Load current document anew
+RESHAPE Re-render document
RIGHT Shift screen one column right
-SAVE Save document source to file
-SAVE_IMAGE Save image to file
-SAVE_LINK Save link to file
-SAVE_SCREEN Save rendered document to file
+SAVE Save document source
+SAVE_IMAGE Save inline image
+SAVE_LINK Save hyperlink target
+SAVE_SCREEN Save rendered document
SEARCH Search forward
SEARCH_BACK Search backward
SEARCH_FORE Search forward
-SEARCH_NEXT Search next regexp
-SEARCH_PREV Search previous regexp
-SELECT Go to buffer selection panel
-SELECT_MENU Popup buffer selection menu
-SETENV Set environment variable
-SET_OPTION Set option
-SHELL Execute shell command
+SEARCH_NEXT Continue search forward
+SEARCH_PREV Continue search backward
+SELECT Display buffer-stack panel
+SELECT_MENU Pop up buffer-stack menu
+SETENV Set environment variable
+SET_OPTION Set option
+SHELL Execute shell command and display output
SHIFT_LEFT Shift screen left
SHIFT_RIGHT Shift screen right
-SOURCE View HTML source
+SOURCE Toggle between HTML shown or processed
STOP_IMAGE Stop loading and drawing of images
SUBMIT Submit form
-SUSPEND Stop loading document
-TAB_GOTO Open URL on new tab
-TAB_GOTO_RELATIVE Open relative URL on new tab
-TAB_LEFT Move current tab left
-TAB_LINK Open current link on new tab
-TAB_MENU Popup tab selection menu
-TAB_MOUSE Move to tab on mouse cursor (for mouse action)
-TAB_RIGHT Move current tab right
+SUSPEND Suspend w3m to background
+TAB_GOTO Open specified document in a new tab
+TAB_GOTO_RELATIVE Open relative address in a new tab
+TAB_LEFT Move left along the tab bar
+TAB_LINK Follow current hyperlink in a new tab
+TAB_MENU Pop up tab selection menu
+TAB_MOUSE Select tab by mouse action
+TAB_RIGHT Move right along the tab bar
UNDO Cancel the last cursor movement
-UP Scroll up one line
-VERSION Display version of w3m
-VIEW View HTML source
-VIEW_BOOKMARK View bookmark
-VIEW_IMAGE View image
-WHEREIS Search forward
-WRAP_TOGGLE Toggle wrap search mode
+UP Scroll the screen up one line
+VERSION Display the version of w3m
+VIEW Toggle between HTML shown or processed
+VIEW_BOOKMARK View bookmarks
+VIEW_IMAGE Display image in viewer
+WHEREIS Search forward
+WRAP_TOGGLE Toggle wrapping mode in searches
diff --git a/doc/README.img b/doc/README.img
index 0c10114..af6d9db 100644
--- a/doc/README.img
+++ b/doc/README.img
@@ -11,8 +11,8 @@ Introduction
Support
- * Display inline image (GIF,PNG,JPEG, etc.) on terminals
- (xterm,rxvt, etc.) of X11, Linux framebuffer device or
+ * Display inline images (GIF, PNG, JPEG, etc.) on terminals
+ (xterm, rxvt, etc.) of X11, Linux framebuffer device or
terminals of Windows.
* Support inline image of <img> tag.
Support of attributes "width", "height", and "align".
@@ -41,7 +41,7 @@ Key functions
Specify the following keymaps in ~/.w3m/keymap.
keymap X DISPLAY_IMAGE
keymap C-c STOP_IMAGE
- keyamp t SET_OPTION display_image=toggle
+ keymap t SET_OPTION display_image=toggle
Commandline options
@@ -66,7 +66,7 @@ Option panel
Automatic loading of inline image. The default is ON.
If it is OFF, loading starts with a command DISPLAY_IMAGE.
max_load_image
- Maximum process for downloading of inline image. The default is 4.
+ Maximum # of processes for downloading inline images. The default is 4.
1 to 8 can be set.
ext_image_viewer
Use external image viewer, when a command VIEW_IMAGE or
@@ -75,8 +75,8 @@ Option panel
image_scale
Scale of image (%). The default value is 100(%).
imgdisplay
- External command to display image". The default value is "w3mimgdisplay".
- See "Setting w3mimgdisplay".
+ External command to display image. The default value is "w3mimgdisplay".
+ See "Setting w3mimgdisplay."
Required programs
@@ -124,8 +124,8 @@ Setting w3mimgdisplay
The default value for Linux framebuffer device is #000000 (black).
When the color is specified as #RRGGBB, escape '#'.
-anim <n>
- Maximum number of frames for animation. It means without limit
- if the number is 0. Negative value count backward from the end
+ Maximum number of frames for animation. It will run everything
+ if the number is 0. Negative values count backward from the end
of the frames. The default value is 100.
-margin <n>
Margin of an area to clear an image. The default value is 0.
@@ -135,13 +135,13 @@ Setting w3mimgdisplay
Notice
If you want to see GIF animation, please hit a suitable key, such
- as 'h', 'l', etc., repeatedly, because a frame is rewritten
+ as 'h', 'l', etc., repeatedly, because a new frame is only requested
according to the re-drawing demand from w3m.
Some code in w3mimg/fb/fb.c was originally written by Mr. Yamasaki.
http://www.sainet.or.jp/~yamasaki/download/fb-sample.tar.gz
- On Windows, we check the behaver on standard console, Cygwin rxvt
+ On Windows, we check the behavior on standard console, Cygwin rxvt
and PuTTY.
diff --git a/doc/README.m17n b/doc/README.m17n
index c064d76..da5408b 100644
--- a/doc/README.m17n
+++ b/doc/README.m17n
@@ -49,7 +49,7 @@ Supported encoding schemes (character set)
* Thai
TIS-620 (ISO-8859-11), CP874
* Other
- US_ASCII, ISO-8859-1 �� 10, 13 �� 15,
+ US_ASCII, ISO-8859-1 - 10, 13 - 15,
KOI8-R, KOI8-U, NeXT, CP437, CP737, CP775, CP850, CP852, CP855, CP856,
CP857, CP860, CP861, CP862, CP863, CP864, CP865, CP866, CP869, CP1006,
CP1250, CP1251, CP1252, CP1253, CP1254, CP1255, CP1256, CP1257
diff --git a/doc/README.pre_form b/doc/README.pre_form
index 972ef90..dad62f8 100644
--- a/doc/README.pre_form
+++ b/doc/README.pre_form
@@ -1,12 +1,12 @@
-pre_form: Feature to configure form parameters when opening specific site.
+pre_form: Feature to pre-fill form parameters when opening a specific site.
-It would be convinient for sites where you often visit, but it may introduce
-some security issues. Be careful to use this feature, especially `submit'
+It is convenient for sites that you visit often, but it may introduce
+some security issues. Be careful when using this feature, especially `submit'
params described below.
Default configuration file for pre_form is ~/.w3m/pre_form.
-Syntax as follows:
+The syntax of entries in the configuration file is as follows:
url <url>|/<re-url>/
form [<name>] <action>
@@ -23,21 +23,21 @@ textarea <name>
:
/textarea
-If <action> is set, form which has matched <action> attributes
+If <action> is set, a form which has matched <action> attributes
will be configured by this pre_form.
-The line begining with text, file, passwd, select, textarea means that
+A line beginning with text, file, passwd, select, textarea means that
it will set value to <value> in input, select or textarea element which
name attribute matches with <name>.
-The line beginning with checkbox, radio means that it will check
+A line beginning with checkbox, radio means that it will check
input element which name and value attribute matches with <name> and <value>
-respectively. If <checked> is 0, no, or off, disable check of the checkbox.
+respectively. If <checked> is 0, no, or off, the checkbox will be unchecked.
-The line beginning with submit or image means that it will submit input
-element which name attribute matches with <name> (and value attribute
-matches with <value>), or submit last <input type=submit> element if no
-<name> specified.
+A line beginning with submit or image means that it will submit input
+element whose name attribute matches with <name> (and value attribute
+matches with <value>), or submit on the last <input type=submit> element if no
+<name> was specified.
You quote \, ' (single-quote) or " (double quote) as you do in shell.
diff --git a/doc/README.siteconf b/doc/README.siteconf
new file mode 100644
index 0000000..8514edf
--- /dev/null
+++ b/doc/README.siteconf
@@ -0,0 +1,73 @@
+The siteconf: Site-specific preferences
+
+The siteconf consists of URL patterns and preferences associated to them.
+You can improve "decode_url" feature by giving charsets of URLs site by site,
+or bypass Google's redirector for performance and your privacy.
+
+The siteconf is read from ~/.w3m/siteconf by default.
+
+===== The syntax =====
+
+url <url>|/<re-url>/|m@<re-url>@i [exact]
+substitute_url "<destination-url>"
+url_charset <charset>
+no_referer_from on|off
+no_referer_to on|off
+user_agent "string"
+
+The last match wins.
+
+===== Examples =====
+
+url m!^https?://([a-z]+\.)?twitter\.com/!
+substitute_url "https://nitter.net/"
+
+This forwards twitter.com to the alternative site.
+
+url "http://your.bookmark.net/"
+no_referer_from on
+
+This prevents HTTP referers from being sent when you follow links
+at the your.bookmark.net.
+
+url "http://www.google.com/url?" exact
+substitute_url "file:///cgi-bin/your-redirector.cgi?"
+
+This forwards the Google's redirector to your local CGI.
+
+url /^http:\/\/[a-z]*\.wikipedia\.org\//
+url_charset utf-8
+
+When combinated with "decode_url" option turned on, links to
+Wikipedia will be human-readable.
+
+url m@^https?://(.*\.)google\.com/@
+user_agent "Lynx/2.8.8dev.3 libwww-FM/2.14 SSL-MM/1.4.1"
+
+Tell Google we're actually Lynx. (So they send us a text-browser friendly
+results page.)
+
+url m!^https?://([a-z]+\.)?twitter\.com/!
+user_agent "Googlebot/2.1"
+
+Tell Twitter we're actually Googlebot. (So they send us a page without
+rejection of a JavaScript disabled browser.)
+
+===== Regular expressions notes =====
+
+Following expressions are all equivalent:
+
+/http:\/\/www\.example\.com\//
+m/http:\/\/www\.example\.com\//
+m@http://www\.example\.com/@
+m!http://www\.example\.com/!
+
+With a trailing 'i' modifier, you can specify a case-insensitive match.
+For example, m@^http://www\.example\.com/abc/@i matches to:
+
+http://www.example.com/abc/
+http://www.example.com/Abc/
+http://www.example.com/ABC/
+
+Hostnames, however, are always converted to lowercases before compared.
+
diff --git a/doc/README.sixel b/doc/README.sixel
new file mode 100644
index 0000000..588afc4
--- /dev/null
+++ b/doc/README.sixel
@@ -0,0 +1,27 @@
+Sixel support of w3m
+ 2014/11/05
+ K. Araki
+
+Introduction
+
+ This is the extension for w3m to show inline images by sixel graphics.
+
+Requirements
+
+ Install 'img2sixel' command provided by libsixel project.
+ (https://github.com/saitoha/libsixel)
+
+Build
+
+ $ ./configure --enable-image ...
+ $ make
+ $ make install
+
+Usage
+
+ $ w3m -sixel http://...
+
+ You can specify options of 'img2sixel' command by "W3M_IMG2SIXEL"
+ environmental variable.
+
+ $ W3M_IMG2SIXEL="img2sixel -d atkinson" w3m -sixel http://...
diff --git a/doc/README.tab b/doc/README.tab
index 8e98e1c..f237f70 100644
--- a/doc/README.tab
+++ b/doc/README.tab
@@ -39,7 +39,7 @@ Options:
open_tab_blank ... open new tab if target is _blank or _new
default: OFF
close_tab_back ... close the tab when you back from last buffer in the tab
- default: OFF (= Can't back...)
+ default: OFF (= Can't go back...)
diff --git a/doc/keymap.default b/doc/keymap.default
index 0ecf14f..174e4ed 100644
--- a/doc/keymap.default
+++ b/doc/keymap.default
@@ -11,6 +11,7 @@
# Left : LEFT, ^[[D
keymap C-@ MARK
+keymap C-_ GOTO_HOME
keymap C-a LINE_BEGIN
keymap C-b MOVE_LEFT
keymap C-e LINE_END
diff --git a/doc/keymap.lynx b/doc/keymap.lynx
index 869c716..e4085c8 100644
--- a/doc/keymap.lynx
+++ b/doc/keymap.lynx
@@ -46,7 +46,7 @@ keymap - PREV_PAGE
keymap . RIGHT
keymap / SEARCH
keymap : MARK_URL
-keymap ; MARK_WORD
+keymap ";" MARK_WORD
keymap < SHIFT_LEFT
keymap = INFO
keymap > SHIFT_RIGHT
diff --git a/doc/menu.submenu b/doc/menu.submenu
index e55193d..e837f46 100644
--- a/doc/menu.submenu
+++ b/doc/menu.submenu
@@ -39,6 +39,6 @@ menu Link
end
menu Bookmark
- func "Read bookmark (b)" BOOKMARK "bB"
+ func "View bookmarks (b)" BOOKMARK "bB"
func "Add page to bookmark(a)" ADD_BOOKMARK "aA"
end
diff --git a/doc/w3m.1 b/doc/w3m.1
index 8f071c6..5daecbf 100644
--- a/doc/w3m.1
+++ b/doc/w3m.1
@@ -1,13 +1,10 @@
.nr N -1
.nr D 5
-.TH W3M 1 Local
-.UC 4
+.TH W3M 1 "2016-08-06" "w3m 0.5.3"
.SH NAME
-w3m \- a text based Web browser and pager
+w3m \- a text based web browser and pager
.SH SYNOPSIS
-.B w3m
-[options] [URL or filename]
-.PP
+w3m [OPTION]... [ \fIfile\fP | \fIURL\fP ]...
.SH DESCRIPTION
.\" This defines appropriate quote strings for nroff and troff
.ds lq \&"
@@ -17,234 +14,304 @@ w3m \- a text based Web browser and pager
.\" Just in case these number registers aren't set yet...
.if \nN==0 .nr N 10
.if \nD==0 .nr D 5
-.I
-w3m
-is a World Wide Web (WWW) text based client. It has English and
-Japanese help files and an option menu and can be configured to
-use either language. It will display hypertext markup language
-(HTML) documents containing links to files residing on the local
-system, as well as files residing on remote systems. It can
-display HTML tables and frames.
-In addition, it can be used as a "pager" in much the same manner
-as "more" or "less".
-Current versions of
-.I
-w3m
-run on
-Unix (Solaris, SunOS, HP-UX, Linux, FreeBSD, and EWS4800)
-and on
-Microsoft Windows 9x/NT.
-.PP
+
+\fIw3m\fP is a text based browser which can display local or remote
+web pages as well as other documents.
+It is able to process HTML
+tables and frames but it ignores JavaScript and Cascading Style
+Sheets.
+\fIw3m\fP can also serve as a pager for text files named as
+arguments or passed on standard input, and as a general purpose
+directory browser.
+
+\fIw3m\fP organizes its content in buffers or tabs, allowing easy
+navigation between them.
+With the w3m-img extension installed, \fIw3m\fP can
+display inline graphics in web pages.
+And whenever \fIw3m\fP's HTML
+rendering capabilities do not meet your needs, the target URL can be
+handed over to a graphical browser with a single command.
+
+For help with runtime options, press \(lqH\(rq while running \fIw3m\fP.
+
+.SH ARGUMENTS
+
+When given one or more command line arguments, \fIw3m\fP will handle
+targets according to content type.
+For web, \fIw3m\fP gets this
+information from HTTP headers; for relative or absolute file system
+paths, it relies on filenames.
+
+With no argument, \fIw3m\fP expects data from standard input and
+assumes \(lqtext/plain\(rq unless another MIME type is given by the user.
+
+If provided with no target and no fallback target (see for instance
+option \fB\-v\fP below), \fIw3m\fP will exit with usage information.
.SH OPTIONS
-At start up, \fIw3m\fR will load any local
-file or remote URL specified at the command
-line. For help with runtime options, press \fB"H"\fR
-while running \fIw3m\fR.
-Command line options are:
-.PP
-.TP
-.B -t tab
-set tab width
-.TP
-.B -r
-ignore backspace effect
+Command line options are introduced with a single \(lq\-\(rq character and
+may take an argument.
+.SS General options
.TP
-.B -l line
-# of preserved line (default 10000)
+\fB\-B\fP
+with no other target defined, use the bookmark page for startup
.TP
-.B -I charset
-document charset
+\fB\-M\fP
+monochrome display
.TP
-.B -O charset
-display/output charset
+\fB\-no-mouse\fP
+deactivate mouse support
.TP
-.B -B
-load bookmark
+\fB\-num\fP
+display each line's number
.TP
-.B -bookmark file
-specify bookmark file
+\fB\-N\fP
+distribute multiple command line arguments to tabs.
+By default, a
+stack of buffers is used
.TP
-.B -T type
-specify content-type
+\fB\-ppc \fInum\fR
+width of \fInum\fR pixels per character.
+Range of 4.0 to 32.0, default 8.0.
+Larger values will make tables narrower.
+(Implementation not verified)
.TP
-.B -m
-internet message mode
+\fB\-ppl \fInum\fR
+height of \fInum\fR pixels per line.
+Range of 4.0 to 64.0.
+(Implementation not verified)
.TP
-.B -v
-visual startup mode
+\fB\-title\fP, \fB\-title=TERM\fP
+use the buffer name as terminal title string.
+With specified TERM,
+this sets the title configuration style accordingly
.TP
-.B -M
-monochrome display
+\fB\-v\fP
+with no other target defined, welcome users with a built-in page
.TP
-.B -N
-open URL of command line on each new tab
+\fB\-W\fP
+toggle wrapping mode in searches
.TP
-.B -F
-automatically render frame
+\fB\-X\fP
+do not initialize/deinitialize the terminal
.TP
-.B -dump
-dump formatted page into stdout
+\fB+\fInum\fR
+go to line \fInum\fR;
+only effective for \fInum\fR larger than the number of lines in the terminal
+.SS Browser options
.TP
-.B -cols width
-specify column width (used with -dump)
+\fB\-cols \fInum\fR
+with stdout as destination; HTML is rendered to lines of \fInum\fR characters
.TP
-.B -ppc count
-specify the number of pixels per character (4.0...32.0).
-Larger values will make tables narrower. [default 8.0]
+\fB\-cookie\fP, \fB\-no-cookie\fP
+use stored cookies and accept new ones, or do neither
.TP
-.B -ppl count
-specify the number of pixels per line (4.0...64.0)
+\fB\-F\fP
+render frames
.TP
-.B -dump_source
-dump page source into stdout
+\fB\-graph\fP, \fB\-no-graph\fP
+use or do not use graphic characters for drawing HTML table and frame borders
.TP
-.B -dump_head
-dump response of HEAD request into stdout
+\fB\-header \fIstring\fR
+append \fIstring\fR to the HTTP(S) request.
+Expected to match the header syntax \f(CWVariable: Value\fP
.TP
-.B -dump_both
-dump HEAD and source into stdout
+\fB\-m\fP
+Render the body of Usenet messages according to the header \(lqContent-type\(rq
.TP
-.B -dump_extra
-dump HEAD, source, and extra information into stdout
+\fB\-no-proxy\fP
+do not use proxy
.TP
-.B -post file
-use POST method with file content
+\fB\-post \fIfile\fR
+use POST method to upload data defined in \fIfile\fR.
+The syntax to be used
+is \f(CWvar1=value1[&var2=value2]...\fP
.TP
-.B -header string
-insert string as a header
+\fB\-4\fP
+IPv4 only.
+Corresponds to dns_order=4 in configuration files
.TP
-.B +<num>
-goto <num> line
+\fB\-6\fP
+IPv6 only.
+Corresponds to dns_order=6 in configuration files
+.SS Text pager options
.TP
-.B -num
-show line number
+\fB\-l \fInum\fR
+number of lines preserved internally when receiving plain text from
+stdin (default 10,000)
.TP
-.B -no-proxy
-don't use proxy
+\fB\-r\fP
+use caret notation to display special escape characters (such
+as ANSI escapes or nroff-style backspaces for bold and underlined
+characters) instead of processing them
.TP
-.B -4
-IPv4 only (-o dns_order=4)
+\fB\-s\fP
+squeeze multiple blank lines into one
.TP
-.B -6
-IPv6 only (-o dns_order=6)
+\fB\-t\fP \fInum\fP
+set tab width to \fInum\fR columns.
+No effect on stdout
+.SS Data type/encoding options
.TP
-.B -no-mouse
-don't use mouse
+\fB\-I \fIcharset\fR
+user defined character encoding of input data
.TP
-.B -cookie
-use cookie.
+\fB\-O \fIcharset\fR
+user defined character encoding of output data
.TP
-.B -no-cookie
-don't use cookie
+\fB\-T \fItype\fR
+explicit characterization of input data by MIME type
+.SS Options for data output, followed by immediate exit
.TP
-.B -graph
-use graphic character
+\fB\-dump\fP
+dump rendered page into stdout.
+Set implicitly when output is directed
+to a file or pipe
.TP
-.B -no-graph
-don't use graphic character
+\fB\-dump_source\fP
+dump the page's source code into stdout
.TP
-.B -S
-squeeze multiple blank lines
+\fB\-dump_head\fP
+dump response of a HEAD request for a URL into stdout
.TP
-.B -W
-toggle wrap search mode
+\fB\-dump_both\fP
+dump HEAD, and source code for a URL into stdout
.TP
-.B -X
-don't use termcap init/deinit
+\fB\-dump_extra\fP
+dump HEAD, source code, and extra information for a URL into stdout
.TP
-.B -title [=TERM]
-set buffer name to terminal title string.
-If TERM is specified, use the TERM style title configuration.
+\fB\-help\fP
+show a summary of compiled-in features and command line options
.TP
-.B -o opt=value
-assign value to config option
+\fB\-show-option\fP
+show all available configuration options
.TP
-.B -show-option
-show all available config option
+\fB\-version\fP
+show the version of \fIw3m\fP
+.SS Options for overriding default settings and resources
.TP
-.B -config file
-specify config file
+\fB\-bookmark \fIfile\fR
+use \fIfile\fR instead of the default bookmark.html file
.TP
-.B -help
-show usage
+\fB\-config \fIfile\fR
+use \fIfile\fR instead of the default configuration file
.TP
-.B -version
-show w3m version
+\fB\-debug\fP
+DO NOT USE
.TP
-.B -reqlog
-write request logfile
+\fB\-o \fIoption=value\fR
+modify one configuration item with an explicitly given value;
+without \fIoption=value\fR, equivalent to \fB\-show-option\fR
.TP
-.B -debug
-DO NOT USE
+\fB\-reqlog\fP
+log headers of HTTP communication in file \f(CW~/.w3m/request.log\fP
.SH EXAMPLES
+.SS Pager-like usage
+.TP
+Combine snippets of HTML code and preview the page
+.EX
+$ cat header.html footer.html | w3m \-T text/html
+.EE
+.TP
+Compare two files using tabs
+.EX
+$ w3m \-N config.old config
+.EE
+.SS Browser-like usage
+.TP
+Display web content in monochrome terminal
+.EX
+$ w3m \-M http://w3m.sourceforge.net
+.EE
+.TP
+Display embedded graphics
+.EX
+$ w3m \-o auto_image=TRUE http://w3m.sourceforge.net
+.EE
+.TP
+Display content from Usenet
+.EX
+$ w3m \-m nntp://news.aioe.org/comp.os.linux.networking
+.EE
+.TP
+Upload data for a URL using the POST method
+.EX
+$ w3m \-post \- http://example.com/form.php <<<'a=0&b=1'
+.EE
+.SS Filter-like usage
+.TP
+Convert an HTML file to plain text with a defined line length
+.EX
+$ w3m \-cols 40 foo.html > foo.txt
+.EE
+.TP
+Output the bookmarks page as text with an appended list of links
+.EX
+$ w3m \-B \-o display_link_number=1 > out.txt
+.EE
+.TP
+Conversion of file format and character encoding
+.EX
+$ w3m \-T text/html \-I EUC-JP \-O UTF-8 < foo.html > foo.txt
+.EE
+.SS Start with no input
+.TP
+Welcome users with a built-in page
+.EX
+$ w3m \-v
+.EE
+.\".SH Errors
+.SH ENVIRONMENT
+\fIw3m\fP recognises the environment variable WWW_HOME as defining a
+fallback target for use if it is invoked without one.
+.SH FILES
.TP
-To use w3m as a pager:
-.br
-$ ls | w3m
-.br
-.TP
-To use w3m to translate HTML files:
-.br
-$ cat foo.html | w3m -T text/html
+\f(CW~/.w3m/bookmark.html\fP
+default bookmark file
.TP
-or
-.br
-$ cat foo.html | w3m -dump -T text/html >foo.txt
-.SH FILES
+\f(CW~/.w3m/config\fP
+user defined configuration file; overrides \f(CW/etc/w3m/config\fP
.TP
-.I ${HOME}/.w3m/config
-configuration file
+\f(CW~/.w3m/cookie\fP
+cookie jar; written on exit, read on launch
.TP
-.I ${HOME}/.w3m/keymap
-key binding configuration file
-.\" .TP
-.\" .I ${HOME}/.w3m/menu
-.\" ???
+\f(CW~/.w3m/history\fP
+browser history - visited files and URLs
.TP
-.I ${HOME}/.w3m/mouse
-mouse configuration file
+\f(CW~/.w3m/keymap\fP
+user defined key bindings; overrides default key bindings
.TP
-.I ${HOME}/.w3m/cookie
-cookie file
+\f(CW~/.w3m/mailcap\fP
+external viewer configuration file
.TP
-.I ${HOME}/.w3m/history
-history file
+\f(CW~/.w3m/menu\fP
+user defined menu; overrides default menu
.TP
-.I ${HOME}/.w3m/passwd
-passowrd and username file
+\f(CW~/.w3m/mime.types\fP
+MIME types file
.TP
-.I ${HOME}/.w3m/pre_form
-form parameters file
+\f(CW~/.w3m/mouse\fP
+user defined mouse settings
.TP
-.I ${HOME}/.w3m/mailcap
-external viewer configuration file
+\f(CW~/.w3m/passwd\fP
+password and username file
.TP
-.I ${HOME}/.w3m/mime.types
-MIME types file
+\f(CW~/.w3m/pre_form\fP
+contains predefined values to fill recurrent HTML forms
.\" .TP
-.\" .I ${HOME}/.w3m/urimethodmap
+.\" .I $~/.w3m/urimethodmap
.\" ???
-.SH NOTES
-This is the
-.I
-w3m
-0.5.3 Release.
-.PP
-Please see the MANUAL.html file distributed with w3m for
-more detailed documentation.
-
-Additional information about
-.I
-w3m
-may be found on its Japanese language Web site located at:
- http://w3m.sourceforge.net/index.ja.html
-.br
-or on its English version of the site at:
- http://w3m.sourceforge.net/index.en.html
+.SH SEE ALSO
+README and example files are to be found in the doc directory of your
+\fIw3m\fP installation.
+Recent information about \fIw3m\fP may be found on
+.UR http://w3m.sourceforge.net
+the project's web pages at
+.UE
.SH ACKNOWLEDGMENTS
-.I
-w3m
-has incorporated code from several sources.
+\fIw3m\fP has incorporated code from several sources.
Users have contributed patches and suggestions over time.
.SH AUTHOR
-Akinori ITO <aito@fw.ipsj.or.jp>
+.MT aito@fw.ipsj.or.jp
+Akinori ITO
+.ME
+
diff --git a/entity.c b/entity.c
index fdd8f64..67b8cfb 100644
--- a/entity.c
+++ b/entity.c
@@ -44,6 +44,8 @@ conv_entity(unsigned int c)
return " ";
if (c == 0xa0)
return NBSP;
+ if (c == 0xad) /* SOFT HYPHEN */
+ return "";
if (c < 0x100) { /* Latin1 (ISO 8859-1) */
if (UseAltEntity)
return alt_latin1[c - 0xa0];
@@ -56,11 +58,23 @@ conv_entity(unsigned int c)
#ifdef USE_M17N
#ifdef USE_UNICODE
if (c <= WC_C_UCS4_END) { /* Unicode */
+ char *chk;
wc_uchar utf8[7];
wc_ucs_to_utf8(c, utf8);
- return wc_conv((char *)utf8, WC_CES_UTF_8, InnerCharset)->ptr;
+ /* we eventually need to display it so check DisplayCharset */
+ chk = wc_conv((char *)utf8, WC_CES_UTF_8, DisplayCharset ? DisplayCharset : WC_CES_US_ASCII)->ptr;
+ if (strcmp(chk, "?") != 0)
+ return wc_conv((char *)utf8, WC_CES_UTF_8, InnerCharset)->ptr;
}
#endif
#endif
+ if (c == 0x201c || c == 0x201f || c == 0x201d || c == 0x2033)
+ return "\"";
+ if (c == 0x2018 || c == 0x201b || c == 0x2019 || c == 0x2032)
+ return "'";
+ if (c >= 0x2010 && c < 0x2014)
+ return "-";
+ if (c == 0x2014)
+ return "--";
return "?";
}
diff --git a/entity.tab b/entity.tab
index 130ae2d..d481312 100644
--- a/entity.tab
+++ b/entity.tab
@@ -7,6 +7,8 @@ amp 0x26
AMP 0x26
quot 0x22
QUOT 0x22
+apos 0x27
+APOS 0x27
nbsp 0xA0
NBSP 0xA0
iexcl 0xA1
diff --git a/etc.c b/etc.c
index 8fe1215..801b098 100644
--- a/etc.c
+++ b/etc.c
@@ -498,7 +498,7 @@ calcPosition(char *l, Lineprop *pr, int len, int pos, int bpos, int mode)
static char *prevl = NULL;
int i, j;
- if (l == NULL || len == 0)
+ if (l == NULL || len == 0 || pos < 0)
return bpos;
if (l == prevl && mode == CP_AUTO) {
if (pos <= len)
@@ -634,24 +634,6 @@ strerror(int errno)
}
#endif /* not HAVE_STRERROR */
-#ifndef HAVE_SYS_ERRLIST
-char **sys_errlist;
-
-prepare_sys_errlist()
-{
- int i, n;
-
- i = 1;
- while (strerror(i) != NULL)
- i++;
- n = i;
- sys_errlist = New_N(char *, n);
- sys_errlist[0] = "";
- for (i = 1; i < n; i++)
- sys_errlist[i] = strerror(i);
-}
-#endif /* not HAVE_SYS_ERRLIST */
-
int
next_status(char c, int *status)
{
@@ -727,6 +709,11 @@ next_status(char c, int *status)
case '>':
*status = R_ST_NORMAL;
break;
+ case 'D':
+ case 'd':
+ /* could be a !doctype */
+ *status = R_ST_TAG;
+ break;
default:
*status = R_ST_IRRTAG;
}
@@ -1365,7 +1352,13 @@ setup_child(int child, int i, int f)
if (!child)
SETPGRP();
#endif /* __MINGW32_VERSION */
+ /*
+ * I don't know why but close_tty() sometimes interrupts loadGeneralFile() in loadImage()
+ * and corrupt image data can be cached in ~/.w3m.
+ */
+#if 0
close_tty();
+#endif
close_all_fds_except(i, f);
QuietMessage = TRUE;
fmInitialized = FALSE;
diff --git a/file.c b/file.c
index 567d41e..78987e9 100644
--- a/file.c
+++ b/file.c
@@ -1,4 +1,5 @@
/* $Id: file.c,v 1.266 2012/05/22 09:45:56 inu Exp $ */
+/* vi: set sw=4 ts=8 ai sm noet : */
#include "fm.h"
#include <sys/types.h>
#include "myctype.h"
@@ -26,6 +27,8 @@
#define min(a,b) ((a) > (b) ? (b) : (a))
#endif /* not min */
+#define MAX_INPUT_SIZE 80 /* TODO - max should be screen line length */
+
static int frame_source = 0;
static char *guess_filename(char *file);
@@ -47,11 +50,11 @@ static JMP_BUF AbortLoading;
static struct table *tables[MAX_TABLE];
static struct table_mode table_mode[MAX_TABLE];
-#ifdef USE_IMAGE
+#if defined(USE_M17N) || defined(USE_IMAGE)
static ParsedURL *cur_baseURL = NULL;
-#ifdef USE_M17N
-static char cur_document_charset;
#endif
+#ifdef USE_M17N
+static wc_ces cur_document_charset = 0;
#endif
static Str cur_title;
@@ -67,7 +70,7 @@ static int cur_status;
#ifdef MENU_SELECT
/* menu based <select> */
FormSelectOption *select_option;
-static int max_select = MAX_SELECT;
+int max_select = MAX_SELECT;
static int n_select;
static int cur_option_maxwidth;
#endif /* MENU_SELECT */
@@ -79,7 +82,7 @@ static int cur_textarea_rows;
static int cur_textarea_readonly;
static int n_textarea;
static int ignore_nl_textarea;
-static int max_textarea = MAX_TEXTAREA;
+int max_textarea = MAX_TEXTAREA;
static int http_response_code;
@@ -215,7 +218,6 @@ currentLn(Buffer *buf)
static Buffer *
loadSomething(URLFile *f,
- char *path,
Buffer *(*loadproc) (URLFile *, Buffer *), Buffer *defaultbuf)
{
Buffer *buf;
@@ -223,17 +225,23 @@ loadSomething(URLFile *f,
if ((buf = loadproc(f, defaultbuf)) == NULL)
return NULL;
- buf->filename = path;
if (buf->buffername == NULL || buf->buffername[0] == '\0') {
buf->buffername = checkHeader(buf, "Subject:");
- if (buf->buffername == NULL)
- buf->buffername = conv_from_system(lastFileName(path));
+ if (buf->buffername == NULL && buf->filename != NULL)
+ buf->buffername = conv_from_system(lastFileName(buf->filename));
}
if (buf->currentURL.scheme == SCM_UNKNOWN)
buf->currentURL.scheme = f->scheme;
- buf->real_scheme = f->scheme;
if (f->scheme == SCM_LOCAL && buf->sourcefile == NULL)
- buf->sourcefile = path;
+ buf->sourcefile = buf->filename;
+ if (loadproc == loadHTMLBuffer
+#ifdef USE_IMAGE
+ || loadproc == loadImageBuffer
+#endif
+ )
+ buf->type = "text/html";
+ else
+ buf->type = "text/plain";
return buf;
}
@@ -484,28 +492,6 @@ convertLine0(URLFile *uf, Str line, int mode)
return line;
}
-/*
- * loadFile: load file to buffer
- */
-Buffer *
-loadFile(char *path)
-{
- Buffer *buf;
- URLFile uf;
- init_stream(&uf, SCM_LOCAL, NULL);
- examineFile(path, &uf);
- if (uf.stream == NULL)
- return NULL;
- buf = newBuffer(INIT_BUFFER_WIDTH);
- current_content_length = 0;
-#ifdef USE_M17N
- content_charset = 0;
-#endif
- buf = loadSomething(&uf, path, loadBuffer, buf);
- UFclose(&uf);
- return buf;
-}
-
int
matchattr(char *p, char *attr, int len, Str *value)
{
@@ -626,8 +612,10 @@ readHeader(URLFile *uf, Buffer *newBuf, int thru, ParsedURL *pu)
if(w3m_reqlog){
FILE *ff;
ff = fopen(w3m_reqlog, "a");
- Strfputs(tmp, ff);
- fclose(ff);
+ if(ff){
+ Strfputs(tmp, ff);
+ fclose(ff);
+ }
}
if (src)
Strfputs(tmp, src);
@@ -694,6 +682,7 @@ readHeader(URLFile *uf, Buffer *newBuf, int thru, ParsedURL *pu)
#endif
init_stream(&f, SCM_LOCAL, newStrStream(src));
loadHTMLstream(&f, newBuf, NULL, TRUE);
+ UFclose(&f);
for (l = newBuf->lastLine; l && l->real_linenumber;
l = l->prev)
l->real_linenumber = 0;
@@ -1244,6 +1233,7 @@ AuthDigestCred(struct http_auth *ha, Str uname, Str pw, ParsedURL *pu,
unsigned char md5[MD5_DIGEST_LENGTH + 1];
Str uri = HTTPrequestURI(pu, hr);
char nc[] = "00000001";
+ FILE *fp;
Str algorithm = qstr_unquote(get_auth_param(ha->param, "algorithm"));
Str nonce = qstr_unquote(get_auth_param(ha->param, "nonce"));
@@ -1326,10 +1316,11 @@ AuthDigestCred(struct http_auth *ha, Str uname, Str pw, ParsedURL *pu,
/* A2 = Method ":" digest-uri-value ":" H(entity-body) */
if (request && request->body) {
if (request->method == FORM_METHOD_POST && request->enctype == FORM_ENCTYPE_MULTIPART) {
- FILE *fp = fopen(request->body, "r");
+ fp = fopen(request->body, "r");
if (fp != NULL) {
Str ebody;
ebody = Strfgetall(fp);
+ fclose(fp);
MD5(ebody->ptr, strlen(ebody->ptr), md5);
}
else {
@@ -1697,13 +1688,15 @@ getLinkNumberStr(int correction)
/*
* loadGeneralFile: load file to buffer
*/
+#define DO_EXTERNAL ((Buffer *(*)(URLFile *, Buffer *))doExternal)
Buffer *
loadGeneralFile(char *path, ParsedURL *volatile current, char *referer,
int flag, FormList *volatile request)
{
URLFile f, *volatile of = NULL;
ParsedURL pu;
- Buffer *b = NULL, *(*volatile proc)() = loadBuffer;
+ Buffer *b = NULL;
+ Buffer *(*volatile proc)(URLFile *, Buffer *) = loadBuffer;
char *volatile tpath;
char *volatile t = "text/plain", *p, *volatile real_type = NULL;
Buffer *volatile t_buf = NULL;
@@ -1719,6 +1712,9 @@ loadGeneralFile(char *path, ParsedURL *volatile current, char *referer,
URLOption url_option;
Str tmp;
Str volatile page = NULL;
+#ifdef USE_GOPHER
+ int gopher_download = FALSE;
+#endif
#ifdef USE_M17N
wc_ces charset = WC_CES_US_ASCII;
#endif
@@ -1730,7 +1726,22 @@ loadGeneralFile(char *path, ParsedURL *volatile current, char *referer,
add_auth_cookie_flag = 0;
checkRedirection(NULL);
+
load_doc:
+ {
+ const char *sc_redirect;
+ parseURL2(tpath, &pu, current);
+ sc_redirect = query_SCONF_SUBSTITUTE_URL(&pu);
+ if (sc_redirect && *sc_redirect && checkRedirection(&pu)) {
+ tpath = (char *)sc_redirect;
+ request = NULL;
+ add_auth_cookie_flag = 0;
+ current = New(ParsedURL);
+ *current = pu;
+ status = HTST_NORMAL;
+ goto load_doc;
+ }
+ }
TRAP_OFF;
url_option.referer = referer;
url_option.flag = flag;
@@ -1863,7 +1874,7 @@ loadGeneralFile(char *path, ParsedURL *volatile current, char *referer,
/* 302: Found */
/* 303: See Other */
/* 307: Temporary Redirect (HTTP/1.1) */
- tpath = url_quote_conv(p, DocumentCharset);
+ tpath = url_encode(p, NULL, 0);
request = NULL;
UFclose(&f);
current = New(ParsedURL);
@@ -1951,7 +1962,10 @@ loadGeneralFile(char *path, ParsedURL *volatile current, char *referer,
#endif /* USE_NNTP */
#ifdef USE_GOPHER
else if (pu.scheme == SCM_GOPHER) {
- switch (*pu.file) {
+ p = pu.file;
+ while(*p == '/')
+ ++p;
+ switch (*p) {
case '0':
t = "text/plain";
break;
@@ -1961,6 +1975,16 @@ loadGeneralFile(char *path, ParsedURL *volatile current, char *referer,
t = "gopher:directory";
TRAP_OFF;
goto page_loaded;
+ case '7':
+ if(pu.query != NULL) {
+ page = loadGopherDir(&f, &pu, &charset);
+ t = "gopher:directory";
+ } else {
+ page = loadGopherSearch(&f, &pu, &charset);
+ t = "gopher:search";
+ }
+ TRAP_OFF;
+ goto page_loaded;
case 's':
t = "audio/basic";
break;
@@ -1970,6 +1994,16 @@ loadGeneralFile(char *path, ParsedURL *volatile current, char *referer,
case 'h':
t = "text/html";
break;
+ case 'I':
+ t = guessContentType(pu.file);
+ if(strncasecmp(t, "image/", 6) != 0) {
+ t = "image/png";
+ }
+ break;
+ case '5':
+ case '9':
+ gopher_download = TRUE;
+ break;
}
}
#endif /* USE_GOPHER */
@@ -2022,7 +2056,7 @@ loadGeneralFile(char *path, ParsedURL *volatile current, char *referer,
if (f.is_cgi && (p = checkHeader(t_buf, "Location:")) != NULL &&
checkRedirection(&pu)) {
/* document moved */
- tpath = url_quote_conv(remove_space(p), DocumentCharset);
+ tpath = url_encode(remove_space(p), NULL, 0);
request = NULL;
UFclose(&f);
add_auth_cookie_flag = 0;
@@ -2090,7 +2124,11 @@ loadGeneralFile(char *path, ParsedURL *volatile current, char *referer,
Strfputs(s, src);
fclose(src);
}
+#ifdef USE_GOPHER
+ if (do_download || gopher_download) {
+#else
if (do_download) {
+#endif
char *file;
if (!src)
return NULL;
@@ -2123,15 +2161,15 @@ loadGeneralFile(char *path, ParsedURL *volatile current, char *referer,
if (real_type == NULL)
real_type = t;
proc = loadBuffer;
-#ifdef USE_IMAGE
- cur_baseURL = New(ParsedURL);
- copyParsedURL(cur_baseURL, &pu);
-#endif
current_content_length = 0;
if ((p = checkHeader(t_buf, "Content-Length:")) != NULL)
current_content_length = strtoclen(p);
+#ifdef USE_GOPHER
+ if (do_download || gopher_download) {
+#else
if (do_download) {
+#endif
/* download only */
char *file;
TRAP_OFF;
@@ -2197,18 +2235,12 @@ loadGeneralFile(char *path, ParsedURL *volatile current, char *referer,
#endif
else if (w3m_backend) ;
else if (!(w3m_dump & ~DUMP_FRAME) || is_dump_text_type(t)) {
- if (!do_download && doExternal(f,
- pu.real_file ? pu.real_file : pu.file,
- t, &b, t_buf)) {
- if (b && b != NO_BUFFER) {
- b->real_scheme = f.scheme;
- b->real_type = real_type;
- if (b->currentURL.host == NULL && b->currentURL.file == NULL)
- copyParsedURL(&b->currentURL, &pu);
- }
- UFclose(&f);
- TRAP_OFF;
- return b;
+ if (!do_download &&
+#ifdef USE_GOPHER
+ !gopher_download &&
+#endif
+ searchExtViewer(t) != NULL) {
+ proc = DO_EXTERNAL;
}
else {
TRAP_OFF;
@@ -2232,36 +2264,30 @@ loadGeneralFile(char *path, ParsedURL *volatile current, char *referer,
else if (w3m_dump & DUMP_FRAME)
return NULL;
+ if (t_buf == NULL)
+ t_buf = newBuffer(INIT_BUFFER_WIDTH);
+ copyParsedURL(&t_buf->currentURL, &pu);
+ t_buf->filename = pu.real_file ? pu.real_file :
+ pu.file ? conv_to_system(pu.file) : NULL;
if (flag & RG_FRAME) {
- if (t_buf == NULL)
- t_buf = newBuffer(INIT_BUFFER_WIDTH);
t_buf->bufferprop |= BP_FRAME;
}
#ifdef USE_SSL
- if (t_buf)
- t_buf->ssl_certificate = f.ssl_certificate;
+ t_buf->ssl_certificate = f.ssl_certificate;
#endif
frame_source = flag & RG_FRAME_SRC;
- b = loadSomething(&f, pu.real_file ? pu.real_file : pu.file, proc, t_buf);
+ if (proc == DO_EXTERNAL) {
+ b = doExternal(f, t, t_buf);
+ } else {
+ b = loadSomething(&f, proc, t_buf);
+ }
UFclose(&f);
frame_source = 0;
- if (b) {
+ if (b && b != NO_BUFFER) {
b->real_scheme = f.scheme;
b->real_type = real_type;
- if (b->currentURL.host == NULL && b->currentURL.file == NULL)
- copyParsedURL(&b->currentURL, &pu);
- if (is_html_type(t))
- b->type = "text/html";
- else if (w3m_backend) {
- Str s = Strnew_charp(t);
- b->type = s->ptr;
- }
-#ifdef USE_IMAGE
- else if (proc == loadImageBuffer)
- b->type = "text/html";
-#endif
- else
- b->type = "text/plain";
+ if (w3m_backend)
+ b->type = allocStr(t, -1);
if (pu.label) {
if (proc == loadHTMLBuffer) {
Anchor *a;
@@ -2287,10 +2313,11 @@ loadGeneralFile(char *path, ParsedURL *volatile current, char *referer,
if (header_string)
header_string = NULL;
#ifdef USE_NNTP
- if (f.scheme == SCM_NNTP || f.scheme == SCM_NEWS)
+ if (b && b != NO_BUFFER && (f.scheme == SCM_NNTP || f.scheme == SCM_NEWS))
reAnchorNewsheader(b);
#endif
- preFormUpdateBuffer(b);
+ if (b && b != NO_BUFFER)
+ preFormUpdateBuffer(b);
TRAP_OFF;
return b;
}
@@ -2325,8 +2352,12 @@ push_link(int cmd, int offset, int pos)
struct link_stack *p;
p = New(struct link_stack);
p->cmd = cmd;
- p->offset = offset;
- p->pos = pos;
+ p->offset = (short)offset;
+ if (p->offset < 0)
+ p->offset = 0;
+ p->pos = (short)pos;
+ if (p->pos < 0)
+ p->pos = 0;
p->next = link_stack;
link_stack = p;
}
@@ -2469,6 +2500,7 @@ set_breakpoint(struct readbuffer *obuf, int tag_length)
bcopy((void *)&obuf->anchor, (void *)&obuf->bp.anchor,
sizeof(obuf->anchor));
obuf->bp.img_alt = obuf->img_alt;
+ obuf->bp.input_alt = obuf->input_alt;
obuf->bp.in_bold = obuf->in_bold;
obuf->bp.in_italic = obuf->in_italic;
obuf->bp.in_under = obuf->in_under;
@@ -2486,6 +2518,7 @@ back_to_breakpoint(struct readbuffer *obuf)
bcopy((void *)&obuf->bp.anchor, (void *)&obuf->anchor,
sizeof(obuf->anchor));
obuf->img_alt = obuf->bp.img_alt;
+ obuf->input_alt = obuf->bp.input_alt;
obuf->in_bold = obuf->bp.in_bold;
obuf->in_italic = obuf->bp.in_italic;
obuf->in_under = obuf->bp.in_under;
@@ -2729,7 +2762,7 @@ flushline(struct html_feed_environ *h_env, struct readbuffer *obuf, int indent,
Str line = obuf->line, pass = NULL;
char *hidden_anchor = NULL, *hidden_img = NULL, *hidden_bold = NULL,
*hidden_under = NULL, *hidden_italic = NULL, *hidden_strike = NULL,
- *hidden_ins = NULL, *hidden = NULL;
+ *hidden_ins = NULL, *hidden_input = NULL, *hidden = NULL;
#ifdef DEBUG
if (w3m_debug) {
@@ -2761,6 +2794,12 @@ flushline(struct html_feed_environ *h_env, struct readbuffer *obuf, int indent,
hidden = hidden_img;
}
}
+ if (obuf->input_alt.in) {
+ if ((hidden_input = has_hidden_link(obuf, HTML_INPUT_ALT)) != NULL) {
+ if (!hidden || hidden_input < hidden)
+ hidden = hidden_input;
+ }
+ }
if (obuf->in_bold) {
if ((hidden_bold = has_hidden_link(obuf, HTML_B)) != NULL) {
if (!hidden || hidden_bold < hidden)
@@ -2812,6 +2851,8 @@ flushline(struct html_feed_environ *h_env, struct readbuffer *obuf, int indent,
Strcat_charp(line, "</a>");
if (obuf->img_alt && !hidden_img)
Strcat_charp(line, "</img_alt>");
+ if (obuf->input_alt.in && !hidden_input)
+ Strcat_charp(line, "</input_alt>");
if (obuf->in_bold && !hidden_bold)
Strcat_charp(line, "</b>");
if (obuf->in_italic && !hidden_italic)
@@ -3022,6 +3063,18 @@ flushline(struct html_feed_environ *h_env, struct readbuffer *obuf, int indent,
Strcat_charp(tmp, "\">");
push_tag(obuf, tmp->ptr, HTML_IMG_ALT);
}
+ if (!hidden_input && obuf->input_alt.in) {
+ Str tmp;
+ if (obuf->input_alt.hseq > 0)
+ obuf->input_alt.hseq = - obuf->input_alt.hseq;
+ tmp = Sprintf("<INPUT_ALT hseq=\"%d\" fid=\"%d\" name=\"%s\" type=\"%s\" value=\"%s\">",
+ obuf->input_alt.hseq,
+ obuf->input_alt.fid,
+ obuf->input_alt.name ? obuf->input_alt.name->ptr : "",
+ obuf->input_alt.type ? obuf->input_alt.type->ptr : "",
+ obuf->input_alt.value ? obuf->input_alt.value->ptr : "");
+ push_tag(obuf, tmp->ptr, HTML_INPUT_ALT);
+ }
if (!hidden_bold && obuf->in_bold)
push_tag(obuf, "<B>", HTML_B);
if (!hidden_italic && obuf->in_italic)
@@ -3228,7 +3281,7 @@ process_img(struct parsed_tag *tag, int width)
if (!parsedtag_get_value(tag, ATTR_SRC, &p))
return tmp;
- p = remove_space(p);
+ p = url_encode(remove_space(p), cur_baseURL, cur_document_charset);
q = NULL;
parsedtag_get_value(tag, ATTR_ALT, &q);
if (!pseudoInlines && (q == NULL || (*q == '\0' && ignore_null_img_alt)))
@@ -3255,9 +3308,9 @@ process_img(struct parsed_tag *tag, int width)
}
#endif
}
+ i = -1;
#ifdef USE_IMAGE
if (use_image) {
- i = -1;
if (parsedtag_get_value(tag, ATTR_HEIGHT, &i)) {
if (i > 0) {
i = (int)(i * image_scale / 100 + 0.5);
@@ -3322,12 +3375,7 @@ process_img(struct parsed_tag *tag, int width)
Image image;
ParsedURL u;
-#ifdef USE_M17N
- parseURL2(wc_conv(p, InnerCharset, cur_document_charset)->ptr, &u,
- cur_baseURL);
-#else
parseURL2(p, &u, cur_baseURL);
-#endif
image.url = parsedURL2Str(&u)->ptr;
if (!uncompressed_file_type(u.file, &image.ext))
image.ext = filename_extension(u.file, TRUE);
@@ -3346,8 +3394,14 @@ process_img(struct parsed_tag *tag, int width)
if (i < 0)
i = pixel_per_line;
}
- nw = (w > 3) ? (int)((w - 3) / pixel_per_char + 1) : 1;
- ni = (i > 3) ? (int)((i - 3) / pixel_per_line + 1) : 1;
+ if (enable_inline_image) {
+ nw = (w > 1) ? ((w - 1) / pixel_per_char_i + 1) : 1 ;
+ ni = (i > 1) ? ((i - 1) / pixel_per_line_i + 1) : 1 ;
+ }
+ else {
+ nw = (w > 3) ? (int)((w - 3) / pixel_per_char + 1) : 1;
+ ni = (i > 3) ? (int)((i - 3) / pixel_per_line + 1) : 1;
+ }
Strcat(tmp,
Sprintf("<pre_int><img_alt hseq=\"%d\" src=\"", cur_iseq++));
pre_int = TRUE;
@@ -3378,19 +3432,21 @@ process_img(struct parsed_tag *tag, int width)
if (i0 >= 0)
Strcat(tmp, Sprintf(" height=%d", i0));
switch (align) {
+ case ALIGN_MIDDLE:
+ if (!enable_inline_image) {
+ top = ni / 2;
+ bottom = top;
+ if (top * 2 == ni)
+ yoffset = (int)(((ni + 1) * pixel_per_line - i) / 2);
+ else
+ yoffset = (int)((ni * pixel_per_line - i) / 2);
+ break;
+ }
case ALIGN_TOP:
top = 0;
bottom = ni - 1;
yoffset = 0;
break;
- case ALIGN_MIDDLE:
- top = ni / 2;
- bottom = top;
- if (top * 2 == ni)
- yoffset = (int)(((ni + 1) * pixel_per_line - i) / 2);
- else
- yoffset = (int)((ni * pixel_per_line - i) / 2);
- break;
case ALIGN_BOTTOM:
top = ni - 1;
bottom = 0;
@@ -3408,7 +3464,12 @@ process_img(struct parsed_tag *tag, int width)
}
break;
}
- xoffset = (int)((nw * pixel_per_char - w) / 2);
+
+ if (enable_inline_image)
+ xoffset = 0;
+ else
+ xoffset = (int)((nw * pixel_per_char - w) / 2);
+
if (xoffset)
Strcat(tmp, Sprintf(" xoffset=%d", xoffset));
if (yoffset)
@@ -3435,7 +3496,7 @@ process_img(struct parsed_tag *tag, int width)
if (use_image) {
if (n > nw) {
char *r;
- for (r = q, n = 0; r; r += get_mclen(r), n += get_mcwidth(r)) {
+ for (r = q, n = 0; *r; r += get_mclen(r), n += get_mcwidth(r)) {
if (n + get_mcwidth(r) > nw)
break;
}
@@ -3548,7 +3609,7 @@ process_anchor(struct parsed_tag *tag, char *tagbuf)
Str
process_input(struct parsed_tag *tag)
{
- int i, w, v, x, y, z, iw, ih;
+ int i = 20, v, x, y, z, iw, ih, size = 20;
char *q, *p, *r, *p2, *s;
Str tmp = NULL;
char *qq = "";
@@ -3567,9 +3628,9 @@ process_input(struct parsed_tag *tag)
parsedtag_get_value(tag, ATTR_VALUE, &q);
r = "";
parsedtag_get_value(tag, ATTR_NAME, &r);
- w = 20;
- parsedtag_get_value(tag, ATTR_SIZE, &w);
- i = 20;
+ parsedtag_get_value(tag, ATTR_SIZE, &size);
+ if (size > MAX_INPUT_SIZE)
+ size = MAX_INPUT_SIZE;
parsedtag_get_value(tag, ATTR_MAXLENGTH, &i);
p2 = NULL;
parsedtag_get_value(tag, ATTR_ALT, &p2);
@@ -3623,9 +3684,10 @@ process_input(struct parsed_tag *tag)
Strcat(tmp, getLinkNumberStr(0));
Strcat_char(tmp, '(');
}
- Strcat(tmp, Sprintf("<input_alt hseq=\"%d\" fid=\"%d\" type=%s "
+ Strcat(tmp, Sprintf("<input_alt hseq=\"%d\" fid=\"%d\" type=\"%s\" "
"name=\"%s\" width=%d maxlength=%d value=\"%s\"",
- cur_hseq++, cur_form_id, p, html_quote(r), w, i, qq));
+ cur_hseq++, cur_form_id, html_quote(p),
+ html_quote(r), size, i, qq));
if (x)
Strcat_charp(tmp, " checked");
if (y)
@@ -3670,18 +3732,18 @@ process_input(struct parsed_tag *tag)
case FORM_INPUT_PASSWORD:
i = 0;
if (q) {
- for (; i < qlen && i < w; i++)
+ for (; i < qlen && i < size; i++)
Strcat_char(tmp, '*');
}
- for (; i < w; i++)
+ for (; i < size; i++)
Strcat_char(tmp, ' ');
break;
case FORM_INPUT_TEXT:
case FORM_INPUT_FILE:
if (q)
- Strcat(tmp, textfieldrep(Strnew_charp(q), w));
+ Strcat(tmp, textfieldrep(Strnew_charp(q), size));
else {
- for (i = 0; i < w; i++)
+ for (i = 0; i < size; i++)
Strcat_char(tmp, ' ');
}
break;
@@ -3732,6 +3794,75 @@ process_input(struct parsed_tag *tag)
}
Str
+process_button(struct parsed_tag *tag)
+{
+ Str tmp = NULL;
+ char *p, *q, *r, *qq = "";
+ int qlen, v;
+
+ if (cur_form_id < 0) {
+ char *s = "<form_int method=internal action=none>";
+ tmp = process_form(parse_tag(&s, TRUE));
+ }
+ if (tmp == NULL)
+ tmp = Strnew();
+
+ p = "submit";
+ parsedtag_get_value(tag, ATTR_TYPE, &p);
+ q = NULL;
+ parsedtag_get_value(tag, ATTR_VALUE, &q);
+ r = "";
+ parsedtag_get_value(tag, ATTR_NAME, &r);
+
+ v = formtype(p);
+ if (v == FORM_UNKNOWN)
+ return NULL;
+
+ switch (v) {
+ case FORM_INPUT_SUBMIT:
+ case FORM_INPUT_BUTTON:
+ case FORM_INPUT_RESET:
+ break;
+ default:
+ p = "submit";
+ v = FORM_INPUT_SUBMIT;
+ break;
+ }
+
+ if (!q) {
+ switch (v) {
+ case FORM_INPUT_SUBMIT:
+ case FORM_INPUT_BUTTON:
+ q = "SUBMIT";
+ break;
+ case FORM_INPUT_RESET:
+ q = "RESET";
+ break;
+ }
+ }
+ if (q) {
+ qq = html_quote(q);
+ qlen = strlen(q);
+ }
+
+ /* Strcat_charp(tmp, "<pre_int>"); */
+ Strcat(tmp, Sprintf("<input_alt hseq=\"%d\" fid=\"%d\" type=\"%s\" "
+ "name=\"%s\" value=\"%s\">",
+ cur_hseq++, cur_form_id, html_quote(p),
+ html_quote(r), qq));
+ return tmp;
+}
+
+Str
+process_n_button(void)
+{
+ Str tmp = Strnew();
+ Strcat_charp(tmp, "</input_alt>");
+ /* Strcat_charp(tmp, "</pre_int>"); */
+ return tmp;
+}
+
+Str
process_select(struct parsed_tag *tag)
{
Str tmp = NULL;
@@ -3926,7 +4057,7 @@ process_textarea(struct parsed_tag *tag, int width)
cur_textarea_size = 20;
if (parsedtag_get_value(tag, ATTR_COLS, &p)) {
cur_textarea_size = atoi(p);
- if (p[strlen(p) - 1] == '%')
+ if (strlen(p) > 0 && p[strlen(p) - 1] == '%')
cur_textarea_size = width * cur_textarea_size / 100 - 2;
if (cur_textarea_size <= 0) {
cur_textarea_size = 20;
@@ -4003,7 +4134,9 @@ feed_textarea(char *str)
Strcat_charp(textarea_str[n_textarea], "\r\n");
str++;
}
- else if (*str != '\r')
+ else if (*str == '\r')
+ str++;
+ else
Strcat_char(textarea_str[n_textarea], *(str++));
}
}
@@ -4084,6 +4217,7 @@ process_form_int(struct parsed_tag *tag, int fid)
parsedtag_get_value(tag, ATTR_METHOD, &p);
q = "!CURRENT_URL!";
parsedtag_get_value(tag, ATTR_ACTION, &q);
+ q = url_encode(remove_space(q), cur_baseURL, cur_document_charset);
r = NULL;
#ifdef USE_M17N
if (parsedtag_get_value(tag, ATTR_ACCEPT_CHARSET, &r))
@@ -4113,7 +4247,7 @@ process_form_int(struct parsed_tag *tag, int fid)
forms = New_N(FormList *, forms_size);
form_stack = NewAtom_N(int, forms_size);
}
- else if (forms_size <= form_max) {
+ if (forms_size <= form_max) {
forms_size += form_max;
forms = New_Reuse(FormList *, forms, forms_size);
form_stack = New_Reuse(int, form_stack, forms_size);
@@ -4227,9 +4361,18 @@ process_idattr(struct readbuffer *obuf, int cmd, struct parsed_tag *tag)
obuf->flag &= ~RB_P;\
}
-#define CLOSE_A \
- CLOSE_P; \
- close_anchor(h_env, obuf);
+#define HTML5_CLOSE_A do { \
+ if (obuf->flag & RB_HTML5) { \
+ close_anchor(h_env, obuf); \
+ } \
+ } while (0)
+
+#define CLOSE_A do { \
+ CLOSE_P; \
+ if (!(obuf->flag & RB_HTML5)) { \
+ close_anchor(h_env, obuf); \
+ } \
+ } while (0)
#define CLOSE_DT \
if (obuf->flag & RB_IN_DT) { \
@@ -4284,15 +4427,16 @@ getMetaRefreshParam(char *q, Str *refresh_uri)
while (*q) {
if (!strncasecmp(q, "url=", 4)) {
q += 4;
- if (*q == '\"') /* " */
+ if (*q == '\"' || *q == '\'') /* " or ' */
q++;
r = q;
while (*r && !IS_SPACE(*r) && *r != ';')
r++;
s_tmp = Strnew_charp_n(q, r - q);
- if (s_tmp->ptr[s_tmp->length - 1] == '\"') { /* "
- */
+ if (s_tmp->length > 0 &&
+ (s_tmp->ptr[s_tmp->length - 1] == '\"' || /* " */
+ s_tmp->ptr[s_tmp->length - 1] == '\'')) { /* ' */
s_tmp->length--;
s_tmp->ptr[s_tmp->length] = '\0';
}
@@ -4391,11 +4535,31 @@ HTMLtagproc1(struct parsed_tag *tag, struct html_feed_environ *h_env)
HTMLlineproc1("</b>", h_env);
return 1;
case HTML_Q:
+#ifdef USE_M17N
+#ifdef USE_UNICODE
+ if (DisplayCharset != WC_CES_US_ASCII) {
+ HTMLlineproc1((obuf->q_level & 1 ? "&lsquo;": "&ldquo;"), h_env);
+ obuf->q_level += 1;
+ }
+ else
+#endif
+#endif
HTMLlineproc1("`", h_env);
return 1;
case HTML_N_Q:
+#ifdef USE_M17N
+#ifdef USE_UNICODE
+ if (DisplayCharset != WC_CES_US_ASCII) {
+ obuf->q_level -= 1;
+ HTMLlineproc1((obuf->q_level & 1 ? "&rsquo;": "&rdquo;"), h_env);
+ }
+ else
+#endif
+#endif
HTMLlineproc1("'", h_env);
return 1;
+ case HTML_FIGURE:
+ case HTML_N_FIGURE:
case HTML_P:
case HTML_N_P:
CLOSE_A;
@@ -4410,6 +4574,8 @@ HTMLtagproc1(struct parsed_tag *tag, struct html_feed_environ *h_env)
obuf->flag |= RB_P;
}
return 1;
+ case HTML_FIGCAPTION:
+ case HTML_N_FIGCAPTION:
case HTML_BR:
flushline(h_env, obuf, envs[h_env->envc].indent, 1, h_env->limit);
h_env->blank_lines = 0;
@@ -4599,6 +4765,12 @@ HTMLtagproc1(struct parsed_tag *tag, struct html_feed_environ *h_env)
case HTML_DD:
CLOSE_A;
CLOSE_DT;
+ if (h_env->envc == 0 ||
+ (h_env->envc_real < h_env->nenv &&
+ envs[h_env->envc].env != HTML_DL &&
+ envs[h_env->envc].env != HTML_DL_COMPACT)) {
+ PUSH_ENV(HTML_DL);
+ }
if (envs[h_env->envc].env == HTML_DL_COMPACT) {
if (obuf->pos > envs[h_env->envc].indent)
flushline(h_env, obuf, envs[h_env->envc].indent, 0,
@@ -4666,6 +4838,7 @@ HTMLtagproc1(struct parsed_tag *tag, struct html_feed_environ *h_env)
}
flushline(h_env, obuf, envs[h_env->envc].indent, 0, h_env->limit);
return 0;
+ case HTML_SECTION:
case HTML_HR:
close_anchor(h_env, obuf);
tmp = process_hr(tag, h_env->limit, envs[h_env->envc].indent);
@@ -4824,6 +4997,8 @@ HTMLtagproc1(struct parsed_tag *tag, struct html_feed_environ *h_env)
close_anchor(h_env, obuf);
return 1;
case HTML_IMG:
+ if (parsedtag_exists(tag, ATTR_USEMAP))
+ HTML5_CLOSE_A;
tmp = process_img(tag, h_env->limit);
HTMLlineproc1(tmp->ptr, h_env);
return 1;
@@ -4833,13 +5008,13 @@ HTMLtagproc1(struct parsed_tag *tag, struct html_feed_environ *h_env)
#ifdef USE_IMAGE
i = 0;
if (parsedtag_get_value(tag, ATTR_TOP_MARGIN, &i)) {
- if (i > obuf->top_margin)
- obuf->top_margin = i;
+ if ((short)i > obuf->top_margin)
+ obuf->top_margin = (short)i;
}
i = 0;
if (parsedtag_get_value(tag, ATTR_BOTTOM_MARGIN, &i)) {
- if (i > obuf->bottom_margin)
- obuf->bottom_margin = i;
+ if ((short)i > obuf->bottom_margin)
+ obuf->bottom_margin = (short)i;
}
#endif
return 0;
@@ -4853,15 +5028,43 @@ HTMLtagproc1(struct parsed_tag *tag, struct html_feed_environ *h_env)
case HTML_INPUT_ALT:
i = 0;
if (parsedtag_get_value(tag, ATTR_TOP_MARGIN, &i)) {
- if (i > obuf->top_margin)
- obuf->top_margin = i;
+ if ((short)i > obuf->top_margin)
+ obuf->top_margin = (short)i;
}
i = 0;
if (parsedtag_get_value(tag, ATTR_BOTTOM_MARGIN, &i)) {
- if (i > obuf->bottom_margin)
- obuf->bottom_margin = i;
+ if ((short)i > obuf->bottom_margin)
+ obuf->bottom_margin = (short)i;
+ }
+ if (parsedtag_get_value(tag, ATTR_HSEQ, &hseq)) {
+ obuf->input_alt.hseq = hseq;
+ }
+ if (parsedtag_get_value(tag, ATTR_FID, &i)) {
+ obuf->input_alt.fid = i;
}
+ if (parsedtag_get_value(tag, ATTR_TYPE, &p)) {
+ obuf->input_alt.type = Strnew_charp(p);
+ }
+ if (parsedtag_get_value(tag, ATTR_VALUE, &p)) {
+ obuf->input_alt.value = Strnew_charp(p);
+ }
+ if (parsedtag_get_value(tag, ATTR_NAME, &p)) {
+ obuf->input_alt.name = Strnew_charp(p);
+ }
+ obuf->input_alt.in = 1;
return 0;
+ case HTML_N_INPUT_ALT:
+ if (obuf->input_alt.in) {
+ if (!close_effect0(obuf, HTML_INPUT_ALT))
+ push_tag(obuf, "</input_alt>", HTML_N_INPUT_ALT);
+ obuf->input_alt.hseq = 0;
+ obuf->input_alt.fid = -1;
+ obuf->input_alt.in = 0;
+ obuf->input_alt.type = NULL;
+ obuf->input_alt.name = NULL;
+ obuf->input_alt.value = NULL;
+ }
+ return 1;
case HTML_TABLE:
close_anchor(h_env, obuf);
obuf->table_level++;
@@ -4884,6 +5087,8 @@ HTMLtagproc1(struct parsed_tag *tag, struct html_feed_environ *h_env)
else
w = BORDER_THIN;
}
+ if (DisplayBorders && w == BORDER_NONE)
+ w = BORDER_THIN;
if (parsedtag_get_value(tag, ATTR_WIDTH, &i)) {
if (obuf->table_level == 0)
width = REAL_WIDTH(i, h_env->limit - envs[h_env->envc].indent);
@@ -4892,9 +5097,24 @@ HTMLtagproc1(struct parsed_tag *tag, struct html_feed_environ *h_env)
}
if (parsedtag_exists(tag, ATTR_HBORDER))
w = BORDER_NOWIN;
+#define MAX_CELLSPACING 1000
+#define MAX_CELLPADDING 1000
+#define MAX_VSPACE 1000
parsedtag_get_value(tag, ATTR_CELLSPACING, &x);
parsedtag_get_value(tag, ATTR_CELLPADDING, &y);
parsedtag_get_value(tag, ATTR_VSPACE, &z);
+ if (x < 0)
+ x = 0;
+ if (y < 0)
+ y = 0;
+ if (z < 0)
+ z = 0;
+ if (x > MAX_CELLSPACING)
+ x = MAX_CELLSPACING;
+ if (y > MAX_CELLPADDING)
+ y = MAX_CELLPADDING;
+ if (z > MAX_VSPACE)
+ z = MAX_VSPACE;
#ifdef ID_EXT
parsedtag_get_value(tag, ATTR_ID, &id);
#endif /* ID_EXT */
@@ -4970,6 +5190,17 @@ HTMLtagproc1(struct parsed_tag *tag, struct html_feed_environ *h_env)
case HTML_INPUT:
close_anchor(h_env, obuf);
tmp = process_input(tag);
+ if (tmp)
+ HTMLlineproc1(tmp->ptr, h_env);
+ return 1;
+ case HTML_BUTTON:
+ HTML5_CLOSE_A;
+ tmp = process_button(tag);
+ if (tmp)
+ HTMLlineproc1(tmp->ptr, h_env);
+ return 1;
+ case HTML_N_BUTTON:
+ tmp = process_n_button();
if (tmp)
HTMLlineproc1(tmp->ptr, h_env);
return 1;
@@ -5019,6 +5250,11 @@ HTMLtagproc1(struct parsed_tag *tag, struct html_feed_environ *h_env)
NULL);
HTMLlineproc1(tmp->ptr, h_env);
return 1;
+ case HTML_DOCTYPE:
+ if (!parsedtag_exists(tag, ATTR_PUBLIC)) {
+ obuf->flag |= RB_HTML5;
+ }
+ return 1;
case HTML_META:
p = q = r = NULL;
parsedtag_get_value(tag, ATTR_HTTP_EQUIV, &p);
@@ -5067,11 +5303,10 @@ HTMLtagproc1(struct parsed_tag *tag, struct html_feed_environ *h_env)
}
return 1;
case HTML_BASE:
-#ifdef USE_IMAGE
+#if defined(USE_M17N) || defined(USE_IMAGE)
p = NULL;
if (parsedtag_get_value(tag, ATTR_HREF, &p)) {
- if (!cur_baseURL)
- cur_baseURL = New(ParsedURL);
+ cur_baseURL = New(ParsedURL);
parseURL(p, cur_baseURL, NULL);
}
#endif
@@ -5218,6 +5453,7 @@ HTMLtagproc1(struct parsed_tag *tag, struct html_feed_environ *h_env)
}
return 1;
case HTML_EMBED:
+ HTML5_CLOSE_A;
if (view_unseenobject) {
if (parsedtag_get_value(tag, ATTR_SRC, &p)) {
Str s;
@@ -5329,6 +5565,13 @@ HTMLlineproc2body(Buffer *buf, Str (*feed) (), int llimit)
#ifdef MENU_SELECT
Anchor **a_select = NULL;
#endif
+#if defined(USE_M17N) || defined(USE_IMAGE)
+ ParsedURL *base = baseURL(buf);
+#endif
+#ifdef USE_M17N
+ wc_ces name_charset = url_to_charset(NULL, &buf->currentURL,
+ buf->document_charset);
+#endif
if (out_size == 0) {
out_size = LINELEN;
@@ -5523,16 +5766,17 @@ HTMLlineproc2body(Buffer *buf, Str (*feed) (), int llimit)
hseq = 0;
id = NULL;
if (parsedtag_get_value(tag, ATTR_NAME, &id)) {
- id = url_quote_conv(id, buf->document_charset);
+ id = url_quote_conv(id, name_charset);
registerName(buf, id, currentLn(buf), pos);
}
if (parsedtag_get_value(tag, ATTR_HREF, &p))
- p = url_quote_conv(remove_space(p),
- buf->document_charset);
+ p = url_encode(remove_space(p), base,
+ buf->document_charset);
if (parsedtag_get_value(tag, ATTR_TARGET, &q))
q = url_quote_conv(q, buf->document_charset);
if (parsedtag_get_value(tag, ATTR_REFERER, &r))
- r = url_quote_conv(r, buf->document_charset);
+ r = url_encode(r, base,
+ buf->document_charset);
parsedtag_get_value(tag, ATTR_TITLE, &s);
parsedtag_get_value(tag, ATTR_ACCESSKEY, &t);
parsedtag_get_value(tag, ATTR_HSEQ, &hseq);
@@ -5571,7 +5815,7 @@ HTMLlineproc2body(Buffer *buf, Str (*feed) (), int llimit)
a_href->end.pos = pos;
if (a_href->start.line == a_href->end.line &&
a_href->start.pos == a_href->end.pos) {
- if (buf->hmarklist &&
+ if (buf->hmarklist && a_href->hseq >= 0 &&
a_href->hseq < buf->hmarklist->nmark)
buf->hmarklist->marks[a_href->hseq].invalid = 1;
a_href->hseq = -1;
@@ -5618,7 +5862,7 @@ HTMLlineproc2body(Buffer *buf, Str (*feed) (), int llimit)
ParsedURL u;
Image *image;
- parseURL2(a_img->url, &u, cur_baseURL);
+ parseURL2(a_img->url, &u, base);
a_img->image = image = New(Image);
image->url = parsedURL2Str(&u)->ptr;
if (!uncompressed_file_type(u.file, &image->ext))
@@ -5639,7 +5883,7 @@ HTMLlineproc2body(Buffer *buf, Str (*feed) (), int llimit)
image->map = q;
image->ismap = ismap;
image->touch = 0;
- image->cache = getImage(image, cur_baseURL,
+ image->cache = getImage(image, base,
IMG_FLAG_SKIP);
}
else if (iseq < 0) {
@@ -5678,7 +5922,8 @@ HTMLlineproc2body(Buffer *buf, Str (*feed) (), int llimit)
parsedtag_get_value(tag, ATTR_FID, &form_id);
parsedtag_get_value(tag, ATTR_TOP_MARGIN, &top);
parsedtag_get_value(tag, ATTR_BOTTOM_MARGIN, &bottom);
- if (form_id < 0 || form_id > form_max || forms == NULL)
+ if (form_id < 0 || form_id > form_max ||
+ forms == NULL || forms[form_id] == NULL)
break; /* outside of <form>..</form> */
form = forms[form_id];
if (hseq > 0) {
@@ -5689,6 +5934,21 @@ HTMLlineproc2body(Buffer *buf, Str (*feed) (), int llimit)
putHmarker(buf->hmarklist, currentLn(buf),
hpos, hseq - 1);
}
+ else if (hseq < 0) {
+ int h = -hseq - 1;
+ int hpos = pos;
+ if (*str == '[')
+ hpos++;
+ if (buf->hmarklist &&
+ h < buf->hmarklist->nmark &&
+ buf->hmarklist->marks[h].invalid) {
+ buf->hmarklist->marks[h].pos = hpos;
+ buf->hmarklist->marks[h].line = currentLn(buf);
+ buf->hmarklist->marks[h].invalid = 0;
+ hseq = -hseq;
+ }
+ }
+
if (!form->target)
form->target = buf->baseTarget;
if (a_textarea &&
@@ -5761,8 +6021,8 @@ HTMLlineproc2body(Buffer *buf, Str (*feed) (), int llimit)
break;
if (parsedtag_get_value(tag, ATTR_HREF, &p)) {
MapArea *a;
- p = url_quote_conv(remove_space(p),
- buf->document_charset);
+ p = url_encode(remove_space(p), base,
+ buf->document_charset);
t = NULL;
parsedtag_get_value(tag, ATTR_TARGET, &t);
q = "";
@@ -5811,11 +6071,14 @@ HTMLlineproc2body(Buffer *buf, Str (*feed) (), int llimit)
break;
case HTML_BASE:
if (parsedtag_get_value(tag, ATTR_HREF, &p)) {
- p = url_quote_conv(remove_space(p),
- buf->document_charset);
+ p = url_encode(remove_space(p), NULL,
+ buf->document_charset);
if (!buf->baseURL)
buf->baseURL = New(ParsedURL);
- parseURL(p, buf->baseURL, NULL);
+ parseURL2(p, buf->baseURL, &buf->currentURL);
+#if defined(USE_M17N) || defined(USE_IMAGE)
+ base = buf->baseURL;
+#endif
}
if (parsedtag_get_value(tag, ATTR_TARGET, &p))
buf->baseTarget =
@@ -5830,8 +6093,8 @@ HTMLlineproc2body(Buffer *buf, Str (*feed) (), int llimit)
int refresh_interval = getMetaRefreshParam(q, &tmp);
#ifdef USE_ALARM
if (tmp) {
- p = url_quote_conv(remove_space(tmp->ptr),
- buf->document_charset);
+ p = url_encode(remove_space(tmp->ptr), base,
+ buf->document_charset);
buf->event = setAlarmEvent(buf->event,
refresh_interval,
AL_IMPLICIT_ONCE,
@@ -5844,8 +6107,8 @@ HTMLlineproc2body(Buffer *buf, Str (*feed) (), int llimit)
FUNCNAME_reload, NULL);
#else
if (tmp && refresh_interval == 0) {
- p = url_quote_conv(remove_space(tmp->ptr),
- buf->document_charset);
+ p = url_encode(remove_space(tmp->ptr), base,
+ buf->document_charset);
pushEvent(FUNCNAME_gorURL, p);
}
#endif
@@ -5864,14 +6127,14 @@ HTMLlineproc2body(Buffer *buf, Str (*feed) (), int llimit)
case HTML_TEXTAREA_INT:
if (parsedtag_get_value(tag, ATTR_TEXTAREANUMBER,
&n_textarea)
- && n_textarea < max_textarea) {
+ && n_textarea >= 0 && n_textarea < max_textarea) {
textarea_str[n_textarea] = Strnew();
}
else
n_textarea = -1;
break;
case HTML_N_TEXTAREA_INT:
- if (n_textarea >= 0) {
+ if (a_textarea && n_textarea >= 0) {
FormItemList *item =
(FormItemList *)a_textarea[n_textarea]->url;
item->init_value = item->value =
@@ -5881,7 +6144,7 @@ HTMLlineproc2body(Buffer *buf, Str (*feed) (), int llimit)
#ifdef MENU_SELECT
case HTML_SELECT_INT:
if (parsedtag_get_value(tag, ATTR_SELECTNUMBER, &n_select)
- && n_select < max_select) {
+ && n_select >= 0 && n_select < max_select) {
select_option[n_select].first = NULL;
select_option[n_select].last = NULL;
}
@@ -5889,7 +6152,7 @@ HTMLlineproc2body(Buffer *buf, Str (*feed) (), int llimit)
n_select = -1;
break;
case HTML_N_SELECT_INT:
- if (n_select >= 0) {
+ if (a_select && n_select >= 0) {
FormItemList *item =
(FormItemList *)a_select[n_select]->url;
item->select_option = select_option[n_select].first;
@@ -5929,7 +6192,7 @@ HTMLlineproc2body(Buffer *buf, Str (*feed) (), int llimit)
#ifdef ID_EXT
id = NULL;
if (parsedtag_get_value(tag, ATTR_ID, &id)) {
- id = url_quote_conv(id, buf->document_charset);
+ id = url_quote_conv(id, name_charset);
registerName(buf, id, currentLn(buf), pos);
}
if (renderFrameSet &&
@@ -5964,7 +6227,8 @@ HTMLlineproc2body(Buffer *buf, Str (*feed) (), int llimit)
fclose(debug);
#endif
for (form_id = 1; form_id <= form_max; form_id++)
- forms[form_id]->next = forms[form_id - 1];
+ if (forms[form_id])
+ forms[form_id]->next = forms[form_id - 1];
buf->formlist = (form_max >= 0) ? forms[form_max] : NULL;
if (n_textarea)
addMultirowsForm(buf, buf->formitem);
@@ -5982,7 +6246,8 @@ addLink(Buffer *buf, struct parsed_tag *tag)
parsedtag_get_value(tag, ATTR_HREF, &href);
if (href)
- href = url_quote_conv(remove_space(href), buf->document_charset);
+ href = url_encode(remove_space(href), baseURL(buf),
+ buf->document_charset);
parsedtag_get_value(tag, ATTR_TITLE, &title);
parsedtag_get_value(tag, ATTR_TYPE, &ctype);
parsedtag_get_value(tag, ATTR_REL, &rel);
@@ -6154,10 +6419,10 @@ HTMLlineproc0(char *line, struct html_feed_environ *h_env, int internal)
while (*line != '\0') {
char *str, *p;
int is_tag = FALSE;
- int pre_mode = (obuf->table_level >= 0) ? tbl_mode->pre_mode :
- obuf->flag;
- int end_tag = (obuf->table_level >= 0) ? tbl_mode->end_tag :
- obuf->end_tag;
+ int pre_mode = (obuf->table_level >= 0 && tbl_mode) ?
+ tbl_mode->pre_mode : obuf->flag;
+ int end_tag = (obuf->table_level >= 0 && tbl_mode) ?
+ tbl_mode->end_tag : obuf->end_tag;
if (*line == '<' || obuf->status != R_ST_NORMAL) {
/*
@@ -6173,7 +6438,7 @@ HTMLlineproc0(char *line, struct html_feed_environ *h_env, int internal)
}
if (h_env->tagbuf->length == 0)
continue;
- str = h_env->tagbuf->ptr;
+ str = Strdup(h_env->tagbuf)->ptr;
if (*str == '<') {
if (str[1] && REALLY_THE_BEGINNING_OF_A_TAG(str))
is_tag = TRUE;
@@ -6239,7 +6504,7 @@ HTMLlineproc0(char *line, struct html_feed_environ *h_env, int internal)
}
proc_normal:
- if (obuf->table_level >= 0) {
+ if (obuf->table_level >= 0 && tbl && tbl_mode) {
/*
* within table: in <table>..</table>, all input tokens
* are fed to the table renderer, and then the renderer
@@ -6255,6 +6520,8 @@ HTMLlineproc0(char *line, struct html_feed_environ *h_env, int internal)
if (obuf->table_level >= 0) {
struct table *tbl0 = tables[obuf->table_level];
str = Sprintf("<table_alt tid=%d>", tbl0->ntable)->ptr;
+ if (tbl0->row < 0)
+ continue;
pushTable(tbl0, tbl);
tbl = tbl0;
tbl_mode = &table_mode[obuf->table_level];
@@ -6272,6 +6539,7 @@ HTMLlineproc0(char *line, struct html_feed_environ *h_env, int internal)
do_blankline(h_env, obuf, indent, 0, h_env->limit);
}
save_fonteffect(h_env, obuf);
+ initRenderTable();
renderTable(tbl, tbl_width, h_env);
restore_fonteffect(h_env, obuf);
obuf->flag &= ~RB_IGNORE_P;
@@ -6429,7 +6697,8 @@ HTMLlineproc0(char *line, struct html_feed_environ *h_env, int internal)
indent = h_env->envs[h_env->envc].indent;
if (obuf->bp.pos - i > indent) {
Str line;
- append_tags(obuf);
+ append_tags(obuf); /* may reallocate the buffer */
+ bp = obuf->line->ptr + obuf->bp.len;
line = Strnew_charp(bp);
Strshrink(obuf->line, obuf->line->length - obuf->bp.len);
#ifdef FORMAT_NICE
@@ -6754,8 +7023,15 @@ init_henv(struct html_feed_environ *h_env, struct readbuffer *obuf,
obuf->status = R_ST_NORMAL;
obuf->table_level = -1;
obuf->nobr_level = 0;
+ obuf->q_level = 0;
bzero((void *)&obuf->anchor, sizeof(obuf->anchor));
obuf->img_alt = 0;
+ obuf->input_alt.hseq = 0;
+ obuf->input_alt.fid = -1;
+ obuf->input_alt.in = 0;
+ obuf->input_alt.type = NULL;
+ obuf->input_alt.name = NULL;
+ obuf->input_alt.value = NULL;
obuf->in_bold = 0;
obuf->in_italic = 0;
obuf->in_under = 0;
@@ -6791,6 +7067,15 @@ completeHTMLstream(struct html_feed_environ *h_env, struct readbuffer *obuf)
push_tag(obuf, "</img_alt>", HTML_N_IMG_ALT);
obuf->img_alt = NULL;
}
+ if (obuf->input_alt.in) {
+ push_tag(obuf, "</input_alt>", HTML_N_INPUT_ALT);
+ obuf->input_alt.hseq = 0;
+ obuf->input_alt.fid = -1;
+ obuf->input_alt.in = 0;
+ obuf->input_alt.type = NULL;
+ obuf->input_alt.name = NULL;
+ obuf->input_alt.value = NULL;
+ }
if (obuf->in_bold) {
push_tag(obuf, "</b>", HTML_N_B);
obuf->in_bold = 0;
@@ -6824,9 +7109,12 @@ completeHTMLstream(struct html_feed_environ *h_env, struct readbuffer *obuf)
obuf->table_level = MAX_TABLE - 1;
while (obuf->table_level >= 0) {
+ int tmp = obuf->table_level;
table_mode[obuf->table_level].pre_mode
&= ~(TBLM_SCRIPT | TBLM_STYLE | TBLM_PLAIN);
HTMLlineproc1("</table>", h_env);
+ if (obuf->table_level >= tmp)
+ break;
}
}
@@ -6848,6 +7136,8 @@ print_internal_information(struct html_feed_environ *henv)
if (form_max >= 0) {
FormList *fp;
for (i = 0; i <= form_max; i++) {
+ if (forms[i] == NULL)
+ continue;
fp = forms[i];
s = Sprintf("<form_int fid=\"%d\" action=\"%s\" method=\"%s\"",
i, html_quote(fp->action->ptr),
@@ -6963,8 +7253,6 @@ loadHTMLstream(URLFile *f, Buffer *newBuf, FILE * src, int internal)
image_flag = IMG_FLAG_AUTO;
else
image_flag = IMG_FLAG_SKIP;
- if (newBuf->currentURL.file)
- cur_baseURL = baseURL(newBuf);
#endif
if (w3m_halfload) {
@@ -6987,6 +7275,9 @@ loadHTMLstream(URLFile *f, Buffer *newBuf, FILE * src, int internal)
htmlenv1.f = stdout;
else
htmlenv1.buf = newTextLineList();
+#if defined(USE_M17N) || defined(USE_IMAGE)
+ cur_baseURL = baseURL(newBuf);
+#endif
if (SETJMP(AbortLoading) != 0) {
HTMLlineproc1("<br>Transfer Interrupted!<br>", &htmlenv1);
@@ -7048,18 +7339,23 @@ loadHTMLstream(URLFile *f, Buffer *newBuf, FILE * src, int internal)
}
#endif
lineBuf2 = convertLine(f, lineBuf2, HTML_MODE, &charset, doc_charset);
-#if defined(USE_M17N) && defined(USE_IMAGE)
+#ifdef USE_M17N
cur_document_charset = charset;
#endif
HTMLlineproc0(lineBuf2->ptr, &htmlenv1, internal);
}
if (obuf.status != R_ST_NORMAL) {
- obuf.status = R_ST_EOL;
HTMLlineproc0("\n", &htmlenv1, internal);
}
obuf.status = R_ST_NORMAL;
completeHTMLstream(&htmlenv1, &obuf);
flushline(&htmlenv1, &obuf, 0, 2, htmlenv1.limit);
+#if defined(USE_M17N) || defined(USE_IMAGE)
+ cur_baseURL = NULL;
+#endif
+#ifdef USE_M17N
+ cur_document_charset = 0;
+#endif
if (htmlenv1.title)
newBuf->buffername = htmlenv1.title;
if (w3m_halfdump) {
@@ -7096,16 +7392,17 @@ loadHTMLString(Str page)
MySignalHandler(*volatile prevtrap) (SIGNAL_ARG) = NULL;
Buffer *newBuf;
+ init_stream(&f, SCM_LOCAL, newStrStream(page));
+
newBuf = newBuffer(INIT_BUFFER_WIDTH);
if (SETJMP(AbortLoading) != 0) {
TRAP_OFF;
discardBuffer(newBuf);
+ UFclose(&f);
return NULL;
}
TRAP_ON;
- init_stream(&f, SCM_LOCAL, newStrStream(page));
-
#ifdef USE_M17N
newBuf->document_charset = InnerCharset;
#endif
@@ -7115,6 +7412,7 @@ loadHTMLString(Str page)
#endif
TRAP_OFF;
+ UFclose(&f);
newBuf->topLine = newBuf->firstLine;
newBuf->lastLine = newBuf->currentLine;
newBuf->currentLine = newBuf->firstLine;
@@ -7130,12 +7428,18 @@ loadHTMLString(Str page)
/*
* loadGopherDir: get gopher directory
*/
+#ifdef USE_M17N
Str
loadGopherDir(URLFile *uf, ParsedURL *pu, wc_ces * charset)
+#else
+Str
+loadGopherDir0(URLFile *uf, ParsedURL *pu)
+#endif
{
Str volatile tmp;
- Str lbuf, name, file, host, port;
+ Str lbuf, name, file, host, port, type;
char *volatile p, *volatile q;
+ int link, pre;
MySignalHandler(*volatile prevtrap) (SIGNAL_ARG) = NULL;
#ifdef USE_M17N
wc_ces doc_charset = DocumentCharset;
@@ -7155,6 +7459,7 @@ loadGopherDir(URLFile *uf, ParsedURL *pu, wc_ces * charset)
goto gopher_end;
TRAP_ON;
+ pre = 0;
while (1) {
if (lbuf = StrUFgets(uf), lbuf->length == 0)
break;
@@ -7181,6 +7486,7 @@ loadGopherDir(URLFile *uf, ParsedURL *pu, wc_ces * charset)
for (q = p; *q && *q != '\t' && *q != '\r' && *q != '\n'; q++) ;
port = Strnew_charp_n(p, q - p);
+ link = 1;
switch (name->ptr[0]) {
case '0':
p = "[text file]";
@@ -7188,6 +7494,12 @@ loadGopherDir(URLFile *uf, ParsedURL *pu, wc_ces * charset)
case '1':
p = "[directory]";
break;
+ case '5':
+ p = "[DOS binary]";
+ break;
+ case '7':
+ p = "[search]";
+ break;
case 'm':
p = "[message]";
break;
@@ -7200,23 +7512,77 @@ loadGopherDir(URLFile *uf, ParsedURL *pu, wc_ces * charset)
case 'h':
p = "[HTML]";
break;
+ case 'i':
+ link = 0;
+ break;
+ case 'I':
+ p = "[image]";
+ break;
+ case '9':
+ p = "[binary]";
+ break;
default:
p = "[unsupported]";
break;
}
- q = Strnew_m_charp("gopher://", host->ptr, ":", port->ptr,
- "/", file->ptr, NULL)->ptr;
- Strcat_m_charp(tmp, "<a href=\"",
- html_quote(url_quote_conv(q, *charset)),
- "\">", p, html_quote(name->ptr + 1), "</a>\n", NULL);
+ type = Strsubstr(name, 0, 1);
+ q = Strnew_m_charp("gopher://", host->ptr, ":", port->ptr, "/", type->ptr, file->ptr, NULL)->ptr;
+ if(link) {
+ if(pre) {
+ Strcat_charp(tmp, "</pre>");
+ pre = 0;
+ }
+ Strcat_m_charp(tmp, "<a href=\"",
+ html_quote(url_encode(q, NULL, *charset)),
+ "\">", p, " ", html_quote(name->ptr + 1), "</a><br>\n", NULL);
+ } else {
+ if(!pre) {
+ Strcat_charp(tmp, "<pre>");
+ pre = 1;
+ }
+
+ Strcat_m_charp(tmp, html_quote(name->ptr + 1), "\n", NULL);
+ }
}
gopher_end:
TRAP_OFF;
+ if(pre)
+ Strcat_charp(tmp, "</pre>");
Strcat_charp(tmp, "</table>\n</body>\n</html>\n");
return tmp;
}
+
+#ifdef USE_M17N
+Str
+loadGopherSearch(URLFile *uf, ParsedURL *pu, wc_ces * charset)
+#else
+Str
+loadGopherSearch0(URLFile *uf, ParsedURL *pu)
+#endif
+{
+ Str tmp;
+ char *volatile p, *volatile q;
+ MySignalHandler(*volatile prevtrap) (SIGNAL_ARG) = NULL;
+#ifdef USE_M17N
+ wc_ces doc_charset = DocumentCharset;
+#endif
+
+ tmp = parsedURL2Str(pu);
+ p = html_quote(tmp->ptr);
+ tmp =
+ convertLine(NULL, Strnew_charp(file_unquote(tmp->ptr)), RAW_MODE,
+ charset, doc_charset);
+ q = html_quote(tmp->ptr);
+ tmp = Strnew_m_charp("<html>\n<head>\n<base href=\"", p, "\">\n<title>", q,
+ "</title>\n</head>\n<body>\n<h1>Search ", q,
+ "</h1>\n<form role=\"search\">\n<div>\n"
+ "<input type=\"search\" name=\"\">"
+ "</div>\n</form>\n</body>", NULL);
+
+ return tmp;
+}
#endif /* USE_GOPHER */
/*
@@ -7243,7 +7609,6 @@ loadBuffer(URLFile *uf, Buffer *volatile newBuf)
if (newBuf == NULL)
newBuf = newBuffer(INIT_BUFFER_WIDTH);
- lineBuf2 = Strnew();
if (SETJMP(AbortLoading) != 0) {
goto _end;
@@ -7331,6 +7696,7 @@ loadImageBuffer(URLFile *uf, Buffer *newBuf)
URLFile f;
MySignalHandler(*volatile prevtrap) (SIGNAL_ARG) = NULL;
struct stat st;
+ const ParsedURL *pu = newBuf ? &newBuf->currentURL : NULL;
loadImage(newBuf, IMG_FLAG_STOP);
image.url = uf->url;
@@ -7338,20 +7704,18 @@ loadImageBuffer(URLFile *uf, Buffer *newBuf)
image.width = -1;
image.height = -1;
image.cache = NULL;
- cache = getImage(&image, cur_baseURL, IMG_FLAG_AUTO);
- if (!cur_baseURL->is_nocache && cache->loaded & IMG_FLAG_LOADED &&
+ cache = getImage(&image, (ParsedURL *)pu, IMG_FLAG_AUTO);
+ if (!(pu && pu->is_nocache) && cache->loaded & IMG_FLAG_LOADED &&
!stat(cache->file, &st))
goto image_buffer;
- TRAP_ON;
if (IStype(uf->stream) != IST_ENCODED)
uf->stream = newEncodedStream(uf->stream, uf->encoding);
+ TRAP_ON;
if (save2tmp(*uf, cache->file) < 0) {
- UFclose(uf);
TRAP_OFF;
return NULL;
}
- UFclose(uf);
TRAP_OFF;
cache->loaded = IMG_FLAG_LOADED;
@@ -7367,10 +7731,13 @@ loadImageBuffer(URLFile *uf, Buffer *newBuf)
tmp = Sprintf("<img src=\"%s\"><br><br>", html_quote(image.url));
tmpf = tmpfname(TMPF_SRC, ".html");
src = fopen(tmpf->ptr, "w");
+ if (src == NULL)
+ return NULL;
newBuf->mailcap_source = tmpf->ptr;
init_stream(&f, SCM_LOCAL, newStrStream(tmp));
loadHTMLstream(&f, newBuf, src, TRUE);
+ UFclose(&f);
if (src)
fclose(src);
@@ -7411,7 +7778,7 @@ conv_symbol(Line *l)
symbol = get_symbol(DisplayCharset, &w);
#endif
}
- Strcat_charp(tmp, symbol[(int)c]);
+ Strcat_charp(tmp, symbol[(unsigned char)c % N_SYMBOL]);
#ifdef USE_M17N
p += len - 1;
pr += len - 1;
@@ -7580,8 +7947,11 @@ openGeneralPagerBuffer(InputStream stream)
#ifdef USE_M17N
content_charset = 0;
#endif
+ t_buf = newBuffer(INIT_BUFFER_WIDTH);
+ copyParsedURL(&t_buf->currentURL, NULL);
+ t_buf->currentURL.scheme = SCM_LOCAL;
+ t_buf->currentURL.file = "-";
if (SearchHeader) {
- t_buf = newBuffer(INIT_BUFFER_WIDTH);
readHeader(&uf, t_buf, TRUE, NULL);
t = checkContentType(t_buf);
if (t == NULL)
@@ -7609,14 +7979,13 @@ openGeneralPagerBuffer(InputStream stream)
#ifdef USE_IMAGE
else if (activeImage && displayImage && !useExtImageViewer &&
!(w3m_dump & ~DUMP_FRAME) && !strncasecmp(t, "image/", 6)) {
- cur_baseURL = New(ParsedURL);
- parseURL("-", cur_baseURL, NULL);
buf = loadImageBuffer(&uf, t_buf);
buf->type = "text/html";
}
#endif
else {
- if (doExternal(uf, "-", t, &buf, t_buf)) {
+ if (searchExtViewer(t)) {
+ buf = doExternal(uf, t, t_buf);
UFclose(&uf);
if (buf == NULL || buf == NO_BUFFER)
return buf;
@@ -7629,8 +7998,6 @@ openGeneralPagerBuffer(InputStream stream)
}
}
buf->real_type = t;
- buf->currentURL.scheme = SCM_LOCAL;
- buf->currentURL.file = "-";
return buf;
}
@@ -7766,6 +8133,8 @@ save2tmp(URLFile uf, char *tmpf)
clen_t linelen = 0, trbyte = 0;
MySignalHandler(*volatile prevtrap) (SIGNAL_ARG) = NULL;
static JMP_BUF env_bak;
+ volatile int retval = 0;
+ char *volatile buf = NULL;
ff = fopen(tmpf, "wb");
if (ff == NULL) {
@@ -7802,30 +8171,29 @@ save2tmp(URLFile uf, char *tmpf)
else
#endif /* USE_NNTP */
{
- Str buf = Strnew_size(SAVE_BUF_SIZE);
- while (UFread(&uf, buf, SAVE_BUF_SIZE)) {
- if (Strfputs(buf, ff) != buf->length) {
- bcopy(env_bak, AbortLoading, sizeof(JMP_BUF));
- TRAP_OFF;
- fclose(ff);
- current_content_length = 0;
- return -2;
+ int count;
+
+ buf = NewWithoutGC_N(char, SAVE_BUF_SIZE);
+ while ((count = ISread_n(uf.stream, buf, SAVE_BUF_SIZE)) > 0) {
+ if (fwrite(buf, 1, count, ff) != count) {
+ retval = -2;
+ goto _end;
}
- linelen += buf->length;
+ linelen += count;
showProgress(&linelen, &trbyte);
}
}
_end:
bcopy(env_bak, AbortLoading, sizeof(JMP_BUF));
TRAP_OFF;
+ xfree(buf);
fclose(ff);
current_content_length = 0;
- return 0;
+ return retval;
}
-int
-doExternal(URLFile uf, char *path, char *type, Buffer **bufp,
- Buffer *defaultbuf)
+Buffer *
+doExternal(URLFile uf, char *type, Buffer *defaultbuf)
{
Str tmpf, command;
struct mailcap *mcap;
@@ -7834,7 +8202,7 @@ doExternal(URLFile uf, char *path, char *type, Buffer **bufp,
char *header, *src = NULL, *ext = uf.ext;
if (!(mcap = searchExtViewer(type)))
- return 0;
+ return NULL;
if (mcap->nametemplate) {
tmpf = unquote_mailcap(mcap->nametemplate, NULL, "", NULL, NULL);
@@ -7867,15 +8235,13 @@ doExternal(URLFile uf, char *path, char *type, Buffer **bufp,
UFclose(&uf);
myExec(command->ptr);
}
- *bufp = NO_BUFFER;
- return 1;
+ return NO_BUFFER;
}
else
#endif
{
if (save2tmp(uf, tmpf->ptr) < 0) {
- *bufp = NULL;
- return 1;
+ return NULL;
}
}
if (mcap->flags & (MAILCAP_HTMLOUTPUT | MAILCAP_COPIOUSOUTPUT)) {
@@ -7918,14 +8284,13 @@ doExternal(URLFile uf, char *path, char *type, Buffer **bufp,
buf = NO_BUFFER;
}
if (buf && buf != NO_BUFFER) {
- buf->filename = path;
- if (buf->buffername == NULL || buf->buffername[0] == '\0')
- buf->buffername = conv_from_system(lastFileName(path));
+ if ((buf->buffername == NULL || buf->buffername[0] == '\0') &&
+ buf->filename)
+ buf->buffername = conv_from_system(lastFileName(buf->filename));
buf->edit = mcap->edit;
buf->mailcap = mcap;
}
- *bufp = buf;
- return 1;
+ return buf;
}
static int
@@ -7935,7 +8300,8 @@ _MoveFile(char *path1, char *path2)
FILE *f2;
int is_pipe;
clen_t linelen = 0, trbyte = 0;
- Str buf;
+ char *buf = NULL;
+ int count;
f1 = openIS(path1);
if (f1 == NULL)
@@ -7953,12 +8319,13 @@ _MoveFile(char *path1, char *path2)
return -1;
}
current_content_length = 0;
- buf = Strnew_size(SAVE_BUF_SIZE);
- while (ISread(f1, buf, SAVE_BUF_SIZE)) {
- Strfputs(buf, f2);
- linelen += buf->length;
+ buf = NewWithoutGC_N(char, SAVE_BUF_SIZE);
+ while ((count = ISread_n(f1, buf, SAVE_BUF_SIZE)) > 0) {
+ fwrite(buf, 1, count, f2);
+ linelen += count;
showProgress(&linelen, &trbyte);
}
+ xfree(buf);
ISclose(f1);
if (is_pipe)
pclose(f2);
@@ -7998,7 +8365,7 @@ _doFileCopy(char *tmpf, char *defstr, int download)
else {
if (q) {
p = unescape_spaces(Strnew_charp(q))->ptr;
- p = conv_to_system(q);
+ p = conv_to_system(p);
}
p = expandPath(p);
if (checkOverWrite(p) < 0)
@@ -8317,21 +8684,23 @@ uncompress_stream(URLFile *uf, char **src)
}
if (pid2 == 0) {
/* child2 */
- Str buf = Strnew_size(SAVE_BUF_SIZE);
+ char *buf = NewWithoutGC_N(char, SAVE_BUF_SIZE);
+ int count;
FILE *f = NULL;
setup_child(TRUE, 2, UFfileno(uf));
if (tmpf)
f = fopen(tmpf, "wb");
- while (UFread(uf, buf, SAVE_BUF_SIZE)) {
- if (Strfputs(buf, stdout) < 0)
+ while ((count = ISread_n(uf->stream, buf, SAVE_BUF_SIZE)) > 0) {
+ if (fwrite(buf, 1, count, stdout) != count)
+ break;
+ if (f && fwrite(buf, 1, count, f) != count)
break;
- if (f)
- Strfputs(buf, f);
}
UFclose(uf);
if (f)
fclose(f);
+ xfree(buf);
exit(0);
}
/* child1 */
@@ -8378,7 +8747,7 @@ lessopen_stream(char *path)
}
c = getc(fp);
if (c == EOF) {
- fclose(fp);
+ pclose(fp);
return NULL;
}
ungetc(c, fp);
diff --git a/fm.h b/fm.h
index 8378939..0cd8235 100644
--- a/fm.h
+++ b/fm.h
@@ -76,6 +76,7 @@ typedef int wc_ces; /* XXX: not used */
#include "textlist.h"
#include "funcname1.h"
#include "terms.h"
+#include "istream.h"
#ifndef HAVE_BCOPY
void bcopy(const void *, void *, int);
@@ -264,6 +265,20 @@ extern int REV_LB[];
#define IMG_FLAG_ERROR 2
#define IMG_FLAG_DONT_REMOVE 4
+#define IS_EMPTY_PARSED_URL(pu) ((pu)->scheme == SCM_UNKNOWN && !(pu)->file)
+#define SCONF_RESERVED 0
+#define SCONF_SUBSTITUTE_URL 1
+#define SCONF_URL_CHARSET 2
+#define SCONF_NO_REFERER_FROM 3
+#define SCONF_NO_REFERER_TO 4
+#define SCONF_USER_AGENT 5
+#define SCONF_N_FIELD 6
+#define query_SCONF_SUBSTITUTE_URL(pu) ((const char *)querySiteconf(pu, SCONF_SUBSTITUTE_URL))
+#define query_SCONF_USER_AGENT(pu) ((const char *)querySiteconf(pu, SCONF_USER_AGENT))
+#define query_SCONF_URL_CHARSET(pu) ((const wc_ces *)querySiteconf(pu, SCONF_URL_CHARSET))
+#define query_SCONF_NO_REFERER_FROM(pu) ((const int *)querySiteconf(pu, SCONF_NO_REFERER_FROM))
+#define query_SCONF_NO_REFERER_TO(pu) ((const int *)querySiteconf(pu, SCONF_NO_REFERER_TO))
+
/*
* Macros.
*/
@@ -276,8 +291,6 @@ extern int REV_LB[];
#define inputFilenameHist(p,d,h) inputLineHist(p,d,IN_FILENAME,h)
#define inputChar(p) inputLine(p,"",IN_CHAR)
-#define free(x) GC_free(x) /* let GC do it. */
-
#ifdef __EMX__
#define HAVE_STRCASECMP
#define strcasecmp stricmp
@@ -362,6 +375,8 @@ typedef struct _imageCache {
int index;
short width;
short height;
+ short a_width;
+ short a_height;
} ImageCache;
typedef struct _image {
@@ -562,6 +577,13 @@ typedef struct _DownloadList {
#define INIT_BUFFER_WIDTH ((_INIT_BUFFER_WIDTH > 0) ? _INIT_BUFFER_WIDTH : 0)
#define FOLD_BUFFER_WIDTH (FoldLine ? (INIT_BUFFER_WIDTH + 1) : -1)
+struct input_alt_attr {
+ int hseq;
+ int fid;
+ int in;
+ Str type, name, value;
+};
+
typedef struct {
int pos;
int len;
@@ -569,6 +591,7 @@ typedef struct {
long flag;
Anchor anchor;
Str img_alt;
+ struct input_alt_attr input_alt;
char fontstat[FONTSTAT_SIZE];
short nobr_level;
Lineprop prev_ctype;
@@ -587,10 +610,12 @@ struct readbuffer {
int flag_sp;
int status;
unsigned char end_tag;
+ unsigned char q_level;
short table_level;
short nobr_level;
Anchor anchor;
Str img_alt;
+ struct input_alt_attr input_alt;
char fontstat[FONTSTAT_SIZE];
char fontstat_stack[FONT_STACK_SIZE][FONTSTAT_SIZE];
int fontstat_sp;
@@ -637,6 +662,7 @@ struct readbuffer {
#endif /* FORMAT_NICE */
#define RB_DEL 0x100000
#define RB_S 0x200000
+#define RB_HTML5 0x400000
#define RB_GET_ALIGN(obuf) ((obuf)->flag&RB_ALIGN)
#define RB_SET_ALIGN(obuf,align) {(obuf)->flag &= ~RB_ALIGN; (obuf)->flag |= (align); }
@@ -649,7 +675,7 @@ struct readbuffer {
RB_SET_ALIGN(obuf,(obuf)->flag_stack[--(obuf)->flag_sp]); \
}
-/* status flags */
+/* state of token scanning finite state machine */
#define R_ST_NORMAL 0 /* normal */
#define R_ST_TAG0 1 /* within tag, just after < */
#define R_ST_TAG 2 /* within tag */
@@ -802,7 +828,7 @@ global char PermitSaveToPipe init(FALSE);
global char DecodeCTE init(FALSE);
global char AutoUncompress init(FALSE);
global char PreserveTimestamp init(TRUE);
-global char ArgvIsURL init(FALSE);
+global char ArgvIsURL init(TRUE);
global char MetaRefresh init(FALSE);
global char fmInitialized init(FALSE);
@@ -874,6 +900,9 @@ global char *index_file init(NULL);
global char *CurrentDir;
global int CurrentPid;
+#if defined(DONT_CALL_GC_AFTER_FORK) && defined(USE_IMAGE)
+global char *MyProgramName init("w3m");
+#endif /* defined(DONT_CALL_GC_AFTER_FORK) && defined(USE_IMAGE) */
/*
* global Buffer *Currentbuf;
* global Buffer *Firstbuf;
@@ -896,6 +925,7 @@ global char *CurrentKeyData;
global char *CurrentCmdData;
global char *w3m_reqlog;
extern char *w3m_version;
+extern int enable_inline_image;
#define DUMP_BUFFER 0x01
#define DUMP_HEAD 0x02
@@ -909,6 +939,7 @@ global int w3m_dump init(0);
global int w3m_halfload init(FALSE);
global Str header_string init(NULL);
global int override_content_type init(FALSE);
+global int override_user_agent init(FALSE);
#ifdef USE_COLOR
global int useColor init(TRUE);
@@ -930,6 +961,7 @@ global int confirm_on_quit init(TRUE);
global int use_mark init(FALSE);
#endif
global int emacs_like_lineedit init(FALSE);
+global int space_autocomplete init(FALSE);
global int vi_prec_num init(FALSE);
global int label_topline init(FALSE);
global int nextpage_topline init(FALSE);
@@ -968,10 +1000,17 @@ global int MailtoOptions init(MAILTO_OPTIONS_IGNORE);
global char *ExtBrowser init(DEF_EXT_BROWSER);
global char *ExtBrowser2 init(NULL);
global char *ExtBrowser3 init(NULL);
+global char *ExtBrowser4 init(NULL);
+global char *ExtBrowser5 init(NULL);
+global char *ExtBrowser6 init(NULL);
+global char *ExtBrowser7 init(NULL);
+global char *ExtBrowser8 init(NULL);
+global char *ExtBrowser9 init(NULL);
global int BackgroundExtViewer init(TRUE);
global int disable_secret_security_check init(FALSE);
global char *passwd_file init(PASSWD_FILE);
global char *pre_form_file init(PRE_FORM_FILE);
+global char *siteconf_file init(SITECONF_FILE);
global char *ftppasswd init(NULL);
global int ftppass_hostnamegen init(TRUE);
global int do_download init(FALSE);
@@ -991,7 +1030,7 @@ global char *BookmarkFile init(NULL);
global int UseExternalDirBuffer init(TRUE);
global char *DirBufferCommand init("file:///$LIB/dirlist" CGI_EXTENSION);
#ifdef USE_DICT
-global int UseDictCommand init(FALSE);
+global int UseDictCommand init(TRUE);
global char *DictCommand init("file:///$LIB/w3mdict" CGI_EXTENSION);
#endif /* USE_DICT */
global int ignore_null_img_alt init(TRUE);
@@ -1004,7 +1043,7 @@ global int FoldLine init(FALSE);
#define DEFAULT_URL_EMPTY 0
#define DEFAULT_URL_CURRENT 1
#define DEFAULT_URL_LINK 2
-global int DefaultURLString init(DEFAULT_URL_EMPTY);
+global int DefaultURLString init(DEFAULT_URL_CURRENT);
global int MarkAllPages init(FALSE);
#ifdef USE_MIGEMO
@@ -1065,16 +1104,18 @@ global char SimplePreserveSpace init(FALSE);
#define wc_Str_conv(x,charset0,charset1) (x)
#define wc_Str_conv_strict(x,charset0,charset1) (x)
#endif
-global char UseAltEntity init(TRUE);
+global char UseAltEntity init(FALSE);
#define GRAPHIC_CHAR_ASCII 2
#define GRAPHIC_CHAR_DEC 1
#define GRAPHIC_CHAR_CHARSET 0
global char UseGraphicChar init(GRAPHIC_CHAR_CHARSET);
+global char DisplayBorders init(FALSE);
extern char *graph_symbol[];
extern char *graph2_symbol[];
extern int symbol_width;
extern int symbol_width0;
#define N_GRAPH_SYMBOL 32
+#define N_SYMBOL (N_GRAPH_SYMBOL + 14)
#define SYMBOL_BASE 0x20
global int no_rc_dir init(FALSE);
global char *rc_dir init(NULL);
@@ -1113,9 +1154,9 @@ global MouseAction mouse_action;
#ifdef USE_COOKIE
global int default_use_cookie init(TRUE);
-global int use_cookie init(FALSE);
-global int show_cookie init(TRUE);
-global int accept_cookie init(FALSE);
+global int use_cookie init(TRUE);
+global int show_cookie init(FALSE);
+global int accept_cookie init(TRUE);
#define ACCEPT_BAD_COOKIE_DISCARD 0
#define ACCEPT_BAD_COOKIE_ACCEPT 1
#define ACCEPT_BAD_COOKIE_ASK 2
@@ -1135,7 +1176,7 @@ global int view_unseenobject init(TRUE);
#endif
#if defined(USE_SSL) && defined(USE_SSL_VERIFY)
-global int ssl_verify_server init(FALSE);
+global int ssl_verify_server init(TRUE);
global char *ssl_cert_file init(NULL);
global char *ssl_key_file init(NULL);
global char *ssl_ca_path init(NULL);
@@ -1144,15 +1185,17 @@ global int ssl_path_modified init(FALSE);
#endif /* defined(USE_SSL) &&
* defined(USE_SSL_VERIFY) */
#ifdef USE_SSL
-global char *ssl_forbid_method init(NULL);
+global char *ssl_forbid_method init("2, 3");
#endif
global int is_redisplay init(FALSE);
global int clear_buffer init(TRUE);
global double pixel_per_char init(DEFAULT_PIXEL_PER_CHAR);
+global int pixel_per_char_i init(DEFAULT_PIXEL_PER_CHAR);
global int set_pixel_per_char init(FALSE);
#ifdef USE_IMAGE
global double pixel_per_line init(DEFAULT_PIXEL_PER_LINE);
+global int pixel_per_line_i init(DEFAULT_PIXEL_PER_LINE);
global int set_pixel_per_line init(FALSE);
global double image_scale init(100);
#endif
diff --git a/form.c b/form.c
index b7556ca..bc14d39 100644
--- a/form.c
+++ b/form.c
@@ -10,8 +10,10 @@
#include "regex.h"
extern Str *textarea_str;
+extern int max_textarea;
#ifdef MENU_SELECT
extern FormSelectOption *select_option;
+extern int max_select;
#include "menu.h"
#endif /* MENU_SELECT */
@@ -54,10 +56,9 @@ newFormList(char *action, char *method, char *charset, char *enctype,
m = FORM_METHOD_INTERNAL;
/* unknown method is regarded as 'get' */
- if (enctype != NULL && !strcasecmp(enctype, "multipart/form-data")) {
+ if (m != FORM_METHOD_GET && enctype != NULL &&
+ !strcasecmp(enctype, "multipart/form-data")) {
e = FORM_ENCTYPE_MULTIPART;
- if (m == FORM_METHOD_GET)
- m = FORM_METHOD_POST;
}
#ifdef USE_M17N
@@ -122,10 +123,12 @@ formList_addInput(struct form_list *fl, struct parsed_tag *tag)
parsedtag_get_value(tag, ATTR_SIZE, &item->size);
parsedtag_get_value(tag, ATTR_MAXLENGTH, &item->maxlength);
item->readonly = parsedtag_exists(tag, ATTR_READONLY);
- if (parsedtag_get_value(tag, ATTR_TEXTAREANUMBER, &i))
+ if (parsedtag_get_value(tag, ATTR_TEXTAREANUMBER, &i)
+ && i >= 0 && i < max_textarea)
item->value = item->init_value = textarea_str[i];
#ifdef MENU_SELECT
- if (parsedtag_get_value(tag, ATTR_SELECTNUMBER, &i))
+ if (parsedtag_get_value(tag, ATTR_SELECTNUMBER, &i)
+ && i >= 0 && i < max_select)
item->select_option = select_option[i].first;
#endif /* MENU_SELECT */
if (parsedtag_get_value(tag, ATTR_ROWS, &p))
@@ -196,7 +199,7 @@ formtype(char *typestr)
if (!strcasecmp(typestr, _formtypetbl[i]))
return i;
}
- return FORM_UNKNOWN;
+ return FORM_INPUT_TEXT;
}
void
@@ -316,7 +319,8 @@ form_update_line(Line *line, char **str, int spos, int epos, int width,
pos += width - w;
len = line->len + pos + spos - epos;
- buf = New_N(char, len);
+ buf = New_N(char, len + 1);
+ buf[len] = '\0';
prop = New_N(Lineprop, len);
bcopy((void *)line->lineBuf, (void *)buf, spos * sizeof(char));
bcopy((void *)line->propBuf, (void *)prop, spos * sizeof(Lineprop));
@@ -438,6 +442,9 @@ formUpdateBuffer(Anchor *a, Buffer *buf, FormItemList *form)
switch (form->type) {
case FORM_INPUT_CHECKBOX:
case FORM_INPUT_RADIO:
+ if (buf->currentLine == NULL ||
+ spos >= buf->currentLine->len || spos < 0)
+ break;
if (form->checked)
buf->currentLine->lineBuf[spos] = '*';
else
@@ -455,8 +462,14 @@ formUpdateBuffer(Anchor *a, Buffer *buf, FormItemList *form)
}
else
#endif /* MENU_SELECT */
+ {
+ if (!form->value)
+ break;
p = form->value->ptr;
+ }
l = buf->currentLine;
+ if (!l)
+ break;
if (form->type == FORM_TEXTAREA) {
int n = a->y - buf->currentLine->linenumber;
if (n > 0)
@@ -469,6 +482,8 @@ formUpdateBuffer(Anchor *a, Buffer *buf, FormItemList *form)
rows = form->rows ? form->rows : 1;
col = COLPOS(l, a->start.pos);
for (c_rows = 0; c_rows < rows; c_rows++, l = l->next) {
+ if (l == NULL)
+ break;
if (rows > 1) {
pos = columnPos(l, col);
a = retrieveAnchor(buf->formitem, l->linenumber, pos);
@@ -477,6 +492,9 @@ formUpdateBuffer(Anchor *a, Buffer *buf, FormItemList *form)
spos = a->start.pos;
epos = a->end.pos;
}
+ if (a->start.line != a->end.line || spos > epos || epos >= l->len ||
+ spos < 0 || epos < 0 || COLPOS(l, epos) < col)
+ break;
pos = form_update_line(l, &p, spos, epos, COLPOS(l, epos) - col,
rows > 1,
form->type == FORM_INPUT_PASSWORD);
@@ -787,7 +805,7 @@ struct pre_form {
static struct pre_form *PreForm = NULL;
static struct pre_form *
-add_pre_form(struct pre_form *prev, char *url, char *name, char *action)
+add_pre_form(struct pre_form *prev, char *url, Regex *re_url, char *name, char *action)
{
ParsedURL pu;
struct pre_form *new;
@@ -796,21 +814,13 @@ add_pre_form(struct pre_form *prev, char *url, char *name, char *action)
new = prev->next = New(struct pre_form);
else
new = PreForm = New(struct pre_form);
- if (url && *url == '/') {
- int l = strlen(url);
- if (l > 1 && url[l - 1] == '/')
- new->url = allocStr(url + 1, l - 2);
- else
- new->url = url + 1;
- new->re_url = newRegex(new->url, FALSE, NULL, NULL);
- if (!new->re_url)
- new->url = NULL;
- }
- else if (url) {
+ if (url && !re_url) {
parseURL2(url, &pu, NULL);
new->url = parsedURL2Str(&pu)->ptr;
- new->re_url = NULL;
}
+ else
+ new->url = url;
+ new->re_url = re_url;
new->name = (name && *name) ? name : NULL;
new->action = (action && *action) ? action : NULL;
new->item = NULL;
@@ -834,7 +844,7 @@ add_pre_form_item(struct pre_form *pf, struct pre_form_item *prev, int type,
new->name = name;
new->value = value;
if (checked && *checked && (!strcmp(checked, "0") ||
- strcasecmp(checked, "off")
+ !strcasecmp(checked, "off")
|| !strcasecmp(checked, "no")))
new->checked = 0;
else
@@ -875,6 +885,7 @@ loadPreForm(void)
return;
while (1) {
char *p, *s, *arg;
+ Regex *re_arg;
line = Strfgets(fp);
if (line->length == 0)
@@ -890,18 +901,20 @@ loadPreForm(void)
if (*p == '#' || *p == '\0')
continue; /* comment or empty line */
s = getWord(&p);
- arg = getWord(&p);
if (!strcmp(s, "url")) {
+ arg = getRegexWord((const char **)&p, &re_arg);
if (!arg || !*arg)
continue;
p = getQWord(&p);
- pf = add_pre_form(pf, arg, NULL, p);
+ pf = add_pre_form(pf, arg, re_arg, NULL, p);
pi = pf->item;
continue;
}
if (!pf)
continue;
+
+ arg = getWord(&p);
if (!strcmp(s, "form")) {
if (!arg || !*arg)
continue;
@@ -913,7 +926,7 @@ loadPreForm(void)
}
if (pf->item) {
struct pre_form *prev = pf;
- pf = add_pre_form(prev, "", s, p);
+ pf = add_pre_form(prev, "", NULL, s, p);
/* copy previous URL */
pf->url = prev->url;
pf->re_url = prev->re_url;
diff --git a/frame.c b/frame.c
index b431437..c595c40 100644
--- a/frame.c
+++ b/frame.c
@@ -91,7 +91,8 @@ newFrame(struct parsed_tag *tag, Buffer *buf)
body->baseURL = baseURL(buf);
if (tag) {
if (parsedtag_get_value(tag, ATTR_SRC, &p))
- body->url = url_quote_conv(remove_space(p), buf->document_charset);
+ body->url = url_encode(remove_space(p), body->baseURL,
+ buf->document_charset);
if (parsedtag_get_value(tag, ATTR_NAME, &p) && *p != '_')
body->name = url_quote_conv(p, buf->document_charset);
}
@@ -639,7 +640,7 @@ createFrameFile(struct frameset *f, FILE * f1, Buffer *current, int level,
case HTML_BASE:
/* "BASE" is prohibit tag */
if (parsedtag_get_value(tag, ATTR_HREF, &q)) {
- q = url_quote_conv(remove_space(q), charset);
+ q = url_encode(remove_space(q), NULL, charset);
parseURL(q, &base, NULL);
}
if (parsedtag_get_value(tag, ATTR_TARGET, &q)) {
@@ -768,8 +769,8 @@ createFrameFile(struct frameset *f, FILE * f1, Buffer *current, int level,
if (!tag->value[j])
break;
tag->value[j] =
- url_quote_conv(remove_space(tag->value[j]),
- charset);
+ url_encode(remove_space(tag->value[j]),
+ &base, charset);
tag->need_reconstruct = TRUE;
parseURL2(tag->value[j], &url, &base);
if (url.scheme == SCM_UNKNOWN ||
@@ -894,8 +895,10 @@ renderFrame(Buffer *Cbuf, int force_reload)
/*
* if (Cbuf->frameQ != NULL) fset = Cbuf->frameQ->frameset; else */
fset = Cbuf->frameset;
- if (fset == NULL || createFrameFile(fset, f, Cbuf, 0, force_reload) < 0)
+ if (fset == NULL || createFrameFile(fset, f, Cbuf, 0, force_reload) < 0) {
+ fclose(f);
return NULL;
+ }
fclose(f);
flag = RG_FRAME;
if ((Cbuf->currentURL).is_nocache)
diff --git a/ftp.c b/ftp.c
index 0002abd..2ca0247 100644
--- a/ftp.c
+++ b/ftp.c
@@ -123,6 +123,7 @@ static int
ftp_login(FTP ftp)
{
int sock, status;
+ int sock_wf;
sock = openSocket(ftp->host, "ftp", 21);
if (sock < 0)
@@ -139,7 +140,6 @@ ftp_login(FTP ftp)
socklen_t socknamelen = sizeof(sockname);
if (!getsockname(sock, (struct sockaddr *)&sockname, &socknamelen)) {
- struct hostent *sockent;
Str tmp = Strnew_charp(ftp->pass);
#ifdef INET6
char hostbuf[NI_MAXHOST];
@@ -156,6 +156,7 @@ ftp_login(FTP ftp)
Strcat_charp(tmp, "unknown");
#else
+ struct hostent *sockent;
if ((sockent = gethostbyaddr((char *)&sockname.sin_addr,
sizeof(sockname.sin_addr),
sockname.sin_family)))
@@ -169,7 +170,10 @@ ftp_login(FTP ftp)
}
}
ftp->rf = newInputStream(sock);
- ftp->wf = fdopen(dup(sock), "wb");
+ if ((sock_wf = dup(sock)) >= 0 )
+ ftp->wf = fdopen(sock_wf, "wb");
+ else
+ goto open_err;
if (!ftp->rf || !ftp->wf)
goto open_err;
IStype(ftp->rf) |= IST_UNCLOSE;
diff --git a/func.c b/func.c
index f389e00..8b5deac 100644
--- a/func.c
+++ b/func.c
@@ -8,6 +8,7 @@
#include "fm.h"
#include "func.h"
#include "myctype.h"
+#include "regex.h"
#include "funcname.c"
#include "functable.c"
@@ -434,6 +435,93 @@ getQWord(char **str)
return tmp->ptr;
}
+/* This extracts /regex/i or m@regex@i from the given string.
+ * Then advances *str to the end of regex.
+ * If the input does not seems to be a regex, this falls back to getQWord().
+ *
+ * Returns a word (no matter whether regex or not) in the give string.
+ * If regex_ret is non-NULL, compiles the regex and stores there.
+ *
+ * XXX: Actually this is unrelated to func.c.
+ */
+char *
+getRegexWord(const char **str, Regex **regex_ret)
+{
+ char *word = NULL;
+ const char *p, *headp, *bodyp, *tailp;
+ char delimiter;
+ int esc;
+ int igncase = 0;
+
+ p = *str;
+ SKIP_BLANKS(p);
+ headp = p;
+
+ /* Get the opening delimiter */
+ if (p[0] == 'm' && IS_PRINT(p[1]) && !IS_ALNUM(p[1]) && p[1] != '\\') {
+ delimiter = p[1];
+ p += 2;
+ }
+ else if (p[0] == '/') {
+ delimiter = '/';
+ p += 1;
+ }
+ else {
+ goto not_regex;
+ }
+ bodyp = p;
+
+ /* Scan the end of the expression */
+ for (esc = 0; *p; ++p) {
+ if (esc) {
+ esc = 0;
+ } else {
+ if (*p == delimiter)
+ break;
+ else if (*p == '\\')
+ esc = 1;
+ }
+ }
+ if (!*p && *headp == '/')
+ goto not_regex;
+ tailp = p;
+
+ /* Check the modifiers */
+ if (*p == delimiter) {
+ while (*++p && !IS_SPACE(*p)) {
+ switch (*p) {
+ case 'i':
+ igncase = 1;
+ break;
+ }
+ /* ignore unknown modifiers */
+ }
+ }
+
+ /* Save the expression */
+ word = allocStr(headp, p - headp);
+
+ /* Compile */
+ if (regex_ret) {
+ if (*tailp == delimiter)
+ word[tailp - headp] = 0;
+ *regex_ret = newRegex(word + (bodyp - headp), igncase, NULL, NULL);
+ if (*tailp == delimiter)
+ word[tailp - headp] = delimiter;
+ }
+ goto last;
+
+not_regex:
+ p = headp;
+ word = getQWord((char **)&p);
+ if (regex_ret)
+ *regex_ret = NULL;
+
+last:
+ *str = p;
+ return word;
+}
+
#ifdef USE_MOUSE
static MouseAction default_mouse_action = {
NULL,
diff --git a/gitlog2changelog b/gitlog2changelog
new file mode 100755
index 0000000..f664b74
--- /dev/null
+++ b/gitlog2changelog
@@ -0,0 +1,111 @@
+#!/usr/bin/perl
+
+=head1 NAME
+
+gitlog2changelog - tiny tool to convert Git commit logs to GNU-style ChangeLog
+
+=head1 SYNOPSIS
+
+git log | gitlog2changelog > ChangeLog
+
+TZ=UTC git log --date=local --no-merges --numstat --pretty=fuller | gitlog2changelog > ChangeLog
+
+(Use TZ=UTC and --date=local to use UTC instead of the original time zone.
+ Use --no-merges to ignore merge commits.
+ Use --numstat to show changed files.
+ Use --pretty=fuller to show committer date instead of author date.)
+
+=head1 SEE ALSO
+
+GNU Coding Standards:
+ <http://www.gnu.org/prep/standards/html_node/index.html>
+ <http://www.gnu.org/prep/standards/html_node/Change-Logs.html>
+
+=head1 COPYRIGHT
+
+Copyright (c) 2013 Tatsuya Kinoshita
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted without restriction, with NO WARRANTY.
+You may regard this as a work that is placed in the public domain.
+
+=cut
+
+use strict;
+use warnings;
+
+my $author = ""; my $date = ""; my $comment = ""; my @files = ();
+my $pre_header = "";
+
+sub print_entry {
+ my $header = "$date $author";
+ $header =~ s/ </ </;
+ if ($header ne $pre_header) {
+ print "$header\n\n";
+ $pre_header = $header;
+ }
+ print "\t* ";
+
+ my $files_line_len = 10;
+ my $files_lines = "";
+ foreach my $file (@files) {
+ my $len = length($file);
+ if ($files_line_len > 10 && ($files_line_len + $len > 78)) {
+ $files_lines =~ s/, $/:\n\t* /;
+ $files_line_len = 10;
+ }
+ $files_lines .= "$file, ";
+ $files_line_len += $len + 2;
+ }
+
+ if ($files_lines) {
+ my $short_comment = "";
+ if ($comment =~ /^([^\n]+)/) {
+ $short_comment = $1;
+ }
+ if ($short_comment =~ /:[ \t]|[^\(\[][:,\)\]][ \t]*$/ ||
+ $files_line_len + length($short_comment) > 78) {
+ $files_lines =~ s/, $/:\n\t/;
+ } else {
+ $files_lines =~ s/, $/: /;
+ }
+ print "$files_lines";
+ }
+
+ $comment =~ s/\.?[ \t]*\n/.\n/;
+ $comment =~ s/\n([ \t]*\n)+/\n/g;
+ $comment =~ s/\n+$//;
+ $comment =~ s/\n/\n\t/g;
+ $comment =~ s/^\* //;
+ print "$comment\n\n";
+
+ $author = ""; $date = ""; $comment = ""; @files = ();
+}
+
+while (<>) {
+ if (/^Author:[ \t]+([^\n]+)/) {
+ $author = $1;
+ } elsif (/^(Commit|)Date:[ \t]+(Sun|Mon|Tue|Wed|Thu|Fri|Sat) +(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) +(\d+) +\d+:\d+:\d+ +(\d+)/) { # Assume git log --date=default or --date=local
+ my $mm = $3;
+ my $dd = $4;
+ my $yyyy = $5;
+ $mm =~ s/Jan/01/; $mm =~ s/Feb/02/; $mm =~ s/Mar/03/; $mm =~ s/Apr/04/;
+ $mm =~ s/May/05/; $mm =~ s/Jun/06/; $mm =~ s/Jul/07/; $mm =~ s/Aug/08/;
+ $mm =~ s/Sep/09/; $mm =~ s/Oct/10/; $mm =~ s/Nov/11/; $mm =~ s/Dec/12/;
+ $dd =~ s/^(\d)$/0$1/;
+ $date = "$yyyy-$mm-$dd";
+ } elsif (/^(Commit|)Date:[ \t]+(\d+-\d+-\d+)/) { # Assume git log --date=short or --date=iso
+ $date = $2;
+ } elsif (/^(Commit|)Date:[ \t]+(.+)$/) {
+ $date = $2;
+ } elsif (/^ (.*)$/) {
+ $comment .= "$1\n";
+ } elsif (/^[-0-9]+\t[-0-9]+\t(.*)$/) { # Assume git log --numstat
+ push @files, $1;
+ } elsif (/^commit / && $author && $date) {
+ &print_entry;
+ }
+}
+if ($author && $date) {
+ &print_entry;
+}
diff --git a/history.c b/history.c
index 951ef83..f2a00b4 100644
--- a/history.c
+++ b/history.c
@@ -17,7 +17,7 @@ historyBuffer(Hist *hist)
for (item = hist->list->last; item; item = item->prev) {
q = html_quote((char *)item->ptr);
if (DecodeURL)
- p = html_quote(url_unquote_conv((char *)item->ptr, 0));
+ p = html_quote(url_decode2((char *)item->ptr, NULL));
else
p = q;
Strcat_charp(src, "<li><a href=\"");
@@ -60,6 +60,7 @@ saveHistory(Hist *hist, size_t size)
FILE *f;
HistItem *item;
char *tmpf;
+ int rename_ret;
if (hist == NULL || hist->list == NULL)
return;
@@ -79,7 +80,11 @@ saveHistory(Hist *hist, size_t size)
disp_err_message("Can't save history", FALSE);
return;
}
- rename(tmpf, rcFile(HISTORY_FILE));
+ rename_ret = rename(tmpf, rcFile(HISTORY_FILE));
+ if (rename_ret != 0) {
+ disp_err_message("Can't save history", FALSE);
+ return;
+ }
}
#endif /* USE_HISTORY */
diff --git a/html.c b/html.c
index bca227e..7499191 100644
--- a/html.c
+++ b/html.c
@@ -37,6 +37,8 @@ unsigned char ALST_TABLE[] =
ATTR_CELLPADDING, ATTR_VSPACE, ATTR_CORE
};
#define MAXA_TABLE MAXA_CORE + 6
+unsigned char ALST_DOCTYPE[] = { ATTR_PUBLIC }; /* only (html and) public should be checked */
+#define MAXA_DOCTYPE 1
unsigned char ALST_META[] = { ATTR_HTTP_EQUIV, ATTR_CONTENT, ATTR_CHARSET, ATTR_CORE };
#define MAXA_META MAXA_CORE + 3
unsigned char ALST_FRAME[] = { ATTR_SRC, ATTR_NAME, ATTR_CORE };
@@ -56,6 +58,9 @@ unsigned char ALST_INPUT[] =
ATTR_CORE
};
#define MAXA_INPUT MAXA_CORE + 12
+unsigned char ALST_BUTTON[] =
+ { ATTR_TYPE, ATTR_VALUE, ATTR_NAME, ATTR_CORE };
+#define MAXA_BUTTON MAXA_CORE + 3
unsigned char ALST_TEXTAREA[] =
{ ATTR_COLS, ATTR_ROWS, ATTR_NAME, ATTR_READONLY, ATTR_CORE };
#define MAXA_TEXTAREA MAXA_CORE + 4
@@ -218,15 +223,14 @@ TagInfo TagMAP[MAX_HTMLTAG] = {
{"/option", NULL, 0, TFLG_END}, /* 94 HTML_N_OPTION */
{"head", ALST_NOP, MAXA_NOP, 0}, /* 95 HTML_HEAD */
{"/head", NULL, 0, TFLG_END}, /* 96 HTML_N_HEAD */
- {"doctype", ALST_NOP, MAXA_NOP, 0}, /* 97 HTML_DOCTYPE */
+ {"doctype", ALST_DOCTYPE, MAXA_DOCTYPE, 0}, /* 97 HTML_DOCTYPE */
{"noframes", ALST_NOFRAMES, MAXA_NOFRAMES, 0}, /* 98 HTML_NOFRAMES */
{"/noframes", NULL, 0, TFLG_END}, /* 99 HTML_N_NOFRAMES */
{"sup", ALST_NOP, MAXA_NOP, 0}, /* 100 HTML_SUP */
- {"/sup", NULL, 0, 0}, /* 101 HTML_N_SUP */
- /* FIXME: Should /sup and /sub have TFLG_END ? */
+ {"/sup", NULL, 0, TFLG_END}, /* 101 HTML_N_SUP */
{"sub", ALST_NOP, MAXA_NOP, 0}, /* 102 HTML_SUB */
- {"/sub", NULL, 0, 0}, /* 103 HTML_N_SUB */
+ {"/sub", NULL, 0, TFLG_END}, /* 103 HTML_N_SUB */
{"link", ALST_LINK, MAXA_LINK, 0}, /* 104 HTML_LINK */
{"s", ALST_NOP, MAXA_NOP, 0}, /* 105 HTML_S */
{"/s", NULL, 0, TFLG_END}, /* 106 HTML_N_S */
@@ -247,30 +251,30 @@ TagInfo TagMAP[MAX_HTMLTAG] = {
{"/bdo", NULL, 0, TFLG_END}, /* 121 HTML_N_BDO */
{"big", ALST_NOP, MAXA_NOP, 0}, /* 122 HTML_BIG */
{"/big", NULL, 0, TFLG_END}, /* 123 HTML_N_BIG */
- {"button", ALST_NOP, MAXA_NOP, 0}, /* 124 HTML_BUTTON */
- {"fieldset", ALST_NOP, MAXA_NOP, 0}, /* 125 HTML_FIELDSET */
- {"/fieldset", NULL, 0, TFLG_END}, /* 126 HTML_N_FIELDSET */
- {"iframe", ALST_NOP, MAXA_NOP, 0}, /* 127 HTML_IFRAME */
- {"label", ALST_NOP, MAXA_NOP, 0}, /* 128 HTML_LABEL */
- {"/label", NULL, 0, TFLG_END}, /* 129 HTML_N_LABEL */
- {"legend", ALST_NOP, MAXA_NOP, 0}, /* 130 HTML_LEGEND */
- {"/legend", NULL, 0, TFLG_END}, /* 131 HTML_N_LEGEND */
- {"noscript", ALST_NOP, MAXA_NOP, 0}, /* 132 HTML_NOSCRIPT */
- {"/noscript", NULL, 0, TFLG_END}, /* 133 HTML_N_NOSCRIPT */
- {"object", ALST_NOP, MAXA_NOP, 0}, /* 134 HTML_OBJECT */
- {"optgroup", ALST_NOP, MAXA_NOP, 0}, /* 135 HTML_OPTGROUP */
- {"/optgroup", NULL, 0, TFLG_END}, /* 136 HTML_N_OPTGROUP */
- {"param", ALST_NOP, MAXA_NOP, 0}, /* 137 HTML_PARAM */
- {"small", ALST_NOP, MAXA_NOP, 0}, /* 138 HTML_SMALL */
- {"/small", NULL, 0, TFLG_END}, /* 139 HTML_N_SMALL */
+ {"button", ALST_BUTTON, MAXA_BUTTON, 0}, /* 124 HTML_BUTTON */
+ {"/button", NULL, 0, TFLG_END}, /* 125 HTML_N_BUTTON */
+ {"fieldset", ALST_NOP, MAXA_NOP, 0}, /* 126 HTML_FIELDSET */
+ {"/fieldset", NULL, 0, TFLG_END}, /* 127 HTML_N_FIELDSET */
+ {"iframe", ALST_NOP, MAXA_NOP, 0}, /* 128 HTML_IFRAME */
+ {"label", ALST_NOP, MAXA_NOP, 0}, /* 129 HTML_LABEL */
+ {"/label", NULL, 0, TFLG_END}, /* 130 HTML_N_LABEL */
+ {"legend", ALST_NOP, MAXA_NOP, 0}, /* 131 HTML_LEGEND */
+ {"/legend", NULL, 0, TFLG_END}, /* 132 HTML_N_LEGEND */
+ {"noscript", ALST_NOP, MAXA_NOP, 0}, /* 133 HTML_NOSCRIPT */
+ {"/noscript", NULL, 0, TFLG_END}, /* 134 HTML_N_NOSCRIPT */
+ {"object", ALST_NOP, MAXA_NOP, 0}, /* 135 HTML_OBJECT */
+ {"optgroup", ALST_NOP, MAXA_NOP, 0}, /* 136 HTML_OPTGROUP */
+ {"/optgroup", NULL, 0, TFLG_END}, /* 137 HTML_N_OPTGROUP */
+ {"param", ALST_NOP, MAXA_NOP, 0}, /* 138 HTML_PARAM */
+ {"small", ALST_NOP, MAXA_NOP, 0}, /* 139 HTML_SMALL */
+ {"/small", NULL, 0, TFLG_END}, /* 140 HTML_N_SMALL */
+ {"figure", ALST_P, MAXA_P, 0}, /* 141 HTML_FIGURE */
+ {"/figure", NULL, 0, TFLG_END}, /* 142 HTML_N_FIGURE */
+ {"figcaption", ALST_P, MAXA_P, 0}, /* 143 HTML_FIGCAPTION */
+ {"/figcaption", NULL, 0, TFLG_END}, /* 144 HTML_N_FIGCAPTION */
+ {"section", ALST_NOP, MAXA_NOP, 0}, /* 145 HTML_SECTION */
+ {"/section", NULL, 0, TFLG_END}, /* 146 HTML_N_SECTION */
- {NULL, NULL, 0, 0}, /* 140 Undefined */
- {NULL, NULL, 0, 0}, /* 141 Undefined */
- {NULL, NULL, 0, 0}, /* 142 Undefined */
- {NULL, NULL, 0, 0}, /* 143 Undefined */
- {NULL, NULL, 0, 0}, /* 144 Undefined */
- {NULL, NULL, 0, 0}, /* 145 Undefined */
- {NULL, NULL, 0, 0}, /* 146 Undefined */
{NULL, NULL, 0, 0}, /* 147 Undefined */
{NULL, NULL, 0, 0}, /* 148 Undefined */
{NULL, NULL, 0, 0}, /* 149 Undefined */
@@ -365,7 +369,7 @@ TagAttrInfo AttrMAP[MAX_TAGATTR] = {
{"rev", VTYPE_STR, 0}, /* 48 ATTR_REV */
{"title", VTYPE_STR, 0}, /* 49 ATTR_TITLE */
{"accesskey", VTYPE_STR, 0}, /* 50 ATTR_ACCESSKEY */
- {NULL, VTYPE_NONE, 0}, /* 51 Undefined */
+ {"public", VTYPE_NONE, 0}, /* 51 ATTR_PUBLIC */
{NULL, VTYPE_NONE, 0}, /* 52 Undefined */
{NULL, VTYPE_NONE, 0}, /* 53 Undefined */
{NULL, VTYPE_NONE, 0}, /* 54 Undefined */
diff --git a/html.h b/html.h
index 7abbd3b..38d03cd 100644
--- a/html.h
+++ b/html.h
@@ -1,20 +1,20 @@
/* $Id: html.h,v 1.31 2010/08/14 01:29:40 htrb Exp $ */
#ifndef _HTML_H
#define _HTML_H
+#include "config.h"
#ifdef USE_SSL
#include <openssl/bio.h>
#include <openssl/x509.h>
#include <openssl/ssl.h>
#endif /* USE_SSL */
-#include "istream.h"
+#include <time.h>
#define StrUFgets(f) StrISgets((f)->stream)
#define StrmyUFgets(f) StrmyISgets((f)->stream)
#define UFgetc(f) ISgetc((f)->stream)
#define UFundogetc(f) ISundogetc((f)->stream)
-#define UFread(f,buf,len) ISread((f)->stream,buf,len)
-#define UFclose(f) (void)(ISclose((f)->stream) == 0 && ((f)->stream = NULL))
+#define UFclose(f) if (ISclose((f)->stream) == 0) {(f)->stream = NULL ;}
#define UFfileno(f) ISfileno((f)->stream)
struct cmdtable {
@@ -62,11 +62,12 @@ typedef struct _ParsedURL {
int is_nocache;
} ParsedURL;
+union input_stream;
typedef struct {
unsigned char scheme;
char is_cgi;
char encoding;
- InputStream stream;
+ union input_stream *stream;
char *ext;
int compression;
int content_encoding;
@@ -214,21 +215,28 @@ typedef struct {
#define HTML_BIG 122
#define HTML_N_BIG 123
#define HTML_BUTTON 124
-#define HTML_FIELDSET 125
-#define HTML_N_FIELDSET 126
-#define HTML_IFRAME 127
-#define HTML_LABEL 128
-#define HTML_N_LABEL 129
-#define HTML_LEGEND 130
-#define HTML_N_LEGEND 131
-#define HTML_NOSCRIPT 132
-#define HTML_N_NOSCRIPT 133
-#define HTML_OBJECT 134
-#define HTML_OPTGROUP 135
-#define HTML_N_OPTGROUP 136
-#define HTML_PARAM 137
-#define HTML_SMALL 138
-#define HTML_N_SMALL 139
+#define HTML_N_BUTTON 125
+#define HTML_FIELDSET 126
+#define HTML_N_FIELDSET 127
+#define HTML_IFRAME 128
+#define HTML_LABEL 129
+#define HTML_N_LABEL 130
+#define HTML_LEGEND 131
+#define HTML_N_LEGEND 132
+#define HTML_NOSCRIPT 133
+#define HTML_N_NOSCRIPT 134
+#define HTML_OBJECT 135
+#define HTML_OPTGROUP 136
+#define HTML_N_OPTGROUP 137
+#define HTML_PARAM 138
+#define HTML_SMALL 139
+#define HTML_N_SMALL 140
+#define HTML_FIGURE 141
+#define HTML_N_FIGURE 142
+#define HTML_FIGCAPTION 143
+#define HTML_N_FIGCAPTION 144
+#define HTML_SECTION 145
+#define HTML_N_SECTION 146
/* pseudo tag */
#define HTML_SELECT_INT 160
@@ -312,6 +320,7 @@ typedef struct {
#define ATTR_REV 48
#define ATTR_TITLE 49
#define ATTR_ACCESSKEY 50
+#define ATTR_PUBLIC 51
/* Internal attribute */
#define ATTR_XOFFSET 60
diff --git a/image.c b/image.c
index 5f5991a..91034ee 100644
--- a/image.c
+++ b/image.c
@@ -44,6 +44,8 @@ initImage()
activeImage = TRUE;
}
+int get_pixel_per_cell(int *ppc, int *ppl);
+
int
getCharSize()
{
@@ -52,6 +54,24 @@ getCharSize()
int w = 0, h = 0;
set_environ("W3M_TTY", ttyname_tty());
+
+ if (enable_inline_image) {
+ int ppc, ppl;
+
+ if (get_pixel_per_cell(&ppc,&ppl)) {
+ pixel_per_char_i = ppc ;
+ pixel_per_line_i = ppl ;
+ pixel_per_char = (double)ppc;
+ pixel_per_line = (double)ppl;
+ }
+ else {
+ pixel_per_char_i = (int)pixel_per_char;
+ pixel_per_line_i = (int)pixel_per_line;
+ }
+
+ return TRUE;
+ }
+
tmp = Strnew();
if (!strchr(Imgdisplay, '/'))
Strcat_m_charp(tmp, w3m_auxbin_dir(), "/", NULL);
@@ -90,17 +110,18 @@ termImage()
static int
openImgdisplay()
{
+ char *cmd;
+
+ if (!strchr(Imgdisplay, '/'))
+ cmd = Strnew_m_charp(w3m_auxbin_dir(), "/", Imgdisplay, NULL)->ptr;
+ else
+ cmd = Imgdisplay;
Imgdisplay_pid = open_pipe_rw(&Imgdisplay_rf, &Imgdisplay_wf);
if (Imgdisplay_pid < 0)
goto err0;
if (Imgdisplay_pid == 0) {
/* child */
- char *cmd;
setup_child(FALSE, 2, -1);
- if (!strchr(Imgdisplay, '/'))
- cmd = Strnew_m_charp(w3m_auxbin_dir(), "/", Imgdisplay, NULL)->ptr;
- else
- cmd = Imgdisplay;
myExec(cmd);
/* XXX: ifdef __EMX__, use start /f ? */
}
@@ -155,6 +176,10 @@ addImage(ImageCache * cache, int x, int y, int sx, int sy, int w, int h)
static void
syncImage(void)
{
+ if (enable_inline_image) {
+ return;
+ }
+
fputs("3;\n", Imgdisplay_wf); /* XSync() */
fputs("4;\n", Imgdisplay_wf); /* put '\n' */
while (fflush(Imgdisplay_wf) != 0) {
@@ -170,12 +195,16 @@ syncImage(void)
n_terminal_image = 0;
}
+void put_image_osc5379(char *url, int x, int y, int w, int h, int sx, int sy, int sw, int sh, int n_terminal_image);
+void put_image_sixel(char *url, int x, int y, int w, int h, int sx, int sy, int sw, int sh, int n_terminal_image);
+
void
drawImage()
{
static char buf[64];
int j, draw = FALSE;
TerminalImage *i;
+ struct stat st ;
if (!activeImage)
return;
@@ -183,6 +212,47 @@ drawImage()
return;
for (j = 0; j < n_terminal_image; j++) {
i = &terminal_image[j];
+
+ if (enable_inline_image) {
+ #if 0
+ fprintf(stderr,"file %s x %d y %d w %d h %d sx %d sy %d sw %d sh %d (ppc %d ppl %d)\n",
+ ((enable_inline_image == 2 || getenv("WINDOWID")) &&
+ i->cache->touch) ? i->cache->file : i->cache->url,
+ i->x, i->y,
+ i->cache->width > 0 ? i->cache->width : 0,
+ i->cache->height > 0 ? i->cache->height : 0,
+ i->sx, i->sy, i->width, i->height,
+ pixel_per_char_i, pixel_per_line_i);
+ #endif
+ (enable_inline_image == 2 ? put_image_sixel : put_image_osc5379)(
+ ((enable_inline_image == 2 /* sixel */ || getenv("WINDOWID")) &&
+ /* XXX I don't know why but sometimes i->cache->file doesn't exist. */
+ i->cache->touch && stat(i->cache->file,&st) == 0) ?
+ /* local */ i->cache->file : /* remote */ i->cache->url,
+ i->x / pixel_per_char_i,
+ i->y / pixel_per_line_i,
+ #if 1
+ i->cache->a_width > 0 ?
+ (i->cache->width + i->x % pixel_per_char_i + pixel_per_char_i - 1) /
+ pixel_per_char_i :
+ #endif
+ 0,
+
+ #if 1
+ i->cache->a_height > 0 ?
+ (i->cache->height + i->y % pixel_per_line_i + pixel_per_line_i - 1) /
+ pixel_per_line_i :
+ #endif
+ 0,
+ i->sx / pixel_per_char_i,
+ i->sy / pixel_per_line_i,
+ (i->width + i->sx % pixel_per_char_i + pixel_per_char_i - 1) / pixel_per_char_i,
+ (i->height + i->sy % pixel_per_line_i + pixel_per_line_i - 1) / pixel_per_line_i,
+ n_terminal_image);
+
+ continue ;
+ }
+
if (!(i->cache->loaded & IMG_FLAG_LOADED &&
i->width > 0 && i->height > 0))
continue;
@@ -206,9 +276,15 @@ drawImage()
fputs("\n", Imgdisplay_wf);
draw = TRUE;
}
- if (!draw)
- return;
- syncImage();
+
+ if (!enable_inline_image) {
+ if (!draw)
+ return;
+ syncImage();
+ }
+ else
+ n_terminal_image = 0;
+
touch_cursor();
refresh();
}
@@ -320,6 +396,8 @@ showImageProgress(Buffer *buf)
}
}
if (n) {
+ if (enable_inline_image && n == l)
+ drawImage();
message(Sprintf("%d/%d images loaded", l, n)->ptr,
buf->cursorX + buf->rootX, buf->cursorY + buf->rootY);
refresh();
@@ -333,6 +411,9 @@ loadImage(Buffer *buf, int flag)
struct stat st;
int i, draw = FALSE;
/* int wait_st; */
+#ifdef DONT_CALL_GC_AFTER_FORK
+ char *loadargs[7];
+#endif
if (maxLoadImage > MAX_LOAD_IMAGE)
maxLoadImage = MAX_LOAD_IMAGE;
@@ -346,7 +427,7 @@ loadImage(Buffer *buf, int flag)
}
for (i = 0; i < n_load_image; i++) {
cache = image_cache[i];
- if (!cache)
+ if (!cache || !cache->touch)
continue;
if (lstat(cache->touch, &st))
continue;
@@ -377,7 +458,7 @@ loadImage(Buffer *buf, int flag)
for (i = (buf != image_buffer) ? 0 : maxLoadImage; i < n_load_image; i++) {
cache = image_cache[i];
- if (!cache)
+ if (!cache || !cache->touch)
continue;
if (cache->pid) {
kill(cache->pid, SIGKILL);
@@ -403,7 +484,8 @@ loadImage(Buffer *buf, int flag)
}
if (draw && image_buffer) {
- drawImage();
+ if (!enable_inline_image)
+ drawImage();
showImageProgress(image_buffer);
}
@@ -431,8 +513,29 @@ loadImage(Buffer *buf, int flag)
break;
}
image_cache[i] = cache;
+ if (!cache->touch) {
+ continue;
+ }
flush_tty();
+#ifdef DONT_CALL_GC_AFTER_FORK
+ loadargs[0] = MyProgramName;
+ loadargs[1] = "-$$getimage";
+ loadargs[2] = conv_to_system(cache->url);
+ loadargs[3] = conv_to_system(parsedURL2Str(cache->current)->ptr);
+ loadargs[4] = cache->file;
+ loadargs[5] = cache->touch;
+ loadargs[6] = NULL;
+ if ((cache->pid = fork()) == 0) {
+ setup_child(FALSE, 0, -1);
+ execvp(MyProgramName, loadargs);
+ exit(1);
+ }
+ else if (cache->pid < 0) {
+ cache->pid = 0;
+ return;
+ }
+#else /* !DONT_CALL_GC_AFTER_FORK */
if ((cache->pid = fork()) == 0) {
Buffer *b;
/*
@@ -458,6 +561,7 @@ loadImage(Buffer *buf, int flag)
cache->pid = 0;
return;
}
+#endif /* !DONT_CALL_GC_AFTER_FORK */
}
}
@@ -492,12 +596,30 @@ getImage(Image * image, ParsedURL *current, int flag)
cache->url = image->url;
cache->current = current;
cache->file = tmpfname(TMPF_DFL, image->ext)->ptr;
- cache->touch = tmpfname(TMPF_DFL, NULL)->ptr;
cache->pid = 0;
cache->index = 0;
cache->loaded = IMG_FLAG_UNLOADED;
- cache->width = image->width;
- cache->height = image->height;
+ if (enable_inline_image == 1) {
+ if (image->width > 0 && image->width % pixel_per_char_i > 0)
+ image->width += (pixel_per_char_i - image->width % pixel_per_char_i);
+
+ if (image->height > 0 && image->height % pixel_per_line_i > 0)
+ image->height += (pixel_per_line_i - image->height % pixel_per_line_i);
+ if (image->height > 0 && image->width > 0) {
+ cache->loaded = IMG_FLAG_LOADED;
+ }
+ }
+ if (cache->loaded == IMG_FLAG_UNLOADED) {
+ cache->touch = tmpfname(TMPF_DFL, NULL)->ptr;
+ }
+ else {
+ cache->touch = NULL;
+ }
+
+ cache->width = image->width ;
+ cache->height = image->height ;
+ cache->a_width = image->width;
+ cache->a_height = image->height;
putHash_sv(image_hash, key->ptr, (void *)cache);
}
if (flag != IMG_FLAG_SKIP) {
@@ -519,6 +641,78 @@ getImage(Image * image, ParsedURL *current, int flag)
return cache;
}
+static int
+parseImageHeader(char *path, u_int *width, u_int *height)
+{
+ FILE *fp;
+ u_char buf[8];
+
+ if (!(fp = fopen(path, "r"))) return FALSE;
+
+ if (fread(buf, 1, 2, fp) != 2) goto error;
+
+ if (memcmp(buf, "\xff\xd8", 2) == 0) {
+ /* JPEG */
+ if (fseek(fp, 2, SEEK_CUR) < 0) goto error; /* 0xffe0 */
+ while (fread(buf, 1, 2, fp) == 2) {
+ size_t len = ((buf[0] << 8) | buf[1]) - 2;
+ if (fseek(fp, len, SEEK_CUR) < 0) goto error;
+ if (fread(buf, 1, 2, fp) == 2 &&
+ /* SOF0 or SOF2 */
+ (memcmp(buf, "\xff\xc0", 2) == 0 || memcmp(buf, "\xff\xc2", 2) == 0)) {
+ fseek(fp, 3, SEEK_CUR);
+ if (fread(buf, 1, 2, fp) == 2) {
+ *height = (buf[0] << 8) | buf[1];
+ if (fread(buf, 1, 2, fp) == 2) {
+ *width = (buf[0] << 8) | buf[1];
+ goto success;
+ }
+ }
+ break;
+ }
+ }
+ goto error;
+ }
+
+ if (fread(buf + 2, 1, 1, fp) != 1) goto error;
+
+ if (memcmp(buf, "GIF", 3) == 0) {
+ /* GIF */
+ if (fseek(fp, 3, SEEK_CUR) < 0) goto error;
+ if (fread(buf, 1, 2, fp) == 2) {
+ *width = (buf[1] << 8) | buf[0];
+ if (fread(buf, 1, 2, fp) == 2) {
+ *height = (buf[1] << 8) | buf[0];
+ goto success;
+ }
+ }
+ goto error;
+ }
+
+ if (fread(buf + 3, 1, 5, fp) != 5) goto error;
+
+ if (memcmp(buf, "\x89\x50\x4e\x47\x0d\x0a\x1a\x0a", 8) == 0) {
+ /* PNG */
+ if (fseek(fp, 8, SEEK_CUR) < 0) goto error;
+ if (fread(buf, 1, 4, fp) == 4) {
+ *width = (buf[0] << 24) | (buf[1] << 16) | (buf[2] << 8) | buf[3];
+ if (fread(buf, 1, 4, fp) == 4) {
+ *height = (buf[0] << 24) | (buf[1] << 16) | (buf[2] << 8) | buf[3];
+ goto success;
+ }
+ }
+ goto error;
+ }
+
+error:
+ fclose(fp);
+ return FALSE;
+
+success:
+ fclose(fp);
+ return TRUE;
+}
+
int
getImageSize(ImageCache * cache)
{
@@ -531,6 +725,10 @@ getImageSize(ImageCache * cache)
if (!cache || !(cache->loaded & IMG_FLAG_LOADED) ||
(cache->width > 0 && cache->height > 0))
return FALSE;
+
+ if (parseImageHeader(cache->file, &w, &h))
+ goto got_image_size;
+
tmp = Strnew();
if (!strchr(Imgdisplay, '/'))
Strcat_m_charp(tmp, w3m_auxbin_dir(), "/", NULL);
@@ -546,6 +744,8 @@ getImageSize(ImageCache * cache)
if (!(w > 0 && h > 0))
return FALSE;
+
+got_image_size:
w = (int)(w * image_scale / 100 + 0.5);
if (w == 0)
w = 1;
@@ -558,11 +758,11 @@ getImageSize(ImageCache * cache)
}
else if (cache->width < 0) {
int tmp = (int)((double)cache->height * w / h + 0.5);
- cache->width = (tmp > MAX_IMAGE_SIZE) ? MAX_IMAGE_SIZE : tmp;
+ cache->a_width = cache->width = (tmp > MAX_IMAGE_SIZE) ? MAX_IMAGE_SIZE : tmp;
}
else if (cache->height < 0) {
int tmp = (int)((double)cache->width * h / w + 0.5);
- cache->height = (tmp > MAX_IMAGE_SIZE) ? MAX_IMAGE_SIZE : tmp;
+ cache->a_height = cache->height = (tmp > MAX_IMAGE_SIZE) ? MAX_IMAGE_SIZE : tmp;
}
if (cache->width == 0)
cache->width = 1;
diff --git a/indep.c b/indep.c
index 65b04aa..4957c67 100644
--- a/indep.c
+++ b/indep.c
@@ -19,7 +19,7 @@ unsigned char QUOTE_MAP[0x100] = {
/* DLE DC1 DC2 DC3 DC4 NAK SYN ETB CAN EM SUB ESC FS GS RS US */
24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24,
/* SPC ! " # $ % & ' ( ) * + , - . / */
- 24, 72, 76, 40, 8, 40, 41, 72, 72, 72, 72, 40, 72, 8, 0, 64,
+ 24, 72, 76, 40, 8, 40, 41, 77, 72, 72, 72, 40, 72, 8, 0, 64,
/* 0 1 2 3 4 5 6 7 8 9 : ; < = > ? */
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 72, 74, 72, 75, 40,
/* @ A B C D E F G H I J K L M N O */
@@ -47,7 +47,7 @@ char *HTML_QUOTE_MAP[] = {
"&lt;",
"&gt;",
"&quot;",
- NULL,
+ "&apos;",
NULL,
NULL,
};
@@ -357,6 +357,20 @@ strcasemstr(char *str, char *srch[], char **ret_ptr)
return -1;
}
+int
+strmatchlen(const char *s1, const char *s2, int maxlen)
+{
+ int i;
+
+ /* To allow the maxlen to be negatie (infinity),
+ * compare by "!=" instead of "<=". */
+ for (i = 0; i != maxlen; ++i) {
+ if (!s1[i] || !s2[i] || s1[i] != s2[i])
+ break;
+ }
+ return i;
+}
+
char *
remove_space(char *str)
{
@@ -448,7 +462,7 @@ getescapechar(char **str)
q = p;
for (p++; IS_ALNUM(*p); p++) ;
q = allocStr(q, p - q);
- if (strcasestr("lt gt amp quot nbsp", q) && *p != '=') {
+ if (strcasestr("lt gt amp quot apos nbsp", q) && *p != '=') {
/* a character entity MUST be terminated with ";". However,
* there's MANY web pages which uses &lt , &gt or something
* like them as &lt;, &gt;, etc. Therefore, we treat the most
@@ -707,6 +721,111 @@ shell_quote(char *str)
return str;
}
+void *
+xrealloc(void *ptr, size_t size)
+{
+ void *newptr = realloc(ptr, size);
+ if (newptr == NULL) {
+ fprintf(stderr, "Out of memory\n");
+ exit(-1);
+ }
+ return newptr;
+}
+
+/* Define this as a separate function in case the free() has
+ * an incompatible prototype. */
+void
+xfree(void *ptr)
+{
+ free(ptr);
+}
+
+void *
+w3m_GC_realloc_atomic(void *ptr, size_t size)
+{
+ return ptr ? GC_REALLOC(ptr, size) : GC_MALLOC_ATOMIC(size);
+}
+
+void
+w3m_GC_free(void *ptr)
+{
+ GC_FREE(ptr);
+}
+
+void
+growbuf_init(struct growbuf *gb)
+{
+ gb->ptr = NULL;
+ gb->length = 0;
+ gb->area_size = 0;
+ gb->realloc_proc = &w3m_GC_realloc_atomic;
+ gb->free_proc = &w3m_GC_free;
+}
+
+void
+growbuf_init_without_GC(struct growbuf *gb)
+{
+ gb->ptr = NULL;
+ gb->length = 0;
+ gb->area_size = 0;
+ gb->realloc_proc = &xrealloc;
+ gb->free_proc = &xfree;
+}
+
+void
+growbuf_clear(struct growbuf *gb)
+{
+ (*gb->free_proc) (gb->ptr);
+ gb->ptr = NULL;
+ gb->length = 0;
+ gb->area_size = 0;
+}
+
+Str
+growbuf_to_Str(struct growbuf *gb)
+{
+ Str s;
+
+ if (gb->free_proc == &w3m_GC_free) {
+ growbuf_reserve(gb, gb->length + 1);
+ gb->ptr[gb->length] = '\0';
+ s = New(struct _Str);
+ s->ptr = gb->ptr;
+ s->length = gb->length;
+ s->area_size = gb->area_size;
+ } else {
+ s = Strnew_charp_n(gb->ptr, gb->length);
+ (*gb->free_proc) (gb->ptr);
+ }
+ gb->ptr = NULL;
+ gb->length = 0;
+ gb->area_size = 0;
+ return s;
+}
+
+void
+growbuf_reserve(struct growbuf *gb, int leastarea)
+{
+ int newarea;
+
+ if (gb->area_size < leastarea) {
+ newarea = gb->area_size * 3 / 2;
+ if (newarea < leastarea)
+ newarea = leastarea;
+ newarea += 16;
+ gb->ptr = (*gb->realloc_proc) (gb->ptr, newarea);
+ gb->area_size = newarea;
+ }
+}
+
+void
+growbuf_append(struct growbuf *gb, const char *src, int len)
+{
+ growbuf_reserve(gb, gb->length + len);
+ memcpy(&gb->ptr[gb->length], src, len);
+ gb->length += len;
+}
+
static char *
w3m_dir(const char *name, char *dft)
{
diff --git a/indep.h b/indep.h
index b3819a3..5c6b1da 100644
--- a/indep.h
+++ b/indep.h
@@ -1,7 +1,7 @@
/* $Id: indep.h,v 1.16 2003/09/22 21:02:19 ukai Exp $ */
#ifndef INDEP_H
#define INDEP_H
-#include <gc.h>
+#include "alloc.h"
#include "Str.h"
#include "config.h"
@@ -12,6 +12,14 @@
#define FALSE 0
#endif /* FALSE */
+struct growbuf {
+ char *ptr;
+ int length;
+ int area_size;
+ void *(*realloc_proc) (void *, size_t);
+ void (*free_proc) (void *);
+};
+
#define RAW_MODE 0
#define PAGER_MODE 1
#define HTML_MODE 2
@@ -19,7 +27,7 @@
extern unsigned char QUOTE_MAP[];
extern char *HTML_QUOTE_MAP[];
-#define HTML_QUOTE_MASK 0x07 /* &, <, >, " */
+#define HTML_QUOTE_MASK 0x07 /* &, <, >, ", ' */
#define SHELL_UNSAFE_MASK 0x08 /* [^A-Za-z0-9_./:\200-\377] */
#define URL_QUOTE_MASK 0x10 /* [\0- \177-\377] */
#define FILE_QUOTE_MASK 0x30 /* [\0- #%&+:?\177-\377] */
@@ -52,6 +60,7 @@ extern int strncasecmp(const char *s1, const char *s2, size_t n);
extern char *strcasestr(const char *s1, const char *s2);
#endif
extern int strcasemstr(char *str, char *srch[], char **ret_ptr);
+int strmatchlen(const char *s1, const char *s2, int maxlen);
extern char *remove_space(char *str);
extern int non_null(char *s);
extern void cleanup_line(Str s, int mode);
@@ -64,6 +73,18 @@ extern Str Str_url_unquote(Str x, int is_form, int safe);
extern Str Str_form_quote(Str x);
#define Str_form_unquote(x) Str_url_unquote((x), TRUE, FALSE)
extern char *shell_quote(char *str);
+#define xmalloc(s) xrealloc(NULL, s)
+extern void *xrealloc(void *ptr, size_t size);
+extern void xfree(void *ptr);
+extern void *w3m_GC_realloc_atomic(void *ptr, size_t size);
+extern void w3m_GC_free(void *ptr);
+extern void growbuf_init(struct growbuf *gb);
+extern void growbuf_init_without_GC(struct growbuf *gb);
+extern void growbuf_clear(struct growbuf *gb);
+extern Str growbuf_to_Str(struct growbuf *gb);
+extern void growbuf_reserve(struct growbuf *gb, int leastarea);
+extern void growbuf_append(struct growbuf *gb, const char *src, int len);
+#define GROWBUF_ADD_CHAR(gb,ch) ((((gb)->length>=(gb)->area_size)?growbuf_reserve(gb,(gb)->length+1):(void)0),(void)((gb)->ptr[(gb)->length++] = (ch)))
extern char *w3m_auxbin_dir();
extern char *w3m_lib_dir();
@@ -71,10 +92,8 @@ extern char *w3m_etc_dir();
extern char *w3m_conf_dir();
extern char *w3m_help_dir();
-#define New(type) ((type*)GC_MALLOC(sizeof(type)))
-#define NewAtom(type) ((type*)GC_MALLOC_ATOMIC(sizeof(type)))
-#define New_N(type,n) ((type*)GC_MALLOC((n)*sizeof(type)))
-#define NewAtom_N(type,n) ((type*)GC_MALLOC_ATOMIC((n)*sizeof(type)))
-#define New_Reuse(type,ptr,n) ((type*)GC_REALLOC((ptr),(n)*sizeof(type)))
+#define NewWithoutGC(type) ((type*)xmalloc(sizeof(type)))
+#define NewWithoutGC_N(type,n) ((type*)xmalloc((n)*sizeof(type)))
+#define NewWithoutGC_Reuse(type,ptr,n) ((type*)xrealloc(ptr,(n)*sizeof(type)))
#endif /* INDEP_H */
diff --git a/istream.c b/istream.c
index 8967280..74adac5 100644
--- a/istream.c
+++ b/istream.c
@@ -22,8 +22,8 @@
static void basic_close(int *handle);
static int basic_read(int *handle, char *buf, int len);
-static void file_close(struct file_handle *handle);
-static int file_read(struct file_handle *handle, char *buf, int len);
+static void file_close(struct io_file_handle *handle);
+static int file_read(struct io_file_handle *handle, char *buf, int len);
static int str_read(Str handle, char *buf, int len);
@@ -35,12 +35,14 @@ static int ssl_read(struct ssl_handle *handle, char *buf, int len);
static int ens_read(struct ens_handle *handle, char *buf, int len);
static void ens_close(struct ens_handle *handle);
+static void memchop(char *p, int *len);
+
static void
do_update(BaseStream base)
{
int len;
base->stream.cur = base->stream.next = 0;
- len = base->read(base->handle, base->stream.buf, base->stream.size);
+ len = (*base->read) (base->handle, base->stream.buf, base->stream.size);
if (len <= 0)
base->iseos = TRUE;
else
@@ -66,12 +68,12 @@ init_buffer(BaseStream base, char *buf, int bufsize)
StreamBuffer sb = &base->stream;
sb->size = bufsize;
sb->cur = 0;
+ sb->buf = NewWithoutGC_N(uchar, bufsize);
if (buf) {
- sb->buf = (uchar *) buf;
+ memcpy(sb->buf, buf, bufsize);
sb->next = bufsize;
}
else {
- sb->buf = NewAtom_N(uchar, bufsize);
sb->next = 0;
}
base->iseos = FALSE;
@@ -95,10 +97,10 @@ newInputStream(int des)
InputStream stream;
if (des < 0)
return NULL;
- stream = New(union input_stream);
+ stream = NewWithoutGC(union input_stream);
init_base_stream(&stream->base, STREAM_BUF_SIZE);
stream->base.type = IST_BASIC;
- stream->base.handle = New(int);
+ stream->base.handle = NewWithoutGC(int);
*(int *)stream->base.handle = des;
stream->base.read = (int (*)())basic_read;
stream->base.close = (void (*)())basic_close;
@@ -111,10 +113,10 @@ newFileStream(FILE * f, void (*closep) ())
InputStream stream;
if (f == NULL)
return NULL;
- stream = New(union input_stream);
+ stream = NewWithoutGC(union input_stream);
init_base_stream(&stream->base, STREAM_BUF_SIZE);
stream->file.type = IST_FILE;
- stream->file.handle = New(struct file_handle);
+ stream->file.handle = NewWithoutGC(struct io_file_handle);
stream->file.handle->f = f;
if (closep)
stream->file.handle->close = closep;
@@ -131,10 +133,10 @@ newStrStream(Str s)
InputStream stream;
if (s == NULL)
return NULL;
- stream = New(union input_stream);
+ stream = NewWithoutGC(union input_stream);
init_str_stream(&stream->base, s);
stream->str.type = IST_STR;
- stream->str.handle = s;
+ stream->str.handle = NULL;
stream->str.read = (int (*)())str_read;
stream->str.close = NULL;
return stream;
@@ -147,10 +149,10 @@ newSSLStream(SSL * ssl, int sock)
InputStream stream;
if (sock < 0)
return NULL;
- stream = New(union input_stream);
+ stream = NewWithoutGC(union input_stream);
init_base_stream(&stream->base, SSL_BUF_SIZE);
stream->ssl.type = IST_SSL;
- stream->ssl.handle = New(struct ssl_handle);
+ stream->ssl.handle = NewWithoutGC(struct ssl_handle);
stream->ssl.handle->ssl = ssl;
stream->ssl.handle->sock = sock;
stream->ssl.read = (int (*)())ssl_read;
@@ -166,14 +168,14 @@ newEncodedStream(InputStream is, char encoding)
if (is == NULL || (encoding != ENC_QUOTE && encoding != ENC_BASE64 &&
encoding != ENC_UUENCODE))
return is;
- stream = New(union input_stream);
+ stream = NewWithoutGC(union input_stream);
init_base_stream(&stream->base, STREAM_BUF_SIZE);
stream->ens.type = IST_ENCODED;
- stream->ens.handle = New(struct ens_handle);
+ stream->ens.handle = NewWithoutGC(struct ens_handle);
stream->ens.handle->is = is;
stream->ens.handle->pos = 0;
stream->ens.handle->encoding = encoding;
- stream->ens.handle->s = NULL;
+ growbuf_init_without_GC(&stream->ens.handle->gb);
stream->ens.read = (int (*)())ens_read;
stream->ens.close = (void (*)())ens_close;
return stream;
@@ -187,8 +189,10 @@ ISclose(InputStream stream)
stream->base.type & IST_UNCLOSE)
return -1;
prevtrap = mySignal(SIGINT, SIG_IGN);
- stream->base.close(stream->base.handle);
+ stream->base.close (stream->base.handle);
mySignal(SIGINT, prevtrap);
+ xfree(stream->base.stream.buf);
+ xfree(stream);
return 0;
}
@@ -218,122 +222,97 @@ ISundogetc(InputStream stream)
return -1;
}
-#define MARGIN_STR_SIZE 10
Str
-StrISgets(InputStream stream)
+StrISgets2(InputStream stream, char crnl)
{
- BaseStream base;
- StreamBuffer sb;
- Str s = NULL;
- uchar *p;
- int len;
+ struct growbuf gb;
if (stream == NULL)
- return '\0';
- base = &stream->base;
- sb = &base->stream;
-
- while (!base->iseos) {
- if (MUST_BE_UPDATED(base)) {
- do_update(base);
- }
- else {
- if ((p = memchr(&sb->buf[sb->cur], '\n', sb->next - sb->cur))) {
- len = p - &sb->buf[sb->cur] + 1;
- if (s == NULL)
- s = Strnew_size(len);
- Strcat_charp_n(s, (char *)&sb->buf[sb->cur], len);
- sb->cur += len;
- return s;
- }
- else {
- if (s == NULL)
- s = Strnew_size(sb->next - sb->cur + MARGIN_STR_SIZE);
- Strcat_charp_n(s, (char *)&sb->buf[sb->cur],
- sb->next - sb->cur);
- sb->cur = sb->next;
- }
- }
- }
-
- if (s == NULL)
- return Strnew();
- return s;
+ return NULL;
+ growbuf_init(&gb);
+ ISgets_to_growbuf(stream, &gb, crnl);
+ return growbuf_to_Str(&gb);
}
-Str
-StrmyISgets(InputStream stream)
+void
+ISgets_to_growbuf(InputStream stream, struct growbuf *gb, char crnl)
{
- BaseStream base;
- StreamBuffer sb;
- Str s = NULL;
- int i, len;
+ BaseStream base = &stream->base;
+ StreamBuffer sb = &base->stream;
+ int i;
- if (stream == NULL)
- return '\0';
- base = &stream->base;
- sb = &base->stream;
+ gb->length = 0;
while (!base->iseos) {
if (MUST_BE_UPDATED(base)) {
do_update(base);
+ continue;
}
- else {
- if (s && Strlastchar(s) == '\r') {
- if (sb->buf[sb->cur] == '\n')
- Strcat_char(s, (char)sb->buf[sb->cur++]);
- return s;
- }
- for (i = sb->cur;
- i < sb->next && sb->buf[i] != '\n' && sb->buf[i] != '\r';
- i++) ;
- if (i < sb->next) {
- len = i - sb->cur + 1;
- if (s == NULL)
- s = Strnew_size(len + MARGIN_STR_SIZE);
- Strcat_charp_n(s, (char *)&sb->buf[sb->cur], len);
- sb->cur = i + 1;
- if (sb->buf[i] == '\n')
- return s;
+ if (crnl && gb->length > 0 && gb->ptr[gb->length - 1] == '\r') {
+ if (sb->buf[sb->cur] == '\n') {
+ GROWBUF_ADD_CHAR(gb, '\n');
+ ++sb->cur;
}
- else {
- if (s == NULL)
- s = Strnew_size(sb->next - sb->cur + MARGIN_STR_SIZE);
- Strcat_charp_n(s, (char *)&sb->buf[sb->cur],
- sb->next - sb->cur);
- sb->cur = sb->next;
+ break;
+ }
+ for (i = sb->cur; i < sb->next; ++i) {
+ if (sb->buf[i] == '\n' || (crnl && sb->buf[i] == '\r')) {
+ ++i;
+ break;
}
}
+ growbuf_append(gb, &sb->buf[sb->cur], i - sb->cur);
+ sb->cur = i;
+ if (gb->length > 0 && gb->ptr[gb->length - 1] == '\n')
+ break;
}
- if (s == NULL)
- return Strnew();
- return s;
+ growbuf_reserve(gb, gb->length + 1);
+ gb->ptr[gb->length] = '\0';
+ return;
}
+#ifdef unused
int
ISread(InputStream stream, Str buf, int count)
{
- int rest, len;
+ int len;
+
+ if (count + 1 > buf->area_size) {
+ char *newptr = GC_MALLOC_ATOMIC(count + 1);
+ memcpy(newptr, buf->ptr, buf->length);
+ newptr[buf->length] = '\0';
+ buf->ptr = newptr;
+ buf->area_size = count + 1;
+ }
+ len = ISread_n(stream, buf->ptr, count);
+ buf->length = (len > 0) ? len : 0;
+ buf->ptr[buf->length] = '\0';
+ return (len > 0) ? 1 : 0;
+}
+#endif
+
+int
+ISread_n(InputStream stream, char *dst, int count)
+{
+ int len, l;
BaseStream base;
- if (stream == NULL || (base = &stream->base)->iseos)
+ if (stream == NULL || count <= 0)
+ return -1;
+ if ((base = &stream->base)->iseos)
return 0;
- len = buffer_read(&base->stream, buf->ptr, count);
- rest = count - len;
+ len = buffer_read(&base->stream, dst, count);
if (MUST_BE_UPDATED(base)) {
- len = base->read(base->handle, &buf->ptr[len], rest);
- if (len <= 0) {
+ l = (*base->read) (base->handle, &dst[len], count - len);
+ if (l <= 0) {
base->iseos = TRUE;
- len = 0;
+ } else {
+ len += l;
}
- rest -= len;
}
- Strtruncate(buf, count - rest);
- if (buf->length > 0)
- return 1;
- return 0;
+ return len;
}
int
@@ -442,7 +421,11 @@ ssl_check_cert_ident(X509 * x, char *hostname)
for (i = 0; i < n; i++) {
gn = sk_GENERAL_NAME_value(alt, i);
if (gn->type == GEN_DNS) {
+#if (OPENSSL_VERSION_NUMBER < 0x10100000L) || defined(LIBRESSL_VERSION_NUMBER)
char *sn = ASN1_STRING_data(gn->d.ia5);
+#else
+ char *sn = ASN1_STRING_get0_data(gn->d.ia5);
+#endif
int sl = ASN1_STRING_length(gn->d.ia5);
if (!seen_dnsname)
@@ -496,8 +479,6 @@ ssl_check_cert_ident(X509 * x, char *hostname)
/* FIXME: gettextize? */
ret = Sprintf("Bad cert ident %s from %s", buf, hostname);
}
- else
- match_ident = TRUE;
}
return ret;
}
@@ -645,6 +626,7 @@ basic_close(int *handle)
#else
close(*(int *)handle);
#endif
+ xfree(handle);
}
static int
@@ -658,13 +640,14 @@ basic_read(int *handle, char *buf, int len)
}
static void
-file_close(struct file_handle *handle)
+file_close(struct io_file_handle *handle)
{
handle->close(handle->f);
+ xfree(handle);
}
static int
-file_read(struct file_handle *handle, char *buf, int len)
+file_read(struct io_file_handle *handle, char *buf, int len)
{
return fread(buf, 1, len, handle->f);
}
@@ -682,6 +665,7 @@ ssl_close(struct ssl_handle *handle)
close(handle->sock);
if (handle->ssl)
SSL_free(handle->ssl);
+ xfree(handle);
}
static int
@@ -717,38 +701,60 @@ static void
ens_close(struct ens_handle *handle)
{
ISclose(handle->is);
+ growbuf_clear(&handle->gb);
+ xfree(handle);
}
static int
ens_read(struct ens_handle *handle, char *buf, int len)
{
- if (handle->s == NULL || handle->pos == handle->s->length) {
+ if (handle->pos == handle->gb.length) {
char *p;
- handle->s = StrmyISgets(handle->is);
- if (handle->s->length == 0)
+ struct growbuf gbtmp;
+
+ ISgets_to_growbuf(handle->is, &handle->gb, TRUE);
+ if (handle->gb.length == 0)
return 0;
- cleanup_line(handle->s, PAGER_MODE);
if (handle->encoding == ENC_BASE64)
- Strchop(handle->s);
+ memchop(handle->gb.ptr, &handle->gb.length);
else if (handle->encoding == ENC_UUENCODE) {
- if (!strncmp(handle->s->ptr, "begin", 5))
- handle->s = StrmyISgets(handle->is);
- Strchop(handle->s);
+ if (handle->gb.length >= 5 &&
+ !strncmp(handle->gb.ptr, "begin", 5))
+ ISgets_to_growbuf(handle->is, &handle->gb, TRUE);
+ memchop(handle->gb.ptr, &handle->gb.length);
}
- p = handle->s->ptr;
+ growbuf_init_without_GC(&gbtmp);
+ p = handle->gb.ptr;
if (handle->encoding == ENC_QUOTE)
- handle->s = decodeQP(&p);
+ decodeQP_to_growbuf(&gbtmp, &p);
else if (handle->encoding == ENC_BASE64)
- handle->s = decodeB(&p);
+ decodeB_to_growbuf(&gbtmp, &p);
else if (handle->encoding == ENC_UUENCODE)
- handle->s = decodeU(&p);
+ decodeU_to_growbuf(&gbtmp, &p);
+ growbuf_clear(&handle->gb);
+ handle->gb = gbtmp;
handle->pos = 0;
}
- if (len > handle->s->length - handle->pos)
- len = handle->s->length - handle->pos;
+ if (len > handle->gb.length - handle->pos)
+ len = handle->gb.length - handle->pos;
- bcopy(&handle->s->ptr[handle->pos], buf, len);
+ memcpy(buf, &handle->gb.ptr[handle->pos], len);
handle->pos += len;
return len;
}
+
+static void
+memchop(char *p, int *len)
+{
+ char *q;
+
+ for (q = p + *len; q > p; --q) {
+ if (q[-1] != '\n' && q[-1] != '\r')
+ break;
+ }
+ if (q != p + *len)
+ *q = '\0';
+ *len = q - p;
+ return;
+}
diff --git a/istream.h b/istream.h
index a220d8b..5a04be0 100644
--- a/istream.h
+++ b/istream.h
@@ -2,13 +2,13 @@
#ifndef IO_STREAM_H
#define IO_STREAM_H
+#include "indep.h"
#include <stdio.h>
#ifdef USE_SSL
#include <openssl/bio.h>
#include <openssl/x509.h>
#include <openssl/ssl.h>
#endif
-#include "Str.h"
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
@@ -20,7 +20,7 @@ struct stream_buffer {
typedef struct stream_buffer *StreamBuffer;
-struct file_handle {
+struct io_file_handle {
FILE *f;
void (*close) ();
};
@@ -36,7 +36,7 @@ union input_stream;
struct ens_handle {
union input_stream *is;
- Str s;
+ struct growbuf gb;
int pos;
char encoding;
};
@@ -53,7 +53,7 @@ struct base_stream {
struct file_stream {
struct stream_buffer stream;
- struct file_handle *handle;
+ struct io_file_handle *handle;
char type;
char iseos;
int (*read) ();
@@ -119,9 +119,14 @@ extern InputStream newEncodedStream(InputStream is, char encoding);
extern int ISclose(InputStream stream);
extern int ISgetc(InputStream stream);
extern int ISundogetc(InputStream stream);
-extern Str StrISgets(InputStream stream);
-extern Str StrmyISgets(InputStream stream);
+extern Str StrISgets2(InputStream stream, char crnl);
+#define StrISgets(stream) StrISgets2(stream, FALSE)
+#define StrmyISgets(stream) StrISgets2(stream, TRUE)
+void ISgets_to_growbuf(InputStream stream, struct growbuf *gb, char crnl);
+#ifdef unused
extern int ISread(InputStream stream, Str buf, int count);
+#endif
+int ISread_n(InputStream stream, char *dst, int bufsize);
extern int ISfileno(InputStream stream);
extern int ISeos(InputStream stream);
#ifdef USE_SSL
diff --git a/keybind.c b/keybind.c
index a490962..e9ef08b 100644
--- a/keybind.c
+++ b/keybind.c
@@ -13,7 +13,7 @@ unsigned char GlobalKeymap[128] = {
/* C-p C-q C-r C-s C-t C-u C-v C-w */
movU, closeT, isrchbak, isrchfor, tabA, prevA, pgFore, wrapToggle,
/* C-x C-y C-z C-[ C-\ C-] C-^ C-_ */
- nulcmd, nulcmd, susp, escmap, nulcmd, nulcmd, nulcmd, nulcmd,
+ nulcmd, nulcmd, susp, escmap, nulcmd, nulcmd, nulcmd, goHome,
/* SPC ! " # $ % & ' */
pgFore, execsh, reMark, pipesh, linend, nulcmd, nulcmd, nulcmd,
/* ( ) * + , - . / */
@@ -91,7 +91,7 @@ unsigned char EscBKeymap[128] = {
/* 0 1 2 3 4 5 6 7 */
nulcmd, nulcmd, nulcmd, nulcmd, nulcmd, nulcmd, nulcmd, nulcmd,
/* 8 9 : ; < = > ? */
- nulcmd, nulcmd, nulcmd, nulcmd, nulcmd, nulcmd, nulcmd, nulcmd,
+ nulcmd, nulcmd, nulcmd, nulcmd, sgrmouse, nulcmd, nulcmd, nulcmd,
/* @ A B C D E F G */
nulcmd, movU, movD, movR, movL, nulcmd, goLineL, pgFore,
/* H I J K L M N O */
diff --git a/keybind_lynx.c b/keybind_lynx.c
index 163f6b2..42267ec 100644
--- a/keybind_lynx.c
+++ b/keybind_lynx.c
@@ -99,7 +99,7 @@ unsigned char EscBKeymap[128] = {
/* 0 1 2 3 4 5 6 7 */
nulcmd, nulcmd, nulcmd, nulcmd, nulcmd, nulcmd, nulcmd, nulcmd,
/* 8 9 : ; < = > ? */
- nulcmd, nulcmd, nulcmd, nulcmd, nulcmd, nulcmd, nulcmd, nulcmd,
+ nulcmd, nulcmd, nulcmd, nulcmd, sgrmouse, nulcmd, nulcmd, nulcmd,
/* @ A B C D E F G */
nulcmd, prevA, nextA, followA, backBf, nulcmd, goLineL, pgFore,
/* H I J K L M N O */
diff --git a/libwc/.cvsignore b/libwc/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/libwc/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/libwc/ambwidth_map.awk b/libwc/ambwidth_map.awk
index 8544f58..1d9d25f 100644
--- a/libwc/ambwidth_map.awk
+++ b/libwc/ambwidth_map.awk
@@ -3,9 +3,15 @@ BEGIN {
i = 0;
}
$2 == "A" {
- code = sprintf("0x%s", $1);
- if (strtonum(code) < 0x10000) {
- map[i] = code
+ code = code2 = strtonum(sprintf("0x%s", $1))
+ if (match($1, /[.]+[0-9A-Fa-f]+/)) {
+ s = substr($1, RSTART, RLENGTH)
+ sub(/[.]+/, "0x", s)
+ code2 = strtonum(s)
+ }
+ for (; code <= code2; code++) {
+ if (code >= 0x10000) { break }
+ map[i] = sprintf("0x%04X", code)
i++;
}
}
@@ -15,28 +21,14 @@ END {
prev = strtonum(map[0]);
for (j = 1; j < i; j++) {
cur = strtonum(map[j]);
- if (match(map[j], "[.]+")) {
+ if (cur - prev > 1) {
map2[n] = sprintf("%s, %s", start, map[j - 1]);
n++;
- gsub("[.]+", ", 0x", map[j])
- map2[n] = map[j];
- n++;
- start = map[j + 1];
- cur = strtonum(start);
- } else {
- if (cur - prev > 2) {
- map2[n] = sprintf("%s, %s", start, map[j - 1]);
- start = map[j];
- n++;
- }
-
- if (j == i - 1) {
- map2[n] = sprintf("%s, %s", start, map[j]);
- n++;
- }
+ start = map[j];
}
prev = cur;
}
+ if (i > 0) { map2[n] = sprintf("%s, %s", start, map[i - 1]); n++ }
printf("static wc_map ucs_ambwidth_map[] = {\n");
for (j = 0; j < n; j++) {
diff --git a/libwc/charset.c b/libwc/charset.c
index 3f0b74d..ea79b1c 100644
--- a/libwc/charset.c
+++ b/libwc/charset.c
@@ -1,8 +1,7 @@
#include <stdlib.h>
#include <ctype.h>
-#include <gc.h>
-#define New_N(type,n) ((type*)GC_MALLOC((n)*sizeof(type)))
+#include "../alloc.h"
#include "wc.h"
diff --git a/libwc/gb18030.c b/libwc/gb18030.c
index c195d49..d5c9018 100644
--- a/libwc/gb18030.c
+++ b/libwc/gb18030.c
@@ -151,6 +151,7 @@ wc_ucs_to_gb18030(wc_uint32 ucs)
return cc;
}
cc.ccs = WC_CCS_UNKNOWN;
+ cc.code = 0;
return cc;
}
#endif
diff --git a/libwc/iso2022.c b/libwc/iso2022.c
index 33d9a19..a191f28 100644
--- a/libwc/iso2022.c
+++ b/libwc/iso2022.c
@@ -405,7 +405,8 @@ wc_push_to_iso2022(Str os, wc_wchar_t cc, wc_status *st)
case WC_CCS_A_CS94:
if (cc.ccs == WC_CCS_US_ASCII)
cc.ccs = st->g0_ccs;
- g = cs94_gmap[WC_CCS_INDEX(cc.ccs) - WC_F_ISO_BASE];
+ if (WC_CCS_INDEX(cc.ccs) >= WC_F_ISO_BASE)
+ g = cs94_gmap[WC_CCS_INDEX(cc.ccs) - WC_F_ISO_BASE];
break;
case WC_CCS_A_CS94W:
is_wide = 1;
@@ -435,35 +436,41 @@ wc_push_to_iso2022(Str os, wc_wchar_t cc, wc_status *st)
break;
#endif
}
- g = cs94w_gmap[WC_CCS_INDEX(cc.ccs) - WC_F_ISO_BASE];
+ if (WC_CCS_INDEX(cc.ccs) >= WC_F_ISO_BASE)
+ g = cs94w_gmap[WC_CCS_INDEX(cc.ccs) - WC_F_ISO_BASE];
break;
case WC_CCS_A_CS96:
- g = cs96_gmap[WC_CCS_INDEX(cc.ccs) - WC_F_ISO_BASE];
+ if (WC_CCS_INDEX(cc.ccs) >= WC_F_ISO_BASE)
+ g = cs96_gmap[WC_CCS_INDEX(cc.ccs) - WC_F_ISO_BASE];
break;
case WC_CCS_A_CS96W:
is_wide = 1;
- g = cs96w_gmap[WC_CCS_INDEX(cc.ccs) - WC_F_ISO_BASE];
+ if (WC_CCS_INDEX(cc.ccs) >= WC_F_ISO_BASE)
+ g = cs96w_gmap[WC_CCS_INDEX(cc.ccs) - WC_F_ISO_BASE];
break;
case WC_CCS_A_CS942:
- g = cs942_gmap[WC_CCS_INDEX(cc.ccs) - WC_F_ISO_BASE];
+ if (WC_CCS_INDEX(cc.ccs) >= WC_F_ISO_BASE)
+ g = cs942_gmap[WC_CCS_INDEX(cc.ccs) - WC_F_ISO_BASE];
break;
case WC_CCS_A_UNKNOWN_W:
if (WcOption.no_replace)
return;
is_wide = 1;
cc.ccs = WC_CCS_US_ASCII;
- g = cs94_gmap[WC_CCS_INDEX(cc.ccs) - WC_F_ISO_BASE];
+ if (WC_CCS_INDEX(cc.ccs) >= WC_F_ISO_BASE)
+ g = cs94_gmap[WC_CCS_INDEX(cc.ccs) - WC_F_ISO_BASE];
cc.code = ((wc_uint32)WC_REPLACE_W[0] << 8) | WC_REPLACE_W[1];
break;
case WC_CCS_A_UNKNOWN:
if (WcOption.no_replace)
return;
cc.ccs = WC_CCS_US_ASCII;
- g = cs94_gmap[WC_CCS_INDEX(cc.ccs) - WC_F_ISO_BASE];
+ if (WC_CCS_INDEX(cc.ccs) >= WC_F_ISO_BASE)
+ g = cs94_gmap[WC_CCS_INDEX(cc.ccs) - WC_F_ISO_BASE];
cc.code = (wc_uint32)WC_REPLACE[0];
break;
default:
- if ((cc.ccs == WC_CCS_JOHAB || WC_CCS_JOHAB_1 ||
+ if ((cc.ccs == WC_CCS_JOHAB || cc.ccs == WC_CCS_JOHAB_1 ||
cc.ccs == WC_CCS_JOHAB_2 || cc.ccs == WC_CCS_JOHAB_3) &&
cs94w_gmap[WC_F_KS_X_1001 - WC_F_ISO_BASE]) {
wc_wchar_t cc2 = wc_johab_to_ksx1001(cc);
diff --git a/libwc/johab.c b/libwc/johab.c
index 8d587b8..498b1bb 100644
--- a/libwc/johab.c
+++ b/libwc/johab.c
@@ -160,9 +160,9 @@ wc_N_to_johab1(wc_uint32 code)
{
wc_uint32 a, b, c;
- a = N_johab1_map[0][(code / 28) / 21];
- b = N_johab1_map[1][(code / 28) % 21];
- c = N_johab1_map[2][ code % 28 ];
+ a = N_johab1_map[0][(code / 28) / 21 & 0x1F];
+ b = N_johab1_map[1][(code / 28) % 21 & 0x1F];
+ c = N_johab1_map[2][ code % 28 & 0x1F];
return 0x8000 | (a << 10) | (b << 5) | c;
}
diff --git a/libwc/map/big5_ucs.map b/libwc/map/big5_ucs.map
index 0c6fd12..ac817a9 100644
--- a/libwc/map/big5_ucs.map
+++ b/libwc/map/big5_ucs.map
@@ -1,6 +1,8 @@
/* Big5 (Chinese Taiwan) */
-static wc_uint16 big5_ucs_map[ 0x59 * 0x9D ] = {
+#define N_big5_ucs_map (0x59 * 0x9D)
+
+static wc_uint16 big5_ucs_map[ N_big5_ucs_map ] = {
0x3000, /* 0xA140 */
0xFF0C, /* 0xA141 */
0x3001, /* 0xA142 */
diff --git a/libwc/map/cns11643_ucs.map b/libwc/map/cns11643_ucs.map
index b426dd3..fcba334 100644
--- a/libwc/map/cns11643_ucs.map
+++ b/libwc/map/cns11643_ucs.map
@@ -1,6 +1,8 @@
/* CNS 11643 (Chinese Taiwan) */
-static wc_uint16 cns116431_ucs_map[ 0x5E * 0x5E ] = {
+#define N_cns116431_ucs_map (0x5E * 0x5E)
+
+static wc_uint16 cns116431_ucs_map[ N_cns116431_ucs_map ] = {
0x3000, /* 0x2121 */
0xFF0C, /* 0x2122 */
0x3001, /* 0x2123 */
@@ -8839,7 +8841,9 @@ static wc_uint16 cns116431_ucs_map[ 0x5E * 0x5E ] = {
0, /* 0x7E7E */
};
-static wc_uint16 cns116432_ucs_map[ 0x5E * 0x5E ] = {
+#define N_cns116432_ucs_map (0x5E * 0x5E)
+
+static wc_uint16 cns116432_ucs_map[ N_cns116432_ucs_map ] = {
0x4E42, /* 0x2121 */
0x4E5C, /* 0x2122 */
0x51F5, /* 0x2123 */
diff --git a/libwc/map/gb12345_ucs.map b/libwc/map/gb12345_ucs.map
index 55558c7..3fb338d 100644
--- a/libwc/map/gb12345_ucs.map
+++ b/libwc/map/gb12345_ucs.map
@@ -1,6 +1,8 @@
/* GB 12345 (Chinese) */
-static wc_uint16 gb12345_ucs_map[ 0x5E * 0x5E ] = {
+#define N_gb12345_ucs_map (0x5E * 0x5E)
+
+static wc_uint16 gb12345_ucs_map[ N_gb12345_ucs_map ] = {
0x3000, /* 0x2121 */
0x3001, /* 0x2122 */
0x3002, /* 0x2123 */
diff --git a/libwc/map/gb2312_ucs.map b/libwc/map/gb2312_ucs.map
index 38fb88f..3d37465 100644
--- a/libwc/map/gb2312_ucs.map
+++ b/libwc/map/gb2312_ucs.map
@@ -1,6 +1,8 @@
/* GB 2312 (Chinese) */
-static wc_uint16 gb2312_ucs_map[ 0x5E * 0x5E ] = {
+#define N_gb2312_ucs_map (0x5E * 0x5E)
+
+static wc_uint16 gb2312_ucs_map[ N_gb2312_ucs_map ] = {
0x3000, /* 0x2121 */
0x3001, /* 0x2122 */
0x3002, /* 0x2123 */
diff --git a/libwc/map/gbk_ucs.map b/libwc/map/gbk_ucs.map
index 5a0d5ba..d092fd7 100644
--- a/libwc/map/gbk_ucs.map
+++ b/libwc/map/gbk_ucs.map
@@ -6,7 +6,9 @@ static wc_map ucs_gbk_80_map[ N_ucs_gbk_80_map ] = {
{ 0x20AC, 0x0080 },
};
-static wc_uint16 gbk_ucs_map[ 0x7E * 0xBE - 0x5E * 0x5E + 0x0A + 0x16 + 0x06 ] = {
+#define N_gbk_ucs_map (0x7E * 0xBE - 0x5E * 0x5E + 0x0A + 0x16 + 0x06)
+
+static wc_uint16 gbk_ucs_map[ N_gbk_ucs_map ] = {
0x4E02, /* 0x8140 */
0x4E04, /* 0x8141 */
0x4E05, /* 0x8142 */
diff --git a/libwc/map/hkscs_ucs.map b/libwc/map/hkscs_ucs.map
index 96d1566..2fbe6b4 100644
--- a/libwc/map/hkscs_ucs.map
+++ b/libwc/map/hkscs_ucs.map
@@ -1,6 +1,8 @@
/* HKSCS (Chinese Hong Kong) */
-static wc_uint16 hkscs_ucs_map[ 0x1E * 0x9D ] = {
+#define N_hkscs_ucs_map (0x1E * 0x9D)
+
+static wc_uint16 hkscs_ucs_map[ N_hkscs_ucs_map ] = {
0, /* 0x8840 */
0, /* 0x8841 */
0, /* 0x8842 */
diff --git a/libwc/map/jisx0208x0212x0213_ucs.map b/libwc/map/jisx0208x0212x0213_ucs.map
index 1a1d706..28c2a6c 100644
--- a/libwc/map/jisx0208x0212x0213_ucs.map
+++ b/libwc/map/jisx0208x0212x0213_ucs.map
@@ -1,6 +1,8 @@
/* JIS X 0208, JIS X 0212, JIS X 0213 (Japanese) */
-static wc_uint16 jisx0208x02131_ucs_map[ 0x5E * 0x5E ] = {
+#define N_jisx0208x02131_ucs_map (0x5E * 0x5E)
+
+static wc_uint16 jisx0208x02131_ucs_map[ N_jisx0208x02131_ucs_map ] = {
0x3000, /* JIS X 0208 0x2121 */
0x3001, /* JIS X 0208 0x2122 */
0x3002, /* JIS X 0208 0x2123 */
@@ -8839,7 +8841,9 @@ static wc_uint16 jisx0208x02131_ucs_map[ 0x5E * 0x5E ] = {
0, /* JIS X 0213-1 0x7E7E */
};
-static wc_uint16 jisx0212x02132_ucs_map[ 0x5E * 0x5E ] = {
+#define N_jisx0212x02132_ucs_map (0x5E * 0x5E)
+
+static wc_uint16 jisx0212x02132_ucs_map[ N_jisx0212x02132_ucs_map ] = {
0, /* JIS X 0213-2 0x2121 */
0x4E02, /* JIS X 0213-2 0x2122 */
0x4E0F, /* JIS X 0213-2 0x2123 */
diff --git a/libwc/map/ksx1001_ucs.map b/libwc/map/ksx1001_ucs.map
index 9a17d61..cb62f98 100644
--- a/libwc/map/ksx1001_ucs.map
+++ b/libwc/map/ksx1001_ucs.map
@@ -1,6 +1,8 @@
/* KS X 1001 (Korean) */
-static wc_uint16 ksx1001_ucs_map[ 0x5E * 0x5E ] = {
+#define N_ksx1001_ucs_map (0x5E * 0x5E)
+
+static wc_uint16 ksx1001_ucs_map[ N_ksx1001_ucs_map ] = {
0x3000, /* 0x2121 */
0x3001, /* 0x2122 */
0x3002, /* 0x2123 */
diff --git a/libwc/map/sjis_ext_ucs.map b/libwc/map/sjis_ext_ucs.map
index a82995c..cc748ba 100644
--- a/libwc/map/sjis_ext_ucs.map
+++ b/libwc/map/sjis_ext_ucs.map
@@ -1,6 +1,8 @@
/* Shift_JIS/CP932 (Japanese) */
-static wc_uint16 sjis_ext_ucs_map[ 0x5E * 10 ] = {
+#define N_sjis_ext_ucs_map (0x5E * 10)
+
+static wc_uint16 sjis_ext_ucs_map[ N_sjis_ext_ucs_map ] = {
0x2460, /* 0x8740 */
0x2461, /* 0x8741 */
0x2462, /* 0x8742 */
diff --git a/libwc/map/ucs_ambwidth.map b/libwc/map/ucs_ambwidth.map
index 6f03ba8..35ceedb 100644
--- a/libwc/map/ucs_ambwidth.map
+++ b/libwc/map/ucs_ambwidth.map
@@ -1,50 +1,82 @@
static wc_map ucs_ambwidth_map[] = {
{ 0x00A1, 0x00A1 },
{ 0x00A4, 0x00A4 },
- { 0x00A7, 0x00AA },
- { 0x00AD, 0x00BF },
+ { 0x00A7, 0x00A8 },
+ { 0x00AA, 0x00AA },
+ { 0x00AD, 0x00AE },
+ { 0x00B0, 0x00B4 },
+ { 0x00B6, 0x00BA },
+ { 0x00BC, 0x00BF },
{ 0x00C6, 0x00C6 },
{ 0x00D0, 0x00D0 },
{ 0x00D7, 0x00D8 },
{ 0x00DE, 0x00E1 },
- { 0x00E6, 0x00ED },
- { 0x00F0, 0x00F3 },
- { 0x00F7, 0x00FE },
+ { 0x00E6, 0x00E6 },
+ { 0x00E8, 0x00EA },
+ { 0x00EC, 0x00ED },
+ { 0x00F0, 0x00F0 },
+ { 0x00F2, 0x00F3 },
+ { 0x00F7, 0x00FA },
+ { 0x00FC, 0x00FC },
+ { 0x00FE, 0x00FE },
{ 0x0101, 0x0101 },
- { 0x0111, 0x0113 },
+ { 0x0111, 0x0111 },
+ { 0x0113, 0x0113 },
{ 0x011B, 0x011B },
{ 0x0126, 0x0127 },
{ 0x012B, 0x012B },
{ 0x0131, 0x0133 },
{ 0x0138, 0x0138 },
- { 0x013F, 0x0144 },
- { 0x0148, 0x014D },
+ { 0x013F, 0x0142 },
+ { 0x0144, 0x0144 },
+ { 0x0148, 0x014B },
+ { 0x014D, 0x014D },
{ 0x0152, 0x0153 },
{ 0x0166, 0x0167 },
{ 0x016B, 0x016B },
- { 0x01CE, 0x01DC },
+ { 0x01CE, 0x01CE },
+ { 0x01D0, 0x01D0 },
+ { 0x01D2, 0x01D2 },
+ { 0x01D4, 0x01D4 },
+ { 0x01D6, 0x01D6 },
+ { 0x01D8, 0x01D8 },
+ { 0x01DA, 0x01DA },
+ { 0x01DC, 0x01DC },
{ 0x0251, 0x0251 },
{ 0x0261, 0x0261 },
{ 0x02C4, 0x02C4 },
- { 0x02C7, 0x02CD },
+ { 0x02C7, 0x02C7 },
+ { 0x02C9, 0x02CB },
+ { 0x02CD, 0x02CD },
{ 0x02D0, 0x02D0 },
- { 0x02D8, 0x02DF },
+ { 0x02D8, 0x02DB },
+ { 0x02DD, 0x02DD },
+ { 0x02DF, 0x02DF },
{ 0x0300, 0x036F },
- { 0x0391, 0x03A9 },
- { 0x03B1, 0x03C9 },
+ { 0x0391, 0x03A1 },
+ { 0x03A3, 0x03A9 },
+ { 0x03B1, 0x03C1 },
+ { 0x03C3, 0x03C9 },
{ 0x0401, 0x0401 },
- { 0x0410, 0x0451 },
+ { 0x0410, 0x044F },
+ { 0x0451, 0x0451 },
{ 0x2010, 0x2010 },
- { 0x2013, 0x2019 },
+ { 0x2013, 0x2016 },
+ { 0x2018, 0x2019 },
{ 0x201C, 0x201D },
- { 0x2020, 0x2027 },
- { 0x2030, 0x2035 },
+ { 0x2020, 0x2022 },
+ { 0x2024, 0x2027 },
+ { 0x2030, 0x2030 },
+ { 0x2032, 0x2033 },
+ { 0x2035, 0x2035 },
{ 0x203B, 0x203B },
{ 0x203E, 0x203E },
{ 0x2074, 0x2074 },
- { 0x207F, 0x2084 },
+ { 0x207F, 0x207F },
+ { 0x2081, 0x2084 },
{ 0x20AC, 0x20AC },
- { 0x2103, 0x2105 },
+ { 0x2103, 0x2103 },
+ { 0x2105, 0x2105 },
{ 0x2109, 0x2109 },
{ 0x2113, 0x2113 },
{ 0x2116, 0x2116 },
@@ -52,21 +84,28 @@ static wc_map ucs_ambwidth_map[] = {
{ 0x2126, 0x2126 },
{ 0x212B, 0x212B },
{ 0x2153, 0x2154 },
- { 0x215B, 0x216B },
+ { 0x215B, 0x215E },
+ { 0x2160, 0x216B },
{ 0x2170, 0x2179 },
{ 0x2189, 0x2189 },
{ 0x2190, 0x2199 },
{ 0x21B8, 0x21B9 },
- { 0x21D2, 0x21D4 },
+ { 0x21D2, 0x21D2 },
+ { 0x21D4, 0x21D4 },
{ 0x21E7, 0x21E7 },
- { 0x2200, 0x2203 },
+ { 0x2200, 0x2200 },
+ { 0x2202, 0x2203 },
{ 0x2207, 0x2208 },
{ 0x220B, 0x220B },
- { 0x220F, 0x2211 },
+ { 0x220F, 0x220F },
+ { 0x2211, 0x2211 },
{ 0x2215, 0x2215 },
{ 0x221A, 0x221A },
{ 0x221D, 0x2220 },
- { 0x2223, 0x222E },
+ { 0x2223, 0x2223 },
+ { 0x2225, 0x2225 },
+ { 0x2227, 0x222C },
+ { 0x222E, 0x222E },
{ 0x2234, 0x2237 },
{ 0x223C, 0x223D },
{ 0x2248, 0x2248 },
@@ -83,11 +122,13 @@ static wc_map ucs_ambwidth_map[] = {
{ 0x22A5, 0x22A5 },
{ 0x22BF, 0x22BF },
{ 0x2312, 0x2312 },
- { 0x2460, 0x254B },
+ { 0x2460, 0x24E9 },
+ { 0x24EB, 0x254B },
{ 0x2550, 0x2573 },
{ 0x2580, 0x258F },
{ 0x2592, 0x2595 },
- { 0x25A0, 0x25A9 },
+ { 0x25A0, 0x25A1 },
+ { 0x25A3, 0x25A9 },
{ 0x25B2, 0x25B3 },
{ 0x25B6, 0x25B7 },
{ 0x25BC, 0x25BD },
@@ -101,12 +142,20 @@ static wc_map ucs_ambwidth_map[] = {
{ 0x2609, 0x2609 },
{ 0x260E, 0x260F },
{ 0x2614, 0x2615 },
- { 0x261C, 0x261E },
- { 0x2640, 0x2642 },
- { 0x2660, 0x266F },
+ { 0x261C, 0x261C },
+ { 0x261E, 0x261E },
+ { 0x2640, 0x2640 },
+ { 0x2642, 0x2642 },
+ { 0x2660, 0x2661 },
+ { 0x2663, 0x2665 },
+ { 0x2667, 0x266A },
+ { 0x266C, 0x266D },
+ { 0x266F, 0x266F },
{ 0x269E, 0x269F },
{ 0x26BE, 0x26BF },
- { 0x26C4, 0x26E3 },
+ { 0x26C4, 0x26CD },
+ { 0x26CF, 0x26E1 },
+ { 0x26E3, 0x26E3 },
{ 0x26E8, 0x26FF },
{ 0x273D, 0x273D },
{ 0x2757, 0x2757 },
diff --git a/libwc/map/uhc_ucs.map b/libwc/map/uhc_ucs.map
index b6b43ca..55efc09 100644
--- a/libwc/map/uhc_ucs.map
+++ b/libwc/map/uhc_ucs.map
@@ -1,6 +1,8 @@
/* UHC/CP949 (Korean) */
-static wc_uint16 uhc_ucs_map[ 0x20 * 0xB2 + 0x27 * 0x54 + 2 ] = {
+#define N_uhc_ucs_map (0x20 * 0xB2 + 0x27 * 0x54 + 2)
+
+static wc_uint16 uhc_ucs_map[ N_uhc_ucs_map ] = {
0xAC02, /* 0x8141 */
0xAC03, /* 0x8142 */
0xAC05, /* 0x8143 */
diff --git a/libwc/status.c b/libwc/status.c
index d25c924..4a2ebf8 100644
--- a/libwc/status.c
+++ b/libwc/status.c
@@ -1,7 +1,6 @@
#include <string.h>
-#include <gc.h>
-#define New_N(type,n) ((type*)GC_MALLOC((n)*sizeof(type)))
+#include "../alloc.h"
#include "wc.h"
#ifdef USE_UNICODE
diff --git a/libwc/ucs.c b/libwc/ucs.c
index d7b6948..18c3a67 100644
--- a/libwc/ucs.c
+++ b/libwc/ucs.c
@@ -100,6 +100,7 @@ wc_ucs_to_any(wc_uint32 ucs, wc_table *t)
return t->conv(t->ccs, map->code2);
}
cc.ccs = WC_CCS_UNKNOWN;
+ cc.code = 0;
return cc;
}
@@ -108,6 +109,7 @@ wc_any_to_ucs(wc_wchar_t cc)
{
int f;
wc_uint16 *map = NULL;
+ wc_uint32 map_size = 0x80;
wc_map *map2;
f = WC_CCS_INDEX(cc.ccs);
@@ -138,6 +140,7 @@ wc_any_to_ucs(wc_wchar_t cc)
if (f < WC_F_ISO_BASE || f > WC_F_CS94W_END)
return 0;
map = cs94w_ucs_map[f - WC_F_ISO_BASE];
+ map_size = cs94w_ucs_map_size[f - WC_F_ISO_BASE];
cc.code = WC_CS94W_N(cc.code);
break;
case WC_CCS_A_CS96:
@@ -150,6 +153,7 @@ wc_any_to_ucs(wc_wchar_t cc)
if (f < WC_F_ISO_BASE || f > WC_F_CS96W_END)
return WC_C_UCS4_ERROR;
map = cs96w_ucs_map[f - WC_F_ISO_BASE];
+ map_size = cs96w_ucs_map_size[f - WC_F_ISO_BASE];
cc.code = WC_CS96W_N(cc.code);
break;
case WC_CCS_A_CS942:
@@ -174,12 +178,14 @@ wc_any_to_ucs(wc_wchar_t cc)
return WC_C_UCS2_EURO;
}
map = pcs_ucs_map[f - WC_F_PCS_BASE];
+ map_size = pcs_ucs_map_size[f - WC_F_PCS_BASE];
cc.code &= 0x7f;
break;
case WC_CCS_A_PCSW:
if (f < WC_F_PCS_BASE || f > WC_F_PCSW_END)
return WC_C_UCS4_ERROR;
map = pcsw_ucs_map[f - WC_F_PCS_BASE];
+ map_size = pcsw_ucs_map_size[f - WC_F_PCS_BASE];
switch (cc.ccs) {
case WC_CCS_BIG5:
cc.code = WC_BIG5_N(cc.code);
@@ -271,6 +277,8 @@ wc_any_to_ucs(wc_wchar_t cc)
}
if (map == NULL)
return WC_C_UCS4_ERROR;
+ if (map_size == 0 || cc.code > map_size - 1)
+ return WC_C_UCS4_ERROR;
cc.code = map[cc.code];
return cc.code ? cc.code : WC_C_UCS4_ERROR;
}
diff --git a/libwc/ucs.map b/libwc/ucs.map
index dfac6d9..bed5dff 100644
--- a/libwc/ucs.map
+++ b/libwc/ucs.map
@@ -175,6 +175,49 @@ static wc_uint16 *pcs_ucs_map[] = {
NULL, /* (Raw) */
};
+static wc_uint32 pcs_ucs_map_size[] = {
+ 0x80, /* cp437_ucs_map */
+ 0x80, /* cp737_ucs_map */
+ 0x80, /* cp775_ucs_map */
+ 0x80, /* cp850_ucs_map */
+ 0x80, /* cp852_ucs_map */
+ 0x80, /* cp855_ucs_map */
+ 0x80, /* cp856_ucs_map */
+ 0x80, /* cp857_ucs_map */
+ 0x80, /* cp860_ucs_map */
+ 0x80, /* cp861_ucs_map */
+ 0x80, /* cp862_ucs_map */
+ 0x80, /* cp863_ucs_map */
+ 0x80, /* cp864_ucs_map */
+ 0x80, /* cp865_ucs_map */
+ 0x80, /* cp866_ucs_map */
+ 0x80, /* cp869_ucs_map */
+ 0x80, /* cp874_ucs_map */
+ 0x80, /* cp1006_ucs_map */
+ 0x80, /* cp1250_ucs_map */
+ 0x80, /* cp1251_ucs_map */
+ 0x80, /* cp1252_ucs_map */
+ 0x80, /* cp1253_ucs_map */
+ 0x80, /* cp1254_ucs_map */
+ 0x80, /* cp1255_ucs_map */
+ 0x80, /* cp1256_ucs_map */
+ 0x80, /* cp1257_ucs_map */
+ 0x80, /* cp1258_ucs_map */
+ 0, /* NULL */
+ 0x80, /* tcvn57121_ucs_map */
+ 0x20, /* tcvn57122_ucs_map */
+ 0, /* NULL */
+ 0x80, /* viscii111_ucs_map */
+ 0x20, /* viscii112_ucs_map */
+ 0x80, /* vps1_ucs_map */
+ 0x20, /* vps2_ucs_map */
+ 0x80, /* koi8r_ucs_map */
+ 0x80, /* koi8u_ucs_map */
+ 0x80, /* nextstep_ucs_map */
+ 0, /* NULL */
+ 0, /* NULL (Raw) */
+};
+
static wc_uint16 *cs94w_ucs_map[] = {
jisx0208x02131_ucs_map, /* 40 (JIS C 6226) */
gb2312_ucs_map, /* 41 (GB 2312) */
@@ -195,7 +238,28 @@ static wc_uint16 *cs94w_ucs_map[] = {
jisx0212x02132_ucs_map, /* 50 (JIS X 0213-2) */
};
+static wc_uint32 cs94w_ucs_map_size[] = {
+ N_jisx0208x02131_ucs_map, /* 40 (JIS C 6226) */
+ N_gb2312_ucs_map, /* 41 (GB 2312) */
+ N_jisx0208x02131_ucs_map, /* 42 (JIS X 0208) */
+ N_ksx1001_ucs_map, /* 43 (KS X 1001) */
+ N_jisx0212x02132_ucs_map, /* 44 (JIS X 0212) */
+ 0, /* 45 (ISO IR 165) */
+ 0, /* 46 */
+ N_cns116431_ucs_map, /* 47 (CNS 11643-1) */
+ N_cns116432_ucs_map, /* 48 (CNS 11643-2) */
+ 0, /* 49 (CNS 11643-3) */
+ 0, /* 4A (CNS 11643-4) */
+ 0, /* 4B (CNS 11643-5) */
+ 0, /* 4C (CNS 11643-6) */
+ 0, /* 4D (CNS 11643-7) */
+ 0, /* 4E (KSP 9566) */
+ N_jisx0208x02131_ucs_map, /* 4F (JIS X 0213-1) */
+ N_jisx0212x02132_ucs_map, /* 50 (JIS X 0213-2) */
+};
+
static wc_uint16 **cs96w_ucs_map;
+static wc_uint32 *cs96w_ucs_map_size;
static wc_uint16 *pcsw_ucs_map[] = {
big5_ucs_map, /* Big5 */
@@ -233,6 +297,42 @@ static wc_uint16 *pcsw_ucs_map[] = {
hkscs_ucs_map, /* HKSCS-2 */
};
+static wc_uint32 pcsw_ucs_map_size[] = {
+ N_big5_ucs_map, /* Big5 */
+ N_big5_ucs_map, /* Big5-1 */
+ N_big5_ucs_map, /* Big5-2 */
+ 0, /* CNS 11643-8 */
+ 0, /* CNS 11643-9 */
+ 0, /* CNS 11643-10 */
+ 0, /* CNS 11643-11 */
+ 0, /* CNS 11643-12 */
+ 0, /* CNS 11643-13 */
+ 0, /* CNS 11643-14 */
+ 0, /* CNS 11643-15 */
+ 0, /* CNS 11643-16 */
+ 0, /* CNS 11643-X */
+ N_gb12345_ucs_map, /* GB 12345 */
+ 0, /* Johab (special conversion) */
+ 0, /* Johab-1 (special conversion) */
+ 0, /* Johab-2 (special conversion) */
+ N_ksx1001_ucs_map, /* Johab-3 */
+ N_sjis_ext_ucs_map, /* Shift_JIS(CP932) ext */
+ N_sjis_ext_ucs_map, /* Shift_JIS(CP932) ext-1 */
+ N_sjis_ext_ucs_map, /* Shift_JIS(CP932) ext-2 */
+ N_gbk_ucs_map, /* GBK(CP936) */
+ N_gbk_ucs_map, /* GBK(CP936)-1 */
+ N_gbk_ucs_map, /* GBK(CP936)-2 */
+ 0, /* GB18030 GBK-ext (special conversion) */
+ 0, /* GB18030 GBK-ext-1 (special conversion) */
+ 0, /* GB18030 GBK-ext-2 (special conversion) */
+ N_uhc_ucs_map, /* UHC(CP949) */
+ N_uhc_ucs_map, /* UHC(CP949)-1 */
+ N_uhc_ucs_map, /* UHC(CP949)-2 */
+ N_hkscs_ucs_map, /* HKSCS */
+ N_hkscs_ucs_map, /* HKSCS-1 */
+ N_hkscs_ucs_map, /* HKSCS-2 */
+};
+
static wc_wchar_t
ucs_cs94_conv(wc_ccs ccs, wc_uint16 c)
{
diff --git a/libwc/wtf.c b/libwc/wtf.c
index b8cfdc7..94d95c1 100644
--- a/libwc/wtf.c
+++ b/libwc/wtf.c
@@ -120,29 +120,36 @@ int
wtf_strwidth(wc_uchar *p)
{
int w = 0;
+ wc_uchar *q = p + strlen(p);
- while (*p) {
+ while (p < q) {
w += wtf_width(p);
p += WTF_LEN_MAP[*p];
}
return w;
}
-/*
size_t
wtf_len1(wc_uchar *p)
{
- return (size_t)WTF_LEN_MAP[*p];
+ size_t len, len_max = WTF_LEN_MAP[*p];
+
+ for (len = 0; *(p + len); len++)
+ if (len == len_max)
+ break;
+ if (len == 0)
+ len = 1;
+ return len;
}
-*/
size_t
wtf_len(wc_uchar *p)
{
wc_uchar *q = p;
+ wc_uchar *strz = p + strlen(p);
q += WTF_LEN_MAP[*q];
- while (*q && ! WTF_WIDTH_MAP[*q])
+ while (q < strz && ! WTF_WIDTH_MAP[*q])
q += WTF_LEN_MAP[*q];
return q - p;
}
@@ -166,15 +173,17 @@ wtf_type(wc_uchar *p)
((p)[3] = (((c) >> 7) & 0x7f) | 0x80), \
((p)[4] = ( (c) & 0x7f) | 0x80)
#define wtf_to_wcs16(p) \
+ ((p)[0] == 0 || (p)[1] == 0 || (p)[2] == 0 ? 0 : \
((wc_uint32)((p)[0] & 0x03) << 14) \
| ((wc_uint32)((p)[1] & 0x7f) << 7) \
- | ((wc_uint32)((p)[2] & 0x7f) )
+ | ((wc_uint32)((p)[2] & 0x7f) ))
#define wtf_to_wcs32(p) \
+ ((p)[0] == 0 || (p)[1] == 0 || (p)[2] == 0 || (p)[3] == 0 || (p)[4] == 0 ? 0 : \
((wc_uint32)((p)[0] & 0x0f) << 28) \
| ((wc_uint32)((p)[1] & 0x7f) << 21) \
| ((wc_uint32)((p)[2] & 0x7f) << 14) \
| ((wc_uint32)((p)[3] & 0x7f) << 7) \
- | ((wc_uint32)((p)[4] & 0x7f) )
+ | ((wc_uint32)((p)[4] & 0x7f) ))
void
wtf_push(Str os, wc_ccs ccs, wc_uint32 code)
@@ -388,7 +397,7 @@ wtf_parse1(wc_uchar **p)
cc.code = *(q++);
} else if (*q > 0xa0) {
cc.ccs = wtf_gr_ccs;
- if (WC_CCS_IS_WIDE(cc.ccs)) {
+ if (WC_CCS_IS_WIDE(cc.ccs) && *(q+1)) {
cc.code = ((wc_uint32)*q << 8) | *(q+1);
q += 2;
} else
@@ -401,27 +410,47 @@ wtf_parse1(wc_uchar **p)
case WC_CCS_A_CS942:
case WC_CCS_A_PCS:
case WC_CCS_A_UNKNOWN:
- cc.ccs |= *(q++) & 0x7f;
- cc.code = *(q++);
+ if (*q && *(q+1)) {
+ cc.ccs |= *(q++) & 0x7f;
+ cc.code = *(q++);
+ } else {
+ cc.ccs = WC_CCS_US_ASCII;
+ cc.code = (wc_uint32)' ';
+ }
break;
case WC_CCS_A_CS94W:
case WC_CCS_A_CS96W:
case WC_CCS_A_PCSW:
- cc.ccs |= *(q++) & 0x7f;
- cc.code = ((wc_uint32)*q << 8) | *(q+1);
- q += 2;
+ if (*q && *(q+1) && *(q+2)) {
+ cc.ccs |= *(q++) & 0x7f;
+ cc.code = ((wc_uint32)*q << 8) | *(q+1);
+ q += 2;
+ } else {
+ cc.ccs = WC_CCS_US_ASCII;
+ cc.code = (wc_uint32)' ';
+ }
break;
case WC_CCS_A_WCS16:
case WC_CCS_A_WCS16W:
- cc.ccs |= (*q & 0x7c) >> 2;
- cc.code = wtf_to_wcs16(q);
- q += 3;
+ if (*q && *(q+1) && *(q+2)) {
+ cc.ccs |= (*q & 0x7c) >> 2;
+ cc.code = wtf_to_wcs16(q);
+ q += 3;
+ } else {
+ cc.ccs = WC_CCS_US_ASCII;
+ cc.code = (wc_uint32)' ';
+ }
break;
case WC_CCS_A_WCS32:
case WC_CCS_A_WCS32W:
- cc.ccs |= (*q & 0x70) >> 4;
- cc.code = wtf_to_wcs32(q);
- q += 5;
+ if (*q && *(q+1) && *(q+2) && *(q+3) && *(q+4)) {
+ cc.ccs |= (*q & 0x70) >> 4;
+ cc.code = wtf_to_wcs32(q);
+ q += 5;
+ } else {
+ cc.ccs = WC_CCS_US_ASCII;
+ cc.code = (wc_uint32)' ';
+ }
break;
default:
/* case 0: */
diff --git a/libwc/wtf.h b/libwc/wtf.h
index ad47973..435526f 100644
--- a/libwc/wtf.h
+++ b/libwc/wtf.h
@@ -59,8 +59,7 @@ extern void wtf_init(wc_ces ces1, wc_ces ces2);
#define wtf_width(p) (WcOption.use_wide ? (int)WTF_WIDTH_MAP[(wc_uchar)*(p)] \
: ((int)WTF_WIDTH_MAP[(wc_uchar)*(p)] ? 1 : 0))
extern int wtf_strwidth(wc_uchar *p);
-/* extern size_t wtf_len1(wc_uchar *p); */
-#define wtf_len1(p) ((int)WTF_LEN_MAP[(wc_uchar)*(p)])
+extern size_t wtf_len1(wc_uchar *p);
extern size_t wtf_len(wc_uchar *p);
/* extern int wtf_type(wc_uchar *p); */
#define wtf_type(p) WTF_TYPE_MAP[(wc_uchar)*(p)]
diff --git a/linein.c b/linein.c
index b7e81b6..22b4ac8 100644
--- a/linein.c
+++ b/linein.c
@@ -184,7 +184,7 @@ inputLineHistSearch(char *prompt, char *def_str, int flag, Hist *hist,
cm_clear = TRUE;
cm_disp_clear = TRUE;
if (!i_quote &&
- (((cm_mode & CPL_ALWAYS) && (c == CTRL_I || c == ' ')) ||
+ (((cm_mode & CPL_ALWAYS) && (c == CTRL_I || (space_autocomplete && c == ' '))) ||
((cm_mode & CPL_ON) && (c == CTRL_I)))) {
if (emacs_like_lineedit && cm_next) {
_dcompl();
@@ -714,7 +714,8 @@ _rdcompl(void)
static void
next_dcompl(int next)
{
- static int col, row, len;
+ static int col, row;
+ static unsigned int len;
static Str d;
int i, j, n, y;
Str f;
@@ -780,9 +781,10 @@ next_dcompl(int next)
if (len < n)
len = n;
}
- col = COLS / len;
- if (col == 0)
- col = 1;
+ if (len > 0 && COLS > len)
+ col = COLS / len;
+ else
+ col = 1;
row = (NCFileBuf + col - 1) / col;
disp_next:
@@ -1026,7 +1028,7 @@ _prev(void)
strCurrentBuf = strBuf;
}
if (DecodeURL && (cm_mode & CPL_URL) )
- p = url_unquote_conv(p, 0);
+ p = url_decode2(p, NULL);
strBuf = Strnew_charp(p);
CLen = CPos = setStrType(strBuf, strProp);
offset = 0;
@@ -1045,7 +1047,7 @@ _next(void)
p = nextHist(hist);
if (p) {
if (DecodeURL && (cm_mode & CPL_URL) )
- p = url_unquote_conv(p, 0);
+ p = url_decode2(p, NULL);
strBuf = Strnew_charp(p);
}
else {
diff --git a/local.c b/local.c
index f5a73a2..56d589d 100644
--- a/local.c
+++ b/local.c
@@ -109,6 +109,7 @@ loadLocalDir(char *dname)
n++;
}
}
+ closedir(d);
if (multicolList) {
l = COLS / (maxlen + 2);
@@ -167,7 +168,7 @@ loadLocalDir(char *dname)
else {
#if defined(HAVE_LSTAT) && defined(HAVE_READLINK)
if (S_ISLNK(lst.st_mode)) {
- if ((l = readlink(fbuf->ptr, lbuf, sizeof(lbuf))) > 0) {
+ if ((l = readlink(fbuf->ptr, lbuf, sizeof(lbuf) - 1)) > 0) {
lbuf[l] = '\0';
Strcat_m_charp(tmp, " -> ",
html_quote(conv_from_system(lbuf)), NULL);
@@ -212,18 +213,17 @@ set_environ(char *var, char *value)
if (var != NULL && value != NULL)
setenv(var, value, 1);
#else /* not HAVE_SETENV */
-#ifdef HAVE_PUTENV
static Hash_sv *env_hash = NULL;
Str tmp = Strnew_m_charp(var, "=", value, NULL);
if (env_hash == NULL)
env_hash = newHash_sv(20);
putHash_sv(env_hash, var, (void *)tmp->ptr);
+#ifdef HAVE_PUTENV
putenv(tmp->ptr);
#else /* not HAVE_PUTENV */
extern char **environ;
char **ne;
- char *p;
int i, l, el;
char **e, **newenv;
@@ -250,7 +250,7 @@ set_environ(char *var, char *value)
if (newenv == NULL)
return;
for (e = environ, ne = newenv; *e != NULL; *(ne++) = *(e++)) ;
- *(ne++) = p;
+ *(ne++) = tmp->ptr;
*ne = NULL;
environ = newenv;
#endif /* not HAVE_PUTENV */
@@ -359,6 +359,10 @@ localcgi_post(char *uri, char *qstr, FormList *request, char *referer)
int status;
pid_t pid;
char *file = uri, *name = uri, *path_info = NULL, *tmpf = NULL;
+#ifdef HAVE_CHDIR
+ char *cgi_dir;
+#endif
+ char *cgi_basename;
#ifdef __MINGW32_VERSION
return NULL;
@@ -373,18 +377,25 @@ localcgi_post(char *uri, char *qstr, FormList *request, char *referer)
if (!fw)
return NULL;
}
+ if (qstr)
+ uri = Strnew_m_charp(uri, "?", qstr, NULL)->ptr;
+#ifdef HAVE_CHDIR
+ cgi_dir = mydirname(file);
+#endif
+ cgi_basename = mybasename(file);
pid = open_pipe_rw(&fr, NULL);
- if (pid < 0)
+ /* Don't invoke gc after here, or the program might crash in some platforms */
+ if (pid < 0) {
+ if (fw)
+ fclose(fw);
return NULL;
- else if (pid) {
+ } else if (pid) {
if (fw)
fclose(fw);
return fr;
}
setup_child(TRUE, 2, fw ? fileno(fw) : -1);
- if (qstr)
- uri = Strnew_m_charp(uri, "?", qstr, NULL)->ptr;
set_cgi_environ(name, file, uri);
if (path_info)
set_environ("PATH_INFO", path_info);
@@ -415,12 +426,14 @@ localcgi_post(char *uri, char *qstr, FormList *request, char *referer)
}
#ifdef HAVE_CHDIR /* ifndef __EMX__ ? */
- chdir(mydirname(file));
+ if (chdir(cgi_dir) == -1) {
+ fprintf(stderr, "failed to chdir to %s: %s\n", cgi_dir, strerror(errno));
+ exit(1);
+ }
#endif
- execl(file, mybasename(file), NULL);
+ execl(file, cgi_basename, NULL);
fprintf(stderr, "execl(\"%s\", \"%s\", NULL): %s\n",
- file, mybasename(file), strerror(errno));
+ file, cgi_basename, strerror(errno));
exit(1);
- return NULL;
#endif
}
diff --git a/mailcap.c b/mailcap.c
index c0461df..f0c6242 100644
--- a/mailcap.c
+++ b/mailcap.c
@@ -72,7 +72,7 @@ searchMailcap(struct mailcap *table, char *type)
}
static int
-matchMailcapAttr(char *p, char *attr, int len, Str *value)
+matchMailcapAttr(char *p, char *attr, size_t len, Str *value)
{
int quoted;
char *q = NULL;
diff --git a/main.c b/main.c
index b421943..7bcf898 100644
--- a/main.c
+++ b/main.c
@@ -1,6 +1,7 @@
/* $Id: main.c,v 1.270 2010/08/24 10:11:51 htrb Exp $ */
#define MAINPROGRAM
#include "fm.h"
+#include <stdio.h>
#include <signal.h>
#include <setjmp.h>
#include <sys/stat.h>
@@ -11,6 +12,9 @@
#include <sys/wait.h>
#endif
#include <time.h>
+#if defined(__CYGWIN__) && defined(USE_BINMODE_STREAM)
+#include <io.h>
+#endif
#include "terms.h"
#include "myctype.h"
#include "regex.h"
@@ -119,6 +123,8 @@ static int searchKeyNum(void);
#define help() fusage(stdout, 0)
#define usage() fusage(stderr, 1)
+int enable_inline_image; /* 1 == mlterm OSC 5379, 2 == sixel */
+
static void
fversion(FILE * f)
{
@@ -200,10 +206,12 @@ fusage(FILE * f, int err)
#ifdef USE_M17N
fprintf(f, " -I charset document charset\n");
fprintf(f, " -O charset display/output charset\n");
+#if 0 /* use -O{s|j|e} instead */
fprintf(f, " -e EUC-JP\n");
fprintf(f, " -s Shift_JIS\n");
fprintf(f, " -j JIS\n");
#endif
+#endif
fprintf(f, " -B load bookmark\n");
fprintf(f, " -bookmark file specify bookmark file\n");
fprintf(f, " -T type specify content-type\n");
@@ -214,7 +222,7 @@ fusage(FILE * f, int err)
#endif /* USE_COLOR */
fprintf(f,
" -N open URL of command line on each new tab\n");
- fprintf(f, " -F automatically render frame\n");
+ fprintf(f, " -F automatically render frames\n");
fprintf(f,
" -cols width specify column width (used with -dump)\n");
fprintf(f,
@@ -247,9 +255,13 @@ fusage(FILE * f, int err)
" -cookie use cookie (-no-cookie: don't use cookie)\n");
#endif /* USE_COOKIE */
fprintf(f, " -graph use DEC special graphics for border of table and menu\n");
- fprintf(f, " -no-graph use ACII character for border of table and menu\n");
+ fprintf(f, " -no-graph use ASCII character for border of table and menu\n");
+#if 1 /* pager requires -s */
+ fprintf(f, " -s squeeze multiple blank lines\n");
+#else
fprintf(f, " -S squeeze multiple blank lines\n");
- fprintf(f, " -W toggle wrap search mode\n");
+#endif
+ fprintf(f, " -W toggle search wrap mode\n");
fprintf(f, " -X don't use termcap init/deinit\n");
fprintf(f,
" -title[=TERM] set buffer name to terminal title string\n");
@@ -363,6 +375,8 @@ make_optional_header_string(char *s)
Strcopy_charp_n(hs, s, p - s);
if (!Strcasecmp_charp(hs, "content-type"))
override_content_type = TRUE;
+ if (!Strcasecmp_charp(hs, "user-agent"))
+ override_user_agent = TRUE;
Strcat_charp(hs, ": ");
if (*(++p)) { /* not null header */
SKIP_BLANKS(p); /* skip white spaces */
@@ -372,12 +386,19 @@ make_optional_header_string(char *s)
return hs;
}
+static void *
+die_oom(size_t bytes)
+{
+ fprintf(stderr, "Out of memory: %lu bytes unavailable!\n", (unsigned long)bytes);
+ exit(1);
+}
+
int
main(int argc, char **argv, char **envp)
{
Buffer *newbuf = NULL;
- char *p, c;
- int i;
+ char *p;
+ int c, i;
InputStream redin;
char *line_str = NULL;
char **load_argv;
@@ -397,7 +418,15 @@ main(int argc, char **argv, char **envp)
wc_ces CodePage;
#endif
#endif
+#if defined(DONT_CALL_GC_AFTER_FORK) && defined(USE_IMAGE)
+ char **getimage_args = NULL;
+#endif /* defined(DONT_CALL_GC_AFTER_FORK) && defined(USE_IMAGE) */
GC_INIT();
+#if (GC_VERSION_MAJOR>7) || ((GC_VERSION_MAJOR==7) && (GC_VERSION_MINOR>=2))
+ GC_set_oom_fn(die_oom);
+#else
+ GC_oom_fn = die_oom;
+#endif
#if defined(ENABLE_NLS) || (defined(USE_M17N) && defined(HAVE_LANGINFO_CODESET))
setlocale(LC_ALL, "");
#endif
@@ -406,10 +435,6 @@ main(int argc, char **argv, char **envp)
textdomain(PACKAGE);
#endif
-#ifndef HAVE_SYS_ERRLIST
- prepare_sys_errlist();
-#endif /* not HAVE_SYS_ERRLIST */
-
NO_proxy_domains = newTextList();
fileToDelete = newTextList();
@@ -418,6 +443,10 @@ main(int argc, char **argv, char **envp)
CurrentDir = currentdir();
CurrentPid = (int)getpid();
+#if defined(DONT_CALL_GC_AFTER_FORK) && defined(USE_IMAGE)
+ if (argv[0] && *argv[0])
+ MyProgramName = argv[0];
+#endif /* defined(DONT_CALL_GC_AFTER_FORK) && defined(USE_IMAGE) */
BookmarkFile = NULL;
config_file = NULL;
@@ -530,12 +559,14 @@ main(int argc, char **argv, char **envp)
PagerMax = atoi(argv[i]);
}
#ifdef USE_M17N
+#if 0 /* use -O{s|j|e} instead */
else if (!strcmp("-s", argv[i]))
DisplayCharset = WC_CES_SHIFT_JIS;
else if (!strcmp("-j", argv[i]))
DisplayCharset = WC_CES_ISO_2022_JP;
else if (!strcmp("-e", argv[i]))
DisplayCharset = WC_CES_EUC_JP;
+#endif
else if (!strncmp("-I", argv[i], 2)) {
if (argv[i][2] != '\0')
p = argv[i] + 2;
@@ -660,6 +691,12 @@ main(int argc, char **argv, char **envp)
}
}
#endif
+ else if (!strcmp("-ri", argv[i])) {
+ enable_inline_image = 1;
+ }
+ else if (!strcmp("-sixel", argv[i])) {
+ enable_inline_image = 2;
+ }
else if (!strcmp("-num", argv[i]))
showLineNum = TRUE;
else if (!strcmp("-no-proxy", argv[i]))
@@ -703,7 +740,11 @@ main(int argc, char **argv, char **envp)
accept_cookie = TRUE;
}
#endif /* USE_COOKIE */
+#if 1 /* pager requires -s */
+ else if (!strcmp("-s", argv[i]))
+#else
else if (!strcmp("-S", argv[i]))
+#endif
squeezeBlankLine = TRUE;
else if (!strcmp("-X", argv[i]))
Do_not_use_ti_te = TRUE;
@@ -735,6 +776,15 @@ main(int argc, char **argv, char **envp)
else if (!strcmp("-reqlog",argv[i])) {
w3m_reqlog=rcFile("request.log");
}
+#if defined(DONT_CALL_GC_AFTER_FORK) && defined(USE_IMAGE)
+ else if (!strcmp("-$$getimage", argv[i])) {
+ ++i;
+ getimage_args = argv + i;
+ i += 4;
+ if (i > argc)
+ usage();
+ }
+#endif /* defined(DONT_CALL_GC_AFTER_FORK) && defined(USE_IMAGE) */
else {
usage();
}
@@ -817,12 +867,36 @@ main(int argc, char **argv, char **envp)
#ifdef USE_M17N
wtf_init(DocumentCharset, DisplayCharset);
/* if (w3m_dump)
- * WcOption.pre_conv = WC_TRUE;
+ * WcOption.pre_conv = WC_TRUE;
*/
#endif
if (w3m_backend)
backend();
+#if defined(DONT_CALL_GC_AFTER_FORK) && defined(USE_IMAGE)
+ if (getimage_args) {
+ char *image_url = conv_from_system(getimage_args[0]);
+ char *base_url = conv_from_system(getimage_args[1]);
+ ParsedURL base_pu;
+
+ parseURL2(base_url, &base_pu, NULL);
+ image_source = getimage_args[2];
+ newbuf = loadGeneralFile(image_url, &base_pu, NULL, 0, NULL);
+ if (!newbuf || !newbuf->real_type ||
+ strncasecmp(newbuf->real_type, "image/", 6))
+ unlink(getimage_args[2]);
+#if defined(HAVE_SYMLINK) && defined(HAVE_LSTAT)
+ symlink(getimage_args[2], getimage_args[3]);
+#else
+ {
+ FILE *f = fopen(getimage_args[3], "w");
+ if (f)
+ fclose(f);
+ }
+#endif
+ w3m_exit(0);
+ }
+#endif /* defined(DONT_CALL_GC_AFTER_FORK) && defined(USE_IMAGE) */
if (w3m_dump)
mySignal(SIGINT, SIG_IGN);
@@ -833,7 +907,12 @@ main(int argc, char **argv, char **envp)
mySignal(SIGPIPE, SigPipe);
#endif
+#if (GC_VERSION_MAJOR>7) || ((GC_VERSION_MAJOR==7) && (GC_VERSION_MINOR>=2))
+ orig_GC_warn_proc = GC_get_warn_proc();
+ GC_set_warn_proc(wrap_GC_warn_proc);
+#else
orig_GC_warn_proc = GC_set_warn_proc(wrap_GC_warn_proc);
+#endif
err_msg = Strnew();
if (load_argc == 0) {
/* no URL specified */
@@ -894,12 +973,17 @@ main(int argc, char **argv, char **envp)
if (i >= 0) {
SearchHeader = search_header;
DefaultType = default_type;
+ char *url;
+
+ url = load_argv[i];
+ if (getURLScheme(&url) == SCM_MISSING && !ArgvIsURL)
+ url = file_to_url(load_argv[i]);
+ else
+ url = url_encode(conv_from_system(load_argv[i]), NULL, 0);
if (w3m_dump == DUMP_HEAD) {
request = New(FormList);
request->method = FORM_METHOD_HEAD;
- newbuf =
- loadGeneralFile(load_argv[i], NULL, NO_REFERER, 0,
- request);
+ newbuf = loadGeneralFile(url, NULL, NO_REFERER, 0, request);
}
else {
if (post_file && i == 0) {
@@ -928,9 +1012,7 @@ main(int argc, char **argv, char **envp)
else {
request = NULL;
}
- newbuf =
- loadGeneralFile(load_argv[i], NULL, NO_REFERER, 0,
- request);
+ newbuf = loadGeneralFile(url, NULL, NO_REFERER, 0, request);
}
if (newbuf == NULL) {
/* FIXME: gettextize? */
@@ -945,7 +1027,7 @@ main(int argc, char **argv, char **envp)
break;
case SCM_LOCAL:
case SCM_LOCAL_CGI:
- unshiftHist(LoadHist, conv_from_system(load_argv[i]));
+ unshiftHist(LoadHist, url);
default:
pushHashHist(URLHist, parsedURL2Str(&newbuf->currentURL)->ptr);
break;
@@ -1183,13 +1265,13 @@ static void
dump_source(Buffer *buf)
{
FILE *f;
- char c;
+ int c;
if (buf->sourcefile == NULL)
return;
f = fopen(buf->sourcefile, "r");
if (f == NULL)
return;
- while (c = fgetc(f), !feof(f)) {
+ while ((c = fgetc(f)) != EOF) {
putchar(c);
}
fclose(f);
@@ -1246,6 +1328,12 @@ dump_extra(Buffer *buf)
#endif
}
+static int
+cmp_anchor_hseq(const void *a, const void *b)
+{
+ return (*((const Anchor **) a))->hseq - (*((const Anchor **) b))->hseq;
+}
+
static void
do_dump(Buffer *buf)
{
@@ -1266,18 +1354,20 @@ do_dump(Buffer *buf)
int i;
saveBuffer(buf, stdout, FALSE);
if (displayLinkNumber && buf->href) {
+ int nanchor = buf->href->nanchor;
printf("\nReferences:\n\n");
- for (i = 0; i < buf->href->nanchor; i++) {
- ParsedURL pu;
- static Str s = NULL;
- if (buf->href->anchors[i].slave)
+ Anchor **in_order = New_N(Anchor *, buf->href->nanchor);
+ for (i = 0; i < nanchor; i++)
+ in_order[i] = buf->href->anchors + i;
+ qsort(in_order, nanchor, sizeof(Anchor *), cmp_anchor_hseq);
+ for (i = 0; i < nanchor; i++) {
+ ParsedURL pu;
+ char *url;
+ if (in_order[i]->slave)
continue;
- parseURL2(buf->href->anchors[i].url, &pu, baseURL(buf));
- s = parsedURL2Str(&pu);
- if (DecodeURL)
- s = Strnew_charp(url_unquote_conv
- (s->ptr, Currentbuf->document_charset));
- printf("[%d] %s\n", buf->href->anchors[i].hseq + 1, s->ptr);
+ parseURL2(in_order[i]->url, &pu, baseURL(buf));
+ url = url_decode2(parsedURL2Str(&pu)->ptr, Currentbuf);
+ printf("[%d] %s\n", in_order[i]->hseq + 1, url);
}
}
}
@@ -1485,7 +1575,7 @@ SigPipe(SIGNAL_ARG)
}
#endif
-/*
+/*
* Command functions: These functions are called with a keystroke.
*/
@@ -1547,7 +1637,7 @@ nscroll(int n, int mode)
}
/* Move page forward */
-DEFUN(pgFore, NEXT_PAGE, "Move to next page")
+DEFUN(pgFore, NEXT_PAGE, "Scroll down one page")
{
if (vi_prec_num)
nscroll(searchKeyNum() * (Currentbuf->LINES - 1), B_NORMAL);
@@ -1557,7 +1647,7 @@ DEFUN(pgFore, NEXT_PAGE, "Move to next page")
}
/* Move page backward */
-DEFUN(pgBack, PREV_PAGE, "Move to previous page")
+DEFUN(pgBack, PREV_PAGE, "Scroll up one page")
{
if (vi_prec_num)
nscroll(-searchKeyNum() * (Currentbuf->LINES - 1), B_NORMAL);
@@ -1566,20 +1656,32 @@ DEFUN(pgBack, PREV_PAGE, "Move to previous page")
* (Currentbuf->LINES - 1)), prec_num ? B_SCROLL : B_NORMAL);
}
+/* Move half page forward */
+DEFUN(hpgFore, NEXT_HALF_PAGE, "Scroll down half a page")
+{
+ nscroll(searchKeyNum() * (Currentbuf->LINES / 2 - 1), B_NORMAL);
+}
+
+/* Move half page backward */
+DEFUN(hpgBack, PREV_HALF_PAGE, "Scroll up half a page")
+{
+ nscroll(-searchKeyNum() * (Currentbuf->LINES / 2 - 1), B_NORMAL);
+}
+
/* 1 line up */
-DEFUN(lup1, UP, "Scroll up one line")
+DEFUN(lup1, UP, "Scroll the screen up one line")
{
nscroll(searchKeyNum(), B_SCROLL);
}
/* 1 line down */
-DEFUN(ldown1, DOWN, "Scroll down one line")
+DEFUN(ldown1, DOWN, "Scroll the screen down one line")
{
nscroll(-searchKeyNum(), B_SCROLL);
}
/* move cursor position to the center of screen */
-DEFUN(ctrCsrV, CENTER_V, "Move to the center column")
+DEFUN(ctrCsrV, CENTER_V, "Center on cursor line")
{
int offsety;
if (Currentbuf->firstLine == NULL)
@@ -1598,7 +1700,7 @@ DEFUN(ctrCsrV, CENTER_V, "Move to the center column")
}
}
-DEFUN(ctrCsrH, CENTER_H, "Move to the center line")
+DEFUN(ctrCsrH, CENTER_H, "Center on cursor column")
{
int offsetx;
if (Currentbuf->firstLine == NULL)
@@ -1612,7 +1714,7 @@ DEFUN(ctrCsrH, CENTER_H, "Move to the center line")
}
/* Redraw screen */
-DEFUN(rdrwSc, REDRAW, "Redraw screen")
+DEFUN(rdrwSc, REDRAW, "Draw the screen anew")
{
clear();
arrangeCursor(Currentbuf);
@@ -1844,19 +1946,23 @@ srch_nxtprv(int reverse)
result = srchcore(SearchString, routine[reverse]);
if (result & SR_FOUND)
clear_mark(Currentbuf->currentLine);
+ else {
+ if (reverse == 0)
+ Currentbuf->pos -= 1;
+ }
displayBuffer(Currentbuf, B_NORMAL);
disp_srchresult(result, (reverse ? "Backward: " : "Forward: "),
SearchString);
}
/* Search next matching */
-DEFUN(srchnxt, SEARCH_NEXT, "Search next regexp")
+DEFUN(srchnxt, SEARCH_NEXT, "Continue search forward")
{
srch_nxtprv(0);
}
/* Search previous matching */
-DEFUN(srchprv, SEARCH_PREV, "Search previous regexp")
+DEFUN(srchprv, SEARCH_PREV, "Continue search backward")
{
srch_nxtprv(1);
}
@@ -1919,7 +2025,7 @@ DEFUN(col1R, RIGHT, "Shift screen one column right")
displayBuffer(Currentbuf, B_NORMAL);
}
-DEFUN(col1L, LEFT, "Shift screen one column")
+DEFUN(col1L, LEFT, "Shift screen one column left")
{
Buffer *buf = Currentbuf;
Line *l = buf->currentLine;
@@ -1960,7 +2066,7 @@ DEFUN(setEnv, SETENV, "Set environment variable")
displayBuffer(Currentbuf, B_NORMAL);
}
-DEFUN(pipeBuf, PIPE_BUF, "Send rendered document to pipe")
+DEFUN(pipeBuf, PIPE_BUF, "Pipe current buffer through a shell command and display output")
{
Buffer *buf;
char *cmd, *tmpf;
@@ -2006,7 +2112,7 @@ DEFUN(pipeBuf, PIPE_BUF, "Send rendered document to pipe")
}
/* Execute shell command and read output ac pipe. */
-DEFUN(pipesh, PIPE_SHELL, "Execute shell command and browse")
+DEFUN(pipesh, PIPE_SHELL, "Execute shell command and display output")
{
Buffer *buf;
char *cmd;
@@ -2037,7 +2143,7 @@ DEFUN(pipesh, PIPE_SHELL, "Execute shell command and browse")
}
/* Execute shell command and load entire output to buffer */
-DEFUN(readsh, READ_SHELL, "Execute shell command and load")
+DEFUN(readsh, READ_SHELL, "Execute shell command and display output")
{
Buffer *buf;
MySignalHandler(*prevtrap) ();
@@ -2074,7 +2180,7 @@ DEFUN(readsh, READ_SHELL, "Execute shell command and load")
}
/* Execute shell command */
-DEFUN(execsh, EXEC_SHELL SHELL, "Execute shell command")
+DEFUN(execsh, EXEC_SHELL SHELL, "Execute shell command and display output")
{
char *cmd;
@@ -2099,7 +2205,7 @@ DEFUN(execsh, EXEC_SHELL SHELL, "Execute shell command")
}
/* Load file */
-DEFUN(ldfile, LOAD, "Load local file")
+DEFUN(ldfile, LOAD, "Open local file in a new buffer")
{
char *fn;
@@ -2118,7 +2224,7 @@ DEFUN(ldfile, LOAD, "Load local file")
}
/* Load help file */
-DEFUN(ldhelp, HELP, "View help")
+DEFUN(ldhelp, HELP, "Show help panel")
{
#ifdef USE_HELP_CGI
char *lang;
@@ -2167,13 +2273,12 @@ _movL(int n)
displayBuffer(Currentbuf, B_NORMAL);
}
-DEFUN(movL, MOVE_LEFT,
- "Move cursor left (a half screen shift at the left edge)")
+DEFUN(movL, MOVE_LEFT, "Cursor left")
{
_movL(Currentbuf->COLS / 2);
}
-DEFUN(movL1, MOVE_LEFT1, "Move cursor left (1 columns shift at the left edge)")
+DEFUN(movL1, MOVE_LEFT1, "Cursor left. With edge touched, slide")
{
_movL(1);
}
@@ -2190,14 +2295,12 @@ _movD(int n)
displayBuffer(Currentbuf, B_NORMAL);
}
-DEFUN(movD, MOVE_DOWN,
- "Move cursor down (a half screen scroll at the end of screen)")
+DEFUN(movD, MOVE_DOWN, "Cursor down")
{
_movD((Currentbuf->LINES + 1) / 2);
}
-DEFUN(movD1, MOVE_DOWN1,
- "Move cursor down (1 line scroll at the end of screen)")
+DEFUN(movD1, MOVE_DOWN1, "Cursor down. With edge touched, slide")
{
_movD(1);
}
@@ -2214,13 +2317,12 @@ _movU(int n)
displayBuffer(Currentbuf, B_NORMAL);
}
-DEFUN(movU, MOVE_UP,
- "Move cursor up (a half screen scroll at the top of screen)")
+DEFUN(movU, MOVE_UP, "Cursor up")
{
_movU((Currentbuf->LINES + 1) / 2);
}
-DEFUN(movU1, MOVE_UP1, "Move cursor up (1 line scrol at the top of screen)")
+DEFUN(movU1, MOVE_UP1, "Cursor up. With edge touched, slide")
{
_movU(1);
}
@@ -2237,22 +2339,20 @@ _movR(int n)
displayBuffer(Currentbuf, B_NORMAL);
}
-DEFUN(movR, MOVE_RIGHT,
- "Move cursor right (a half screen shift at the right edge)")
+DEFUN(movR, MOVE_RIGHT, "Cursor right")
{
_movR(Currentbuf->COLS / 2);
}
-DEFUN(movR1, MOVE_RIGHT1,
- "Move cursor right (1 columns shift at the right edge)")
+DEFUN(movR1, MOVE_RIGHT1, "Cursor right. With edge touched, slide")
{
_movR(1);
}
/* movLW, movRW */
-/*
+/*
* From: Takashi Nishimoto <g96p0935@mse.waseda.ac.jp> Date: Mon, 14 Jun
- * 1999 09:29:56 +0900
+ * 1999 09:29:56 +0900
*/
#if defined(USE_M17N) && defined(USE_UNICODE)
#define nextChar(s, l) do { (s)++; } while ((s) < (l)->len && (l)->propBuf[s] & PC_WCHAR2)
@@ -2261,7 +2361,7 @@ DEFUN(movR1, MOVE_RIGHT1,
static wc_uint32
getChar(char *p)
{
- return wc_any_to_ucs(wtf_parse1(&p));
+ return wc_any_to_ucs(wtf_parse1((wc_uchar **)&p));
}
static int
@@ -2269,7 +2369,7 @@ is_wordchar(wc_uint32 c)
{
return wc_is_ucs_alnum(c);
}
-#else
+#else
#define nextChar(s, l) (s)++
#define prevChar(s, l) (s)--
#define getChar(p) ((int)*(p))
@@ -2296,7 +2396,7 @@ prev_nonnull_line(Line *line)
return 0;
}
-DEFUN(movLW, PREV_WORD, "Move to previous word")
+DEFUN(movLW, PREV_WORD, "Move to the previous word")
{
char *lb;
Line *pline, *l;
@@ -2364,7 +2464,7 @@ next_nonnull_line(Line *line)
return 0;
}
-DEFUN(movRW, NEXT_WORD, "Move to next word")
+DEFUN(movRW, NEXT_WORD, "Move to the next word")
{
char *lb;
Line *pline, *l;
@@ -2442,19 +2542,19 @@ _quitfm(int confirm)
}
/* Quit */
-DEFUN(quitfm, ABORT EXIT, "Quit w3m without confirmation")
+DEFUN(quitfm, ABORT EXIT, "Quit at once")
{
_quitfm(FALSE);
}
/* Question and Quit */
-DEFUN(qquitfm, QUIT, "Quit w3m")
+DEFUN(qquitfm, QUIT, "Quit with confirmation request")
{
_quitfm(confirm_on_quit);
}
/* Select buffer */
-DEFUN(selBuf, SELECT, "Go to buffer selection panel")
+DEFUN(selBuf, SELECT, "Display buffer-stack panel")
{
Buffer *buf;
int ok;
@@ -2502,7 +2602,7 @@ DEFUN(selBuf, SELECT, "Go to buffer selection panel")
}
/* Suspend (on BSD), or run interactive shell (on SysV) */
-DEFUN(susp, INTERRUPT SUSPEND, "Stop loading document")
+DEFUN(susp, INTERRUPT SUSPEND, "Suspend w3m to background")
{
#ifndef SIGSTOP
char *shell;
@@ -2517,7 +2617,17 @@ DEFUN(susp, INTERRUPT SUSPEND, "Stop loading document")
shell = "/bin/sh";
system(shell);
#else /* SIGSTOP */
+#ifdef SIGTSTP
+ signal(SIGTSTP, SIG_DFL); /* just in case */
+ /*
+ * Note: If susp() was called from SIGTSTP handler,
+ * unblocking SIGTSTP would be required here.
+ * Currently not.
+ */
+ kill(0, SIGTSTP); /* stop whole job, not a single process */
+#else
kill((pid_t) 0, SIGSTOP);
+#endif
#endif /* SIGSTOP */
fmInit();
displayBuffer(Currentbuf, B_FORCE_REDRAW);
@@ -2550,7 +2660,7 @@ _goLine(char *l)
displayBuffer(Currentbuf, B_FORCE_REDRAW);
}
-DEFUN(goLine, GOTO_LINE, "Go to specified line")
+DEFUN(goLine, GOTO_LINE, "Go to the specified line")
{
char *str = searchKeyData();
@@ -2575,7 +2685,7 @@ DEFUN(goLineL, END, "Go to the last line")
}
/* Go to the beginning of the line */
-DEFUN(linbeg, LINE_BEGIN, "Go to the beginning of line")
+DEFUN(linbeg, LINE_BEGIN, "Go to the beginning of the line")
{
if (Currentbuf->firstLine == NULL)
return;
@@ -2587,7 +2697,7 @@ DEFUN(linbeg, LINE_BEGIN, "Go to the beginning of line")
}
/* Go to the bottom of the line */
-DEFUN(linend, LINE_END, "Go to the end of line")
+DEFUN(linend, LINE_END, "Go to the end of the line")
{
if (Currentbuf->firstLine == NULL)
return;
@@ -2616,7 +2726,7 @@ cur_real_linenumber(Buffer *buf)
}
/* Run editor on the current buffer */
-DEFUN(editBf, EDIT, "Edit current document")
+DEFUN(editBf, EDIT, "Edit local source")
{
char *fn = Currentbuf->filename;
Str cmd;
@@ -2643,7 +2753,7 @@ DEFUN(editBf, EDIT, "Edit current document")
}
/* Run editor on the current screen */
-DEFUN(editScr, EDIT_SCREEN, "Edit currently rendered document")
+DEFUN(editScr, EDIT_SCREEN, "Edit rendered copy of document")
{
char *tmpf;
FILE *f;
@@ -2681,7 +2791,7 @@ DEFUN(_mark, MARK, "Set/unset mark")
}
/* Go to next mark */
-DEFUN(nextMk, NEXT_MARK, "Move to next word")
+DEFUN(nextMk, NEXT_MARK, "Go to the next mark")
{
Line *l;
int i;
@@ -2714,7 +2824,7 @@ DEFUN(nextMk, NEXT_MARK, "Move to next word")
}
/* Go to previous mark */
-DEFUN(prevMk, PREV_MARK, "Move to previous mark")
+DEFUN(prevMk, PREV_MARK, "Go to the previous mark")
{
Line *l;
int i;
@@ -2749,7 +2859,7 @@ DEFUN(prevMk, PREV_MARK, "Move to previous mark")
}
/* Mark place to which the regular expression matches */
-DEFUN(reMark, REG_MARK, "Set mark using regexp")
+DEFUN(reMark, REG_MARK, "Mark all occurences of a pattern")
{
Line *l;
char *str;
@@ -2804,12 +2914,15 @@ loadLink(char *url, char *target, char *referer, FormList *request)
union frameset_element *f_element = NULL;
int flag = 0;
ParsedURL *base, pu;
+ const int *no_referer_ptr;
message(Sprintf("loading %s", url)->ptr, 0, 0);
refresh();
+ no_referer_ptr = query_SCONF_NO_REFERER_FROM(&Currentbuf->currentURL);
base = baseURL(Currentbuf);
- if (base == NULL ||
+ if ((no_referer_ptr && *no_referer_ptr) ||
+ base == NULL ||
base->scheme == SCM_LOCAL || base->scheme == SCM_LOCAL_CGI)
referer = NO_REFERER;
if (referer == NULL)
@@ -2830,7 +2943,7 @@ loadLink(char *url, char *target, char *referer, FormList *request)
if (!on_target) /* open link as an indivisual page */
return loadNormalBuf(buf, TRUE);
- if (do_download) /* download (thus no need to render frame) */
+ if (do_download) /* download (thus no need to render frames) */
return loadNormalBuf(buf, FALSE);
if (target == NULL || /* no target specified (that means this page is not a frame page) */
@@ -2940,7 +3053,7 @@ handleMailto(char *url)
return 1;
}
#endif
-
+
/* invoke external mailer */
if (MailtoOptions == MAILTO_OPTIONS_USE_MAILTO_URL) {
to = Strnew_charp(html_unquote(url));
@@ -2959,9 +3072,8 @@ handleMailto(char *url)
}
/* follow HREF link */
-DEFUN(followA, GOTO_LINK, "Go to current link")
+DEFUN(followA, GOTO_LINK, "Follow current hyperlink in a new buffer")
{
- Line *l;
Anchor *a;
ParsedURL u;
#ifdef USE_IMAGE
@@ -2971,7 +3083,6 @@ DEFUN(followA, GOTO_LINK, "Go to current link")
if (Currentbuf->firstLine == NULL)
return;
- l = Currentbuf->currentLine;
#ifdef USE_IMAGE
a = retrieveCurrentImg(Currentbuf);
@@ -3051,15 +3162,13 @@ bufferA(void)
}
/* view inline image */
-DEFUN(followI, VIEW_IMAGE, "View image")
+DEFUN(followI, VIEW_IMAGE, "Display image in viewer")
{
- Line *l;
Anchor *a;
Buffer *buf;
if (Currentbuf->firstLine == NULL)
return;
- l = Currentbuf->currentLine;
a = retrieveCurrentImg(Currentbuf);
if (a == NULL)
@@ -3309,7 +3418,6 @@ followForm(void)
static void
_followForm(int submit)
{
- Line *l;
Anchor *a, *a2;
char *p;
FormItemList *fi, *f2;
@@ -3318,7 +3426,6 @@ _followForm(int submit)
if (Currentbuf->firstLine == NULL)
return;
- l = Currentbuf->currentLine;
a = retrieveCurrentForm(Currentbuf);
if (a == NULL)
@@ -3423,7 +3530,6 @@ _followForm(int submit)
case FORM_INPUT_BUTTON:
do_submit:
tmp = Strnew();
- tmp2 = Strnew();
multipart = (fi->parent->method == FORM_METHOD_POST &&
fi->parent->enctype == FORM_ENCTYPE_MULTIPART);
query_from_followform(&tmp, fi, multipart);
@@ -3501,7 +3607,7 @@ _followForm(int submit)
}
/* go to the top anchor */
-DEFUN(topA, LINK_BEGIN, "Go to the first link")
+DEFUN(topA, LINK_BEGIN, "Move to the first hyperlink")
{
HmarkerList *hl = Currentbuf->hmarklist;
BufferPoint *po;
@@ -3534,7 +3640,7 @@ DEFUN(topA, LINK_BEGIN, "Go to the first link")
}
/* go to the last anchor */
-DEFUN(lastA, LINK_END, "Go to the last link")
+DEFUN(lastA, LINK_END, "Move to the last hyperlink")
{
HmarkerList *hl = Currentbuf->hmarklist;
BufferPoint *po;
@@ -3568,26 +3674,53 @@ DEFUN(lastA, LINK_END, "Go to the last link")
displayBuffer(Currentbuf, B_NORMAL);
}
+/* go to the nth anchor */
+DEFUN(nthA, LINK_N, "Go to the nth link")
+{
+ HmarkerList *hl = Currentbuf->hmarklist;
+ BufferPoint *po;
+ Anchor *an;
+
+ int n = searchKeyNum();
+ if (n < 0 || n > hl->nmark) return;
+
+ if (Currentbuf->firstLine == NULL)
+ return;
+ if (!hl || hl->nmark == 0)
+ return;
+
+ po = hl->marks + n-1;
+ an = retrieveAnchor(Currentbuf->href, po->line, po->pos);
+ if (an == NULL)
+ an = retrieveAnchor(Currentbuf->formitem, po->line, po->pos);
+ if (an == NULL) return;
+
+ gotoLine(Currentbuf, po->line);
+ Currentbuf->pos = po->pos;
+ arrangeCursor(Currentbuf);
+ displayBuffer(Currentbuf, B_NORMAL);
+}
+
/* go to the next anchor */
-DEFUN(nextA, NEXT_LINK, "Move to next link")
+DEFUN(nextA, NEXT_LINK, "Move to the next hyperlink")
{
_nextA(FALSE);
}
/* go to the previous anchor */
-DEFUN(prevA, PREV_LINK, "Move to previous link")
+DEFUN(prevA, PREV_LINK, "Move to the previous hyperlink")
{
_prevA(FALSE);
}
/* go to the next visited anchor */
-DEFUN(nextVA, NEXT_VISITED, "Move to next visited link")
+DEFUN(nextVA, NEXT_VISITED, "Move to the next visited hyperlink")
{
_nextA(TRUE);
}
/* go to the previous visited anchor */
-DEFUN(prevVA, PREV_VISITED, "Move to previous visited link")
+DEFUN(prevVA, PREV_VISITED, "Move to the previous visited hyperlink")
{
_prevA(TRUE);
}
@@ -3863,43 +3996,43 @@ nextY(int d)
}
/* go to the next left anchor */
-DEFUN(nextL, NEXT_LEFT, "Move to next left link")
+DEFUN(nextL, NEXT_LEFT, "Move left to the next hyperlink")
{
nextX(-1, 0);
}
/* go to the next left-up anchor */
-DEFUN(nextLU, NEXT_LEFT_UP, "Move to next left (or upward) link")
+DEFUN(nextLU, NEXT_LEFT_UP, "Move left or upward to the next hyperlink")
{
nextX(-1, -1);
}
/* go to the next right anchor */
-DEFUN(nextR, NEXT_RIGHT, "Move to next right link")
+DEFUN(nextR, NEXT_RIGHT, "Move right to the next hyperlink")
{
nextX(1, 0);
}
/* go to the next right-down anchor */
-DEFUN(nextRD, NEXT_RIGHT_DOWN, "Move to next right (or downward) link")
+DEFUN(nextRD, NEXT_RIGHT_DOWN, "Move right or downward to the next hyperlink")
{
nextX(1, 1);
}
/* go to the next downward anchor */
-DEFUN(nextD, NEXT_DOWN, "Move to next downward link")
+DEFUN(nextD, NEXT_DOWN, "Move downward to the next hyperlink")
{
nextY(1);
}
/* go to the next upward anchor */
-DEFUN(nextU, NEXT_UP, "Move to next upward link")
+DEFUN(nextU, NEXT_UP, "Move upward to the next hyperlink")
{
nextY(-1);
}
/* go to the next bufferr */
-DEFUN(nextBf, NEXT, "Move to next buffer")
+DEFUN(nextBf, NEXT, "Switch to the next buffer")
{
Buffer *buf;
int i;
@@ -3917,7 +4050,7 @@ DEFUN(nextBf, NEXT, "Move to next buffer")
}
/* go to the previous bufferr */
-DEFUN(prevBf, PREV, "Move to previous buffer")
+DEFUN(prevBf, PREV, "Switch to the previous buffer")
{
Buffer *buf;
int i;
@@ -3959,7 +4092,7 @@ checkBackBuffer(Buffer *buf)
}
/* delete current buffer and back to the previous buffer */
-DEFUN(backBf, BACK, "Back to previous buffer")
+DEFUN(backBf, BACK, "Close current buffer and return to the one below in stack")
{
Buffer *buf = Currentbuf->linkBuffer[LB_N_FRAME];
@@ -3970,7 +4103,7 @@ DEFUN(backBf, BACK, "Back to previous buffer")
}
else
/* FIXME: gettextize? */
- disp_message("Can't back...", TRUE);
+ disp_message("Can't go back...", TRUE);
return;
}
@@ -4008,8 +4141,7 @@ DEFUN(backBf, BACK, "Back to previous buffer")
displayBuffer(Currentbuf, B_FORCE_REDRAW);
}
-DEFUN(deletePrevBuf, DELETE_PREVBUF,
- "Delete previous buffer (mainly for local-CGI)")
+DEFUN(deletePrevBuf, DELETE_PREVBUF, "Delete previous buffer (mainly for local CGI-scripts)")
{
Buffer *buf = Currentbuf->nextBuffer;
if (buf)
@@ -4055,6 +4187,7 @@ goURL0(char *prompt, int relative)
char *url, *referer;
ParsedURL p_url, *current;
Buffer *cur_buf = Currentbuf;
+ const int *no_referer_ptr;
url = searchKeyData();
if (url == NULL) {
@@ -4064,11 +4197,8 @@ goURL0(char *prompt, int relative)
current = baseURL(Currentbuf);
if (current) {
char *c_url = parsedURL2Str(current)->ptr;
- if (DefaultURLString == DEFAULT_URL_CURRENT) {
- url = c_url;
- if (DecodeURL)
- url = url_unquote_conv(url, 0);
- }
+ if (DefaultURLString == DEFAULT_URL_CURRENT)
+ url = url_decode2(c_url, NULL);
else
pushHist(hist, c_url);
}
@@ -4077,11 +4207,8 @@ goURL0(char *prompt, int relative)
char *a_url;
parseURL2(a->url, &p_url, current);
a_url = parsedURL2Str(&p_url)->ptr;
- if (DefaultURLString == DEFAULT_URL_LINK) {
- url = a_url;
- if (DecodeURL)
- url = url_unquote_conv(url, Currentbuf->document_charset);
- }
+ if (DefaultURLString == DEFAULT_URL_LINK)
+ url = url_decode2(a_url, Currentbuf);
else
pushHist(hist, a_url);
}
@@ -4089,15 +4216,22 @@ goURL0(char *prompt, int relative)
if (url != NULL)
SKIP_BLANKS(url);
}
-#ifdef USE_M17N
- if (url != NULL) {
- if ((relative || *url == '#') && Currentbuf->document_charset)
- url = wc_conv_strict(url, InnerCharset,
- Currentbuf->document_charset)->ptr;
+ if (relative) {
+ no_referer_ptr = query_SCONF_NO_REFERER_FROM(&Currentbuf->currentURL);
+ current = baseURL(Currentbuf);
+ if ((no_referer_ptr && *no_referer_ptr) ||
+ current == NULL ||
+ current->scheme == SCM_LOCAL || current->scheme == SCM_LOCAL_CGI)
+ referer = NO_REFERER;
else
- url = conv_to_system(url);
+ referer = parsedURL2Str(&Currentbuf->currentURL)->ptr;
+ url = url_encode(url, current, Currentbuf->document_charset);
+ }
+ else {
+ current = NULL;
+ referer = NULL;
+ url = url_encode(url, NULL, 0);
}
-#endif
if (url == NULL || *url == '\0') {
displayBuffer(Currentbuf, B_FORCE_REDRAW);
return;
@@ -4106,14 +4240,6 @@ goURL0(char *prompt, int relative)
gotoLabel(url + 1);
return;
}
- if (relative) {
- current = baseURL(Currentbuf);
- referer = parsedURL2Str(&Currentbuf->currentURL)->ptr;
- }
- else {
- current = NULL;
- referer = NULL;
- }
parseURL2(url, &p_url, current);
pushHashHist(URLHist, parsedURL2Str(&p_url)->ptr);
cmd_loadURL(url, current, referer, NULL);
@@ -4121,12 +4247,29 @@ goURL0(char *prompt, int relative)
pushHashHist(URLHist, parsedURL2Str(&Currentbuf->currentURL)->ptr);
}
-DEFUN(goURL, GOTO, "Go to URL")
+DEFUN(goURL, GOTO, "Open specified document in a new buffer")
{
goURL0("Goto URL: ", FALSE);
}
-DEFUN(gorURL, GOTO_RELATIVE, "Go to relative URL")
+DEFUN(goHome, GOTO_HOME, "Open home page in a new buffer")
+{
+ char *url;
+ if ((url = getenv("HTTP_HOME")) != NULL ||
+ (url = getenv("WWW_HOME")) != NULL) {
+ ParsedURL p_url;
+ Buffer *cur_buf = Currentbuf;
+ SKIP_BLANKS(url);
+ url = url_encode(url, NULL, 0);
+ parseURL2(url, &p_url, NULL);
+ pushHashHist(URLHist, parsedURL2Str(&p_url)->ptr);
+ cmd_loadURL(url, NULL, NULL, NULL);
+ if (Currentbuf != cur_buf) /* success */
+ pushHashHist(URLHist, parsedURL2Str(&Currentbuf->currentURL)->ptr);
+ }
+}
+
+DEFUN(gorURL, GOTO_RELATIVE, "Go to relative address")
{
goURL0("Goto relative URL: ", TRUE);
}
@@ -4151,14 +4294,14 @@ cmd_loadBuffer(Buffer *buf, int prop, int linkid)
}
/* load bookmark */
-DEFUN(ldBmark, BOOKMARK VIEW_BOOKMARK, "Read bookmark")
+DEFUN(ldBmark, BOOKMARK VIEW_BOOKMARK, "View bookmarks")
{
cmd_loadURL(BookmarkFile, NULL, NO_REFERER, NULL);
}
/* Add current to bookmark */
-DEFUN(adBmark, ADD_BOOKMARK, "Add current page to bookmark")
+DEFUN(adBmark, ADD_BOOKMARK, "Add current page to bookmarks")
{
Str tmp;
FormList *request;
@@ -4188,7 +4331,7 @@ DEFUN(adBmark, ADD_BOOKMARK, "Add current page to bookmark")
}
/* option setting */
-DEFUN(ldOpt, OPTIONS, "Option setting panel")
+DEFUN(ldOpt, OPTIONS, "Display options setting panel")
{
cmd_loadBuffer(load_option_panel(), BP_NO_URL, LB_NOLINK);
}
@@ -4223,7 +4366,7 @@ DEFUN(msgs, MSGS, "Display error messages")
}
/* page info */
-DEFUN(pginfo, INFO, "View info of current document")
+DEFUN(pginfo, INFO, "Display information about the current document")
{
Buffer *buf;
@@ -4291,7 +4434,7 @@ follow_map(struct parsed_tagarg *arg)
#ifdef USE_MENU
/* link menu */
-DEFUN(linkMn, LINK_MENU, "Popup link element menu")
+DEFUN(linkMn, LINK_MENU, "Pop up link element menu")
{
LinkList *l = link_menu(Currentbuf);
ParsedURL p_url;
@@ -4329,26 +4472,25 @@ anchorMn(Anchor *(*menu_func) (Buffer *), int go)
}
/* accesskey */
-DEFUN(accessKey, ACCESSKEY, "Popup acceskey menu")
+DEFUN(accessKey, ACCESSKEY, "Pop up accesskey menu")
{
anchorMn(accesskey_menu, TRUE);
}
/* list menu */
-DEFUN(listMn, LIST_MENU, "Popup link list menu and go to selected link")
+DEFUN(listMn, LIST_MENU, "Pop up menu for hyperlinks to browse to")
{
anchorMn(list_menu, TRUE);
}
-DEFUN(movlistMn, MOVE_LIST_MENU,
- "Popup link list menu and move cursor to selected link")
+DEFUN(movlistMn, MOVE_LIST_MENU, "Pop up menu to navigate between hyperlinks")
{
anchorMn(list_menu, FALSE);
}
#endif
/* link,anchor,image list */
-DEFUN(linkLst, LIST, "Show all links and images")
+DEFUN(linkLst, LIST, "Show all URLs referenced")
{
Buffer *buf;
@@ -4375,14 +4517,14 @@ DEFUN(cooLst, COOKIE, "View cookie list")
#ifdef USE_HISTORY
/* History page */
-DEFUN(ldHist, HISTORY, "View history of URL")
+DEFUN(ldHist, HISTORY, "Show browsing history")
{
cmd_loadBuffer(historyBuffer(URLHist), BP_NO_URL, LB_NOLINK);
}
#endif /* USE_HISTORY */
/* download HREF link */
-DEFUN(svA, SAVE_LINK, "Save link to file")
+DEFUN(svA, SAVE_LINK, "Save hyperlink target")
{
CurrentKeyData = NULL; /* not allowed in w3m-control: */
do_download = TRUE;
@@ -4391,7 +4533,7 @@ DEFUN(svA, SAVE_LINK, "Save link to file")
}
/* download IMG link */
-DEFUN(svI, SAVE_IMAGE, "Save image to file")
+DEFUN(svI, SAVE_IMAGE, "Save inline image")
{
CurrentKeyData = NULL; /* not allowed in w3m-control: */
do_download = TRUE;
@@ -4400,7 +4542,7 @@ DEFUN(svI, SAVE_IMAGE, "Save image to file")
}
/* save buffer */
-DEFUN(svBuf, PRINT SAVE_SCREEN, "Save rendered document to file")
+DEFUN(svBuf, PRINT SAVE_SCREEN, "Save rendered document")
{
char *qfile = NULL, *file;
FILE *f;
@@ -4449,7 +4591,7 @@ DEFUN(svBuf, PRINT SAVE_SCREEN, "Save rendered document to file")
}
/* save source */
-DEFUN(svSrc, DOWNLOAD SAVE, "Save document source to file")
+DEFUN(svSrc, DOWNLOAD SAVE, "Save document source")
{
char *file;
@@ -4510,8 +4652,7 @@ _peekURL(int only_img)
s = parsedURL2Str(&pu);
}
if (DecodeURL)
- s = Strnew_charp(url_unquote_conv
- (s->ptr, Currentbuf->document_charset));
+ s = Strnew_charp(url_decode2(s->ptr, Currentbuf));
#ifdef USE_M17N
s = checkType(s, &pp, NULL);
p = NewAtom_N(Lineprop, s->length);
@@ -4529,13 +4670,13 @@ _peekURL(int only_img)
}
/* peek URL */
-DEFUN(peekURL, PEEK_LINK, "Peek link URL")
+DEFUN(peekURL, PEEK_LINK, "Show target address")
{
_peekURL(0);
}
/* peek URL of image */
-DEFUN(peekIMG, PEEK_IMG, "Peek image URL")
+DEFUN(peekIMG, PEEK_IMG, "Show image address")
{
_peekURL(1);
}
@@ -4549,7 +4690,7 @@ currentURL(void)
return parsedURL2Str(&Currentbuf->currentURL);
}
-DEFUN(curURL, PEEK, "Peek current URL")
+DEFUN(curURL, PEEK, "Show current address")
{
static Str s = NULL;
#ifdef USE_M17N
@@ -4570,7 +4711,7 @@ DEFUN(curURL, PEEK, "Peek current URL")
offset = 0;
s = currentURL();
if (DecodeURL)
- s = Strnew_charp(url_unquote_conv(s->ptr, 0));
+ s = Strnew_charp(url_decode2(s->ptr, NULL));
#ifdef USE_M17N
s = checkType(s, &pp, NULL);
p = NewAtom_N(Lineprop, s->length);
@@ -4588,7 +4729,7 @@ DEFUN(curURL, PEEK, "Peek current URL")
}
/* view HTML source */
-DEFUN(vwSrc, SOURCE VIEW, "View HTML source")
+DEFUN(vwSrc, SOURCE VIEW, "Toggle between HTML shown or processed")
{
Buffer *buf;
@@ -4679,7 +4820,7 @@ DEFUN(vwSrc, SOURCE VIEW, "View HTML source")
}
/* reload */
-DEFUN(reload, RELOAD, "Reload buffer")
+DEFUN(reload, RELOAD, "Load current document anew")
{
Buffer *buf, *fbuf = NULL, sbuf;
#ifdef USE_M17N
@@ -4804,7 +4945,7 @@ DEFUN(reload, RELOAD, "Reload buffer")
}
/* reshape */
-DEFUN(reshape, RESHAPE, "Re-render buffer")
+DEFUN(reshape, RESHAPE, "Re-render document")
{
Currentbuf->need_reshape = TRUE;
reshapeBuffer(Currentbuf);
@@ -4846,7 +4987,7 @@ change_charset(struct parsed_tagarg *arg)
_docCSet(charset);
}
-DEFUN(docCSet, CHARSET, "Change the current document charset")
+DEFUN(docCSet, CHARSET, "Change the character encoding for the current document")
{
char *cs;
wc_ces charset;
@@ -4864,7 +5005,7 @@ DEFUN(docCSet, CHARSET, "Change the current document charset")
_docCSet(charset);
}
-DEFUN(defCSet, DEFAULT_CHARSET, "Change the default document charset")
+DEFUN(defCSet, DEFAULT_CHARSET, "Change the default character encoding")
{
char *cs;
wc_ces charset;
@@ -4915,13 +5056,13 @@ chkURLBuffer(Buffer *buf)
buf->check_url |= CHK_URL;
}
-DEFUN(chkURL, MARK_URL, "Mark URL-like strings as anchors")
+DEFUN(chkURL, MARK_URL, "Turn URL-like strings into hyperlinks")
{
chkURLBuffer(Currentbuf);
displayBuffer(Currentbuf, B_FORCE_REDRAW);
}
-DEFUN(chkWORD, MARK_WORD, "Mark current word as anchor")
+DEFUN(chkWORD, MARK_WORD, "Turn current word into hyperlink")
{
char *p;
int spos, epos;
@@ -4948,15 +5089,15 @@ chkNMIDBuffer(Buffer *buf)
buf->check_url |= CHK_NMID;
}
-DEFUN(chkNMID, MARK_MID, "Mark Message-ID-like strings as anchors")
+DEFUN(chkNMID, MARK_MID, "Turn Message-ID-like strings into hyperlinks")
{
chkNMIDBuffer(Currentbuf);
displayBuffer(Currentbuf, B_FORCE_REDRAW);
}
#endif /* USE_NNTP */
-/* render frame */
-DEFUN(rFrame, FRAME, "Render frame")
+/* render frames */
+DEFUN(rFrame, FRAME, "Toggle rendering HTML frames")
{
Buffer *buf;
@@ -5010,6 +5151,24 @@ invoke_browser(char *url)
case 3:
browser = ExtBrowser3;
break;
+ case 4:
+ browser = ExtBrowser4;
+ break;
+ case 5:
+ browser = ExtBrowser5;
+ break;
+ case 6:
+ browser = ExtBrowser6;
+ break;
+ case 7:
+ browser = ExtBrowser7;
+ break;
+ case 8:
+ browser = ExtBrowser8;
+ break;
+ case 9:
+ browser = ExtBrowser9;
+ break;
}
if (browser == NULL || *browser == '\0') {
browser = inputStr("Browse command: ", NULL);
@@ -5038,7 +5197,7 @@ invoke_browser(char *url)
displayBuffer(Currentbuf, B_FORCE_REDRAW);
}
-DEFUN(extbrz, EXTERN, "Execute external browser")
+DEFUN(extbrz, EXTERN, "Display using an external browser")
{
if (Currentbuf->bufferprop & BP_INTERNAL) {
/* FIXME: gettextize? */
@@ -5055,7 +5214,7 @@ DEFUN(extbrz, EXTERN, "Execute external browser")
invoke_browser(parsedURL2Str(&Currentbuf->currentURL)->ptr);
}
-DEFUN(linkbrz, EXTERN_LINK, "View current link using external browser")
+DEFUN(linkbrz, EXTERN_LINK, "Display target using an external browser")
{
Anchor *a;
ParsedURL pu;
@@ -5070,7 +5229,7 @@ DEFUN(linkbrz, EXTERN_LINK, "View current link using external browser")
}
/* show current line number and number of lines in the entire document */
-DEFUN(curlno, LINE_INFO, "Show current line number")
+DEFUN(curlno, LINE_INFO, "Display current position in document")
{
Line *l = Currentbuf->currentLine;
Str tmp;
@@ -5362,7 +5521,7 @@ process_mouse(int btn, int x, int y)
}
}
-DEFUN(msToggle, MOUSE_TOGGLE, "Toggle activity of mouse")
+DEFUN(msToggle, MOUSE_TOGGLE, "Toggle mouse support")
{
if (use_mouse) {
use_mouse = FALSE;
@@ -5398,6 +5557,60 @@ DEFUN(mouse, MOUSE, "mouse operation")
process_mouse(btn, x, y);
}
+DEFUN(sgrmouse, SGRMOUSE, "SGR 1006 mouse operation")
+{
+ int btn = 0, x = 0, y = 0;
+ unsigned char c;
+
+ do {
+ c = getch();
+ if (IS_DIGIT(c))
+ btn = btn * 10 + c - '0';
+ else if (c == ';')
+ break;
+ else
+ return;
+ } while (1);
+
+#if defined(__CYGWIN__) && CYGWIN_VERSION_DLL_MAJOR < 1005
+ if (cygwin_mouse_btn_swapped) {
+ if (btn == MOUSE_BTN2_DOWN)
+ btn = MOUSE_BTN3_DOWN;
+ else if (btn == MOUSE_BTN3_DOWN)
+ btn = MOUSE_BTN2_DOWN;
+ };
+#endif
+
+ do {
+ c = getch();
+ if (IS_DIGIT(c))
+ x = x * 10 + c - '0';
+ else if (c == ';')
+ break;
+ else
+ return;
+ } while (1);
+ if (x>0) x--;
+
+ do {
+ c = getch();
+ if (IS_DIGIT(c))
+ y = y * 10 + c - '0';
+ else if (c == 'M')
+ break;
+ else if (c == 'm') {
+ btn |= 3;
+ break;
+ } else
+ return;
+ } while (1);
+ if (y>0) y--;
+
+ if (x < 0 || x >= COLS || y < 0 || y > LASTLINE)
+ return;
+ process_mouse(btn, x, y);
+}
+
#ifdef USE_GPM
int
gpm_process_mouse(Gpm_Event * event, void *data)
@@ -5451,7 +5664,7 @@ sysm_process_mouse(int x, int y, int nbs, int obs)
}
#endif /* USE_SYSMOUSE */
-DEFUN(movMs, MOVE_MOUSE, "Move cursor to mouse cursor (for mouse action)")
+DEFUN(movMs, MOVE_MOUSE, "Move cursor to mouse pointer")
{
if (!mouse_action.in_action)
return;
@@ -5473,7 +5686,7 @@ DEFUN(movMs, MOVE_MOUSE, "Move cursor to mouse cursor (for mouse action)")
#define FRAME_WIDTH 1
#endif
-DEFUN(menuMs, MENU_MOUSE, "Popup menu at mouse cursor (for mouse action)")
+DEFUN(menuMs, MENU_MOUSE, "Pop up menu at mouse pointer")
{
if (!mouse_action.in_action)
return;
@@ -5490,7 +5703,7 @@ DEFUN(menuMs, MENU_MOUSE, "Popup menu at mouse cursor (for mouse action)")
}
#endif
-DEFUN(tabMs, TAB_MOUSE, "Move to tab on mouse cursor (for mouse action)")
+DEFUN(tabMs, TAB_MOUSE, "Select tab by mouse action")
{
TabBuffer *tab;
@@ -5503,8 +5716,7 @@ DEFUN(tabMs, TAB_MOUSE, "Move to tab on mouse cursor (for mouse action)")
displayBuffer(Currentbuf, B_FORCE_REDRAW);
}
-DEFUN(closeTMs, CLOSE_TAB_MOUSE,
- "Close tab on mouse cursor (for mouse action)")
+DEFUN(closeTMs, CLOSE_TAB_MOUSE, "Close tab at mouse pointer")
{
TabBuffer *tab;
@@ -5518,12 +5730,12 @@ DEFUN(closeTMs, CLOSE_TAB_MOUSE,
}
#endif /* USE_MOUSE */
-DEFUN(dispVer, VERSION, "Display version of w3m")
+DEFUN(dispVer, VERSION, "Display the version of w3m")
{
disp_message(Sprintf("w3m version %s", w3m_version)->ptr, TRUE);
}
-DEFUN(wrapToggle, WRAP_TOGGLE, "Toggle wrap search mode")
+DEFUN(wrapToggle, WRAP_TOGGLE, "Toggle wrapping mode in searches")
{
if (WrapSearch) {
WrapSearch = FALSE;
@@ -5604,7 +5816,7 @@ execdict(char *word)
disp_message("Execution failed", TRUE);
return;
}
- else {
+ else if (buf != NO_BUFFER) {
buf->filename = w;
buf->buffername = Sprintf("%s %s", DICTBUFFERNAME, word)->ptr;
if (buf->type == NULL)
@@ -5671,7 +5883,7 @@ set_buffer_environ(Buffer *buf)
set_environ("W3M_CURRENT_FORM", form2str((FormItemList *)a->url));
else
set_environ("W3M_CURRENT_FORM", "");
- set_environ("W3M_CURRENT_LINE", Sprintf("%d",
+ set_environ("W3M_CURRENT_LINE", Sprintf("%ld",
l->real_linenumber)->ptr);
set_environ("W3M_CURRENT_COLUMN", Sprintf("%d",
buf->currentColumn +
@@ -5747,8 +5959,14 @@ deleteFiles()
Firstbuf = buf;
}
}
- while ((f = popText(fileToDelete)) != NULL)
+ while ((f = popText(fileToDelete)) != NULL) {
unlink(f);
+ if (enable_inline_image == 2 && strcmp(f+strlen(f)-4, ".gif") == 0) {
+ Str firstframe = Strnew_charp(f);
+ Strcat_charp(firstframe, "-1");
+ unlink(firstframe->ptr);
+ }
+ }
}
void
@@ -5769,10 +5987,17 @@ w3m_exit(int i)
#ifdef __MINGW32_VERSION
WSACleanup();
#endif
+#ifdef HAVE_MKDTEMP
+ if (no_rc_dir && tmp_dir != rc_dir)
+ if (rmdir(tmp_dir) != 0) {
+ fprintf(stderr, "Can't remove temporary directory (%s)!\n", tmp_dir);
+ exit(1);
+ }
+#endif
exit(i);
}
-DEFUN(execCmd, COMMAND, "Execute w3m command(s)")
+DEFUN(execCmd, COMMAND, "Invoke w3m function(s)")
{
char *data, *p;
int cmd;
@@ -5900,7 +6125,7 @@ setAlarmEvent(AlarmEvent * event, int sec, short status, int cmd, void *data)
}
#endif
-DEFUN(reinit, REINIT, "Reload configuration files")
+DEFUN(reinit, REINIT, "Reload configuration file")
{
char *resource = searchKeyData();
@@ -5969,8 +6194,7 @@ DEFUN(reinit, REINIT, "Reload configuration files")
ptr, FALSE);
}
-DEFUN(defKey, DEFINE_KEY,
- "Define a binding between a key stroke and a user command")
+DEFUN(defKey, DEFINE_KEY, "Define a binding between a key stroke combination and a command")
{
char *data;
@@ -6031,7 +6255,7 @@ _newT(void)
nTab++;
}
-DEFUN(newT, NEW_TAB, "Open new tab")
+DEFUN(newT, NEW_TAB, "Open a new tab (with current document)")
{
_newT();
displayBuffer(Currentbuf, B_REDRAW_IMAGE);
@@ -6142,7 +6366,7 @@ deleteTab(TabBuffer * tab)
return FirstTab;
}
-DEFUN(closeT, CLOSE_TAB, "Close current tab")
+DEFUN(closeT, CLOSE_TAB, "Close tab")
{
TabBuffer *tab;
@@ -6157,7 +6381,7 @@ DEFUN(closeT, CLOSE_TAB, "Close current tab")
displayBuffer(Currentbuf, B_REDRAW_IMAGE);
}
-DEFUN(nextT, NEXT_TAB, "Move to next tab")
+DEFUN(nextT, NEXT_TAB, "Switch to the next tab")
{
int i;
@@ -6172,7 +6396,7 @@ DEFUN(nextT, NEXT_TAB, "Move to next tab")
displayBuffer(Currentbuf, B_REDRAW_IMAGE);
}
-DEFUN(prevT, PREV_TAB, "Move to previous tab")
+DEFUN(prevT, PREV_TAB, "Switch to the previous tab")
{
int i;
@@ -6236,7 +6460,7 @@ followTab(TabBuffer * tab)
displayBuffer(Currentbuf, B_FORCE_REDRAW);
}
-DEFUN(tabA, TAB_LINK, "Open current link on new tab")
+DEFUN(tabA, TAB_LINK, "Follow current hyperlink in a new tab")
{
followTab(prec_num ? numTab(PREC_NUM) : NULL);
}
@@ -6277,13 +6501,13 @@ tabURL0(TabBuffer * tab, char *prompt, int relative)
displayBuffer(Currentbuf, B_FORCE_REDRAW);
}
-DEFUN(tabURL, TAB_GOTO, "Open URL on new tab")
+DEFUN(tabURL, TAB_GOTO, "Open specified document in a new tab")
{
tabURL0(prec_num ? numTab(PREC_NUM) : NULL,
"Goto URL on new tab: ", FALSE);
}
-DEFUN(tabrURL, TAB_GOTO_RELATIVE, "Open relative URL on new tab")
+DEFUN(tabrURL, TAB_GOTO_RELATIVE, "Open relative address in a new tab")
{
tabURL0(prec_num ? numTab(PREC_NUM) : NULL,
"Goto relative URL on new tab: ", TRUE);
@@ -6328,7 +6552,7 @@ moveTab(TabBuffer * t, TabBuffer * t2, int right)
displayBuffer(Currentbuf, B_FORCE_REDRAW);
}
-DEFUN(tabR, TAB_RIGHT, "Move current tab right")
+DEFUN(tabR, TAB_RIGHT, "Move right along the tab bar")
{
TabBuffer *tab;
int i;
@@ -6338,7 +6562,7 @@ DEFUN(tabR, TAB_RIGHT, "Move current tab right")
moveTab(CurrentTab, tab ? tab : LastTab, TRUE);
}
-DEFUN(tabL, TAB_LEFT, "Move current tab left")
+DEFUN(tabL, TAB_LEFT, "Move left along the tab bar")
{
TabBuffer *tab;
int i;
@@ -6547,7 +6771,7 @@ stopDownload(void)
}
/* download panel */
-DEFUN(ldDL, DOWNLOAD_LIST, "Display download list panel")
+DEFUN(ldDL, DOWNLOAD_LIST, "Display downloads panel")
{
Buffer *buf;
int replace = FALSE, new_tab = FALSE;
@@ -6665,3 +6889,37 @@ DEFUN(redoPos, REDO, "Cancel the last undo")
for (i = 0; i < PREC_NUM && b->next; i++, b = b->next) ;
resetPos(b);
}
+
+DEFUN(cursorTop, CURSOR_TOP, "Move cursor to the top of the screen")
+{
+ if (Currentbuf->firstLine == NULL)
+ return;
+ Currentbuf->currentLine = lineSkip(Currentbuf, Currentbuf->topLine,
+ 0, FALSE);
+ arrangeLine(Currentbuf);
+ displayBuffer(Currentbuf, B_NORMAL);
+}
+
+DEFUN(cursorMiddle, CURSOR_MIDDLE, "Move cursor to the middle of the screen")
+{
+ int offsety;
+ if (Currentbuf->firstLine == NULL)
+ return;
+ offsety = (Currentbuf->LINES - 1) / 2;
+ Currentbuf->currentLine = currentLineSkip(Currentbuf, Currentbuf->topLine,
+ offsety, FALSE);
+ arrangeLine(Currentbuf);
+ displayBuffer(Currentbuf, B_NORMAL);
+}
+
+DEFUN(cursorBottom, CURSOR_BOTTOM, "Move cursor to the bottom of the screen")
+{
+ int offsety;
+ if (Currentbuf->firstLine == NULL)
+ return;
+ offsety = Currentbuf->LINES - 1;
+ Currentbuf->currentLine = currentLineSkip(Currentbuf, Currentbuf->topLine,
+ offsety, FALSE);
+ arrangeLine(Currentbuf);
+ displayBuffer(Currentbuf, B_NORMAL);
+}
diff --git a/map.c b/map.c
index 90aa35a..bb240ea 100644
--- a/map.c
+++ b/map.c
@@ -279,7 +279,7 @@ follow_map_panel(Buffer *buf, char *name)
p = parsedURL2Str(&pu)->ptr;
q = html_quote(p);
if (DecodeURL)
- p = html_quote(url_unquote_conv(p, buf->document_charset));
+ p = html_quote(url_decode2(p, buf));
else
p = q;
Strcat_m_charp(mappage, "<tr valign=top><td><a href=\"", q, "\">",
@@ -417,10 +417,7 @@ append_map_info(Buffer *buf, Str tmp, FormItemList *fi)
continue;
parseURL2(a->url, &pu, baseURL(buf));
q = html_quote(parsedURL2Str(&pu)->ptr);
- if (DecodeURL)
- p = html_quote(url_unquote_conv(a->url, buf->document_charset));
- else
- p = html_quote(a->url);
+ p = html_quote(url_decode2(a->url, buf));
Strcat_m_charp(tmp, "<tr valign=top><td>&nbsp;&nbsp;<td><a href=\"",
q, "\">",
html_quote(*a->alt ? a->alt : mybasename(a->url)),
@@ -457,10 +454,8 @@ append_link_info(Buffer *buf, Str html, LinkList * link)
Strcat_charp(html, "[Rev]");
if (!l->url)
url = "(empty)";
- else if (DecodeURL)
- url = html_quote(url_unquote_conv(l->url, buf->document_charset));
else
- url = html_quote(l->url);
+ url = html_quote(url_decode2(l->url, buf));
Strcat_m_charp(html, "<td>", url, NULL);
if (l->ctype)
Strcat_m_charp(html, " (", html_quote(l->ctype), ")", NULL);
@@ -498,8 +493,7 @@ append_frame_info(Buffer *buf, Str html, struct frameset *set, int level)
Strcat_charp(html, p);
}
if (DecodeURL)
- p = html_quote(url_unquote_conv(frame.body->url,
- buf->document_charset));
+ p = html_quote(url_decode2(frame.body->url, buf));
else
p = q;
Strcat_m_charp(html, " ", p, "</a></pre_int><br>\n", NULL);
@@ -550,9 +544,7 @@ page_info_panel(Buffer *buf)
#ifdef USE_M17N
Strcat_charp(tmp, "<form method=internal action=charset>");
#endif
- p = parsedURL2Str(&buf->currentURL)->ptr;
- if (DecodeURL)
- p = url_unquote_conv(p, 0);
+ p = url_decode2(parsedURL2Str(&buf->currentURL)->ptr, NULL);
Strcat_m_charp(tmp, "<table cellpadding=0>",
"<tr valign=top><td nowrap>Title<td>",
html_quote(buf->buffername),
@@ -581,7 +573,7 @@ page_info_panel(Buffer *buf)
"<tr valign=top><td nowrap>Number of lines<td>",
Sprintf("%d", all)->ptr,
"<tr valign=top><td nowrap>Transferred bytes<td>",
- Sprintf("%d", buf->trbyte)->ptr, NULL);
+ Sprintf("%lu", (unsigned long)buf->trbyte)->ptr, NULL);
a = retrieveCurrentAnchor(buf);
if (a != NULL) {
@@ -589,7 +581,7 @@ page_info_panel(Buffer *buf)
p = parsedURL2Str(&pu)->ptr;
q = html_quote(p);
if (DecodeURL)
- p = html_quote(url_unquote_conv(p, buf->document_charset));
+ p = html_quote(url_decode2(p, buf));
else
p = q;
Strcat_m_charp(tmp,
@@ -602,7 +594,7 @@ page_info_panel(Buffer *buf)
p = parsedURL2Str(&pu)->ptr;
q = html_quote(p);
if (DecodeURL)
- p = html_quote(url_unquote_conv(p, buf->document_charset));
+ p = html_quote(url_decode2(p, buf));
else
p = q;
Strcat_m_charp(tmp,
@@ -613,10 +605,7 @@ page_info_panel(Buffer *buf)
if (a != NULL) {
FormItemList *fi = (FormItemList *)a->url;
p = form2str(fi);
- if (DecodeURL)
- p = html_quote(url_unquote_conv(p, buf->document_charset));
- else
- p = html_quote(p);
+ p = html_quote(url_decode2(p, buf));
Strcat_m_charp(tmp,
"<tr valign=top><td nowrap>Method/type of current form&nbsp;<td>",
p, NULL);
diff --git a/matrix.c b/matrix.c
index 64fd0ad..bc7a5be 100644
--- a/matrix.c
+++ b/matrix.c
@@ -34,18 +34,12 @@
#include "config.h"
#include "matrix.h"
-#include <gc.h>
+#include "alloc.h"
/*
* Macros from "fm.h".
*/
-#define New(type) ((type*)GC_MALLOC(sizeof(type)))
-#define NewAtom(type) ((type*)GC_MALLOC_ATOMIC(sizeof(type)))
-#define New_N(type,n) ((type*)GC_MALLOC((n)*sizeof(type)))
-#define NewAtom_N(type,n) ((type*)GC_MALLOC_ATOMIC((n)*sizeof(type)))
-#define Renew_N(type,ptr,n) ((type*)GC_REALLOC((ptr),(n)*sizeof(type)))
-
#define SWAPD(a,b) { double tmp = a; a = b; b = tmp; }
#define SWAPI(a,b) { int tmp = a; a = b; b = tmp; }
diff --git a/menu.c b/menu.c
index 774b1bd..b0c890d 100644
--- a/menu.c
+++ b/menu.c
@@ -57,6 +57,7 @@ static int mCancel(char c);
static int mClose(char c);
static int mSusp(char c);
static int mMouse(char c);
+static int mSgrMouse(char c);
static int mSrchF(char c);
static int mSrchB(char c);
static int mSrchN(char c);
@@ -116,15 +117,15 @@ static int (*MenuEscKeymap[128]) (char c) = {
mNull, mNull, mNull, mNull, mNull, mNull, mNull, mNull,
mNull, mNull, mNull, mNull, mNull, mNull, mNull, mNull,
-/* O */
+/* O */
mNull, mNull, mNull, mNull, mNull, mNull, mNull, mEscB,
mNull, mNull, mNull, mNull, mNull, mNull, mNull, mNull,
-/* [ */
+/* [ */
mNull, mNull, mNull, mEscB, mNull, mNull, mNull, mNull,
mNull, mNull, mNull, mNull, mNull, mNull, mNull, mNull,
mNull, mNull, mNull, mNull, mNull, mNull, mNull, mNull,
-/* v */
+/* v */
mNull, mNull, mNull, mNull, mNull, mNull, mPrev, mNull,
mNull, mNull, mNull, mNull, mNull, mNull, mNull, mNull,
};
@@ -137,10 +138,11 @@ static int (*MenuEscBKeymap[128]) (char c) = {
mNull, mNull, mNull, mNull, mNull, mNull, mNull, mNull,
mNull, mNull, mNull, mNull, mNull, mNull, mNull, mNull,
mNull, mNull, mNull, mNull, mNull, mNull, mNull, mNull,
- mNull, mNull, mNull, mNull, mNull, mNull, mNull, mNull,
-/* A B C D E */
+/* 8 9 : ; < = > ? */
+ mNull, mNull, mNull, mNull, mSgrMouse,mNull,mNull, mNull,
+/* A B C D E */
mNull, mUp, mDown, mOk, mCancel,mClose, mNull, mNull,
-/* L M */
+/* L M */
mNull, mNull, mNull, mNull, mClose, mMouse, mNull, mNull,
mNull, mNull, mNull, mNull, mNull, mNull, mNull, mNull,
mNull, mNull, mNull, mNull, mNull, mNull, mNull, mNull,
@@ -359,7 +361,6 @@ geom_menu(Menu *menu, int x, int y, int mselect)
if (win_w > COLS) {
menu->width = COLS - 2 * FRAME_WIDTH;
menu->width -= menu->width % FRAME_WIDTH;
- win_w = menu->width + 2 * FRAME_WIDTH;
}
}
menu->x = win_x + FRAME_WIDTH;
@@ -1203,6 +1204,48 @@ mMouse(char c)
return process_mMouse(btn, x, y);
}
+static int
+mSgrMouse(char c)
+{
+ int btn = 0, x = 0, y = 0;
+ unsigned char ch;
+
+ for (ch = getch(); IS_DIGIT(ch); ch = getch())
+ btn = btn * 10 + ch - '0';
+ if (ch != ';')
+ return MENU_NOTHING;
+
+#if defined (__CYGWIN__) && CYGWIN_VERSION_DLL_MAJOR < 1005
+ if (cygwin_mouse_btn_swapped) {
+ if (btn == MOUSE_BTN2_DOWN)
+ btn = MOUSE_BTN3_DOWN;
+ else if (btn == MOUSE_BTN3_DOWN)
+ btn = MOUSE_BTN2_DOWN;
+ }
+#endif
+
+ for (ch = getch(); IS_DIGIT(ch); ch = getch())
+ x = x * 10 + ch - '0';
+ if (ch != ';')
+ return MENU_NOTHING;
+ if (x > 0)
+ x--;
+
+ for (ch = getch(); IS_DIGIT(ch); ch = getch())
+ y = y * 10 + ch - '0';
+ if (ch == 'm')
+ btn |= 3;
+ else if (ch != 'M' && ch != ';')
+ return MENU_NOTHING;
+ if (y > 0)
+ y--;
+
+ if (x < 0 || x >= COLS || y < 0 || y > LASTLINE)
+ return MENU_NOTHING;
+
+ return process_mMouse(btn, x, y);
+}
+
#ifdef USE_GPM
static int
gpm_process_menu_mouse(Gpm_Event * event, void *data)
@@ -1261,6 +1304,12 @@ mMouse(char c)
{
return (MENU_NOTHING);
}
+
+static int
+mSgrMouse(char c)
+{
+ return (MENU_NOTHING);
+}
#endif /* not USE_MOUSE */
/* --- MenuFunctions (END) --- */
@@ -1289,7 +1338,7 @@ mainMenu(int x, int y)
popupMenu(x, y, &MainMenu);
}
-DEFUN(mainMn, MAIN_MENU MENU, "Popup menu")
+DEFUN(mainMn, MAIN_MENU MENU, "Pop up menu")
{
Menu *menu = &MainMenu;
char *data;
@@ -1317,7 +1366,7 @@ DEFUN(mainMn, MAIN_MENU MENU, "Popup menu")
/* --- SelectMenu --- */
-DEFUN(selMn, SELECT_MENU, "Popup buffer selection menu")
+DEFUN(selMn, SELECT_MENU, "Pop up buffer-stack menu")
{
int x = Currentbuf->cursorX + Currentbuf->rootX,
y = Currentbuf->cursorY + Currentbuf->rootY;
@@ -1365,9 +1414,7 @@ initSelectMenu(void)
break;
default:
Strcat_char(str, ' ');
- p = parsedURL2Str(&buf->currentURL)->ptr;
- if (DecodeURL)
- p = url_unquote_conv(p, 0);
+ p = url_decode2(parsedURL2Str(&buf->currentURL)->ptr, NULL);
Strcat_charp(str, p);
break;
}
@@ -1464,7 +1511,7 @@ smDelBuf(char c)
/* --- SelTabMenu --- */
-DEFUN(tabMn, TAB_MENU, "Popup tab selection menu")
+DEFUN(tabMn, TAB_MENU, "Pop up tab selection menu")
{
int x = Currentbuf->cursorX + Currentbuf->rootX,
y = Currentbuf->cursorY + Currentbuf->rootY;
@@ -1513,9 +1560,7 @@ initSelTabMenu(void)
case SCM_MISSING:
break;
default:
- p = parsedURL2Str(&buf->currentURL)->ptr;
- if (DecodeURL)
- p = url_unquote_conv(p, 0);
+ p = url_decode2(parsedURL2Str(&buf->currentURL)->ptr, NULL);
Strcat_charp(str, p);
break;
}
@@ -1696,7 +1741,7 @@ initMenu(void)
FILE *mf;
MenuList *list;
- w3mMenuList = New_N(MenuList, 3);
+ w3mMenuList = New_N(MenuList, 4);
w3mMenuList[0].id = "Main";
w3mMenuList[0].menu = &MainMenu;
w3mMenuList[0].item = MainMenuItem;
@@ -1845,10 +1890,8 @@ link_menu(Buffer *buf)
Strcat_charp(str, " ");
if (!l->url)
p = "";
- else if (DecodeURL)
- p = url_unquote_conv(l->url, buf->document_charset);
else
- p = l->url;
+ p = url_decode2(l->url, buf);
Strcat_charp(str, p);
label[i] = str->ptr;
if (len < str->length)
@@ -1913,6 +1956,7 @@ accesskey_menu(Buffer *buf)
}
label[nitem] = NULL;
+ set_menu_frame();
new_option_menu(&menu, label, &key, NULL);
menu.initial = 0;
@@ -2025,7 +2069,6 @@ list_menu(Buffer *buf)
label[nitem] = NULL;
set_menu_frame();
- set_menu_frame();
new_option_menu(&menu, label, &key, NULL);
menu.initial = 0;
diff --git a/mimehead.c b/mimehead.c
index 78997e0..d16270c 100644
--- a/mimehead.c
+++ b/mimehead.c
@@ -64,12 +64,22 @@ ha2d(char x, char y)
Str
decodeB(char **ww)
{
+ struct growbuf gb;
+
+ growbuf_init(&gb);
+ decodeB_to_growbuf(&gb, ww);
+ return growbuf_to_Str(&gb);
+}
+
+void
+decodeB_to_growbuf(struct growbuf *gb, char **ww)
+{
unsigned char c[4];
char *wp = *ww;
char d[3];
int i, n_pad;
- Str ap = Strnew_size(strlen(wp));
+ growbuf_reserve(gb, strlen(wp) + 1);
n_pad = 0;
while (1) {
for (i = 0; i < 4; i++) {
@@ -93,39 +103,50 @@ decodeB(char **ww)
for (i = 0; i < 4; i++) {
c[i] = c2e(c[i]);
if (c[i] == BAD_BASE64) {
- *ww = wp;
- return ap;
+ goto last;
}
}
d[0] = ((c[0] << 2) | (c[1] >> 4));
d[1] = ((c[1] << 4) | (c[2] >> 2));
d[2] = ((c[2] << 6) | c[3]);
for (i = 0; i < 3 - n_pad; i++) {
- Strcat_char(ap, d[i]);
+ GROWBUF_ADD_CHAR(gb, d[i]);
}
if (n_pad || *wp == '\0' || *wp == '?')
break;
}
+last:
+ growbuf_reserve(gb, gb->length + 1);
+ gb->ptr[gb->length] = '\0';
*ww = wp;
- return ap;
+ return;
}
Str
decodeU(char **ww)
{
+ struct growbuf gb;
+
+ growbuf_init(&gb);
+ decodeU_to_growbuf(&gb, ww);
+ return growbuf_to_Str(&gb);
+}
+
+void
+decodeU_to_growbuf(struct growbuf *gb, char **ww)
+{
unsigned char c1, c2;
char *w = *ww;
int n, i;
- Str a;
if (*w <= 0x20 || *w >= 0x60)
- return Strnew_size(0);
+ return;
n = *w - 0x20;
- a = Strnew_size(n);
+ growbuf_reserve(gb, n + 1);
for (w++, i = 2; *w != '\0' && n; n--) {
c1 = (w[0] - 0x20) % 0x40;
c2 = (w[1] - 0x20) % 0x40;
- Strcat_char(a, (c1 << i) | (c2 >> (6 - i)));
+ gb->ptr[gb->length++] = (c1 << i) | (c2 >> (6 - i));
if (i == 6) {
w += 2;
i = 2;
@@ -135,7 +156,8 @@ decodeU(char **ww)
i += 2;
}
}
- return a;
+ gb->ptr[gb->length] = '\0';
+ return;
}
/* RFC2047 (4.2. The "Q" encoding) */
@@ -165,9 +187,19 @@ decodeQ(char **ww)
Str
decodeQP(char **ww)
{
+ struct growbuf gb;
+
+ growbuf_init(&gb);
+ decodeQP_to_growbuf(&gb, ww);
+ return growbuf_to_Str(&gb);
+}
+
+void
+decodeQP_to_growbuf(struct growbuf *gb, char **ww)
+{
char *w = *ww;
- Str a = Strnew_size(strlen(w));
+ growbuf_reserve(gb, strlen(w) + 1);
for (; *w != '\0'; w++) {
if (*w == '=') {
w++;
@@ -180,15 +212,16 @@ decodeQP(char **ww)
else {
if (*w == '\0' || *(w + 1) == '\0')
break;
- Strcat_char(a, ha2d(*w, *(w + 1)));
+ gb->ptr[gb->length++] = ha2d(*w, *(w + 1));
w++;
}
}
else
- Strcat_char(a, *w);
+ gb->ptr[gb->length++] = *w;
}
+ gb->ptr[gb->length] = '\0';
*ww = w;
- return a;
+ return;
}
#ifdef USE_M17N
diff --git a/news.c b/news.c
index 8a1f0e8..c0494b7 100644
--- a/news.c
+++ b/news.c
@@ -76,13 +76,15 @@ news_close(News * news)
static int
news_open(News * news)
{
- int sock, status;
+ int sock, status, fd;
sock = openSocket(news->host, "nntp", news->port);
if (sock < 0)
goto open_err;
news->rf = newInputStream(sock);
- news->wf = fdopen(dup(sock), "wb");
+ if ((fd = dup(sock)) < 0)
+ goto open_err;
+ news->wf = fdopen(fd, "wb");
if (!news->rf || !news->wf)
goto open_err;
IStype(news->rf) |= IST_UNCLOSE;
diff --git a/parsetagx.c b/parsetagx.c
index 6b627d2..1cc7048 100644
--- a/parsetagx.c
+++ b/parsetagx.c
@@ -120,6 +120,7 @@ parse_tag(char **s, int internal)
int i, attr_id = 0, nattr;
/* Parse tag name */
+ tagname[0] = '\0';
q = (*s) + 1;
p = tagname;
if (*q == '/') {
@@ -221,6 +222,7 @@ parse_tag(char **s, int internal)
int j, hidden=FALSE;
for (j=0; j<i; j++) {
if (tag->attrid[j] == ATTR_TYPE &&
+ tag->value[j] &&
strcmp("hidden",tag->value[j]) == 0) {
hidden=TRUE;
break;
diff --git a/po/.cvsignore b/po/.cvsignore
deleted file mode 100644
index f817688..0000000
--- a/po/.cvsignore
+++ /dev/null
@@ -1,6 +0,0 @@
-stamp-po
-POTFILES
-ja.gmo
-Makefile
-Makefile.in
-remove-potcdate.sed
diff --git a/po/LINGUAS b/po/LINGUAS
index 1489115..ddd267b 100644
--- a/po/LINGUAS
+++ b/po/LINGUAS
@@ -1,2 +1,2 @@
# Set of available languages.
-ja
+ja de zh_CN zh_TW
diff --git a/po/Makefile.in.in b/po/Makefile.in.in
index 83d8838..9d9691e 100644
--- a/po/Makefile.in.in
+++ b/po/Makefile.in.in
@@ -89,7 +89,7 @@ CATALOGS = @CATALOGS@
@lang=`echo $* | sed -e 's,.*/,,'`; \
test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \
echo "$${cdcmd}rm -f $${lang}.gmo && $(GMSGFMT) -c --statistics --verbose -o $${lang}.gmo $${lang}.po"; \
- cd $(srcdir) && rm -f $${lang}.gmo && $(GMSGFMT) -c --statistics --verbose -o t-$${lang}.gmo $${lang}.po && mv t-$${lang}.gmo $${lang}.gmo
+ cd $(srcdir) && rm -f $${lang}.gmo && $(GMSGFMT) -c --statistics --verbose -o t-$${lang}.gmo $${lang}.po && if [ x$(GMSGFMT) != x: ] ; then mv t-$${lang}.gmo $${lang}.gmo ; fi
.sin.sed:
sed -e '/^#/d' $< > t-$@
@@ -153,14 +153,14 @@ $(DOMAIN).pot-update: $(POTFILES) $(srcdir)/POTFILES.in remove-potcdate.sed
$(XGETTEXT) --default-domain=$(DOMAIN) --directory=$(top_srcdir) \
--add-comments=TRANSLATORS: $(XGETTEXT_OPTIONS) @XGETTEXT_EXTRA_OPTIONS@ \
--files-from=$(srcdir)/POTFILES.in \
- --copyright-holder='$(COPYRIGHT_HOLDER)' \
+ --copyright-holder="$(COPYRIGHT_HOLDER)" \
--msgid-bugs-address="$$msgid_bugs_address" \
;; \
*) \
$(XGETTEXT) --default-domain=$(DOMAIN) --directory=$(top_srcdir) \
--add-comments=TRANSLATORS: $(XGETTEXT_OPTIONS) @XGETTEXT_EXTRA_OPTIONS@ \
--files-from=$(srcdir)/POTFILES.in \
- --copyright-holder='$(COPYRIGHT_HOLDER)' \
+ --copyright-holder="$(COPYRIGHT_HOLDER)" \
--package-name="$${package_gnu}@PACKAGE@" \
--package-version='@VERSION@' \
--msgid-bugs-address="$$msgid_bugs_address" \
diff --git a/po/Makevars b/po/Makevars
index 2f57810..0c4cb4d 100644
--- a/po/Makevars
+++ b/po/Makevars
@@ -18,7 +18,7 @@ XGETTEXT_OPTIONS = --from-code=EUC-JP --keyword=_ --keyword=N_
# or entity, or to disclaim their copyright. The empty string stands for
# the public domain; in this case the translators are expected to disclaim
# their copyright.
-COPYRIGHT_HOLDER = Fumitoshi UKAI
+COPYRIGHT_HOLDER = THE w3m'S COPYRIGHT HOLDER
# This is the email address or URL to which the translators shall report
# bugs in the untranslated strings:
@@ -34,7 +34,7 @@ COPYRIGHT_HOLDER = Fumitoshi UKAI
# It can be your email address, or a mailing list address where translators
# can write to without being subscribed, or the URL of a web page through
# which the translators can contact you.
-MSGID_BUGS_ADDRESS = satodai@w3m.jp
+MSGID_BUGS_ADDRESS =
# This is the list of locale categories, beyond LC_MESSAGES, for which the
# message catalogs shall be used. It is usually empty.
diff --git a/po/POTFILES.in b/po/POTFILES.in
index bc4ce87..fbb5ea9 100644
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -1,9 +1,6 @@
# List of source files containing translatable strings.
-# Copyright (C) 2003 Fumitoshi UKAI
#main.c
menu.c
rc.c
#w3mbookmark.c
#w3mhelperpanel.c
-
-
diff --git a/po/de.po b/po/de.po
new file mode 100644
index 0000000..a0afa27
--- /dev/null
+++ b/po/de.po
@@ -0,0 +1,944 @@
+# German translation of w3m
+# Copyright (C) 2014 THE w3m'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the w3m package.
+# Markus Hiereth <markus.hiereth@freenet.de>, 2014.
+msgid ""
+msgstr ""
+"Project-Id-Version: w3m 0.5.3\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2020-11-24 19:21+0900\n"
+"PO-Revision-Date: 2016-03-14 19:51+0900\n"
+"Last-Translator: Tatsuya Kinoshita <tats@debian.org>\n"
+"Language-Team: German <debian-l10n-german@lists.debian.org>\n"
+"Language: de\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Virtaal 0.7.1\n"
+
+#: menu.c:269
+msgid " Back (b) "
+msgstr " Zurück (b) "
+
+#: menu.c:270
+msgid " Select Buffer(s) "
+msgstr " Puffer auswählen (s) "
+
+#: menu.c:272
+msgid " Select Tab (t) "
+msgstr " Reiter auswählen (t) "
+
+#: menu.c:274
+msgid " View Source (v) "
+msgstr " Codeansicht (v) "
+
+#: menu.c:275
+msgid " Edit Source (e) "
+msgstr " Code bearbeiten (e) "
+
+#: menu.c:276
+msgid " Save Source (S) "
+msgstr " Code speichern (S) "
+
+#: menu.c:277
+msgid " Reload (r) "
+msgstr " Erneut laden (r) "
+
+#: menu.c:278 menu.c:285 menu.c:289
+msgid " ---------------- "
+msgstr " ---------------------- "
+
+#: menu.c:279
+msgid " Go Link (a) "
+msgstr " Ziel öffnen.. (a) "
+
+#: menu.c:280
+msgid " on New Tab (n) "
+msgstr " ..in neuem Reiter (n) "
+
+#: menu.c:281
+msgid " Save Link (A) "
+msgstr " Ziel speichern (A) "
+
+#: menu.c:282
+msgid " View Image (i) "
+msgstr " Bild anzeigen (i) "
+
+#: menu.c:283
+msgid " Save Image (I) "
+msgstr " Bild speichern (I) "
+
+#: menu.c:284
+msgid " View Frame (f) "
+msgstr " Frames zeigen (f) "
+
+#: menu.c:286
+msgid " Bookmark (B) "
+msgstr " Lesezeichen (B) "
+
+#: menu.c:287
+msgid " Help (h) "
+msgstr " Hilfe (h) "
+
+#: menu.c:288
+msgid " Option (o) "
+msgstr " Einstellungen (o) "
+
+#: menu.c:290
+msgid " Quit (q) "
+msgstr " Programm verlassen (q) "
+
+#: rc.c:62
+msgid "External Viewer Setup"
+msgstr "Konfiguration für externe Anzeigeprogramme"
+
+#: rc.c:63
+msgid "Tab width in characters"
+msgstr "Tabulatorbreite in Zeichen"
+
+#: rc.c:64
+msgid "Indent for HTML rendering"
+msgstr "Einzug bei HTML-Darstellung"
+
+#: rc.c:65
+msgid "Number of pixels per character (4.0...32.0)"
+msgstr "Anzahl von Pixeln pro Zeichen (4.0 bis 32.0)"
+
+#: rc.c:66
+msgid "Number of pixels per line (4.0...64.0)"
+msgstr "Anzahl von Pixeln pro Zeile (4.0 bis 64.0)"
+
+# entsprechend Bescheibung aus MANUAL.html, mh 14.10.2014
+#: rc.c:67
+msgid "Number of remembered lines when used as a pager"
+msgstr "Anzahl gemerkter, über die Standardeingabe erhaltener Zeilen"
+
+#: rc.c:68
+msgid "Use URL history"
+msgstr "URL-Chronik verwenden"
+
+#: rc.c:69
+msgid "Number of remembered URL"
+msgstr "Anzahl von URLs in Chronik"
+
+#: rc.c:70
+msgid "Save URL history"
+msgstr "URL-Chronik speichern"
+
+#: rc.c:71
+msgid "Render frames automatically"
+msgstr "Frames selbstständig darstellen"
+
+#: rc.c:72
+msgid "Treat argument without scheme as URL"
+msgstr "Eingabe ohne Protokoll-Präfix als URL auffassen"
+
+#: rc.c:73
+msgid "Use _self as default target"
+msgstr "_self als Standard-Zielfenster verwenden"
+
+#: rc.c:74
+msgid "Open link on new tab if target is _blank or _new"
+msgstr ""
+"Link in neuem Reiter öffnen, falls für Zielfenster _blank oder _new "
+"definiert ist"
+
+#: rc.c:75
+msgid "Open download list panel on new tab"
+msgstr "Downloadliste in neuem Reiter öffnen"
+
+#: rc.c:76
+msgid "Display link URL automatically"
+msgstr "URL der Links selbstständig anzeigen"
+
+#: rc.c:77
+msgid "Display link numbers"
+msgstr "Linknummern anzeigen"
+
+#: rc.c:78
+msgid "Display decoded URL"
+msgstr "URL entschlüsselt anzeigen"
+
+#: rc.c:79
+msgid "Display current line number"
+msgstr "Aktuelle Zeilennummer anzeigen"
+
+#: rc.c:80
+msgid "Display inline images"
+msgstr "Eingebettete Bilder anzeigen"
+
+#: rc.c:81
+msgid "Display pseudo-ALTs for inline images with no ALT or TITLE string"
+msgstr "Pseudo-ALTs zu eingebetteten Bildern ohne ALT oder TITLE anzeigen"
+
+#: rc.c:83
+msgid "Load inline images automatically"
+msgstr "Eingebettete Bilder selbstständig laden"
+
+#: rc.c:84
+msgid "Maximum processes for parallel image loading"
+msgstr "Anzahl zulässiger Prozesse zum gleichzeitigen Laden von Bildern"
+
+#: rc.c:85
+msgid "Use external image viewer"
+msgstr "Externen Bildbetrachter verwenden"
+
+#: rc.c:86
+msgid "Scale of image (%)"
+msgstr "Bilder prozentual skalieren"
+
+#: rc.c:87
+msgid "External command to display image"
+msgstr "Befehl für externen Bildbetrachter"
+
+#: rc.c:88
+msgid "Use link list of image map"
+msgstr "Bei Grafiken mit eingebetteten Links Ziele auflisten"
+
+#: rc.c:90
+msgid "Display file names in multi-column format"
+msgstr "Dateinamen auf Spalten verteilt anzeigen"
+
+#: rc.c:91
+msgid "Use ASCII equivalents to display entities"
+msgstr "ASCII-Ersatz für in HTML benannte Zeichen verwenden"
+
+#: rc.c:92
+msgid "Character type for border of table and menu"
+msgstr "Zeichen zum Einrahmen von Tabellen und Menüs"
+
+#: rc.c:93
+msgid "Display table borders, ignore value of BORDER"
+msgstr "Zeige Tabellen gerahmt, BORDER-Wert ignorieren"
+
+#: rc.c:94
+msgid "Fold lines in TEXTAREA"
+msgstr "In Eingabefeldern vom Typ TEXTAREA Texte umbrechen"
+
+#: rc.c:95
+msgid "Display INS, DEL, S and STRIKE element"
+msgstr "Umsetzung der Elemente INS, DEL, S und STRIKE"
+
+#: rc.c:96
+msgid "Display with color"
+msgstr "In Farbe anzeigen"
+
+#: rc.c:97
+msgid "Color of normal character"
+msgstr "Farbe für normalen Text"
+
+#: rc.c:98
+msgid "Color of anchor"
+msgstr "Farbe für Links / Element A"
+
+#: rc.c:99
+msgid "Color of image link"
+msgstr "Farbe für Bilder / Element IMG"
+
+#: rc.c:100
+msgid "Color of form"
+msgstr "Farbe für Eingaben / Element INPUT"
+
+#: rc.c:101
+msgid "Enable coloring of active link"
+msgstr "Aktiven Link farblich hervorheben"
+
+#: rc.c:102
+msgid "Color of currently active link"
+msgstr "Farbe des derzeit aktiven Links "
+
+#: rc.c:103
+msgid "Use visited link color"
+msgstr "Besuchte Links farblich hervorheben"
+
+#: rc.c:104
+msgid "Color of visited link"
+msgstr "Farbe für besuchte Links"
+
+#: rc.c:105
+msgid "Color of background"
+msgstr "Hintergrundfarbe"
+
+#: rc.c:106
+msgid "Color of mark"
+msgstr "Farbe für Textmarken"
+
+# msgstr "Farbe für Textmarkierungen"
+#: rc.c:107
+msgid "Use proxy"
+msgstr "Proxy verwenden"
+
+#: rc.c:108
+msgid "URL of HTTP proxy host"
+msgstr "URL des HTTP-Proxy-Hosts"
+
+#: rc.c:110
+msgid "URL of HTTPS proxy host"
+msgstr "URL des HTTPS-Proxy-Hosts"
+
+#: rc.c:113
+msgid "URL of GOPHER proxy host"
+msgstr "URL des GOPHER-Proxy-Hosts"
+
+#: rc.c:115
+msgid "URL of FTP proxy host"
+msgstr "URL des FTP-Proxy-Hosts"
+
+#: rc.c:116
+msgid "Domains to be accessed directly (no proxy)"
+msgstr "Ohne Proxy, direkt zu kontaktierende Domains"
+
+#: rc.c:117
+msgid "Check noproxy by network address"
+msgstr ""
+"Direkten Datentransfer ohne Proxy mittels Netzwerkadresse sicherstellen"
+
+#: rc.c:118
+msgid "Disable cache"
+msgstr "Zwischenspeicherung deaktivieren"
+
+#: rc.c:120
+msgid "News server"
+msgstr "News-Server"
+
+#: rc.c:121
+msgid "Mode of news server"
+msgstr "Modus des News-Servers"
+
+#: rc.c:122
+msgid "Number of news messages"
+msgstr "News-Anzahl"
+
+#: rc.c:124
+msgid "Order of name resolution"
+msgstr "Reihenfolge der Namens-Auflösung"
+
+#: rc.c:125
+msgid "Directory corresponding to / (document root)"
+msgstr "Wurzelverzeichnis für Dokumente (/)"
+
+#: rc.c:126
+msgid "Directory corresponding to /~user"
+msgstr "Pfad zum Benutzerverzeichnis (~)"
+
+#: rc.c:127
+msgid "Directory corresponding to /cgi-bin"
+msgstr "Verzeichnis für ausführbare Skripte (cgi-bin)"
+
+#: rc.c:128
+msgid "Confirm when quitting with q"
+msgstr "Das Programm erst nach Bestätigung verlassen"
+
+#: rc.c:129
+msgid "Close tab if buffer is last when back"
+msgstr "Reiter mit nur einem Puffer auf Zurück-Befehl hin schließen"
+
+#: rc.c:131
+msgid "Enable mark operations"
+msgstr "Arbeit mit Textmarken ermöglichen"
+
+# msgstr "Arbeit mit Textmarkierungen ermöglichen"
+#: rc.c:133
+msgid "Enable Emacs-style line editing"
+msgstr "Zeilen wie in Emacs bearbeiten"
+
+#: rc.c:134
+msgid "Space key triggers file completion while editing URLs"
+msgstr ""
+
+#: rc.c:135
+msgid "Enable vi-like numeric prefix"
+msgstr "Vorangestellte Zahlen wie in vi aktivieren"
+
+#: rc.c:136
+msgid "Move cursor to top line when going to label"
+msgstr "Labels nach Aufsuchen immer oben positionieren"
+
+#: rc.c:137
+msgid "Move cursor to top line when moving to next page"
+msgstr "Beim Umblättern Eingabemarke nach oben setzen"
+
+#: rc.c:138
+msgid "Fold lines of plain text file"
+msgstr "Zeilen in Textdateien umbrechen"
+
+#: rc.c:139
+msgid "Show line numbers"
+msgstr "Zeilennummern anzeigen"
+
+#: rc.c:140
+msgid "Show search string"
+msgstr "Suchbegriff anzeigen"
+
+#: rc.c:141
+msgid "List of mime.types files"
+msgstr "Liste der mime.types-Dateien"
+
+#: rc.c:142
+msgid "List of mailcap files"
+msgstr "Liste der mailcap-Dateien"
+
+#: rc.c:143
+msgid "List of urimethodmap files"
+msgstr "Liste von Dateien mit URI-Methode-Zuordnungen"
+
+#: rc.c:144
+msgid "Editor"
+msgstr "Editor"
+
+#: rc.c:145
+msgid "Mailer"
+msgstr "Mail-Programm"
+
+# korrespondiert mit Pulldown-Menü, daher verkürzt. mh 09.10.2014
+#: rc.c:146
+msgid "How to call Mailer for mailto URLs with options"
+msgstr "Umgang mit mailto-URLs"
+
+#: rc.c:147
+msgid "External browser"
+msgstr "Externer browser"
+
+#: rc.c:148
+msgid "2nd external browser"
+msgstr "Zweiter externer browser"
+
+#: rc.c:149
+msgid "3rd external browser"
+msgstr "Dritter externer browser"
+
+#: rc.c:150
+msgid "4th external browser"
+msgstr "Vierter externer browser"
+
+#: rc.c:151
+msgid "5th external browser"
+msgstr "Fünfter externer browser"
+
+#: rc.c:152
+msgid "6th external browser"
+msgstr "Sechster externer browser"
+
+#: rc.c:153
+msgid "7th external browser"
+msgstr "Siebter externer browser"
+
+#: rc.c:154
+msgid "8th external browser"
+msgstr "Achter externer browser"
+
+#: rc.c:155
+msgid "9th external browser"
+msgstr "Neunter externer browser"
+
+# entsprechend file:///usr/share/doc/w3m/README.passwd
+# Prüfung beanstandete auch passwd_file mit Zugriffbytes 600, mh, 05.10.2014
+#: rc.c:156
+msgid "Disable secret file security check"
+msgstr "Keine Prüfung der Sicherheit bei Dateien mit geheimem Inhalt"
+
+#: rc.c:157
+msgid "Password file"
+msgstr "Passwort-Datei"
+
+#: rc.c:158
+msgid "File for setting form on loading"
+msgstr "Datei mit vordefinierten Eingaben für Formulare"
+
+#: rc.c:159
+msgid "File for preferences for each site"
+msgstr "Datei mit adress-spezifischen Voreinstellungen"
+
+#: rc.c:160
+msgid "Password for anonymous FTP (your mail address)"
+msgstr "Passwort für anonyme FTP-Anmeldung (Ihre Mailadresse)"
+
+#: rc.c:161
+msgid "Generate domain part of password for FTP"
+msgstr "Domain-Teil des FTP-Passwortes erzeugen"
+
+#: rc.c:162
+msgid "User-Agent identification string"
+msgstr "Browserkennung übermitteln"
+
+#: rc.c:163
+msgid "Accept-Encoding header"
+msgstr "Accept-Encoding-Kopfzeile"
+
+#: rc.c:164
+msgid "Accept header"
+msgstr "Accept-Kopfzeile"
+
+#: rc.c:165
+msgid "Accept-Language header"
+msgstr "Accept-Language-Kopfzeile"
+
+#: rc.c:166
+msgid "Treat URL-like strings as links in all pages"
+msgstr "URL-artige Zeichenketten auf allen Seiten als Links auffassen"
+
+#: rc.c:167
+msgid "Wrap search"
+msgstr "Im Dokument umlaufend suchen"
+
+#: rc.c:168
+msgid "Display unseen objects (e.g. bgimage tag)"
+msgstr "Nicht gezeigte Objekte melden (z.B. Hintergrundbild)"
+
+#: rc.c:169
+msgid "Uncompress compressed data automatically when downloading"
+msgstr "Komprimierte Daten beim Download selbstständig dekomprimieren"
+
+# String nicht in Optionen-Menü gefunden. mh, 05.10.2014
+#: rc.c:171
+msgid "Run external viewer in a separate session"
+msgstr "Externe Anzeigeprogramme in eigener Sitzung laufen lassen"
+
+#: rc.c:173
+msgid "Run external viewer in the background"
+msgstr "Externe Anzeigeprogramme im Hintergrund laufen lassen"
+
+#: rc.c:175
+msgid "Use external program for directory listing"
+msgstr "Externes Programm zum Auflisten von Verzeichnissen verwenden"
+
+#: rc.c:176
+msgid "URL of directory listing command"
+msgstr "URL des Befehls zum Auflisten von Verzeichnissen"
+
+#: rc.c:178
+msgid "Enable dictionary lookup through CGI"
+msgstr "Wörterbuchabfrage mittels CGI aktivieren"
+
+#: rc.c:179
+msgid "URL of dictionary lookup command"
+msgstr "URL des Befehls zur Wörterbuch-Abfrage"
+
+#: rc.c:181
+msgid "Display link name for images lacking ALT"
+msgstr "Bei Bildern ohne ALT-Angabe Linkziel anzeigen"
+
+#: rc.c:182
+msgid "Index file for directories"
+msgstr "Indexdatei für Verzeichnisse"
+
+#: rc.c:183
+msgid "Prepend http:// to URL automatically"
+msgstr "Ziel-Eingaben gegebenenfalls http:// voranstellen"
+
+#: rc.c:184
+msgid "Default value for open-URL command"
+msgstr "Vorgabewert bei der Adresseneingabe"
+
+#: rc.c:185
+msgid "Decode Content-Transfer-Encoding when saving"
+msgstr "Beim Speichern entsprechend Content-Transfer-Encoding entschlüsseln"
+
+#: rc.c:186
+msgid "Preserve timestamp when saving"
+msgstr "Zeitstempel beim Speichern erhalten"
+
+#: rc.c:188
+msgid "Enable mouse"
+msgstr "Maus aktivieren"
+
+#: rc.c:189
+msgid "Scroll in reverse direction of mouse drag"
+msgstr "Mausbewegungen entgegengesetzt scrollen"
+
+#: rc.c:190
+msgid "Behavior of wheel scroll speed"
+msgstr "Umsetzung der Mausradbewegung"
+
+#: rc.c:191
+msgid "(A only)Scroll by # (%) of screen"
+msgstr "(nur A) Um # % des Fensters scrollen"
+
+#: rc.c:192
+msgid "(B only)Scroll by # lines"
+msgstr "(nur B) Um # Zeilen scrollen"
+
+#: rc.c:194
+msgid "Free memory of undisplayed buffers"
+msgstr "Speicherplatz nicht angezeigter Puffer freigeben"
+
+#: rc.c:195
+msgid "Suppress `Referer:' header"
+msgstr "Referer-Kopfzeile unterdrücken"
+
+#: rc.c:196
+msgid "Search case-insensitively"
+msgstr "Groß- und Kleinschreibung beim Suchen ignorieren"
+
+#: rc.c:197
+msgid "Use LESSOPEN"
+msgstr "LESSOPEN verwenden"
+
+#: rc.c:200
+msgid "Perform SSL server verification"
+msgstr "SSL-Server-Verifizierung durchführen"
+
+#: rc.c:201
+msgid "PEM encoded certificate file of client"
+msgstr "PEM-kodierte Zertifikatsdatei des Clients"
+
+#: rc.c:202
+msgid "PEM encoded private key file of client"
+msgstr "PEM-kodierte private Schlüsseldatei des Clients"
+
+#: rc.c:203
+msgid "Path to directory for PEM encoded certificates of CAs"
+msgstr "Pfad zum Verzeichnis für PEM-kodierte Zertifikate von CAs"
+
+#: rc.c:204
+msgid "File consisting of PEM encoded certificates of CAs"
+msgstr "Datei mit PEM-kodierten Zertifikaten von CAs"
+
+#: rc.c:206
+msgid ""
+"List of forbidden SSL methods (2: SSLv2, 3: SSLv3, t: TLSv1.0, 5: TLSv1.1, "
+"6: TLSv1.2, 7: TLSv1.3)"
+msgstr ""
+"Liste unzulässiger SSL-Verfahren (2: SSLv2, 3: SSLv3, t: TLSv1.0, 5: "
+"TLSv1.1, 6: TLSv1.2, 7: TLSv1.3)"
+
+#: rc.c:209
+msgid "Enable cookie processing"
+msgstr "Cookie-Verarbeitung aktivieren"
+
+#: rc.c:210
+msgid "Print a message when receiving a cookie"
+msgstr "Den Empfang von Cookies melden"
+
+#: rc.c:211
+msgid "Accept cookies"
+msgstr "Cookies akzeptieren"
+
+#: rc.c:212
+msgid "Action to be taken on invalid cookie"
+msgstr "Reaktion auf ungültiges Cookie"
+
+#: rc.c:213
+msgid "Domains to reject cookies from"
+msgstr "Domains, deren Cookies abzulehnen sind"
+
+#: rc.c:214
+msgid "Domains to accept cookies from"
+msgstr "Domains, deren Cookies akzeptiert werden"
+
+# Variable vom Typ String im Abschnitt Cookies-Einstellungen, mh 10.10.2014
+#: rc.c:215
+msgid "Domains to avoid [wrong number of dots]"
+msgstr "Zu meidende Domains (falsche Anzahl von Punkten)"
+
+#: rc.c:217
+msgid "Number of redirections to follow"
+msgstr "Anzahl zu akzeptierender Umleitungen"
+
+# Konfigurationsvariable vom Typ string, mh, 05.10.2014
+#: rc.c:218
+msgid "Enable processing of meta-refresh tag"
+msgstr "Meta-Refresh-Element verarbeiten"
+
+#: rc.c:221
+msgid "Enable Migemo (Roma-ji search)"
+msgstr "Romaji-Suche mittels Migemo aktivieren"
+
+#: rc.c:222
+msgid "Migemo command"
+msgstr "Migemo-Befehl"
+
+#: rc.c:226
+msgid "Display charset"
+msgstr "Zeichenkodierung der Anzeige"
+
+#: rc.c:227
+msgid "Default document charset"
+msgstr "Zeichenkodierungs-Vorgabe für Dokumente"
+
+#: rc.c:228
+msgid "Automatic charset detect when loading"
+msgstr "Selbstständige Erkennung der Zeichenkodierung beim Laden"
+
+#: rc.c:229
+msgid "System charset"
+msgstr "Zeichenkodierung des Systems"
+
+#: rc.c:230
+msgid "System charset follows locale(LC_CTYPE)"
+msgstr "Zeichenkodierung des Systems entsprechend Locale (LC_CTYPE)"
+
+# war zuvor
+# msgstr "Halfdump mit der zur Anzeige benutzten Zeichenkodierung exportieren"
+#: rc.c:231
+msgid "Output halfdump with display charset"
+msgstr "Halfdump in der zur Anzeige benutzten Kodierung"
+
+# Konfigurationsvariable vom Typ boolean, mh, 05.10.2014
+#: rc.c:232
+msgid "Use multi column characters"
+msgstr "Spaltenübergreifende Zeichen verwenden"
+
+#: rc.c:233
+msgid "Use combining characters"
+msgstr "Kombinationszeichen verwenden"
+
+#: rc.c:234
+msgid "Use double width for some Unicode characters"
+msgstr "Einzelnen Unicode-Zeichen zwei Spalten einräumen"
+
+#: rc.c:235
+msgid "Use Unicode language tags"
+msgstr "Unicode-Sprach-Tags verwenden"
+
+#: rc.c:236
+msgid "Charset conversion using Unicode map"
+msgstr "Zeichen in Unicode kodieren"
+
+#: rc.c:237
+msgid "Charset conversion when loading"
+msgstr "Zeichenkodierung beim Laden anpassen"
+
+#: rc.c:238
+msgid "Adjust search string for document charset"
+msgstr "Zu suchende Zeichenkette der Kodierung des Dokumentes anpassen"
+
+#: rc.c:239
+msgid "Fix character width when conversion"
+msgstr "Bei Umwandlung an der Breite von Zeichen festhalten"
+
+#: rc.c:240
+msgid "Use GB 12345 Unicode map instead of GB 2312's"
+msgstr "GB-12345-Unicode statt GB 2312 verwenden"
+
+#: rc.c:241
+msgid "Use JIS X 0201 Roman for ISO-2022-JP"
+msgstr "JIS X 0201 Roman statt ISO-2022-JP verwenden"
+
+#: rc.c:242
+msgid "Use JIS C 6226:1978 for ISO-2022-JP"
+msgstr "JIS C 6226:1978 statt ISO-2022-JP verwenden"
+
+#: rc.c:243
+msgid "Use JIS X 0201 Katakana"
+msgstr "JIS X 0201 Katakana verwenden"
+
+#: rc.c:244
+msgid "Use JIS X 0212:1990 (Supplemental Kanji)"
+msgstr "JIS X 0212:1990 verwenden (ergänzendes Kanji)"
+
+#: rc.c:245
+msgid "Use JIS X 0213:2000 (2000JIS)"
+msgstr "JIS X 0213:2000 verwenden (2000JIS)"
+
+#: rc.c:246
+msgid "Strict ISO-2022-JP/KR/CN"
+msgstr "Striktes ISO-2022-JP/KR/CN"
+
+#: rc.c:247
+msgid "Treat 4 bytes char. of GB18030 as Unicode"
+msgstr "4-Byte-Zeichen von GB 18030 als Unicode auffassen"
+
+#: rc.c:248
+msgid "Simple Preserve space"
+msgstr "Einfache Platzerhaltung"
+
+#: rc.c:251
+msgid "keymap file"
+msgstr "Tastaturbelegungs-Datei"
+
+#: rc.c:268
+msgid "black"
+msgstr "schwarz"
+
+#: rc.c:269
+msgid "red"
+msgstr "rot"
+
+#: rc.c:270
+msgid "green"
+msgstr "grün"
+
+#: rc.c:271
+msgid "yellow"
+msgstr "gelb"
+
+#: rc.c:272
+msgid "blue"
+msgstr "blau"
+
+#: rc.c:273
+msgid "magenta"
+msgstr "magenta"
+
+#: rc.c:274
+msgid "cyan"
+msgstr "cyan"
+
+#: rc.c:275
+msgid "white"
+msgstr "weiß"
+
+#: rc.c:276
+msgid "terminal"
+msgstr "wie Terminal"
+
+#: rc.c:295
+msgid "none"
+msgstr "keiner"
+
+#: rc.c:296
+msgid "current URL"
+msgstr "aktuelle URL"
+
+#: rc.c:297
+msgid "link URL"
+msgstr "Link-URL"
+
+#: rc.c:302
+msgid "simple"
+msgstr "einfach"
+
+#: rc.c:303
+msgid "use tag"
+msgstr "durch Tags"
+
+#: rc.c:304
+msgid "fontify"
+msgstr "hervorgehoben"
+
+#: rc.c:310
+msgid "A:relative to screen height"
+msgstr "A: relativ zu Fensterhöhe"
+
+#: rc.c:311
+msgid "B:fixed speed"
+msgstr "B: feste Geschwindigkeit"
+
+#: rc.c:318
+msgid "unspecified"
+msgstr "nicht spezifiziert"
+
+#: rc.c:319
+msgid "inet inet6"
+msgstr "inet inet6"
+
+#: rc.c:320
+msgid "inet6 inet"
+msgstr "inet6 inet"
+
+#: rc.c:321
+msgid "inet only"
+msgstr "nur inet"
+
+#: rc.c:322
+msgid "inet6 only"
+msgstr "nur inet6"
+
+#: rc.c:329
+msgid "discard"
+msgstr "verwerfen"
+
+#: rc.c:331
+msgid "accept"
+msgstr "annehmen"
+
+#: rc.c:333
+msgid "ask"
+msgstr "nachfragen"
+
+# gehört zu rc.c:142
+# erscheint in Pulldown-Menü, daher verkürzt. mh 09.10.2014
+#: rc.c:340
+msgid "use internal mailer instead"
+msgstr "Mail intern erstellen"
+
+# gehört zu rc.c:142
+# erscheint in Pulldown-Menü, daher verkürzt. mh 09.10.2014
+#: rc.c:342
+msgid "ignore options and use only the address"
+msgstr "Optionen ignorieren"
+
+# gehört zu rc.c:142
+# erscheint in Pulldown-Menü, daher verkürzt. mh 09.10.2014
+#: rc.c:343
+msgid "use full mailto URL"
+msgstr "komplett verwenden"
+
+#: rc.c:352
+msgid "OFF"
+msgstr "AUS"
+
+#: rc.c:353
+msgid "Only ISO 2022"
+msgstr "Nur ISO-2022"
+
+#: rc.c:354
+msgid "ON"
+msgstr "AN"
+
+# Wert aus einem Set zur Wiedergabe von Rändern, mh, 05.10.2014
+#: rc.c:360
+msgid "ASCII"
+msgstr "ASCII"
+
+# Wert aus einem Set zur Wiedergabe von Rändern, mh, 05.10.2014
+# hier ist "Zeichensatz" akzeptabel mh, 09.10.2014
+#: rc.c:361
+msgid "charset specific"
+msgstr "zeichensatzspezifisch"
+
+# Wert aus einem Set zur Wiedergabe von Rändern, mh, 05.10.2014
+#: rc.c:362
+msgid "DEC special graphics"
+msgstr "mit DEC-Grafiken"
+
+#: rc.c:743
+msgid "Display Settings"
+msgstr "Einstellungen zur Anzeige"
+
+#: rc.c:745
+msgid "Color Settings"
+msgstr "Farbeinstellungen"
+
+#: rc.c:747
+msgid "Miscellaneous Settings"
+msgstr "Weitere Einstellungen"
+
+#: rc.c:748
+msgid "Directory Settings"
+msgstr "Verzeichnis-Einstellungen"
+
+#: rc.c:749
+msgid "External Program Settings"
+msgstr "Einstellungen für externe Programme"
+
+#: rc.c:750
+msgid "Network Settings"
+msgstr "Netzwerk-Einstellungen"
+
+#: rc.c:751
+msgid "Proxy Settings"
+msgstr "Proxy-Einstellungen"
+
+#: rc.c:753
+msgid "SSL Settings"
+msgstr "SSL-Einstellungen"
+
+#: rc.c:756
+msgid "Cookie Settings"
+msgstr "Cookie-Einstellungen"
+
+#: rc.c:759
+msgid "Charset Settings"
+msgstr "Zeichenkodierungs-Einstellungen"
+
+#. TRANSLATORS:
+#. * AcceptLang default: this is used in Accept-Language: HTTP request
+#. * header. For example, ja.po should translate it as
+#. * "ja;q=1.0, en;q=0.5" like that.
+#.
+#: rc.c:1241
+msgid "en;q=1.0"
+msgstr "de;q=1.0, en;q=0.5"
diff --git a/po/ja.po b/po/ja.po
index d67c695..5cc00d2 100644
--- a/po/ja.po
+++ b/po/ja.po
@@ -1,872 +1,912 @@
# Japanese translations for w3m package
# w3m パッケージに対する英訳.
-# Copyright (C) 2003 THE w3m'S COPYRIGHT HOLDER
+# Copyright (C) 2003-2020 THE w3m'S COPYRIGHT HOLDER
# This file is distributed under the same license as the w3m package.
# Fumitoshi UKAI <ukai@debian.or.jp>, 2003.
#
msgid ""
msgstr ""
"Project-Id-Version: w3m 0.5.3\n"
-"Report-Msgid-Bugs-To: satodai@w3m.jp\n"
-"POT-Creation-Date: 2010-08-20 18:44+0900\n"
-"PO-Revision-Date: 2010-08-20 18:45+0900\n"
-"Last-Translator: Fumitoshi UKAI <ukai@debian.or.jp>\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2020-11-24 19:21+0900\n"
+"PO-Revision-Date: 2020-11-24 19:22+0900\n"
+"Last-Translator: Tatsuya Kinoshita <tats@debian.org>\n"
"Language-Team: Japanese\n"
-"Language: \n"
+"Language: ja\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-#: menu.c:267
+#: menu.c:269
msgid " Back (b) "
msgstr "戻る (b)"
-#: menu.c:268
+#: menu.c:270
msgid " Select Buffer(s) "
msgstr "バッファ選択 (s)"
-#: menu.c:270
+#: menu.c:272
msgid " Select Tab (t) "
msgstr "タブ選択 (t)"
-#: menu.c:272
+#: menu.c:274
msgid " View Source (v) "
msgstr "ソースを表示 (v)"
-#: menu.c:273
+#: menu.c:275
msgid " Edit Source (e) "
msgstr "ソースを編集 (e)"
-#: menu.c:274
+#: menu.c:276
msgid " Save Source (S) "
msgstr "ソースを保存 (S)"
-#: menu.c:275
+#: menu.c:277
msgid " Reload (r) "
msgstr "再読み込み (r)"
-#: menu.c:276 menu.c:283 menu.c:287
+#: menu.c:278 menu.c:285 menu.c:289
msgid " ---------------- "
msgstr "----------------"
-#: menu.c:277
+#: menu.c:279
msgid " Go Link (a) "
msgstr "リンクを表示 (a)"
-#: menu.c:278
+#: menu.c:280
msgid " on New Tab (n) "
msgstr "新タブで表示 (n)"
-#: menu.c:279
+#: menu.c:281
msgid " Save Link (A) "
msgstr "リンクを保存 (A)"
-#: menu.c:280
+#: menu.c:282
msgid " View Image (i) "
msgstr "画像を表示 (i)"
-#: menu.c:281
+#: menu.c:283
msgid " Save Image (I) "
msgstr "画像を保存 (I)"
-#: menu.c:282
+#: menu.c:284
msgid " View Frame (f) "
msgstr "フレーム表示 (f)"
-#: menu.c:284
+#: menu.c:286
msgid " Bookmark (B) "
msgstr "ブックマーク (B)"
-#: menu.c:285
+#: menu.c:287
msgid " Help (h) "
msgstr "ヘルプ (h)"
-#: menu.c:286
+#: menu.c:288
msgid " Option (o) "
msgstr "オプション (o)"
-#: menu.c:288
+#: menu.c:290
msgid " Quit (q) "
msgstr "終了 (q)"
-#: rc.c:60
+#: rc.c:62
msgid "External Viewer Setup"
msgstr "外部ビューアの編集"
-#: rc.c:61
+#: rc.c:63
msgid "Tab width in characters"
msgstr "タブ幅"
-#: rc.c:62
+#: rc.c:64
msgid "Indent for HTML rendering"
msgstr "HTML整形時のインデント幅"
-#: rc.c:63
+#: rc.c:65
msgid "Number of pixels per character (4.0...32.0)"
msgstr "文字幅 (4.0...32.0)"
-#: rc.c:64
+#: rc.c:66
msgid "Number of pixels per line (4.0...64.0)"
msgstr "一行の高さ (4.0...64.0)"
-#: rc.c:65
+#: rc.c:67
msgid "Number of remembered lines when used as a pager"
msgstr "ページャとして利用した時に保存される行数"
-#: rc.c:66
+#: rc.c:68
msgid "Use URL history"
msgstr "履歴を使う"
-#: rc.c:67
+#: rc.c:69
msgid "Number of remembered URL"
msgstr "保持するURL履歴の数"
-#: rc.c:68
+#: rc.c:70
msgid "Save URL history"
msgstr "URL履歴の保存"
-#: rc.c:69
+#: rc.c:71
msgid "Render frames automatically"
msgstr "フレームの自動表示"
-#: rc.c:70
+#: rc.c:72
msgid "Treat argument without scheme as URL"
msgstr "scheme のない引数も URL とみなす"
-#: rc.c:71
+#: rc.c:73
msgid "Use _self as default target"
msgstr "targetが未指定の場合に_selfを使用する"
-#: rc.c:72
+#: rc.c:74
msgid "Open link on new tab if target is _blank or _new"
msgstr "targetが_blankか_newの場合は新しいタブで開く"
-#: rc.c:73
+#: rc.c:75
msgid "Open download list panel on new tab"
msgstr "Download list panel を新しいタブで開く"
-#: rc.c:74
+#: rc.c:76
msgid "Display link URL automatically"
msgstr "リンク先の自動表示"
-#: rc.c:75
+#: rc.c:77
msgid "Display link numbers"
msgstr "リンク番号の表示"
-#: rc.c:76
+#: rc.c:78
msgid "Display decoded URL"
msgstr "URLをデコードして表示"
-#: rc.c:77
+#: rc.c:79
msgid "Display current line number"
msgstr "現在の行番号の表示"
-#: rc.c:78
+#: rc.c:80
msgid "Display inline images"
msgstr "インライン画像を表示"
-#: rc.c:79
+#: rc.c:81
msgid "Display pseudo-ALTs for inline images with no ALT or TITLE string"
msgstr "ALT または TITLE がない画像の代替テキスト表示"
-#: rc.c:81
+#: rc.c:83
msgid "Load inline images automatically"
msgstr "インライン画像を自動で読み込む"
-#: rc.c:82
+#: rc.c:84
msgid "Maximum processes for parallel image loading"
msgstr "画像読み込み時の最大プロセス数"
-#: rc.c:83
+#: rc.c:85
msgid "Use external image viewer"
msgstr "画像を外部ビューワで表示"
-#: rc.c:84
+#: rc.c:86
msgid "Scale of image (%)"
msgstr "画像のスケール(%)"
-#: rc.c:85
+#: rc.c:87
msgid "External command to display image"
msgstr "画像を表示するためのコマンド"
-#: rc.c:86
+#: rc.c:88
msgid "Use link list of image map"
msgstr "イメージマップのリンク先一覧を表示"
-#: rc.c:88
+#: rc.c:90
msgid "Display file names in multi-column format"
msgstr "ファイル名のマルチカラム表示"
-#: rc.c:89
+#: rc.c:91
msgid "Use ASCII equivalents to display entities"
msgstr "エンティティを ASCII の代替表現で表す"
-#: rc.c:90
+#: rc.c:92
msgid "Character type for border of table and menu"
msgstr "テーブルやメニューの枠に使う文字"
-#: rc.c:91
+#: rc.c:93
+msgid "Display table borders, ignore value of BORDER"
+msgstr "BORDER の値は無視してテーブル枠を表示"
+
+#: rc.c:94
msgid "Fold lines in TEXTAREA"
msgstr "TEXTAREA の行を折り返して表示"
-#: rc.c:92
+#: rc.c:95
msgid "Display INS, DEL, S and STRIKE element"
msgstr "INS, DEL, S, STRIKE 要素の表示"
-#: rc.c:93
+#: rc.c:96
msgid "Display with color"
msgstr "カラー表示"
-#: rc.c:94
+#: rc.c:97
msgid "Color of normal character"
msgstr "文字の色"
-#: rc.c:95
+#: rc.c:98
msgid "Color of anchor"
msgstr "アンカーの色"
-#: rc.c:96
+#: rc.c:99
msgid "Color of image link"
msgstr "画像リンクの色"
-#: rc.c:97
+#: rc.c:100
msgid "Color of form"
msgstr "フォームの色"
-#: rc.c:98
+#: rc.c:101
msgid "Enable coloring of active link"
msgstr "現在選択されているリンクの色を指定する"
-#: rc.c:99
+#: rc.c:102
msgid "Color of currently active link"
msgstr "現在選択されているリンクの色"
-#: rc.c:100
+#: rc.c:103
msgid "Use visited link color"
msgstr "訪れたことがあるリンクは色を変える"
-#: rc.c:101
+#: rc.c:104
msgid "Color of visited link"
msgstr "訪れたことがあるリンクの色"
-#: rc.c:102
+#: rc.c:105
msgid "Color of background"
msgstr "背景の色"
-#: rc.c:103
+#: rc.c:106
msgid "Color of mark"
msgstr "マークの色"
-#: rc.c:104
+#: rc.c:107
msgid "Use proxy"
msgstr "プロキシを使用する"
-#: rc.c:105
+#: rc.c:108
msgid "URL of HTTP proxy host"
msgstr "HTTPプロキシ(URLで入力)"
-#: rc.c:107
+#: rc.c:110
msgid "URL of HTTPS proxy host"
msgstr "HTTPSプロキシ(URLで入力)"
-#: rc.c:110
+#: rc.c:113
msgid "URL of GOPHER proxy host"
msgstr "GOPHERプロキシ(URLで入力)"
-#: rc.c:112
+#: rc.c:115
msgid "URL of FTP proxy host"
msgstr "FTPプロキシ(URLで入力)"
-#: rc.c:113
+#: rc.c:116
msgid "Domains to be accessed directly (no proxy)"
msgstr "プロキシから除外するドメイン"
-#: rc.c:114
+#: rc.c:117
msgid "Check noproxy by network address"
msgstr "ネットワークアドレスでプロキシ除外のチェック"
-#: rc.c:115
+#: rc.c:118
msgid "Disable cache"
msgstr "Cache を使わない"
-#: rc.c:117
+#: rc.c:120
msgid "News server"
msgstr "News サーバ"
-#: rc.c:118
+#: rc.c:121
msgid "Mode of news server"
msgstr "News サーバのモード"
-#: rc.c:119
+#: rc.c:122
msgid "Number of news messages"
msgstr "News を一覧表示する時の数"
-#: rc.c:121
+#: rc.c:124
msgid "Order of name resolution"
msgstr "名前解決の順序"
-#: rc.c:122
+#: rc.c:125
msgid "Directory corresponding to / (document root)"
msgstr "/ で表されるディレクトリ(document root)"
-#: rc.c:123
+#: rc.c:126
msgid "Directory corresponding to /~user"
msgstr "/~user で表されるディレクトリ"
-#: rc.c:124
+#: rc.c:127
msgid "Directory corresponding to /cgi-bin"
msgstr "/cgi-bin で表されるディレクトリ"
-#: rc.c:125
+#: rc.c:128
msgid "Confirm when quitting with q"
msgstr "q での終了時に確認する"
-#: rc.c:126
+#: rc.c:129
msgid "Close tab if buffer is last when back"
msgstr "戻る時にバッファが最後ならタブを閉じる"
-#: rc.c:128
+#: rc.c:131
msgid "Enable mark operations"
msgstr "マーク機能を有効にする"
-#: rc.c:130
+#: rc.c:133
msgid "Enable Emacs-style line editing"
msgstr "Emacs風の行編集にする"
-#: rc.c:131
+#: rc.c:134
+msgid "Space key triggers file completion while editing URLs"
+msgstr "URL編集中にスペースキーでファイル補完する"
+
+#: rc.c:135
msgid "Enable vi-like numeric prefix"
msgstr "vi風の数値プレフィクス"
-#: rc.c:132
+#: rc.c:136
msgid "Move cursor to top line when going to label"
msgstr "ラベルに移動する時にカーソルがトップになるようにする"
-#: rc.c:133
+#: rc.c:137
msgid "Move cursor to top line when moving to next page"
msgstr "次のページに移動する時にカーソルがトップになるようにする"
-#: rc.c:134
+#: rc.c:138
msgid "Fold lines of plain text file"
msgstr "plain text ファイルの行を折り返す"
-#: rc.c:135
+#: rc.c:139
msgid "Show line numbers"
msgstr "行番号を表示する"
-#: rc.c:136
+#: rc.c:140
msgid "Show search string"
msgstr "検索文字列を表示する"
-#: rc.c:137
+#: rc.c:141
msgid "List of mime.types files"
msgstr "利用するmime.types"
-#: rc.c:138
+#: rc.c:142
msgid "List of mailcap files"
msgstr "利用するmailcap"
-#: rc.c:139
+#: rc.c:143
msgid "List of urimethodmap files"
msgstr "利用するurimethodmap"
-#: rc.c:140
+#: rc.c:144
msgid "Editor"
msgstr "利用するエディタ"
-#: rc.c:141
+#: rc.c:145
msgid "Mailer"
msgstr "利用するメーラ"
-#: rc.c:142
+#: rc.c:146
msgid "How to call Mailer for mailto URLs with options"
msgstr "mailto タグの取り扱い"
-#: rc.c:143
-msgid "External Browser"
+#: rc.c:147
+msgid "External browser"
msgstr "外部ブラウザ"
-#: rc.c:144
-msgid "Second External Browser"
+#: rc.c:148
+msgid "2nd external browser"
msgstr "外部ブラウザその2"
-#: rc.c:145
-msgid "Third External Browser"
+#: rc.c:149
+msgid "3rd external browser"
msgstr "外部ブラウザその3"
-#: rc.c:146
+#: rc.c:150
+msgid "4th external browser"
+msgstr "外部ブラウザその4"
+
+#: rc.c:151
+msgid "5th external browser"
+msgstr "外部ブラウザその5"
+
+#: rc.c:152
+msgid "6th external browser"
+msgstr "外部ブラウザその6"
+
+#: rc.c:153
+msgid "7th external browser"
+msgstr "外部ブラウザその7"
+
+#: rc.c:154
+msgid "8th external browser"
+msgstr "外部ブラウザその8"
+
+#: rc.c:155
+msgid "9th external browser"
+msgstr "外部ブラウザその9"
+
+#: rc.c:156
msgid "Disable secret file security check"
msgstr "パスワードファイルのパーミッションをチェックしない"
-#: rc.c:147
+#: rc.c:157
msgid "Password file"
msgstr "パスワードファイル"
-#: rc.c:148
+#: rc.c:158
msgid "File for setting form on loading"
msgstr "文書読込時のフォーム設定用ファイル"
-#: rc.c:149
+#: rc.c:159
+msgid "File for preferences for each site"
+msgstr "サイト別設定のファイル"
+
+#: rc.c:160
msgid "Password for anonymous FTP (your mail address)"
msgstr "FTPのパスワード(普通は自分のmail addressを使う)"
-#: rc.c:150
+#: rc.c:161
msgid "Generate domain part of password for FTP"
msgstr "FTPのパスワードのドメイン名を自動生成する"
-#: rc.c:151
+#: rc.c:162
msgid "User-Agent identification string"
msgstr "User-Agent"
-#: rc.c:152
+#: rc.c:163
msgid "Accept-Encoding header"
msgstr "圧縮方法(Accept-Encoding:)"
-#: rc.c:153
+#: rc.c:164
msgid "Accept header"
msgstr "受けつけるメディアタイプ(Accept:)"
-#: rc.c:154
+#: rc.c:165
msgid "Accept-Language header"
msgstr "受けつける言語(Accept-Language:)"
-#: rc.c:155
+#: rc.c:166
msgid "Treat URL-like strings as links in all pages"
msgstr "全てのページのURL風の文字列をリンクにする"
-#: rc.c:156
+#: rc.c:167
msgid "Wrap search"
msgstr "折り返し検索"
-#: rc.c:157
+#: rc.c:168
msgid "Display unseen objects (e.g. bgimage tag)"
msgstr "背景画像等へのリンクを作る"
-#: rc.c:158
+#: rc.c:169
msgid "Uncompress compressed data automatically when downloading"
msgstr "ダウンロード時に自動的に圧縮されたデータを解凍する"
-#: rc.c:160
+#: rc.c:171
msgid "Run external viewer in a separate session"
msgstr "外部ビューアを別セッションで動かす"
-#: rc.c:162
+#: rc.c:173
msgid "Run external viewer in the background"
msgstr "外部ビューアをバックグラウンドで動かす"
-#: rc.c:164
+#: rc.c:175
msgid "Use external program for directory listing"
msgstr "ディレクトリリストに外部コマンドを使う"
-#: rc.c:165
+#: rc.c:176
msgid "URL of directory listing command"
msgstr "ディレクトリリスト用コマンド"
-#: rc.c:167
+#: rc.c:178
msgid "Enable dictionary lookup through CGI"
msgstr "辞書引きをCGI経由でおこなう"
-#: rc.c:168
+#: rc.c:179
msgid "URL of dictionary lookup command"
msgstr "辞書引きコマンドのURL"
-#: rc.c:170
+#: rc.c:181
msgid "Display link name for images lacking ALT"
msgstr "空のIMG ALT属性の時にリンク名を表示する"
-#: rc.c:171
+#: rc.c:182
msgid "Index file for directories"
msgstr "各ディレクトリのインデックスファイル"
-#: rc.c:172
+#: rc.c:183
msgid "Prepend http:// to URL automatically"
msgstr "URLに自動的に http:// を補う"
-#: rc.c:173
+#: rc.c:184
msgid "Default value for open-URL command"
msgstr "URLを開く時のデフォルト文字列"
-#: rc.c:174
+#: rc.c:185
msgid "Decode Content-Transfer-Encoding when saving"
msgstr "保存時に Content-Transfer-Encoding をデコードする"
-#: rc.c:175
+#: rc.c:186
msgid "Preserve timestamp when saving"
msgstr "保存時にタイムスタンプを保持する"
-#: rc.c:177
+#: rc.c:188
msgid "Enable mouse"
msgstr "マウスを使う"
-#: rc.c:178
+#: rc.c:189
msgid "Scroll in reverse direction of mouse drag"
msgstr "マウスのドラッグ動作を逆にする"
-#: rc.c:179
+#: rc.c:190
msgid "Behavior of wheel scroll speed"
msgstr "ホイールでのスクロール速度の扱い"
-#: rc.c:180
+#: rc.c:191
msgid "(A only)Scroll by # (%) of screen"
msgstr "(Aのみ)画面の何%スクロールするか"
-#: rc.c:181
+#: rc.c:192
msgid "(B only)Scroll by # lines"
msgstr "(Bのみ)スクロールする行数"
-#: rc.c:183
+#: rc.c:194
msgid "Free memory of undisplayed buffers"
msgstr "表示されていないバッファのメモリを解放する"
-#: rc.c:184
+#: rc.c:195
msgid "Suppress `Referer:' header"
msgstr "Referer: を送らないようにする"
-#: rc.c:185
+#: rc.c:196
msgid "Search case-insensitively"
msgstr "サーチ時に大文字小文字の区別をしない"
-#: rc.c:186
+#: rc.c:197
msgid "Use LESSOPEN"
msgstr "LESSOPENを使用"
-#: rc.c:189
+#: rc.c:200
msgid "Perform SSL server verification"
msgstr "SSLのサーバ認証を行う"
-#: rc.c:190
+#: rc.c:201
msgid "PEM encoded certificate file of client"
msgstr "SSLのクライアント用PEM形式証明書ファイル"
-#: rc.c:191
+#: rc.c:202
msgid "PEM encoded private key file of client"
msgstr "SSLのクライアント用PEM形式秘密鍵ファイル"
-#: rc.c:192
+#: rc.c:203
msgid "Path to directory for PEM encoded certificates of CAs"
msgstr "SSLの認証局のPEM形式証明書群のあるディレクトリへのパス"
-#: rc.c:193
+#: rc.c:204
msgid "File consisting of PEM encoded certificates of CAs"
msgstr "SSLの認証局のPEM形式証明書群のファイル"
-#: rc.c:195
-msgid "List of forbidden SSL methods (2: SSLv2, 3: SSLv3, t:TLSv1)"
-msgstr "使わないSSLメソッドのリスト(2: SSLv2, 3: SSLv3, t:TLSv1)"
+#: rc.c:206
+msgid ""
+"List of forbidden SSL methods (2: SSLv2, 3: SSLv3, t: TLSv1.0, 5: TLSv1.1, "
+"6: TLSv1.2, 7: TLSv1.3)"
+msgstr ""
+"使わないSSLメソッドのリスト(2: SSLv2, 3: SSLv3, t: TLSv1.0, 5: TLSv1.1, 6: "
+"TLSv1.2, 7: TLSv1.3)"
-#: rc.c:198
+#: rc.c:209
msgid "Enable cookie processing"
msgstr "クッキーを使用する"
-#: rc.c:199
+#: rc.c:210
msgid "Print a message when receiving a cookie"
msgstr "クッキーを受け付けたときにメッセージを表示する"
-#: rc.c:200
+#: rc.c:211
msgid "Accept cookies"
msgstr "クッキーを受け付ける"
-#: rc.c:201
+#: rc.c:212
msgid "Action to be taken on invalid cookie"
msgstr "問題のあるクッキーでも受け付ける"
-#: rc.c:202
+#: rc.c:213
msgid "Domains to reject cookies from"
msgstr "クッキーを受け付けないドメイン"
-#: rc.c:203
+#: rc.c:214
msgid "Domains to accept cookies from"
msgstr "クッキーを受け付けるドメイン"
-#: rc.c:204
+#: rc.c:215
msgid "Domains to avoid [wrong number of dots]"
msgstr "[wrong number of dots] を無視するドメイン"
-#: rc.c:206
+#: rc.c:217
msgid "Number of redirections to follow"
msgstr "従うリダイレクトの回数"
-#: rc.c:207
+#: rc.c:218
msgid "Enable processing of meta-refresh tag"
msgstr "meta refresh に対応する"
-#: rc.c:210
+#: rc.c:221
msgid "Enable Migemo (Roma-ji search)"
msgstr "Migemo(ローマ字検索)を使用する"
-#: rc.c:211
+#: rc.c:222
msgid "Migemo command"
msgstr "Migemoコマンド"
-#: rc.c:215
+#: rc.c:226
msgid "Display charset"
msgstr "表示用文字コード"
-#: rc.c:216
+#: rc.c:227
msgid "Default document charset"
msgstr "文書の標準の文字コード"
-#: rc.c:217
+#: rc.c:228
msgid "Automatic charset detect when loading"
msgstr "文書の読み込み時に文字コードの自動判定を行う"
-#: rc.c:218
+#: rc.c:229
msgid "System charset"
msgstr "システムの文字コード"
-#: rc.c:219
+#: rc.c:230
msgid "System charset follows locale(LC_CTYPE)"
msgstr "Locale(LC_CTYPE) に従ってシステムの文字コードを設定"
-#: rc.c:220
+#: rc.c:231
msgid "Output halfdump with display charset"
msgstr "表示用文字コードで halfdump の出力を行う"
-#: rc.c:221
+#: rc.c:232
msgid "Use multi column characters"
msgstr "複数カラムの文字を使う"
-#: rc.c:222
+#: rc.c:233
msgid "Use combining characters"
msgstr "結合文字を使う"
-#: rc.c:223
+#: rc.c:234
msgid "Use double width for some Unicode characters"
msgstr "ある種のUnicode文字を全角にする"
-#: rc.c:224
+#: rc.c:235
msgid "Use Unicode language tags"
msgstr "Unicode の言語タグを使う"
-#: rc.c:225
+#: rc.c:236
msgid "Charset conversion using Unicode map"
msgstr "Unicodeを介したコード変換"
-#: rc.c:226
+#: rc.c:237
msgid "Charset conversion when loading"
msgstr "文書の読み込み時に文字コードを変換する"
-#: rc.c:227
+#: rc.c:238
msgid "Adjust search string for document charset"
msgstr "検索文字列を文書の文字コードに変換する"
-#: rc.c:228
+#: rc.c:239
msgid "Fix character width when conversion"
msgstr "文字幅の変わる変換をしない"
-#: rc.c:229
+#: rc.c:240
msgid "Use GB 12345 Unicode map instead of GB 2312's"
msgstr "GB 12345 の Unicode マップを GB 2312 用に使う"
-#: rc.c:230
+#: rc.c:241
msgid "Use JIS X 0201 Roman for ISO-2022-JP"
msgstr "ISO-2022-JP で JIS X 0201-Roman を使う"
-#: rc.c:231
+#: rc.c:242
msgid "Use JIS C 6226:1978 for ISO-2022-JP"
msgstr "ISO-2022-JP で JIS C 6226:1978(旧JIS) を使う"
-#: rc.c:232
+#: rc.c:243
msgid "Use JIS X 0201 Katakana"
msgstr "JIS X 0201-Katakana を使う"
-#: rc.c:233
+#: rc.c:244
msgid "Use JIS X 0212:1990 (Supplemental Kanji)"
msgstr "JIS X 0212:1990(補助漢字) を使う"
-#: rc.c:234
+#: rc.c:245
msgid "Use JIS X 0213:2000 (2000JIS)"
msgstr "JIS X 0213:2000(2000JIS) を使う"
-#: rc.c:235
+#: rc.c:246
msgid "Strict ISO-2022-JP/KR/CN"
msgstr "厳格な ISO-2022-JP/KR/CN を使う"
-#: rc.c:236
+#: rc.c:247
msgid "Treat 4 bytes char. of GB18030 as Unicode"
msgstr "GB18030 の 4バイト文字を Unicode として扱う"
-#: rc.c:237
+#: rc.c:248
msgid "Simple Preserve space"
msgstr "単純な空白の保存"
-#: rc.c:240
+#: rc.c:251
msgid "keymap file"
msgstr "keymapファイル"
-#: rc.c:257
+#: rc.c:268
msgid "black"
msgstr "黒"
-#: rc.c:258
+#: rc.c:269
msgid "red"
msgstr "赤"
-#: rc.c:259
+#: rc.c:270
msgid "green"
msgstr "緑"
-#: rc.c:260
+#: rc.c:271
msgid "yellow"
msgstr "黄"
-#: rc.c:261
+#: rc.c:272
msgid "blue"
msgstr "青"
-#: rc.c:262
+#: rc.c:273
msgid "magenta"
msgstr "紫"
-#: rc.c:263
+#: rc.c:274
msgid "cyan"
msgstr "空色"
-#: rc.c:264
+#: rc.c:275
msgid "white"
msgstr "白"
-#: rc.c:265
+#: rc.c:276
msgid "terminal"
msgstr "端末"
-#: rc.c:284
+#: rc.c:295
msgid "none"
msgstr "無し"
-#: rc.c:285
+#: rc.c:296
msgid "current URL"
msgstr "現在のURL"
-#: rc.c:286
+#: rc.c:297
msgid "link URL"
msgstr "リンク先のURL"
-#: rc.c:291
+#: rc.c:302
msgid "simple"
msgstr "シンプル"
-#: rc.c:292
+#: rc.c:303
msgid "use tag"
msgstr "タグで表示"
-#: rc.c:293
+#: rc.c:304
msgid "fontify"
msgstr "文字装飾"
-#: rc.c:299
+#: rc.c:310
msgid "A:relative to screen height"
msgstr "A:画面サイズに比例"
-#: rc.c:300
+#: rc.c:311
msgid "B:fixed speed"
msgstr "B:一定の行数"
-#: rc.c:307
+#: rc.c:318
msgid "unspecified"
msgstr "指定しない"
-#: rc.c:308
+#: rc.c:319
msgid "inet inet6"
msgstr "IPv4優先"
-#: rc.c:309
+#: rc.c:320
msgid "inet6 inet"
msgstr "IPv6優先"
-#: rc.c:310
+#: rc.c:321
msgid "inet only"
msgstr "IPv4のみ"
-#: rc.c:311
+#: rc.c:322
msgid "inet6 only"
msgstr "IPv6のみ"
-#: rc.c:318
+#: rc.c:329
msgid "discard"
msgstr "破棄する"
-#: rc.c:320
+#: rc.c:331
msgid "accept"
msgstr "受け入れる"
-#: rc.c:322
+#: rc.c:333
msgid "ask"
msgstr "確認する"
-#: rc.c:329
+#: rc.c:340
msgid "use internal mailer instead"
msgstr "内部メーラを使用"
-#: rc.c:331
+#: rc.c:342
msgid "ignore options and use only the address"
msgstr "アドレスのみ使用"
-#: rc.c:332
+#: rc.c:343
msgid "use full mailto URL"
msgstr "URL 全体を使用"
-#: rc.c:341
+#: rc.c:352
msgid "OFF"
msgstr "無効"
-#: rc.c:342
+#: rc.c:353
msgid "Only ISO 2022"
msgstr "ISO 2022 のみ"
-#: rc.c:343
+#: rc.c:354
msgid "ON"
msgstr "有効"
-#: rc.c:349
+#: rc.c:360
msgid "ASCII"
msgstr "ASCII"
-#: rc.c:350
+#: rc.c:361
msgid "charset specific"
msgstr "文字コード依存"
-#: rc.c:351
+#: rc.c:362
msgid "DEC special graphics"
msgstr "DEC 特殊文字"
-#: rc.c:714
+#: rc.c:743
msgid "Display Settings"
msgstr "表示関係"
-#: rc.c:716
+#: rc.c:745
msgid "Color Settings"
msgstr "表示色"
-#: rc.c:718
+#: rc.c:747
msgid "Miscellaneous Settings"
msgstr "雑多な設定"
-#: rc.c:719
+#: rc.c:748
msgid "Directory Settings"
msgstr "ディレクトリ設定"
-#: rc.c:720
+#: rc.c:749
msgid "External Program Settings"
msgstr "外部プログラム"
-#: rc.c:721
+#: rc.c:750
msgid "Network Settings"
msgstr "ネットワークの設定"
-#: rc.c:722
+#: rc.c:751
msgid "Proxy Settings"
msgstr "プロキシの設定"
-#: rc.c:724
+#: rc.c:753
msgid "SSL Settings"
msgstr "SSLの設定"
-#: rc.c:727
+#: rc.c:756
msgid "Cookie Settings"
msgstr "クッキーの設定"
-#: rc.c:730
+#: rc.c:759
msgid "Charset Settings"
msgstr "文字コードの設定"
@@ -875,6 +915,6 @@ msgstr "文字コードの設定"
#. * header. For example, ja.po should translate it as
#. * "ja;q=1.0, en;q=0.5" like that.
#.
-#: rc.c:1209
+#: rc.c:1241
msgid "en;q=1.0"
msgstr "ja;q=1.0, en;q=0.5"
diff --git a/po/w3m.pot b/po/w3m.pot
index e164b1e..0e8ea91 100644
--- a/po/w3m.pot
+++ b/po/w3m.pot
@@ -1,14 +1,14 @@
# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR Fumitoshi UKAI
-# This file is distributed under the same license as the PACKAGE package.
+# Copyright (C) YEAR THE w3m'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the w3m package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: w3m 0.5.3\n"
-"Report-Msgid-Bugs-To: satodai@w3m.jp\n"
-"POT-Creation-Date: 2010-08-20 18:44+0900\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2020-11-24 19:21+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -17,855 +17,893 @@ msgstr ""
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
-#: menu.c:267
+#: menu.c:269
msgid " Back (b) "
msgstr ""
-#: menu.c:268
+#: menu.c:270
msgid " Select Buffer(s) "
msgstr ""
-#: menu.c:270
+#: menu.c:272
msgid " Select Tab (t) "
msgstr ""
-#: menu.c:272
+#: menu.c:274
msgid " View Source (v) "
msgstr ""
-#: menu.c:273
+#: menu.c:275
msgid " Edit Source (e) "
msgstr ""
-#: menu.c:274
+#: menu.c:276
msgid " Save Source (S) "
msgstr ""
-#: menu.c:275
+#: menu.c:277
msgid " Reload (r) "
msgstr ""
-#: menu.c:276 menu.c:283 menu.c:287
+#: menu.c:278 menu.c:285 menu.c:289
msgid " ---------------- "
msgstr ""
-#: menu.c:277
+#: menu.c:279
msgid " Go Link (a) "
msgstr ""
-#: menu.c:278
+#: menu.c:280
msgid " on New Tab (n) "
msgstr ""
-#: menu.c:279
+#: menu.c:281
msgid " Save Link (A) "
msgstr ""
-#: menu.c:280
+#: menu.c:282
msgid " View Image (i) "
msgstr ""
-#: menu.c:281
+#: menu.c:283
msgid " Save Image (I) "
msgstr ""
-#: menu.c:282
+#: menu.c:284
msgid " View Frame (f) "
msgstr ""
-#: menu.c:284
+#: menu.c:286
msgid " Bookmark (B) "
msgstr ""
-#: menu.c:285
+#: menu.c:287
msgid " Help (h) "
msgstr ""
-#: menu.c:286
+#: menu.c:288
msgid " Option (o) "
msgstr ""
-#: menu.c:288
+#: menu.c:290
msgid " Quit (q) "
msgstr ""
-#: rc.c:60
+#: rc.c:62
msgid "External Viewer Setup"
msgstr ""
-#: rc.c:61
+#: rc.c:63
msgid "Tab width in characters"
msgstr ""
-#: rc.c:62
+#: rc.c:64
msgid "Indent for HTML rendering"
msgstr ""
-#: rc.c:63
+#: rc.c:65
msgid "Number of pixels per character (4.0...32.0)"
msgstr ""
-#: rc.c:64
+#: rc.c:66
msgid "Number of pixels per line (4.0...64.0)"
msgstr ""
-#: rc.c:65
+#: rc.c:67
msgid "Number of remembered lines when used as a pager"
msgstr ""
-#: rc.c:66
+#: rc.c:68
msgid "Use URL history"
msgstr ""
-#: rc.c:67
+#: rc.c:69
msgid "Number of remembered URL"
msgstr ""
-#: rc.c:68
+#: rc.c:70
msgid "Save URL history"
msgstr ""
-#: rc.c:69
+#: rc.c:71
msgid "Render frames automatically"
msgstr ""
-#: rc.c:70
+#: rc.c:72
msgid "Treat argument without scheme as URL"
msgstr ""
-#: rc.c:71
+#: rc.c:73
msgid "Use _self as default target"
msgstr ""
-#: rc.c:72
+#: rc.c:74
msgid "Open link on new tab if target is _blank or _new"
msgstr ""
-#: rc.c:73
+#: rc.c:75
msgid "Open download list panel on new tab"
msgstr ""
-#: rc.c:74
+#: rc.c:76
msgid "Display link URL automatically"
msgstr ""
-#: rc.c:75
+#: rc.c:77
msgid "Display link numbers"
msgstr ""
-#: rc.c:76
+#: rc.c:78
msgid "Display decoded URL"
msgstr ""
-#: rc.c:77
+#: rc.c:79
msgid "Display current line number"
msgstr ""
-#: rc.c:78
+#: rc.c:80
msgid "Display inline images"
msgstr ""
-#: rc.c:79
+#: rc.c:81
msgid "Display pseudo-ALTs for inline images with no ALT or TITLE string"
msgstr ""
-#: rc.c:81
+#: rc.c:83
msgid "Load inline images automatically"
msgstr ""
-#: rc.c:82
+#: rc.c:84
msgid "Maximum processes for parallel image loading"
msgstr ""
-#: rc.c:83
+#: rc.c:85
msgid "Use external image viewer"
msgstr ""
-#: rc.c:84
+#: rc.c:86
msgid "Scale of image (%)"
msgstr ""
-#: rc.c:85
+#: rc.c:87
msgid "External command to display image"
msgstr ""
-#: rc.c:86
+#: rc.c:88
msgid "Use link list of image map"
msgstr ""
-#: rc.c:88
+#: rc.c:90
msgid "Display file names in multi-column format"
msgstr ""
-#: rc.c:89
+#: rc.c:91
msgid "Use ASCII equivalents to display entities"
msgstr ""
-#: rc.c:90
+#: rc.c:92
msgid "Character type for border of table and menu"
msgstr ""
-#: rc.c:91
+#: rc.c:93
+msgid "Display table borders, ignore value of BORDER"
+msgstr ""
+
+#: rc.c:94
msgid "Fold lines in TEXTAREA"
msgstr ""
-#: rc.c:92
+#: rc.c:95
msgid "Display INS, DEL, S and STRIKE element"
msgstr ""
-#: rc.c:93
+#: rc.c:96
msgid "Display with color"
msgstr ""
-#: rc.c:94
+#: rc.c:97
msgid "Color of normal character"
msgstr ""
-#: rc.c:95
+#: rc.c:98
msgid "Color of anchor"
msgstr ""
-#: rc.c:96
+#: rc.c:99
msgid "Color of image link"
msgstr ""
-#: rc.c:97
+#: rc.c:100
msgid "Color of form"
msgstr ""
-#: rc.c:98
+#: rc.c:101
msgid "Enable coloring of active link"
msgstr ""
-#: rc.c:99
+#: rc.c:102
msgid "Color of currently active link"
msgstr ""
-#: rc.c:100
+#: rc.c:103
msgid "Use visited link color"
msgstr ""
-#: rc.c:101
+#: rc.c:104
msgid "Color of visited link"
msgstr ""
-#: rc.c:102
+#: rc.c:105
msgid "Color of background"
msgstr ""
-#: rc.c:103
+#: rc.c:106
msgid "Color of mark"
msgstr ""
-#: rc.c:104
+#: rc.c:107
msgid "Use proxy"
msgstr ""
-#: rc.c:105
+#: rc.c:108
msgid "URL of HTTP proxy host"
msgstr ""
-#: rc.c:107
+#: rc.c:110
msgid "URL of HTTPS proxy host"
msgstr ""
-#: rc.c:110
+#: rc.c:113
msgid "URL of GOPHER proxy host"
msgstr ""
-#: rc.c:112
+#: rc.c:115
msgid "URL of FTP proxy host"
msgstr ""
-#: rc.c:113
+#: rc.c:116
msgid "Domains to be accessed directly (no proxy)"
msgstr ""
-#: rc.c:114
+#: rc.c:117
msgid "Check noproxy by network address"
msgstr ""
-#: rc.c:115
+#: rc.c:118
msgid "Disable cache"
msgstr ""
-#: rc.c:117
+#: rc.c:120
msgid "News server"
msgstr ""
-#: rc.c:118
+#: rc.c:121
msgid "Mode of news server"
msgstr ""
-#: rc.c:119
+#: rc.c:122
msgid "Number of news messages"
msgstr ""
-#: rc.c:121
+#: rc.c:124
msgid "Order of name resolution"
msgstr ""
-#: rc.c:122
+#: rc.c:125
msgid "Directory corresponding to / (document root)"
msgstr ""
-#: rc.c:123
+#: rc.c:126
msgid "Directory corresponding to /~user"
msgstr ""
-#: rc.c:124
+#: rc.c:127
msgid "Directory corresponding to /cgi-bin"
msgstr ""
-#: rc.c:125
+#: rc.c:128
msgid "Confirm when quitting with q"
msgstr ""
-#: rc.c:126
+#: rc.c:129
msgid "Close tab if buffer is last when back"
msgstr ""
-#: rc.c:128
+#: rc.c:131
msgid "Enable mark operations"
msgstr ""
-#: rc.c:130
+#: rc.c:133
msgid "Enable Emacs-style line editing"
msgstr ""
-#: rc.c:131
+#: rc.c:134
+msgid "Space key triggers file completion while editing URLs"
+msgstr ""
+
+#: rc.c:135
msgid "Enable vi-like numeric prefix"
msgstr ""
-#: rc.c:132
+#: rc.c:136
msgid "Move cursor to top line when going to label"
msgstr ""
-#: rc.c:133
+#: rc.c:137
msgid "Move cursor to top line when moving to next page"
msgstr ""
-#: rc.c:134
+#: rc.c:138
msgid "Fold lines of plain text file"
msgstr ""
-#: rc.c:135
+#: rc.c:139
msgid "Show line numbers"
msgstr ""
-#: rc.c:136
+#: rc.c:140
msgid "Show search string"
msgstr ""
-#: rc.c:137
+#: rc.c:141
msgid "List of mime.types files"
msgstr ""
-#: rc.c:138
+#: rc.c:142
msgid "List of mailcap files"
msgstr ""
-#: rc.c:139
+#: rc.c:143
msgid "List of urimethodmap files"
msgstr ""
-#: rc.c:140
+#: rc.c:144
msgid "Editor"
msgstr ""
-#: rc.c:141
+#: rc.c:145
msgid "Mailer"
msgstr ""
-#: rc.c:142
+#: rc.c:146
msgid "How to call Mailer for mailto URLs with options"
msgstr ""
-#: rc.c:143
-msgid "External Browser"
+#: rc.c:147
+msgid "External browser"
msgstr ""
-#: rc.c:144
-msgid "Second External Browser"
+#: rc.c:148
+msgid "2nd external browser"
msgstr ""
-#: rc.c:145
-msgid "Third External Browser"
+#: rc.c:149
+msgid "3rd external browser"
msgstr ""
-#: rc.c:146
+#: rc.c:150
+msgid "4th external browser"
+msgstr ""
+
+#: rc.c:151
+msgid "5th external browser"
+msgstr ""
+
+#: rc.c:152
+msgid "6th external browser"
+msgstr ""
+
+#: rc.c:153
+msgid "7th external browser"
+msgstr ""
+
+#: rc.c:154
+msgid "8th external browser"
+msgstr ""
+
+#: rc.c:155
+msgid "9th external browser"
+msgstr ""
+
+#: rc.c:156
msgid "Disable secret file security check"
msgstr ""
-#: rc.c:147
+#: rc.c:157
msgid "Password file"
msgstr ""
-#: rc.c:148
+#: rc.c:158
msgid "File for setting form on loading"
msgstr ""
-#: rc.c:149
+#: rc.c:159
+msgid "File for preferences for each site"
+msgstr ""
+
+#: rc.c:160
msgid "Password for anonymous FTP (your mail address)"
msgstr ""
-#: rc.c:150
+#: rc.c:161
msgid "Generate domain part of password for FTP"
msgstr ""
-#: rc.c:151
+#: rc.c:162
msgid "User-Agent identification string"
msgstr ""
-#: rc.c:152
+#: rc.c:163
msgid "Accept-Encoding header"
msgstr ""
-#: rc.c:153
+#: rc.c:164
msgid "Accept header"
msgstr ""
-#: rc.c:154
+#: rc.c:165
msgid "Accept-Language header"
msgstr ""
-#: rc.c:155
+#: rc.c:166
msgid "Treat URL-like strings as links in all pages"
msgstr ""
-#: rc.c:156
+#: rc.c:167
msgid "Wrap search"
msgstr ""
-#: rc.c:157
+#: rc.c:168
msgid "Display unseen objects (e.g. bgimage tag)"
msgstr ""
-#: rc.c:158
+#: rc.c:169
msgid "Uncompress compressed data automatically when downloading"
msgstr ""
-#: rc.c:160
+#: rc.c:171
msgid "Run external viewer in a separate session"
msgstr ""
-#: rc.c:162
+#: rc.c:173
msgid "Run external viewer in the background"
msgstr ""
-#: rc.c:164
+#: rc.c:175
msgid "Use external program for directory listing"
msgstr ""
-#: rc.c:165
+#: rc.c:176
msgid "URL of directory listing command"
msgstr ""
-#: rc.c:167
+#: rc.c:178
msgid "Enable dictionary lookup through CGI"
msgstr ""
-#: rc.c:168
+#: rc.c:179
msgid "URL of dictionary lookup command"
msgstr ""
-#: rc.c:170
+#: rc.c:181
msgid "Display link name for images lacking ALT"
msgstr ""
-#: rc.c:171
+#: rc.c:182
msgid "Index file for directories"
msgstr ""
-#: rc.c:172
+#: rc.c:183
msgid "Prepend http:// to URL automatically"
msgstr ""
-#: rc.c:173
+#: rc.c:184
msgid "Default value for open-URL command"
msgstr ""
-#: rc.c:174
+#: rc.c:185
msgid "Decode Content-Transfer-Encoding when saving"
msgstr ""
-#: rc.c:175
+#: rc.c:186
msgid "Preserve timestamp when saving"
msgstr ""
-#: rc.c:177
+#: rc.c:188
msgid "Enable mouse"
msgstr ""
-#: rc.c:178
+#: rc.c:189
msgid "Scroll in reverse direction of mouse drag"
msgstr ""
-#: rc.c:179
+#: rc.c:190
msgid "Behavior of wheel scroll speed"
msgstr ""
-#: rc.c:180
+#: rc.c:191
msgid "(A only)Scroll by # (%) of screen"
msgstr ""
-#: rc.c:181
+#: rc.c:192
msgid "(B only)Scroll by # lines"
msgstr ""
-#: rc.c:183
+#: rc.c:194
msgid "Free memory of undisplayed buffers"
msgstr ""
-#: rc.c:184
+#: rc.c:195
msgid "Suppress `Referer:' header"
msgstr ""
-#: rc.c:185
+#: rc.c:196
msgid "Search case-insensitively"
msgstr ""
-#: rc.c:186
+#: rc.c:197
msgid "Use LESSOPEN"
msgstr ""
-#: rc.c:189
+#: rc.c:200
msgid "Perform SSL server verification"
msgstr ""
-#: rc.c:190
+#: rc.c:201
msgid "PEM encoded certificate file of client"
msgstr ""
-#: rc.c:191
+#: rc.c:202
msgid "PEM encoded private key file of client"
msgstr ""
-#: rc.c:192
+#: rc.c:203
msgid "Path to directory for PEM encoded certificates of CAs"
msgstr ""
-#: rc.c:193
+#: rc.c:204
msgid "File consisting of PEM encoded certificates of CAs"
msgstr ""
-#: rc.c:195
-msgid "List of forbidden SSL methods (2: SSLv2, 3: SSLv3, t:TLSv1)"
+#: rc.c:206
+msgid ""
+"List of forbidden SSL methods (2: SSLv2, 3: SSLv3, t: TLSv1.0, 5: TLSv1.1, "
+"6: TLSv1.2, 7: TLSv1.3)"
msgstr ""
-#: rc.c:198
+#: rc.c:209
msgid "Enable cookie processing"
msgstr ""
-#: rc.c:199
+#: rc.c:210
msgid "Print a message when receiving a cookie"
msgstr ""
-#: rc.c:200
+#: rc.c:211
msgid "Accept cookies"
msgstr ""
-#: rc.c:201
+#: rc.c:212
msgid "Action to be taken on invalid cookie"
msgstr ""
-#: rc.c:202
+#: rc.c:213
msgid "Domains to reject cookies from"
msgstr ""
-#: rc.c:203
+#: rc.c:214
msgid "Domains to accept cookies from"
msgstr ""
-#: rc.c:204
+#: rc.c:215
msgid "Domains to avoid [wrong number of dots]"
msgstr ""
-#: rc.c:206
+#: rc.c:217
msgid "Number of redirections to follow"
msgstr ""
-#: rc.c:207
+#: rc.c:218
msgid "Enable processing of meta-refresh tag"
msgstr ""
-#: rc.c:210
+#: rc.c:221
msgid "Enable Migemo (Roma-ji search)"
msgstr ""
-#: rc.c:211
+#: rc.c:222
msgid "Migemo command"
msgstr ""
-#: rc.c:215
+#: rc.c:226
msgid "Display charset"
msgstr ""
-#: rc.c:216
+#: rc.c:227
msgid "Default document charset"
msgstr ""
-#: rc.c:217
+#: rc.c:228
msgid "Automatic charset detect when loading"
msgstr ""
-#: rc.c:218
+#: rc.c:229
msgid "System charset"
msgstr ""
-#: rc.c:219
+#: rc.c:230
msgid "System charset follows locale(LC_CTYPE)"
msgstr ""
-#: rc.c:220
+#: rc.c:231
msgid "Output halfdump with display charset"
msgstr ""
-#: rc.c:221
+#: rc.c:232
msgid "Use multi column characters"
msgstr ""
-#: rc.c:222
+#: rc.c:233
msgid "Use combining characters"
msgstr ""
-#: rc.c:223
+#: rc.c:234
msgid "Use double width for some Unicode characters"
msgstr ""
-#: rc.c:224
+#: rc.c:235
msgid "Use Unicode language tags"
msgstr ""
-#: rc.c:225
+#: rc.c:236
msgid "Charset conversion using Unicode map"
msgstr ""
-#: rc.c:226
+#: rc.c:237
msgid "Charset conversion when loading"
msgstr ""
-#: rc.c:227
+#: rc.c:238
msgid "Adjust search string for document charset"
msgstr ""
-#: rc.c:228
+#: rc.c:239
msgid "Fix character width when conversion"
msgstr ""
-#: rc.c:229
+#: rc.c:240
msgid "Use GB 12345 Unicode map instead of GB 2312's"
msgstr ""
-#: rc.c:230
+#: rc.c:241
msgid "Use JIS X 0201 Roman for ISO-2022-JP"
msgstr ""
-#: rc.c:231
+#: rc.c:242
msgid "Use JIS C 6226:1978 for ISO-2022-JP"
msgstr ""
-#: rc.c:232
+#: rc.c:243
msgid "Use JIS X 0201 Katakana"
msgstr ""
-#: rc.c:233
+#: rc.c:244
msgid "Use JIS X 0212:1990 (Supplemental Kanji)"
msgstr ""
-#: rc.c:234
+#: rc.c:245
msgid "Use JIS X 0213:2000 (2000JIS)"
msgstr ""
-#: rc.c:235
+#: rc.c:246
msgid "Strict ISO-2022-JP/KR/CN"
msgstr ""
-#: rc.c:236
+#: rc.c:247
msgid "Treat 4 bytes char. of GB18030 as Unicode"
msgstr ""
-#: rc.c:237
+#: rc.c:248
msgid "Simple Preserve space"
msgstr ""
-#: rc.c:240
+#: rc.c:251
msgid "keymap file"
msgstr ""
-#: rc.c:257
+#: rc.c:268
msgid "black"
msgstr ""
-#: rc.c:258
+#: rc.c:269
msgid "red"
msgstr ""
-#: rc.c:259
+#: rc.c:270
msgid "green"
msgstr ""
-#: rc.c:260
+#: rc.c:271
msgid "yellow"
msgstr ""
-#: rc.c:261
+#: rc.c:272
msgid "blue"
msgstr ""
-#: rc.c:262
+#: rc.c:273
msgid "magenta"
msgstr ""
-#: rc.c:263
+#: rc.c:274
msgid "cyan"
msgstr ""
-#: rc.c:264
+#: rc.c:275
msgid "white"
msgstr ""
-#: rc.c:265
+#: rc.c:276
msgid "terminal"
msgstr ""
-#: rc.c:284
+#: rc.c:295
msgid "none"
msgstr ""
-#: rc.c:285
+#: rc.c:296
msgid "current URL"
msgstr ""
-#: rc.c:286
+#: rc.c:297
msgid "link URL"
msgstr ""
-#: rc.c:291
+#: rc.c:302
msgid "simple"
msgstr ""
-#: rc.c:292
+#: rc.c:303
msgid "use tag"
msgstr ""
-#: rc.c:293
+#: rc.c:304
msgid "fontify"
msgstr ""
-#: rc.c:299
+#: rc.c:310
msgid "A:relative to screen height"
msgstr ""
-#: rc.c:300
+#: rc.c:311
msgid "B:fixed speed"
msgstr ""
-#: rc.c:307
+#: rc.c:318
msgid "unspecified"
msgstr ""
-#: rc.c:308
+#: rc.c:319
msgid "inet inet6"
msgstr ""
-#: rc.c:309
+#: rc.c:320
msgid "inet6 inet"
msgstr ""
-#: rc.c:310
+#: rc.c:321
msgid "inet only"
msgstr ""
-#: rc.c:311
+#: rc.c:322
msgid "inet6 only"
msgstr ""
-#: rc.c:318
+#: rc.c:329
msgid "discard"
msgstr ""
-#: rc.c:320
+#: rc.c:331
msgid "accept"
msgstr ""
-#: rc.c:322
+#: rc.c:333
msgid "ask"
msgstr ""
-#: rc.c:329
+#: rc.c:340
msgid "use internal mailer instead"
msgstr ""
-#: rc.c:331
+#: rc.c:342
msgid "ignore options and use only the address"
msgstr ""
-#: rc.c:332
+#: rc.c:343
msgid "use full mailto URL"
msgstr ""
-#: rc.c:341
+#: rc.c:352
msgid "OFF"
msgstr ""
-#: rc.c:342
+#: rc.c:353
msgid "Only ISO 2022"
msgstr ""
-#: rc.c:343
+#: rc.c:354
msgid "ON"
msgstr ""
-#: rc.c:349
+#: rc.c:360
msgid "ASCII"
msgstr ""
-#: rc.c:350
+#: rc.c:361
msgid "charset specific"
msgstr ""
-#: rc.c:351
+#: rc.c:362
msgid "DEC special graphics"
msgstr ""
-#: rc.c:714
+#: rc.c:743
msgid "Display Settings"
msgstr ""
-#: rc.c:716
+#: rc.c:745
msgid "Color Settings"
msgstr ""
-#: rc.c:718
+#: rc.c:747
msgid "Miscellaneous Settings"
msgstr ""
-#: rc.c:719
+#: rc.c:748
msgid "Directory Settings"
msgstr ""
-#: rc.c:720
+#: rc.c:749
msgid "External Program Settings"
msgstr ""
-#: rc.c:721
+#: rc.c:750
msgid "Network Settings"
msgstr ""
-#: rc.c:722
+#: rc.c:751
msgid "Proxy Settings"
msgstr ""
-#: rc.c:724
+#: rc.c:753
msgid "SSL Settings"
msgstr ""
-#: rc.c:727
+#: rc.c:756
msgid "Cookie Settings"
msgstr ""
-#: rc.c:730
+#: rc.c:759
msgid "Charset Settings"
msgstr ""
@@ -874,6 +912,6 @@ msgstr ""
#. * header. For example, ja.po should translate it as
#. * "ja;q=1.0, en;q=0.5" like that.
#.
-#: rc.c:1209
+#: rc.c:1241
msgid "en;q=1.0"
msgstr ""
diff --git a/po/zh_CN.po b/po/zh_CN.po
new file mode 100644
index 0000000..41d7273
--- /dev/null
+++ b/po/zh_CN.po
@@ -0,0 +1,924 @@
+# zh_CN translation for w3m
+# Copyright (C) YEAR THE w3m'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the w3m package.
+# Junde Yi <lmy441900@gmail.com>, 2014.
+# Mingcong Bai <jeffbai@aosc.xyz>, 2014.
+# liushuyu <liushuyu_011@126.com>, 2014.
+# Xingda Zheng <icenowy@outlook.com>, 2014.
+# Mingye Wang (Arthur2e5) <arthur200126@gmail.com>, 2014, 2015.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: w3m 0.5.3\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2020-11-24 19:21+0900\n"
+"PO-Revision-Date: 2016-03-14 19:51+0900\n"
+"Last-Translator: Tatsuya Kinoshita <tats@debian.org>\n"
+"Language-Team: AOSC zh_CN <aosc@members.fsf.org>\n"
+"Language: zh_CN\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Poedit 1.8.6\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+
+#: menu.c:269
+msgid " Back (b) "
+msgstr " 后退 (b) "
+
+#: menu.c:270
+msgid " Select Buffer(s) "
+msgstr " 选择缓冲区 "
+
+#: menu.c:272
+msgid " Select Tab (t) "
+msgstr " 选择标签 (t) "
+
+#: menu.c:274
+msgid " View Source (v) "
+msgstr " 查看源码 (v) "
+
+#: menu.c:275
+msgid " Edit Source (e) "
+msgstr " 修改源码 (e) "
+
+#: menu.c:276
+msgid " Save Source (S) "
+msgstr " 保存源码 (S) "
+
+#: menu.c:277
+msgid " Reload (r) "
+msgstr " 重新载入 (r) "
+
+#: menu.c:278 menu.c:285 menu.c:289
+msgid " ---------------- "
+msgstr " ---------------- "
+
+#: menu.c:279
+msgid " Go Link (a) "
+msgstr " 转到链接 (a) "
+
+#: menu.c:280
+msgid " on New Tab (n) "
+msgstr " 在新标签 (n) "
+
+#: menu.c:281
+msgid " Save Link (A) "
+msgstr " 保存链接 (A) "
+
+#: menu.c:282
+msgid " View Image (i) "
+msgstr " 查看图片 (i) "
+
+#: menu.c:283
+msgid " Save Image (I) "
+msgstr " 保存图片 (I) "
+
+#: menu.c:284
+msgid " View Frame (f) "
+msgstr " 查看框架 (f) "
+
+#: menu.c:286
+msgid " Bookmark (B) "
+msgstr " 书签 (B) "
+
+#: menu.c:287
+msgid " Help (h) "
+msgstr " 帮助 (h) "
+
+#: menu.c:288
+msgid " Option (o) "
+msgstr " 选项 (o) "
+
+#: menu.c:290
+msgid " Quit (q) "
+msgstr " 退出 (q) "
+
+#: rc.c:62
+msgid "External Viewer Setup"
+msgstr "外部查看器设置"
+
+#: rc.c:63
+msgid "Tab width in characters"
+msgstr "文字中的 TAB 宽度"
+
+#: rc.c:64
+msgid "Indent for HTML rendering"
+msgstr "用于 HTML 渲染"
+
+#: rc.c:65
+msgid "Number of pixels per character (4.0...32.0)"
+msgstr "每字体大小的像素值 (4.0...32.0)"
+
+#: rc.c:66
+msgid "Number of pixels per line (4.0...64.0)"
+msgstr "每行的像素数 (4.0...64.0)"
+
+#: rc.c:67
+msgid "Number of remembered lines when used as a pager"
+msgstr "当作为分页器使用时记忆的行数"
+
+#: rc.c:68
+msgid "Use URL history"
+msgstr "使用 URL 历史记录"
+
+#: rc.c:69
+msgid "Number of remembered URL"
+msgstr "记录的 URL 数量"
+
+#: rc.c:70
+msgid "Save URL history"
+msgstr "保存 URL 历史"
+
+#: rc.c:71
+msgid "Render frames automatically"
+msgstr "自动渲染框架"
+
+#: rc.c:72
+msgid "Treat argument without scheme as URL"
+msgstr "将无格式的参数看作 URL"
+
+#: rc.c:73
+msgid "Use _self as default target"
+msgstr "将自身作为默认目标 (_S)"
+
+#: rc.c:74
+msgid "Open link on new tab if target is _blank or _new"
+msgstr "如果目标为空 (_b) 或新建 (_n) 在新标签打开页面"
+
+#: rc.c:75
+msgid "Open download list panel on new tab"
+msgstr "打开下载列表面板于新标签"
+
+#: rc.c:76
+msgid "Display link URL automatically"
+msgstr "自动显示链接 URL"
+
+#: rc.c:77
+msgid "Display link numbers"
+msgstr "显示链接编号"
+
+#: rc.c:78
+msgid "Display decoded URL"
+msgstr "显示解码后的 URL"
+
+#: rc.c:79
+msgid "Display current line number"
+msgstr "显示当前行数"
+
+#: rc.c:80
+msgid "Display inline images"
+msgstr "显示内联图像"
+
+#: rc.c:81
+msgid "Display pseudo-ALTs for inline images with no ALT or TITLE string"
+msgstr "为不带有 ALT 或 TITLE 字串的内联图像显示伪 ALT"
+
+#: rc.c:83
+msgid "Load inline images automatically"
+msgstr "自动载入行内图像"
+
+#: rc.c:84
+msgid "Maximum processes for parallel image loading"
+msgstr "多线程图像加载的最大进程数"
+
+#: rc.c:85
+msgid "Use external image viewer"
+msgstr "使用外部图片查看器"
+
+#: rc.c:86
+msgid "Scale of image (%)"
+msgstr "图像比例尺 (%)"
+
+#: rc.c:87
+msgid "External command to display image"
+msgstr "用于显示图像的外部命令"
+
+#: rc.c:88
+msgid "Use link list of image map"
+msgstr "使用图像映射的链接列表"
+
+#: rc.c:90
+msgid "Display file names in multi-column format"
+msgstr "以多列格式显示文件名"
+
+#: rc.c:91
+msgid "Use ASCII equivalents to display entities"
+msgstr "使用对应的 ASCII 编码来显示实体 "
+
+#: rc.c:92
+msgid "Character type for border of table and menu"
+msgstr "表格和菜单边框的字符类型"
+
+#: rc.c:93
+msgid "Display table borders, ignore value of BORDER"
+msgstr "显示表格边框,忽略 BORDER 数值"
+
+#: rc.c:94
+msgid "Fold lines in TEXTAREA"
+msgstr "在文本区 (TEXTAREA) 中折叠行"
+
+#: rc.c:95
+msgid "Display INS, DEL, S and STRIKE element"
+msgstr "显示 INS, DEL, S 及 STRIKE 元素"
+
+#: rc.c:96
+msgid "Display with color"
+msgstr "使用带颜色的显示"
+
+#: rc.c:97
+msgid "Color of normal character"
+msgstr "一般文字颜色"
+
+#: rc.c:98
+msgid "Color of anchor"
+msgstr "链接文字颜色"
+
+#: rc.c:99
+msgid "Color of image link"
+msgstr "图片链接颜色"
+
+#: rc.c:100
+msgid "Color of form"
+msgstr "表格颜色"
+
+#: rc.c:101
+msgid "Enable coloring of active link"
+msgstr "为活动链接开启上色"
+
+#: rc.c:102
+msgid "Color of currently active link"
+msgstr "当前活动链接的颜色"
+
+#: rc.c:103
+msgid "Use visited link color"
+msgstr "为访问过的链接上色"
+
+#: rc.c:104
+msgid "Color of visited link"
+msgstr "已访问链接颜色"
+
+#: rc.c:105
+msgid "Color of background"
+msgstr "背景色"
+
+#: rc.c:106
+msgid "Color of mark"
+msgstr "标记颜色"
+
+#: rc.c:107
+msgid "Use proxy"
+msgstr "使用代理服务器"
+
+#: rc.c:108
+msgid "URL of HTTP proxy host"
+msgstr "HTTP 代理主机地址"
+
+#: rc.c:110
+msgid "URL of HTTPS proxy host"
+msgstr "HTTPS 代理主机地址"
+
+#: rc.c:113
+msgid "URL of GOPHER proxy host"
+msgstr "GOPHER 代理主机地址"
+
+#: rc.c:115
+msgid "URL of FTP proxy host"
+msgstr "FTP 代理主机地址"
+
+#: rc.c:116
+msgid "Domains to be accessed directly (no proxy)"
+msgstr "直接访问而不是用代理服务器访问的 URL"
+
+#: rc.c:117
+msgid "Check noproxy by network address"
+msgstr "根据网络地址检查 noproxy"
+
+#: rc.c:118
+msgid "Disable cache"
+msgstr "禁用缓存"
+
+#: rc.c:120
+msgid "News server"
+msgstr "新闻服务器"
+
+#: rc.c:121
+msgid "Mode of news server"
+msgstr "新闻服务器模式"
+
+#: rc.c:122
+msgid "Number of news messages"
+msgstr "新闻消息的数量"
+
+#: rc.c:124
+msgid "Order of name resolution"
+msgstr "名称解析顺序"
+
+#: rc.c:125
+msgid "Directory corresponding to / (document root)"
+msgstr "对应 / 的目录 (文档根目录)"
+
+#: rc.c:126
+msgid "Directory corresponding to /~user"
+msgstr "对应 /~user 的目录"
+
+#: rc.c:127
+msgid "Directory corresponding to /cgi-bin"
+msgstr "对应 /cgi-bin 的目录"
+
+#: rc.c:128
+msgid "Confirm when quitting with q"
+msgstr "使用 q 键退出时请求确认"
+
+#: rc.c:129
+msgid "Close tab if buffer is last when back"
+msgstr "在返回时缓冲区还是以前状态就关闭标签页"
+
+#: rc.c:131
+msgid "Enable mark operations"
+msgstr "启用标记操作"
+
+#: rc.c:133
+msgid "Enable Emacs-style line editing"
+msgstr "启用 Emacs 风格的行编辑"
+
+#: rc.c:134
+msgid "Space key triggers file completion while editing URLs"
+msgstr ""
+
+#: rc.c:135
+msgid "Enable vi-like numeric prefix"
+msgstr "启动 vi 式的数字跳转"
+
+#: rc.c:136
+msgid "Move cursor to top line when going to label"
+msgstr "当移动到标签时将光标移到最顶行"
+
+#: rc.c:137
+msgid "Move cursor to top line when moving to next page"
+msgstr "当转到下一页时将光标移到最顶行"
+
+#: rc.c:138
+msgid "Fold lines of plain text file"
+msgstr "对纯文本文件实行行折叠"
+
+#: rc.c:139
+msgid "Show line numbers"
+msgstr "显示行号"
+
+#: rc.c:140
+msgid "Show search string"
+msgstr "显示搜索字符串"
+
+#: rc.c:141
+msgid "List of mime.types files"
+msgstr "mime.type 文件列表"
+
+#: rc.c:142
+msgid "List of mailcap files"
+msgstr "mailcap 文件列表"
+
+#: rc.c:143
+msgid "List of urimethodmap files"
+msgstr "urlmethodmap 文件列表"
+
+#: rc.c:144
+msgid "Editor"
+msgstr "编辑器"
+
+#: rc.c:145
+msgid "Mailer"
+msgstr "发送者"
+
+#: rc.c:146
+msgid "How to call Mailer for mailto URLs with options"
+msgstr "启动 mailto 地址时调用电子邮件程序的方式和参数"
+
+#: rc.c:147
+msgid "External browser"
+msgstr "外部浏览器"
+
+#: rc.c:148
+msgid "2nd external browser"
+msgstr "第二外部浏览器"
+
+#: rc.c:149
+msgid "3rd external browser"
+msgstr "第三外部浏览器"
+
+#: rc.c:150
+msgid "4th external browser"
+msgstr "第四外部浏览器"
+
+#: rc.c:151
+msgid "5th external browser"
+msgstr "第五外部浏览器"
+
+#: rc.c:152
+msgid "6th external browser"
+msgstr "第六外部浏览器"
+
+#: rc.c:153
+msgid "7th external browser"
+msgstr "第七外部浏览器"
+
+#: rc.c:154
+msgid "8th external browser"
+msgstr "第八外部浏览器"
+
+#: rc.c:155
+msgid "9th external browser"
+msgstr "第九外部浏览器"
+
+#: rc.c:156
+msgid "Disable secret file security check"
+msgstr "关闭秘密文件安全检查"
+
+#: rc.c:157
+msgid "Password file"
+msgstr "密码文件"
+
+#: rc.c:158
+msgid "File for setting form on loading"
+msgstr "设置窗口加载时的文件"
+
+#: rc.c:159
+msgid "File for preferences for each site"
+msgstr "各个站点的首选项文件"
+
+#: rc.c:160
+msgid "Password for anonymous FTP (your mail address)"
+msgstr "匿名FTP密码(您的邮箱地址)"
+
+#: rc.c:161
+msgid "Generate domain part of password for FTP"
+msgstr "为 FTP 生成密码的域部分"
+
+#: rc.c:162
+msgid "User-Agent identification string"
+msgstr "User-Agent 串"
+
+#: rc.c:163
+msgid "Accept-Encoding header"
+msgstr "接受的编码 (Accept-Encoding) 报头"
+
+#: rc.c:164
+msgid "Accept header"
+msgstr "接受 (Accept) 报头"
+
+#: rc.c:165
+msgid "Accept-Language header"
+msgstr "接受的语言 (Accept-Language) 报头"
+
+#: rc.c:166
+msgid "Treat URL-like strings as links in all pages"
+msgstr "将所有页面中类似于 URL 的字符串当做链接"
+
+#: rc.c:167
+msgid "Wrap search"
+msgstr "包装搜索结果"
+
+#: rc.c:168
+msgid "Display unseen objects (e.g. bgimage tag)"
+msgstr "显示看不到的对象 (例如,bdimage标签)"
+
+#: rc.c:169
+msgid "Uncompress compressed data automatically when downloading"
+msgstr "在下载时自动解压被压缩的数据"
+
+#: rc.c:171
+msgid "Run external viewer in a separate session"
+msgstr "在另一个会话中运行外部查看器"
+
+#: rc.c:173
+msgid "Run external viewer in the background"
+msgstr "在后台运行外部查看器"
+
+#: rc.c:175
+msgid "Use external program for directory listing"
+msgstr "使用外部程序列出目录"
+
+#: rc.c:176
+msgid "URL of directory listing command"
+msgstr "目录列表命令的网址"
+
+#: rc.c:178
+msgid "Enable dictionary lookup through CGI"
+msgstr "启用基于 CGI 的词典查询"
+
+#: rc.c:179
+msgid "URL of dictionary lookup command"
+msgstr "字典查找命令的网址"
+
+#: rc.c:181
+msgid "Display link name for images lacking ALT"
+msgstr "对缺少 ALT 的图片显示链接名称"
+
+#: rc.c:182
+msgid "Index file for directories"
+msgstr "目录的索引文件"
+
+#: rc.c:183
+msgid "Prepend http:// to URL automatically"
+msgstr "自动在 URL 前加入 http://"
+
+#: rc.c:184
+msgid "Default value for open-URL command"
+msgstr "打开网址命令的默认值"
+
+#: rc.c:185
+msgid "Decode Content-Transfer-Encoding when saving"
+msgstr "保存时对内容传输编码信息 (Content-Transfer-Encoding) 进行解码"
+
+#: rc.c:186
+msgid "Preserve timestamp when saving"
+msgstr "在保存时保留时间戳"
+
+#: rc.c:188
+msgid "Enable mouse"
+msgstr "启用鼠标"
+
+#: rc.c:189
+msgid "Scroll in reverse direction of mouse drag"
+msgstr "向鼠标拖动的反方向滚动"
+
+#: rc.c:190
+msgid "Behavior of wheel scroll speed"
+msgstr "滚轮滚动速度行为"
+
+#: rc.c:191
+msgid "(A only)Scroll by # (%) of screen"
+msgstr "(仅 A) 每次滚动 # (%) 的屏幕高度"
+
+#: rc.c:192
+msgid "(B only)Scroll by # lines"
+msgstr "(仅 B) 每次滚动 # 行"
+
+#: rc.c:194
+msgid "Free memory of undisplayed buffers"
+msgstr "释放未显示缓存的存储"
+
+#: rc.c:195
+msgid "Suppress `Referer:' header"
+msgstr "禁止 'Referer:' 文件头"
+
+#: rc.c:196
+msgid "Search case-insensitively"
+msgstr "搜索不区分大小写"
+
+#: rc.c:197
+msgid "Use LESSOPEN"
+msgstr "使用 LESSOPEN"
+
+#: rc.c:200
+msgid "Perform SSL server verification"
+msgstr "进行 SSL 服务器检查"
+
+#: rc.c:201
+msgid "PEM encoded certificate file of client"
+msgstr "客户端的 PEM 编码证书文件"
+
+#: rc.c:202
+msgid "PEM encoded private key file of client"
+msgstr "客户端的 PEM 编码私钥文件"
+
+#: rc.c:203
+msgid "Path to directory for PEM encoded certificates of CAs"
+msgstr "PEM 编码 CA 证书目录的路径"
+
+#: rc.c:204
+msgid "File consisting of PEM encoded certificates of CAs"
+msgstr "包含 PEM 编码 CA 证书的文件"
+
+#: rc.c:206
+msgid ""
+"List of forbidden SSL methods (2: SSLv2, 3: SSLv3, t: TLSv1.0, 5: TLSv1.1, "
+"6: TLSv1.2, 7: TLSv1.3)"
+msgstr ""
+"被禁止的 SSL 方式列表 (2: SSLv2, 3: SSLv3, t: TLSv1.0, 5: TLSv1.1, 6: "
+"TLSv1.2, 7: TLSv1.3)"
+
+#: rc.c:209
+msgid "Enable cookie processing"
+msgstr "开启 Cookie 处理"
+
+#: rc.c:210
+msgid "Print a message when receiving a cookie"
+msgstr "在接收一个 Cookie 时显示一个消息"
+
+#: rc.c:211
+msgid "Accept cookies"
+msgstr "接受 Cookies"
+
+#: rc.c:212
+msgid "Action to be taken on invalid cookie"
+msgstr "对无效 Cookies 进行的操作"
+
+#: rc.c:213
+msgid "Domains to reject cookies from"
+msgstr "拒绝如下域的 Cookies"
+
+#: rc.c:214
+msgid "Domains to accept cookies from"
+msgstr "接受如下域的 Cookies"
+
+#: rc.c:215
+msgid "Domains to avoid [wrong number of dots]"
+msgstr "避免访问的域 [错误的点数]"
+
+#: rc.c:217
+msgid "Number of redirections to follow"
+msgstr "跟随的重定向数量"
+
+#: rc.c:218
+msgid "Enable processing of meta-refresh tag"
+msgstr "开启 meta-refresh 标签处理"
+
+#: rc.c:221
+msgid "Enable Migemo (Roma-ji search)"
+msgstr "开启 Migemo (罗马字搜索)"
+
+#: rc.c:222
+msgid "Migemo command"
+msgstr "Migemo 命令"
+
+#: rc.c:226
+msgid "Display charset"
+msgstr "显示字符集"
+
+#: rc.c:227
+msgid "Default document charset"
+msgstr "默认文档字符集"
+
+#: rc.c:228
+msgid "Automatic charset detect when loading"
+msgstr "在载入时进行自动字符集探测"
+
+#: rc.c:229
+msgid "System charset"
+msgstr "系统字符集"
+
+#: rc.c:230
+msgid "System charset follows locale(LC_CTYPE)"
+msgstr "根据系统设置 (LC_CTYPE) 选定系统字符集"
+
+#: rc.c:231
+msgid "Output halfdump with display charset"
+msgstr "使用显示字符集输出 halfdump"
+
+#: rc.c:232
+msgid "Use multi column characters"
+msgstr "使用多列字符"
+
+#: rc.c:233
+msgid "Use combining characters"
+msgstr "使用合并字符"
+
+#: rc.c:234
+msgid "Use double width for some Unicode characters"
+msgstr "使 Unicode 字符使用双重宽度"
+
+#: rc.c:235
+msgid "Use Unicode language tags"
+msgstr "使用 Unicode 语言标签"
+
+#: rc.c:236
+msgid "Charset conversion using Unicode map"
+msgstr "使用 Unicode 映射进行字符集转换"
+
+#: rc.c:237
+msgid "Charset conversion when loading"
+msgstr "在载入时进行字符集转换"
+
+#: rc.c:238
+msgid "Adjust search string for document charset"
+msgstr "调整文档字符集的搜索字串"
+
+#: rc.c:239
+msgid "Fix character width when conversion"
+msgstr "在转换时固定字符宽度"
+
+#: rc.c:240
+msgid "Use GB 12345 Unicode map instead of GB 2312's"
+msgstr "使用 GB 12345 Unicode 映射而非 GB 2312"
+
+#: rc.c:241
+msgid "Use JIS X 0201 Roman for ISO-2022-JP"
+msgstr "使用 JIS X 0201 罗马字母于 ISO-2022-JP"
+
+#: rc.c:242
+msgid "Use JIS C 6226:1978 for ISO-2022-JP"
+msgstr "使用 JIS C 6226:1978 于 ISO-2022-JP"
+
+#: rc.c:243
+msgid "Use JIS X 0201 Katakana"
+msgstr "使用 JIS X 0201 片假名"
+
+#: rc.c:244
+msgid "Use JIS X 0212:1990 (Supplemental Kanji)"
+msgstr "使用 JIS X 0212:1990 (补充汉字)"
+
+#: rc.c:245
+msgid "Use JIS X 0213:2000 (2000JIS)"
+msgstr "使用 JIS X 0213:2000 (2000JIS)"
+
+#: rc.c:246
+msgid "Strict ISO-2022-JP/KR/CN"
+msgstr "严格 ISO-2022-JP/KR/CN"
+
+#: rc.c:247
+msgid "Treat 4 bytes char. of GB18030 as Unicode"
+msgstr "视 GB18030 编码的 4 字节字符为 Unicode"
+
+#: rc.c:248
+msgid "Simple Preserve space"
+msgstr "简单的保留空间"
+
+#: rc.c:251
+msgid "keymap file"
+msgstr "键盘映射文件"
+
+#: rc.c:268
+msgid "black"
+msgstr "黑色"
+
+#: rc.c:269
+msgid "red"
+msgstr "红色"
+
+#: rc.c:270
+msgid "green"
+msgstr "绿色"
+
+#: rc.c:271
+msgid "yellow"
+msgstr "黄色"
+
+#: rc.c:272
+msgid "blue"
+msgstr "蓝色"
+
+#: rc.c:273
+msgid "magenta"
+msgstr "品红"
+
+#: rc.c:274
+msgid "cyan"
+msgstr "青色"
+
+#: rc.c:275
+msgid "white"
+msgstr "白色"
+
+#: rc.c:276
+msgid "terminal"
+msgstr "终端"
+
+#: rc.c:295
+msgid "none"
+msgstr "无"
+
+#: rc.c:296
+msgid "current URL"
+msgstr "当前 URL"
+
+#: rc.c:297
+msgid "link URL"
+msgstr "链接 URL"
+
+#: rc.c:302
+msgid "simple"
+msgstr "简单"
+
+#: rc.c:303
+msgid "use tag"
+msgstr "使用标签"
+
+#: rc.c:304
+msgid "fontify"
+msgstr ""
+
+#: rc.c:310
+msgid "A:relative to screen height"
+msgstr "A:相对于屏幕高度"
+
+#: rc.c:311
+msgid "B:fixed speed"
+msgstr "B:固定速度"
+
+#: rc.c:318
+msgid "unspecified"
+msgstr "未指定"
+
+#: rc.c:319
+msgid "inet inet6"
+msgstr ""
+
+#: rc.c:320
+msgid "inet6 inet"
+msgstr ""
+
+#: rc.c:321
+msgid "inet only"
+msgstr "仅 inet"
+
+#: rc.c:322
+msgid "inet6 only"
+msgstr "仅 inet6"
+
+#: rc.c:329
+msgid "discard"
+msgstr "丢弃"
+
+#: rc.c:331
+msgid "accept"
+msgstr "接受"
+
+#: rc.c:333
+msgid "ask"
+msgstr "询问"
+
+#: rc.c:340
+msgid "use internal mailer instead"
+msgstr "使用内建邮件发送器"
+
+#: rc.c:342
+msgid "ignore options and use only the address"
+msgstr "忽略选项而只使用地址"
+
+#: rc.c:343
+msgid "use full mailto URL"
+msgstr "使用整个 mailto URL"
+
+#: rc.c:352
+msgid "OFF"
+msgstr "关"
+
+#: rc.c:353
+msgid "Only ISO 2022"
+msgstr "仅 ISO 2022"
+
+#: rc.c:354
+msgid "ON"
+msgstr "开"
+
+#: rc.c:360
+msgid "ASCII"
+msgstr "ASCII"
+
+#: rc.c:361
+msgid "charset specific"
+msgstr "字符集特定"
+
+#: rc.c:362
+msgid "DEC special graphics"
+msgstr "DEC 特殊图像"
+
+#: rc.c:743
+msgid "Display Settings"
+msgstr "显示设置"
+
+#: rc.c:745
+msgid "Color Settings"
+msgstr "颜色设置"
+
+#: rc.c:747
+msgid "Miscellaneous Settings"
+msgstr "杂项设置"
+
+#: rc.c:748
+msgid "Directory Settings"
+msgstr "目录设置"
+
+#: rc.c:749
+msgid "External Program Settings"
+msgstr "外部程序设置"
+
+#: rc.c:750
+msgid "Network Settings"
+msgstr "网络设置"
+
+#: rc.c:751
+msgid "Proxy Settings"
+msgstr "代理设置"
+
+#: rc.c:753
+msgid "SSL Settings"
+msgstr "SSL 设置"
+
+#: rc.c:756
+msgid "Cookie Settings"
+msgstr "Cookie 设置"
+
+#: rc.c:759
+msgid "Charset Settings"
+msgstr "字符集设置"
+
+#. TRANSLATORS:
+#. * AcceptLang default: this is used in Accept-Language: HTTP request
+#. * header. For example, ja.po should translate it as
+#. * "ja;q=1.0, en;q=0.5" like that.
+#.
+#: rc.c:1241
+msgid "en;q=1.0"
+msgstr "zh-CN;q=1.0, zh-Hans;q=0.9, zh;q=0.8, en;q=0.6"
diff --git a/po/zh_TW.po b/po/zh_TW.po
new file mode 100644
index 0000000..854877e
--- /dev/null
+++ b/po/zh_TW.po
@@ -0,0 +1,930 @@
+# zh_TW translation for w3m
+# Copyright (C) 2014-2020 w3m contributors.
+# This file is distributed under the same license as the w3m package.
+#
+# Comparative editing:
+# Ambrose Li <ambrose.li@gmail.com>, 2020.
+#
+# Originally machine-converted from zh_CN translation translated by:
+# Junde Yi <lmy441900@gmail.com>, 2014.
+# Mingcong Bai <jeffbai@aosc.xyz>, 2014.
+# liushuyu <liushuyu_011@126.com>, 2014.
+# Xingda Zheng <icenowy@outlook.com>, 2014.
+# Mingye Wang (Arthur2e5) <arthur200126@gmail.com>, 2014, 2015.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: w3m 0.5.3\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2020-11-24 19:21+0900\n"
+"PO-Revision-Date: 2020-12-17 21:29-0500\n"
+"Last-Translator: Ambrose Li <ambrose.li@gmail.com>\n"
+"Language-Team: Pidgin zh_TW <http://www.transifex.com/pidgin/pidgin/language/"
+"zh_TW/>\n"
+"Language: zh_TW\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+
+#: menu.c:269
+msgid " Back (b) "
+msgstr " 返回 (b) "
+
+#: menu.c:270
+msgid " Select Buffer(s) "
+msgstr " 選擇緩衝區 "
+
+#: menu.c:272
+msgid " Select Tab (t) "
+msgstr " 選擇分頁 (t) "
+
+#: menu.c:274
+msgid " View Source (v) "
+msgstr " 檢視源始碼 (v) "
+
+#: menu.c:275
+msgid " Edit Source (e) "
+msgstr " 修改源始碼 (e) "
+
+#: menu.c:276
+msgid " Save Source (S) "
+msgstr " 儲存源始碼 (S) "
+
+#: menu.c:277
+msgid " Reload (r) "
+msgstr " 重新載入 (r) "
+
+#: menu.c:278 menu.c:285 menu.c:289
+msgid " ---------------- "
+msgstr " ---------------- "
+
+#: menu.c:279
+msgid " Go Link (a) "
+msgstr " 打開連結 (a) "
+
+#: menu.c:280
+msgid " on New Tab (n) "
+msgstr " 於新分頁 (n) "
+
+#: menu.c:281
+msgid " Save Link (A) "
+msgstr " 儲存連結 (A) "
+
+#: menu.c:282
+msgid " View Image (i) "
+msgstr " 檢視影像 (i) "
+
+#: menu.c:283
+msgid " Save Image (I) "
+msgstr " 儲存影像 (I) "
+
+#: menu.c:284
+msgid " View Frame (f) "
+msgstr " 檢視框架 (f) "
+
+#: menu.c:286
+msgid " Bookmark (B) "
+msgstr " 書籤 (B) "
+
+#: menu.c:287
+msgid " Help (h) "
+msgstr " 說明 (h) "
+
+#: menu.c:288
+msgid " Option (o) "
+msgstr " 選項 (o) "
+
+#: menu.c:290
+msgid " Quit (q) "
+msgstr " 結束程式 (q) "
+
+#: rc.c:62
+msgid "External Viewer Setup"
+msgstr "外部檢視器設定"
+
+#: rc.c:63
+msgid "Tab width in characters"
+msgstr "欄標字元寬度(半形字元個數)"
+
+#: rc.c:64
+msgid "Indent for HTML rendering"
+msgstr "縮排字元數(顯示 HTML 專用)"
+
+#: rc.c:65
+msgid "Number of pixels per character (4.0...32.0)"
+msgstr "半形字元寛度(像素) (4.0...32.0)"
+
+#: rc.c:66
+msgid "Number of pixels per line (4.0...64.0)"
+msgstr "半形字元高度(像素) (4.0...64.0)"
+
+#: rc.c:67
+msgid "Number of remembered lines when used as a pager"
+msgstr "作為分頁器使用時記憶的行數"
+
+#: rc.c:68
+msgid "Use URL history"
+msgstr "啟動網址歷史記錄"
+
+#: rc.c:69
+msgid "Number of remembered URL"
+msgstr "記錄的網址個數"
+
+#: rc.c:70
+msgid "Save URL history"
+msgstr "儲存網址歷史"
+
+#: rc.c:71
+msgid "Render frames automatically"
+msgstr "自動顯示框架"
+
+#: rc.c:72
+msgid "Treat argument without scheme as URL"
+msgstr "沒有通訊協定 (scheme) 的參數一律視作網址"
+
+#: rc.c:73
+msgid "Use _self as default target"
+msgstr "使用 _self 作為預設目標"
+
+#: rc.c:74
+msgid "Open link on new tab if target is _blank or _new"
+msgstr "當目標為 _blank 或 _new 時使用新分頁打開連結"
+
+#: rc.c:75
+msgid "Open download list panel on new tab"
+msgstr "在新分頁顯示下載清單"
+
+#: rc.c:76
+msgid "Display link URL automatically"
+msgstr "自動顯示連結網址"
+
+#: rc.c:77
+msgid "Display link numbers"
+msgstr "顯示連結編號"
+
+#: rc.c:78
+msgid "Display decoded URL"
+msgstr "顯示網址前先行解碼"
+
+#: rc.c:79
+msgid "Display current line number"
+msgstr "顯示目前行號"
+
+#: rc.c:80
+msgid "Display inline images"
+msgstr "顯示嵌入影像"
+
+#: rc.c:81
+msgid "Display pseudo-ALTs for inline images with no ALT or TITLE string"
+msgstr "嵌入影像沒有 ALT 或 TITLE 屬性時顯示虛擬替代文字"
+
+#: rc.c:83
+msgid "Load inline images automatically"
+msgstr "自動載入嵌入影像"
+
+#: rc.c:84
+msgid "Maximum processes for parallel image loading"
+msgstr "平行載入影像時繁洐的子程序數量上限"
+
+#: rc.c:85
+msgid "Use external image viewer"
+msgstr "使用外置影像檢視器"
+
+#: rc.c:86
+msgid "Scale of image (%)"
+msgstr "影像比例 (%)"
+
+#: rc.c:87
+msgid "External command to display image"
+msgstr "顯示影像的指令"
+
+#: rc.c:88
+msgid "Use link list of image map"
+msgstr "使用影像地圖內的連結清單"
+
+#: rc.c:90
+msgid "Display file names in multi-column format"
+msgstr "以多重欄位格式顯示檔名"
+
+#: rc.c:91
+msgid "Use ASCII equivalents to display entities"
+msgstr "限用 ASCII 字元顯示名稱實體"
+
+#: rc.c:92
+msgid "Character type for border of table and menu"
+msgstr "顯示表格和選單的外框和格線時使用的字元類型"
+
+#: rc.c:93
+msgid "Display table borders, ignore value of BORDER"
+msgstr "所有表格一律顯示外框和格線(忽略 BORDER 數值)"
+
+#: rc.c:94
+msgid "Fold lines in TEXTAREA"
+msgstr "在文字區 (TEXTAREA) 中折叠長行"
+
+#: rc.c:95
+msgid "Display INS, DEL, S and STRIKE element"
+msgstr "INS、DEL、S 及 STRIKE 元素的顯示方法"
+
+#: rc.c:96
+msgid "Display with color"
+msgstr "使用顏色"
+
+#: rc.c:97
+msgid "Color of normal character"
+msgstr "一般文字顏色"
+
+#: rc.c:98
+msgid "Color of anchor"
+msgstr "文字連結顏色"
+
+#: rc.c:99
+msgid "Color of image link"
+msgstr "圖片連結顏色"
+
+#: rc.c:100
+msgid "Color of form"
+msgstr "表格顏色"
+
+#: rc.c:101
+msgid "Enable coloring of active link"
+msgstr "游標所在連結以不同顏色顯示"
+
+#: rc.c:102
+msgid "Color of currently active link"
+msgstr "游標所在連結的顏色"
+
+#: rc.c:103
+msgid "Use visited link color"
+msgstr "開啟過的連結以不同顏色顯示"
+
+#: rc.c:104
+msgid "Color of visited link"
+msgstr "開啟過的連結的顏色"
+
+#: rc.c:105
+msgid "Color of background"
+msgstr "背景顏色"
+
+#: rc.c:106
+msgid "Color of mark"
+msgstr "標記顏色"
+
+#: rc.c:107
+msgid "Use proxy"
+msgstr "使用代理伺服器"
+
+#: rc.c:108
+msgid "URL of HTTP proxy host"
+msgstr "HTTP 代理伺服器位址"
+
+#: rc.c:110
+msgid "URL of HTTPS proxy host"
+msgstr "HTTPS 代理伺服器位址"
+
+#: rc.c:113
+msgid "URL of GOPHER proxy host"
+msgstr "GOPHER 代理伺服器位址"
+
+#: rc.c:115
+msgid "URL of FTP proxy host"
+msgstr "FTP 代理伺服器位址"
+
+#: rc.c:116
+msgid "Domains to be accessed directly (no proxy)"
+msgstr "不使用代理伺服器的網域"
+
+#: rc.c:117
+msgid "Check noproxy by network address"
+msgstr "上列不使用代理伺服器的網域含有網路位址"
+
+#: rc.c:118
+msgid "Disable cache"
+msgstr "停用快取"
+
+#: rc.c:120
+msgid "News server"
+msgstr "新聞伺服器"
+
+#: rc.c:121
+msgid "Mode of news server"
+msgstr "存取新聞伺服器時使用的模式參數"
+
+#: rc.c:122
+msgid "Number of news messages"
+msgstr "新聞訊息的每次讀取個數"
+
+#: rc.c:124
+msgid "Order of name resolution"
+msgstr "主機名稱解析順序"
+
+#: rc.c:125
+msgid "Directory corresponding to / (document root)"
+msgstr "對應本地端 / (文件根目錄)的目錄"
+
+#: rc.c:126
+msgid "Directory corresponding to /~user"
+msgstr "對應本地端 /~user 的目錄"
+
+#: rc.c:127
+msgid "Directory corresponding to /cgi-bin"
+msgstr "對應本地端 /cgi-bin 的目錄"
+
+#: rc.c:128
+msgid "Confirm when quitting with q"
+msgstr "使用 q 鍵結束程式時先行確認"
+
+#: rc.c:129
+msgid "Close tab if buffer is last when back"
+msgstr "從最後一個緩衝區返回時隨即關閉分頁"
+
+#: rc.c:131
+msgid "Enable mark operations"
+msgstr "啟動標記操作"
+
+#: rc.c:133
+msgid "Enable Emacs-style line editing"
+msgstr "啟動 Emacs 風格的列編輯"
+
+#: rc.c:134
+msgid "Space key triggers file completion while editing URLs"
+msgstr "編輯網址時空白鍵觸發檔名補齊功能"
+
+#: rc.c:135
+msgid "Enable vi-like numeric prefix"
+msgstr "啟動 vi 式的數字前綴"
+
+#: rc.c:136
+msgid "Move cursor to top line when going to label"
+msgstr "跳到標籤時將游標移到最頂行"
+
+#: rc.c:137
+msgid "Move cursor to top line when moving to next page"
+msgstr "跳到下一頁時將游標移到最頂行"
+
+#: rc.c:138
+msgid "Fold lines of plain text file"
+msgstr "顯示純文字檔案時折叠長行"
+
+#: rc.c:139
+msgid "Show line numbers"
+msgstr "顯示行號"
+
+#: rc.c:140
+msgid "Show search string"
+msgstr "顯示搜尋字串"
+
+#: rc.c:141
+msgid "List of mime.types files"
+msgstr "mime.type 檔案列表"
+
+#: rc.c:142
+msgid "List of mailcap files"
+msgstr "mailcap 檔案列表"
+
+#: rc.c:143
+msgid "List of urimethodmap files"
+msgstr "urlmethodmap 檔案列表"
+
+#: rc.c:144
+msgid "Editor"
+msgstr "文字編輯器"
+
+#: rc.c:145
+msgid "Mailer"
+msgstr "電子郵件程式"
+
+#: rc.c:146
+msgid "How to call Mailer for mailto URLs with options"
+msgstr "開啟含參數的 mailto 網址時執行電子郵件程式的方法"
+
+#: rc.c:147
+msgid "External browser"
+msgstr "外部瀏覽器"
+
+#: rc.c:148
+msgid "2nd external browser"
+msgstr "外部瀏覽器之二"
+
+#: rc.c:149
+msgid "3rd external browser"
+msgstr "外部瀏覽器之三"
+
+#: rc.c:150
+msgid "4th external browser"
+msgstr "外部瀏覽器之四"
+
+#: rc.c:151
+msgid "5th external browser"
+msgstr "外部瀏覽器之五"
+
+#: rc.c:152
+msgid "6th external browser"
+msgstr "外部瀏覽器之六"
+
+#: rc.c:153
+msgid "7th external browser"
+msgstr "外部瀏覽器之七"
+
+#: rc.c:154
+msgid "8th external browser"
+msgstr "外部瀏覽器之八"
+
+#: rc.c:155
+msgid "9th external browser"
+msgstr "外部瀏覽器之九"
+
+#: rc.c:156
+msgid "Disable secret file security check"
+msgstr "停用秘密檔案的安全檢查"
+
+#: rc.c:157
+msgid "Password file"
+msgstr "密碼檔案"
+
+#: rc.c:158
+msgid "File for setting form on loading"
+msgstr "填寫表格時專用的秘密檔案"
+
+#: rc.c:159
+msgid "File for preferences for each site"
+msgstr "記錄個別網站偏好的檔案"
+
+#: rc.c:160
+msgid "Password for anonymous FTP (your mail address)"
+msgstr "匿名FTP密碼(您的電子郵件地址)"
+
+#: rc.c:161
+msgid "Generate domain part of password for FTP"
+msgstr "為 FTP 生成密碼的網域部分"
+
+#: rc.c:162
+msgid "User-Agent identification string"
+msgstr "User-Agent 識別符"
+
+#: rc.c:163
+msgid "Accept-Encoding header"
+msgstr "Accept-Encoding 標頭值(可接受的壓縮方法)"
+
+#: rc.c:164
+msgid "Accept header"
+msgstr "Accept 標頭值(可接受的文件格式)"
+
+#: rc.c:165
+msgid "Accept-Language header"
+msgstr "Accept-Language 標頭值(可接受的語言)"
+
+#: rc.c:166
+msgid "Treat URL-like strings as links in all pages"
+msgstr "頁面中所有疑似網址的字串一律視作連結處理"
+
+#: rc.c:167
+msgid "Wrap search"
+msgstr "啟動搜尋回繞"
+
+#: rc.c:168
+msgid "Display unseen objects (e.g. bgimage tag)"
+msgstr "顯示看不到的物件(例如 bgimage 標籤)"
+
+#: rc.c:169
+msgid "Uncompress compressed data automatically when downloading"
+msgstr "下載時自動解壓被壓縮的資料"
+
+#: rc.c:171
+msgid "Run external viewer in a separate session"
+msgstr "在獨立的工作階段執行外部檢視器"
+
+#: rc.c:173
+msgid "Run external viewer in the background"
+msgstr "在後台執行外部檢視器"
+
+#: rc.c:175
+msgid "Use external program for directory listing"
+msgstr "使用外部程式列出目錄"
+
+#: rc.c:176
+msgid "URL of directory listing command"
+msgstr "目錄列表指令的網址"
+
+#: rc.c:178
+msgid "Enable dictionary lookup through CGI"
+msgstr "啟用基於 CGI 的詞典查詢"
+
+#: rc.c:179
+msgid "URL of dictionary lookup command"
+msgstr "詞典查詢指令的網址"
+
+# NOTE: This option is problematic because it enables a behaviour that violates WCAG
+#: rc.c:181
+msgid "Display link name for images lacking ALT"
+msgstr "影像 ALT 值為空白時顯示影像檔案名稱"
+
+#: rc.c:182
+msgid "Index file for directories"
+msgstr "目錄的索引檔案"
+
+#: rc.c:183
+msgid "Prepend http:// to URL automatically"
+msgstr "自動在網址前加上 http://"
+
+#: rc.c:184
+msgid "Default value for open-URL command"
+msgstr "開啟網址時的網址預設值"
+
+#: rc.c:185
+msgid "Decode Content-Transfer-Encoding when saving"
+msgstr "儲存檔案前先按 Content-Transfer-Encoding 進行解碼"
+
+#: rc.c:186
+msgid "Preserve timestamp when saving"
+msgstr "儲存檔案時保留時間戳記"
+
+#: rc.c:188
+msgid "Enable mouse"
+msgstr "啟動滑鼠"
+
+#: rc.c:189
+msgid "Scroll in reverse direction of mouse drag"
+msgstr "拖曳滑鼠時反方向捲動"
+
+#: rc.c:190
+msgid "Behavior of wheel scroll speed"
+msgstr "滾動滾輪時計算捲動速度的方法"
+
+#: rc.c:191
+msgid "(A only)Scroll by # (%) of screen"
+msgstr "(方法 A 適用)捲動螢幕高度的百分值"
+
+#: rc.c:192
+msgid "(B only)Scroll by # lines"
+msgstr "(方法 B 適用)捲動行數"
+
+#: rc.c:194
+msgid "Free memory of undisplayed buffers"
+msgstr "緩衝區如未被顯示,先要釋放記憶體"
+
+#: rc.c:195
+msgid "Suppress `Referer:' header"
+msgstr "不傳送 Referer 標頭"
+
+#: rc.c:196
+msgid "Search case-insensitively"
+msgstr "搜尋時不區分大小寫"
+
+#: rc.c:197
+msgid "Use LESSOPEN"
+msgstr "使用 LESSOPEN"
+
+#: rc.c:200
+msgid "Perform SSL server verification"
+msgstr "進行 SSL 伺服器驗證"
+
+#: rc.c:201
+msgid "PEM encoded certificate file of client"
+msgstr "用戶端的 PEM 憑證檔案"
+
+#: rc.c:202
+msgid "PEM encoded private key file of client"
+msgstr "用戶端的 PEM 私鑰檔案"
+
+#: rc.c:203
+msgid "Path to directory for PEM encoded certificates of CAs"
+msgstr "憑證機構的 PEM 憑證所在目錄路徑"
+
+#: rc.c:204
+msgid "File consisting of PEM encoded certificates of CAs"
+msgstr "含有憑證機構的 PEM 證書的單個檔案"
+
+#: rc.c:206
+msgid ""
+"List of forbidden SSL methods (2: SSLv2, 3: SSLv3, t: TLSv1.0, 5: TLSv1.1, "
+"6: TLSv1.2, 7: TLSv1.3)"
+msgstr ""
+"禁止使用的 SSL 版本 (2: SSLv2, 3: SSLv3, t: TLSv1.0, 5: TLSv1.1, 6: TLSv1.2, "
+"7: TLSv1.3)"
+
+#: rc.c:209
+msgid "Enable cookie processing"
+msgstr "啟動 Cookie 處理"
+
+#: rc.c:210
+msgid "Print a message when receiving a cookie"
+msgstr "接收 Cookie 時顯示訊息"
+
+#: rc.c:211
+msgid "Accept cookies"
+msgstr "接受 Cookie"
+
+#: rc.c:212
+msgid "Action to be taken on invalid cookie"
+msgstr "無效 Cookie 的處理方法"
+
+#: rc.c:213
+msgid "Domains to reject cookies from"
+msgstr "拒絕以下網域的 Cookie"
+
+#: rc.c:214
+msgid "Domains to accept cookies from"
+msgstr "接受以下網域的 Cookie"
+
+#: rc.c:215
+msgid "Domains to avoid [wrong number of dots]"
+msgstr "避免瀏覽的網域 [網址含錯誤數量的點號]"
+
+#: rc.c:217
+msgid "Number of redirections to follow"
+msgstr "跟隨的重定向數量"
+
+#: rc.c:218
+msgid "Enable processing of meta-refresh tag"
+msgstr "啟動 meta-refresh 標籤處理"
+
+#: rc.c:221
+msgid "Enable Migemo (Roma-ji search)"
+msgstr "啟動 Migemo (日語羅馬字搜尋)"
+
+#: rc.c:222
+msgid "Migemo command"
+msgstr "Migemo 指令"
+
+#: rc.c:226
+msgid "Display charset"
+msgstr "輸出編碼"
+
+#: rc.c:227
+msgid "Default document charset"
+msgstr "預設文件編碼"
+
+#: rc.c:228
+msgid "Automatic charset detect when loading"
+msgstr "載入時自動偵測文件編碼"
+
+#: rc.c:229
+msgid "System charset"
+msgstr "系統編碼"
+
+#: rc.c:230
+msgid "System charset follows locale(LC_CTYPE)"
+msgstr "按 LC_CTYPE 選擇系統編碼"
+
+#: rc.c:231
+msgid "Output halfdump with display charset"
+msgstr "使用輸出編碼時使用半傾印 (halfdump) 輸出模式"
+
+#: rc.c:232
+msgid "Use multi column characters"
+msgstr "使用寛於半形符號的字元"
+
+#: rc.c:233
+msgid "Use combining characters"
+msgstr "使用組合字元"
+
+#: rc.c:234
+msgid "Use double width for some Unicode characters"
+msgstr "使用全形字顯示某些 Unicode 字元"
+
+#: rc.c:235
+msgid "Use Unicode language tags"
+msgstr "使用 Unicode 語言標籤"
+
+#: rc.c:236
+msgid "Charset conversion using Unicode map"
+msgstr "使用 Unicode 對映進行編碼轉換"
+
+#: rc.c:237
+msgid "Charset conversion when loading"
+msgstr "載入時進行編碼轉換"
+
+#: rc.c:238
+msgid "Adjust search string for document charset"
+msgstr "搜尋時按文件編碼自動調整搜尋字串"
+
+#: rc.c:239
+msgid "Fix character width when conversion"
+msgstr "轉換編碼時自動校正字元寬度"
+
+#: rc.c:240
+msgid "Use GB 12345 Unicode map instead of GB 2312's"
+msgstr "使用 GB 12345 而非 GB 2312 的 Unicode 對映"
+
+#: rc.c:241
+msgid "Use JIS X 0201 Roman for ISO-2022-JP"
+msgstr "使用 JIS X 0201 羅馬字母處理 ISO-2022-JP"
+
+#: rc.c:242
+msgid "Use JIS C 6226:1978 for ISO-2022-JP"
+msgstr "使用 JIS C 6226:1978 處理 ISO-2022-JP"
+
+#: rc.c:243
+msgid "Use JIS X 0201 Katakana"
+msgstr "使用 JIS X 0201 片假名"
+
+#: rc.c:244
+msgid "Use JIS X 0212:1990 (Supplemental Kanji)"
+msgstr "使用 JIS X 0212:1990 (補充漢字)"
+
+#: rc.c:245
+msgid "Use JIS X 0213:2000 (2000JIS)"
+msgstr "使用 JIS X 0213:2000 (2000JIS)"
+
+#: rc.c:246
+msgid "Strict ISO-2022-JP/KR/CN"
+msgstr "嚴格處理 ISO-2022-JP/KR/CN"
+
+#: rc.c:247
+msgid "Treat 4 bytes char. of GB18030 as Unicode"
+msgstr "GB18030 編碼的 4 位元組字元一律視為 Unicode"
+
+#: rc.c:248
+msgid "Simple Preserve space"
+msgstr "保留空白時只作簡單處理"
+
+#: rc.c:251
+msgid "keymap file"
+msgstr "鍵盤對映檔案"
+
+#: rc.c:268
+msgid "black"
+msgstr "黑色"
+
+#: rc.c:269
+msgid "red"
+msgstr "紅色"
+
+#: rc.c:270
+msgid "green"
+msgstr "綠色"
+
+#: rc.c:271
+msgid "yellow"
+msgstr "黃色"
+
+#: rc.c:272
+msgid "blue"
+msgstr "藍色"
+
+#: rc.c:273
+msgid "magenta"
+msgstr "洋紅"
+
+#: rc.c:274
+msgid "cyan"
+msgstr "青藍"
+
+#: rc.c:275
+msgid "white"
+msgstr "白色"
+
+#: rc.c:276
+msgid "terminal"
+msgstr "終端機預設"
+
+#: rc.c:295
+msgid "none"
+msgstr "空白"
+
+#: rc.c:296
+msgid "current URL"
+msgstr "所在緩衝區網址"
+
+#: rc.c:297
+msgid "link URL"
+msgstr "連結網址"
+
+#: rc.c:302
+msgid "simple"
+msgstr "不作處理"
+
+#: rc.c:303
+msgid "use tag"
+msgstr "顯示標籤"
+
+#: rc.c:304
+msgid "fontify"
+msgstr "格式化"
+
+#: rc.c:310
+msgid "A:relative to screen height"
+msgstr "A:相對於螢幕高度"
+
+#: rc.c:311
+msgid "B:fixed speed"
+msgstr "B:固定速度"
+
+#: rc.c:318
+msgid "unspecified"
+msgstr "未指定"
+
+#: rc.c:319
+msgid "inet inet6"
+msgstr "IPv4 然後 IPv6"
+
+#: rc.c:320
+msgid "inet6 inet"
+msgstr "IPv6 然後 IPv4"
+
+#: rc.c:321
+msgid "inet only"
+msgstr "限用 IPv4"
+
+#: rc.c:322
+msgid "inet6 only"
+msgstr "限用 IPv6"
+
+#: rc.c:329
+msgid "discard"
+msgstr "丟棄"
+
+#: rc.c:331
+msgid "accept"
+msgstr "接受"
+
+#: rc.c:333
+msgid "ask"
+msgstr "詢問"
+
+#: rc.c:340
+msgid "use internal mailer instead"
+msgstr "使用內建郵件傳送器"
+
+#: rc.c:342
+msgid "ignore options and use only the address"
+msgstr "忽略參數,限用地址部分"
+
+#: rc.c:343
+msgid "use full mailto URL"
+msgstr "使用整個 mailto 網址"
+
+#: rc.c:352
+msgid "OFF"
+msgstr "停用"
+
+#: rc.c:353
+msgid "Only ISO 2022"
+msgstr "只限 ISO 2022"
+
+#: rc.c:354
+msgid "ON"
+msgstr "啟動"
+
+#: rc.c:360
+msgid "ASCII"
+msgstr "限用 ASCII"
+
+#: rc.c:361
+msgid "charset specific"
+msgstr "依照編碼"
+
+#: rc.c:362
+msgid "DEC special graphics"
+msgstr "使用 DEC 圖形字元"
+
+#: rc.c:743
+msgid "Display Settings"
+msgstr "顯示設定"
+
+#: rc.c:745
+msgid "Color Settings"
+msgstr "顏色設定"
+
+#: rc.c:747
+msgid "Miscellaneous Settings"
+msgstr "雜項設定"
+
+#: rc.c:748
+msgid "Directory Settings"
+msgstr "目錄設定"
+
+#: rc.c:749
+msgid "External Program Settings"
+msgstr "外部程式設定"
+
+#: rc.c:750
+msgid "Network Settings"
+msgstr "網路設定"
+
+#: rc.c:751
+msgid "Proxy Settings"
+msgstr "代理伺服器設定"
+
+#: rc.c:753
+msgid "SSL Settings"
+msgstr "SSL 設定"
+
+#: rc.c:756
+msgid "Cookie Settings"
+msgstr "Cookie 設定"
+
+#: rc.c:759
+msgid "Charset Settings"
+msgstr "編碼設定"
+
+#. TRANSLATORS:
+#. * AcceptLang default: this is used in Accept-Language: HTTP request
+#. * header. For example, ja.po should translate it as
+#. * "ja;q=1.0, en;q=0.5" like that.
+#.
+#: rc.c:1241
+msgid "en;q=1.0"
+msgstr "zh-TW;q=1.0, zh-Hant;q=0.9, en;q=0.8; zh;q=0.6"
diff --git a/proto.h b/proto.h
index f8a7345..0c6483d 100644
--- a/proto.h
+++ b/proto.h
@@ -1,5 +1,5 @@
/* $Id: proto.h,v 1.104 2010/07/25 09:55:05 htrb Exp $ */
-/*
+/*
* This file was automatically generated by version 1.7 of cextract.
* Manual editing not recommended.
*
@@ -11,6 +11,8 @@ extern void pushEvent(int cmd, void *data);
extern MySignalHandler intTrap(SIGNAL_ARG);
extern void pgFore(void);
extern void pgBack(void);
+extern void hpgFore(void);
+extern void hpgBack(void);
extern void lup1(void);
extern void ldown1(void);
extern void ctrCsrV(void);
@@ -61,6 +63,7 @@ extern void submitForm(void);
extern void followForm(void);
extern void topA(void);
extern void lastA(void);
+extern void nthA(void);
extern void onA(void);
extern void nextA(void);
@@ -78,6 +81,7 @@ extern void prevBf(void);
extern void backBf(void);
extern void deletePrevBuf(void);
extern void goURL(void);
+extern void goHome(void);
extern void gorURL(void);
extern void ldBmark(void);
extern void adBmark(void);
@@ -152,6 +156,9 @@ extern Anchor *list_menu(Buffer *buf);
#endif
extern void undoPos(void);
extern void redoPos(void);
+extern void cursorTop(void);
+extern void cursorMiddle(void);
+extern void cursorBottom(void);
extern int currentLn(Buffer *buf);
extern void tmpClearBuffer(Buffer *buf);
@@ -162,6 +169,24 @@ extern Str searchURIMethods(ParsedURL *pu);
extern void chkExternalURIBuffer(Buffer *buf);
#endif
extern ParsedURL *schemeToProxy(int scheme);
+#ifdef USE_M17N
+extern wc_ces url_to_charset(const char *url, const ParsedURL *base,
+ wc_ces doc_charset);
+extern char *url_encode(const char *url, const ParsedURL *base,
+ wc_ces doc_charset);
+#if 0
+extern char *url_decode(const char *url, const ParsedURL *base,
+ wc_ces doc_charset);
+#endif
+extern char *url_decode2(const char *url, const Buffer *buf);
+#else /* !defined(USE_M17N) */
+#define url_encode(url, base, cs) url_quote(url)
+extern char *url_decode0(const char *url);
+#if 0
+#define url_decode(url, base, cs) url_decode0(url)
+#endif
+#define url_decode2(url, buf) url_decode0(url)
+#endif /* !defined(USE_M17N) */
extern void examineFile(char *path, URLFile *uf);
extern char *acceptableEncoding();
extern int dir_exist(char *path);
@@ -180,7 +205,6 @@ extern void push_symbol(Str str, char symbol, int width, int n);
#ifdef USE_UNICODE
extern void update_utf8_symbol(void);
#endif
-extern Buffer *loadFile(char *path);
extern Buffer *loadGeneralFile(char *path, ParsedURL *current, char *referer,
int flag, FormList *request);
extern int is_boundary(unsigned char *, unsigned char *);
@@ -207,6 +231,8 @@ extern int getImageSize(ImageCache * cache);
extern Str process_img(struct parsed_tag *tag, int width);
extern Str process_anchor(struct parsed_tag *tag, char *tagbuf);
extern Str process_input(struct parsed_tag *tag);
+extern Str process_button(struct parsed_tag *tag);
+extern Str process_n_button(void);
extern Str process_select(struct parsed_tag *tag);
extern Str process_n_select(void);
extern void feed_select(char *str);
@@ -235,7 +261,15 @@ extern void loadHTMLstream(URLFile *f, Buffer *newBuf, FILE * src,
int internal);
extern Buffer *loadHTMLString(Str page);
#ifdef USE_GOPHER
+#ifdef USE_M17N
extern Str loadGopherDir(URLFile *uf, ParsedURL *pu, wc_ces * charset);
+extern Str loadGopherSearch(URLFile *uf, ParsedURL *pu, wc_ces * charset);
+#else
+extern Str loadGopherDir0(URLFile *uf, ParsedURL *pu);
+extern Str loadGopherSearch0(URLFile *uf, ParsedURL *pu);
+#define loadGopherDir(uf,pu,charset) loadGopherDir0(uf,pu)
+#define loadGopherSearch(uf,pu,charset) loadGopherSearch0(uf,pu)
+#endif
#endif /* USE_GOPHER */
extern Buffer *loadBuffer(URLFile *uf, Buffer *newBuf);
#ifdef USE_IMAGE
@@ -249,8 +283,7 @@ extern Buffer *openPagerBuffer(InputStream stream, Buffer *buf);
extern Buffer *openGeneralPagerBuffer(InputStream stream);
extern Line *getNextPage(Buffer *buf, int plen);
extern int save2tmp(URLFile uf, char *tmpf);
-extern int doExternal(URLFile uf, char *path, char *type, Buffer **bufp,
- Buffer *defaultbuf);
+extern Buffer *doExternal(URLFile uf, char *type, Buffer *defaultbuf);
extern int _doFileCopy(char *tmpf, char *defstr, int download);
#define doFileCopy(tmpf, defstr) _doFileCopy(tmpf, defstr, FALSE);
extern int doFileMove(char *tmpf, char *defstr);
@@ -372,6 +405,7 @@ extern void align(TextLine *lbuf, int width, int mode);
extern void print_item(struct table *t, int row, int col, int width, Str buf);
extern void print_sep(struct table *t, int row, int type, int maxcol, Str buf);
extern void do_refill(struct table *tbl, int row, int col, int maxlimit);
+extern void initRenderTable(void);
extern void renderTable(struct table *t, int max_width,
struct html_feed_environ *h_env);
extern struct table *begin_table(int border, int spacing, int padding,
@@ -507,7 +541,7 @@ extern ParsedURL *baseURL(Buffer *buf);
extern int openSocket(char *hostname, char *remoteport_name,
unsigned short remoteport_num);
extern void parseURL(char *url, ParsedURL *p_url, ParsedURL *current);
-extern void copyParsedURL(ParsedURL *p, ParsedURL *q);
+extern void copyParsedURL(ParsedURL *p, const ParsedURL *q);
extern void parseURL2(char *url, ParsedURL *pu, ParsedURL *current);
extern Str parsedURL2Str(ParsedURL *pu);
extern int getURLScheme(char **url);
@@ -586,9 +620,12 @@ extern char *getAnchorText(Buffer *buf, AnchorList *al, Anchor *a);
extern Buffer *link_list_panel(Buffer *buf);
extern Str decodeB(char **ww);
+extern void decodeB_to_growbuf(struct growbuf *gb, char **ww);
extern Str decodeQ(char **ww);
extern Str decodeQP(char **ww);
+extern void decodeQP_to_growbuf(struct growbuf *gb, char **ww);
extern Str decodeU(char **ww);
+extern void decodeU_to_growbuf(struct growbuf *gb, char **ww);
#ifdef USE_M17N
extern Str decodeWord(char **ow, wc_ces * charset);
extern Str decodeMIME(Str orgstr, wc_ces * charset);
@@ -611,6 +648,7 @@ extern char *confFile(char *base);
extern char *auxbinFile(char *base);
extern char *libFile(char *base);
extern char *helpFile(char *base);
+extern const void *querySiteconf(const ParsedURL *query_pu, int field);
extern Str localCookie(void);
extern Str loadLocalDir(char *dirname);
extern void set_environ(char *var, char *value);
@@ -683,6 +721,7 @@ extern void reMark(void);
#ifdef USE_MOUSE
extern void mouse(void);
+extern void sgrmouse(void);
extern void mouse_init(void);
extern void mouse_end(void);
extern void mouse_active(void);
@@ -698,6 +737,7 @@ extern void tabMs(void);
extern void closeTMs(void);
#else /* not USE_MOUSE */
#define mouse nulcmd
+#define sgrmouse nulcmd
#define msToggle nulcmd
#define movMs nulcmd
#define menuMs nulcmd
@@ -723,6 +763,8 @@ extern int getKey(char *s);
extern char *getKeyData(int key);
extern char *getWord(char **str);
extern char *getQWord(char **str);
+struct regex;
+extern char *getRegexWord(const char **str, struct regex **regex_ret);
#ifdef USE_MOUSE
extern void initMouseAction(void);
#endif
@@ -786,5 +828,3 @@ extern void dispVer(void);
void srand48(long);
long lrand48(void);
#endif
-
-#include "indep.h"
diff --git a/rc.c b/rc.c
index 8441a39..423e008 100644
--- a/rc.c
+++ b/rc.c
@@ -9,7 +9,9 @@
#include <errno.h>
#include "parsetag.h"
#include "local.h"
+#include "regex.h"
#include <stdlib.h>
+#include <stddef.h>
struct param_ptr {
char *name;
@@ -88,6 +90,7 @@ static int OptionEncode = FALSE;
#define CMT_MULTICOL N_("Display file names in multi-column format")
#define CMT_ALT_ENTITY N_("Use ASCII equivalents to display entities")
#define CMT_GRAPHIC_CHAR N_("Character type for border of table and menu")
+#define CMT_DISP_BORDERS N_("Display table borders, ignore value of BORDER")
#define CMT_FOLD_TEXTAREA N_("Fold lines in TEXTAREA")
#define CMT_DISP_INS_DEL N_("Display INS, DEL, S and STRIKE element")
#define CMT_COLOR N_("Display with color")
@@ -128,6 +131,7 @@ static int OptionEncode = FALSE;
#define CMT_USE_MARK N_("Enable mark operations")
#endif
#define CMT_EMACS_LIKE_LINEEDIT N_("Enable Emacs-style line editing")
+#define CMT_SPACE_AUTOCOMPLETE N_("Space key triggers file completion while editing URLs")
#define CMT_VI_PREC_NUM N_("Enable vi-like numeric prefix")
#define CMT_LABEL_TOPLINE N_("Move cursor to top line when going to label")
#define CMT_NEXTPAGE_TOPLINE N_("Move cursor to top line when moving to next page")
@@ -140,12 +144,19 @@ static int OptionEncode = FALSE;
#define CMT_EDITOR N_("Editor")
#define CMT_MAILER N_("Mailer")
#define CMT_MAILTO_OPTIONS N_("How to call Mailer for mailto URLs with options")
-#define CMT_EXTBRZ N_("External Browser")
-#define CMT_EXTBRZ2 N_("Second External Browser")
-#define CMT_EXTBRZ3 N_("Third External Browser")
+#define CMT_EXTBRZ N_("External browser")
+#define CMT_EXTBRZ2 N_("2nd external browser")
+#define CMT_EXTBRZ3 N_("3rd external browser")
+#define CMT_EXTBRZ4 N_("4th external browser")
+#define CMT_EXTBRZ5 N_("5th external browser")
+#define CMT_EXTBRZ6 N_("6th external browser")
+#define CMT_EXTBRZ7 N_("7th external browser")
+#define CMT_EXTBRZ8 N_("8th external browser")
+#define CMT_EXTBRZ9 N_("9th external browser")
#define CMT_DISABLE_SECRET_SECURITY_CHECK N_("Disable secret file security check")
#define CMT_PASSWDFILE N_("Password file")
#define CMT_PRE_FORM_FILE N_("File for setting form on loading")
+#define CMT_SITECONF_FILE N_("File for preferences for each site")
#define CMT_FTPPASS N_("Password for anonymous FTP (your mail address)")
#define CMT_FTPPASS_HOSTNAMEGEN N_("Generate domain part of password for FTP")
#define CMT_USERAGENT N_("User-Agent identification string")
@@ -192,7 +203,7 @@ static int OptionEncode = FALSE;
#define CMT_SSL_CA_PATH N_("Path to directory for PEM encoded certificates of CAs")
#define CMT_SSL_CA_FILE N_("File consisting of PEM encoded certificates of CAs")
#endif /* USE_SSL_VERIFY */
-#define CMT_SSL_FORBID_METHOD N_("List of forbidden SSL methods (2: SSLv2, 3: SSLv3, t:TLSv1)")
+#define CMT_SSL_FORBID_METHOD N_("List of forbidden SSL methods (2: SSLv2, 3: SSLv3, t: TLSv1.0, 5: TLSv1.1, 6: TLSv1.2, 7: TLSv1.3)")
#endif /* USE_SSL */
#ifdef USE_COOKIE
#define CMT_USECOOKIE N_("Enable cookie processing")
@@ -390,6 +401,8 @@ struct param_ptr params1[] = {
NULL},
{"graphic_char", P_CHARINT, PI_SEL_C, (void *)&UseGraphicChar,
CMT_GRAPHIC_CHAR, (void *)graphic_char_str},
+ {"display_borders", P_CHARINT, PI_ONOFF, (void *)&DisplayBorders,
+ CMT_DISP_BORDERS, NULL},
{"fold_textarea", P_CHARINT, PI_ONOFF, (void *)&FoldTextarea,
CMT_FOLD_TEXTAREA, NULL},
{"display_ins_del", P_INT, PI_SEL_C, (void *)&displayInsDel,
@@ -473,6 +486,8 @@ struct param_ptr params3[] = {
#endif
{"emacs_like_lineedit", P_INT, PI_ONOFF, (void *)&emacs_like_lineedit,
CMT_EMACS_LIKE_LINEEDIT, NULL},
+ {"space_autocomplete", P_INT, PI_ONOFF, (void *)&space_autocomplete,
+ CMT_SPACE_AUTOCOMPLETE, NULL},
{"vi_prec_num", P_INT, PI_ONOFF, (void *)&vi_prec_num, CMT_VI_PREC_NUM,
NULL},
{"mark_all_pages", P_INT, PI_ONOFF, (void *)&MarkAllPages,
@@ -561,6 +576,18 @@ struct param_ptr params6[] = {
NULL},
{"extbrowser3", P_STRING, PI_TEXT, (void *)&ExtBrowser3, CMT_EXTBRZ3,
NULL},
+ {"extbrowser4", P_STRING, PI_TEXT, (void *)&ExtBrowser4, CMT_EXTBRZ4,
+ NULL},
+ {"extbrowser5", P_STRING, PI_TEXT, (void *)&ExtBrowser5, CMT_EXTBRZ5,
+ NULL},
+ {"extbrowser6", P_STRING, PI_TEXT, (void *)&ExtBrowser6, CMT_EXTBRZ6,
+ NULL},
+ {"extbrowser7", P_STRING, PI_TEXT, (void *)&ExtBrowser7, CMT_EXTBRZ7,
+ NULL},
+ {"extbrowser8", P_STRING, PI_TEXT, (void *)&ExtBrowser8, CMT_EXTBRZ8,
+ NULL},
+ {"extbrowser9", P_STRING, PI_TEXT, (void *)&ExtBrowser9, CMT_EXTBRZ9,
+ NULL},
{"bgextviewer", P_INT, PI_ONOFF, (void *)&BackgroundExtViewer,
CMT_BGEXTVIEW, NULL},
{"use_lessopen", P_INT, PI_ONOFF, (void *)&use_lessopen, CMT_USE_LESSOPEN,
@@ -619,6 +646,8 @@ struct param_ptr params9[] = {
CMT_FTPPASS_HOSTNAMEGEN, NULL},
{"pre_form_file", P_STRING, PI_TEXT, (void *)&pre_form_file,
CMT_PRE_FORM_FILE, NULL},
+ {"siteconf_file", P_STRING, PI_TEXT, (void *)&siteconf_file,
+ CMT_SITECONF_FILE, NULL},
{"user_agent", P_STRING, PI_TEXT, (void *)&UserAgent, CMT_USERAGENT, NULL},
{"no_referer", P_INT, PI_ONOFF, (void *)&NoSendReferer, CMT_NOSENDREFERER,
NULL},
@@ -771,7 +800,7 @@ create_option_search_table()
qsort(RC_search_table, RC_table_size, sizeof(struct rc_search_table),
(int (*)(const void *, const void *))compare_table);
- diff1 = diff2 = 0;
+ diff2 = 0;
for (i = 0; i < RC_table_size - 1; i++) {
p = RC_search_table[i].param->name;
q = RC_search_table[i + 1].param->name;
@@ -829,7 +858,7 @@ void
show_params(FILE * fp)
{
int i, j, l;
- char *t = NULL;
+ const char *t = "";
char *cmt;
#ifdef USE_M17N
@@ -1173,6 +1202,8 @@ do_mkdir(const char *dir, long mode)
#endif /* not __MINW32_VERSION */
#endif /* not __EMX__ */
+static void loadSiteconf(void);
+
void
sync_with_option(void)
{
@@ -1199,6 +1230,7 @@ sync_with_option(void)
#endif
loadPasswd();
loadPreForm();
+ loadSiteconf();
if (AcceptLang == NULL || *AcceptLang == '\0') {
/* TRANSLATORS:
@@ -1250,7 +1282,7 @@ init_rc(void)
if (stat(rc_dir, &st) < 0) {
if (errno == ENOENT) { /* no directory */
if (do_mkdir(rc_dir, 0700) < 0) {
- fprintf(stderr, "Can't create config directory (%s)!", rc_dir);
+ /* fprintf(stderr, "Can't create config directory (%s)!\n", rc_dir); */
goto rc_dir_err;
}
else {
@@ -1258,17 +1290,17 @@ init_rc(void)
}
}
else {
- fprintf(stderr, "Can't open config directory (%s)!", rc_dir);
+ /* fprintf(stderr, "Can't open config directory (%s)!\n", rc_dir); */
goto rc_dir_err;
}
}
if (!S_ISDIR(st.st_mode)) {
/* not a directory */
- fprintf(stderr, "%s is not a directory!", rc_dir);
+ /* fprintf(stderr, "%s is not a directory!\n", rc_dir); */
goto rc_dir_err;
}
if (!(st.st_mode & S_IWUSR)) {
- fprintf(stderr, "%s is not writable!", rc_dir);
+ /* fprintf(stderr, "%s is not writable!\n", rc_dir); */
goto rc_dir_err;
}
no_rc_dir = FALSE;
@@ -1301,6 +1333,11 @@ init_rc(void)
((tmp_dir = getenv("TMP")) == NULL || *tmp_dir == '\0') &&
((tmp_dir = getenv("TEMP")) == NULL || *tmp_dir == '\0'))
tmp_dir = "/tmp";
+#ifdef HAVE_MKDTEMP
+ tmp_dir = mkdtemp(Strnew_m_charp(tmp_dir, "/w3m-XXXXXX", NULL)->ptr);
+ if (tmp_dir == NULL)
+ tmp_dir = rc_dir;
+#endif
create_option_search_table();
goto open_rc;
}
@@ -1483,6 +1520,7 @@ panel_set_option(struct parsed_tagarg *arg)
{
FILE *f = NULL;
char *p;
+ Str s = Strnew(), tmp;
if (config_file == NULL) {
disp_message("There's no config file... config not saved", FALSE);
@@ -1498,14 +1536,17 @@ panel_set_option(struct parsed_tagarg *arg)
if (arg->value) {
p = conv_to_system(arg->value);
if (set_param(arg->arg, p)) {
- if (f)
- fprintf(f, "%s %s\n", arg->arg, p);
+ tmp = Sprintf("%s %s\n", arg->arg, p);
+ Strcat(tmp, s);
+ s = tmp;
}
}
arg = arg->next;
}
- if (f)
+ if (f) {
+ fputs(s->ptr, f);
fclose(f);
+ }
sync_with_option();
backBf();
}
@@ -1556,3 +1597,229 @@ helpFile(char *base)
return expandPath(Strnew_m_charp(w3m_help_dir(), "/", base, NULL)->ptr);
}
#endif
+
+/* siteconf */
+/*
+ * url "<url>"|/<re-url>/|m@<re-url>@i [exact]
+ * substitute_url "<destination-url>"
+ * url_charset <charset>
+ * no_referer_from on|off
+ * no_referer_to on|off
+ * user_agent "<string>"
+ *
+ * The last match wins.
+ */
+
+struct siteconf_rec {
+ struct siteconf_rec *next;
+ char *url;
+ Regex *re_url;
+ int url_exact;
+ unsigned char mask[(SCONF_N_FIELD + 7) >> 3];
+
+ char *substitute_url;
+ char *user_agent;
+#ifdef USE_M17N
+ wc_ces url_charset;
+#endif
+ int no_referer_from;
+ int no_referer_to;
+};
+#define SCONF_TEST(ent, f) ((ent)->mask[(f)>>3] & (1U<<((f)&7)))
+#define SCONF_SET(ent, f) ((ent)->mask[(f)>>3] |= (1U<<((f)&7)))
+#define SCONF_CLEAR(ent, f) ((ent)->mask[(f)>>3] &= ~(1U<<((f)&7)))
+
+static struct siteconf_rec *siteconf_head = NULL;
+static struct siteconf_rec *newSiteconfRec(void);
+
+static struct siteconf_rec *
+newSiteconfRec(void)
+{
+ struct siteconf_rec *ent;
+
+ ent = New(struct siteconf_rec);
+ ent->next = NULL;
+ ent->url = NULL;
+ ent->re_url = NULL;
+ ent->url_exact = FALSE;
+ memset(ent->mask, 0, sizeof(ent->mask));
+
+ ent->substitute_url = NULL;
+ ent->user_agent = NULL;
+#ifdef USE_M17N
+ ent->url_charset = 0;
+#endif
+ return ent;
+}
+
+static void
+loadSiteconf(void)
+{
+ char *efname;
+ FILE *fp;
+ Str line;
+ struct siteconf_rec *ent = NULL;
+
+ siteconf_head = NULL;
+ if (!siteconf_file)
+ return;
+ if ((efname = expandPath(siteconf_file)) == NULL)
+ return;
+ fp = fopen(efname, "r");
+ if (fp == NULL)
+ return;
+ while (line = Strfgets(fp), line->length > 0) {
+ char *p, *s;
+
+ Strchop(line);
+ p = line->ptr;
+ SKIP_BLANKS(p);
+ if (*p == '#' || *p == '\0')
+ continue;
+ s = getWord(&p);
+
+ /* The "url" begins a new record. */
+ if (strcmp(s, "url") == 0) {
+ char *url, *opt;
+ struct siteconf_rec *newent;
+
+ /* First, register the current record. */
+ if (ent) {
+ ent->next = siteconf_head;
+ siteconf_head = ent;
+ ent = NULL;
+ }
+
+ /* Second, create a new record. */
+ newent = newSiteconfRec();
+ url = getRegexWord((const char **)&p, &newent->re_url);
+ opt = getWord(&p);
+ SKIP_BLANKS(p);
+ if (!newent->re_url) {
+ ParsedURL pu;
+ if (!url || !*url)
+ continue;
+ parseURL2(url, &pu, NULL);
+ newent->url = parsedURL2Str(&pu)->ptr;
+ }
+ /* If we have an extra or unknown option, ignore this record
+ * for future extensions. */
+ if (strcmp(opt, "exact") == 0) {
+ newent->url_exact = TRUE;
+ }
+ else if (*opt != 0)
+ continue;
+ if (*p)
+ continue;
+ ent = newent;
+ continue;
+ }
+
+ /* If the current record is broken, skip to the next "url". */
+ if (!ent)
+ continue;
+
+ /* Fill the new record. */
+ if (strcmp(s, "substitute_url") == 0) {
+ ent->substitute_url = getQWord(&p);
+ SCONF_SET(ent, SCONF_SUBSTITUTE_URL);
+ }
+ if (strcmp(s, "user_agent") == 0) {
+ ent->user_agent = getQWord(&p);
+ SCONF_SET(ent, SCONF_USER_AGENT);
+ }
+#ifdef USE_M17N
+ else if (strcmp(s, "url_charset") == 0) {
+ char *charset = getWord(&p);
+ ent->url_charset = (charset && *charset) ?
+ wc_charset_to_ces(charset) : 0;
+ SCONF_SET(ent, SCONF_URL_CHARSET);
+ }
+#endif /* USE_M17N */
+ else if (strcmp(s, "no_referer_from") == 0) {
+ ent->no_referer_from = str_to_bool(getWord(&p), 0);
+ SCONF_SET(ent, SCONF_NO_REFERER_FROM);
+ }
+ else if (strcmp(s, "no_referer_to") == 0) {
+ ent->no_referer_to = str_to_bool(getWord(&p), 0);
+ SCONF_SET(ent, SCONF_NO_REFERER_TO);
+ }
+ }
+ if (ent) {
+ ent->next = siteconf_head;
+ siteconf_head = ent;
+ ent = NULL;
+ }
+ fclose(fp);
+}
+
+const void *
+querySiteconf(const ParsedURL *query_pu, int field)
+{
+ const struct siteconf_rec *ent;
+ Str u;
+ char *firstp, *lastp;
+
+ if (field < 0 || field >= SCONF_N_FIELD)
+ return NULL;
+ if (!query_pu || IS_EMPTY_PARSED_URL(query_pu))
+ return NULL;
+ u = parsedURL2Str((ParsedURL *)query_pu);
+ if (u->length == 0)
+ return NULL;
+
+ for (ent = siteconf_head; ent; ent = ent->next) {
+ if (!SCONF_TEST(ent, field))
+ continue;
+ if (ent->re_url) {
+ if (RegexMatch(ent->re_url, u->ptr, u->length, 1)) {
+ MatchedPosition(ent->re_url, &firstp, &lastp);
+ if (!ent->url_exact)
+ goto url_found;
+ if (firstp != u->ptr || lastp == firstp)
+ continue;
+ if (*lastp == 0 || *lastp == '?' || *(lastp - 1) == '?' ||
+ *lastp == '#' || *(lastp - 1) == '#')
+ goto url_found;
+ }
+ } else {
+ int matchlen = strmatchlen(ent->url, u->ptr, u->length);
+ if (matchlen == 0 || ent->url[matchlen] != 0)
+ continue;
+ firstp = u->ptr;
+ lastp = u->ptr + matchlen;
+ if (*lastp == 0 || *lastp == '?' || *(lastp - 1) == '?' ||
+ *lastp == '#' || *(lastp - 1) == '#')
+ goto url_found;
+ if (!ent->url_exact && (*lastp == '/' || *(lastp - 1) == '/'))
+ goto url_found;
+ }
+ }
+ return NULL;
+
+url_found:
+ switch (field) {
+ case SCONF_SUBSTITUTE_URL:
+ if (ent->substitute_url && *ent->substitute_url) {
+ Str tmp = Strnew_charp_n(u->ptr, firstp - u->ptr);
+ Strcat_charp(tmp, ent->substitute_url);
+ Strcat_charp(tmp, lastp);
+ return tmp->ptr;
+ }
+ return NULL;
+ case SCONF_USER_AGENT:
+ if (ent->user_agent && *ent->user_agent) {
+ return ent->user_agent;
+ }
+ return NULL;
+#ifdef USE_M17N
+ case SCONF_URL_CHARSET:
+ return &ent->url_charset;
+#endif
+ case SCONF_NO_REFERER_FROM:
+ return &ent->no_referer_from;
+ case SCONF_NO_REFERER_TO:
+ return &ent->no_referer_to;
+ }
+ return NULL;
+}
diff --git a/regex.c b/regex.c
index 5bee4b2..93406e8 100644
--- a/regex.c
+++ b/regex.c
@@ -77,7 +77,7 @@ static longchar
set_longchar(char *str)
{
unsigned char *p = (unsigned char *)str;
- longchar r;
+ longchar r = { };
#ifdef USE_M17N
if (*p & 0x80) {
@@ -580,7 +580,7 @@ regmatch_iter(struct MatchingContext1 *c,
c->lastpos = c->str;
#ifdef REGEX_DEBUG
if (verbose)
- printf("Succeed: %s %d\n", c->str, c->lastpos - c->str);
+ printf("Succeed: %s %ld\n", c->str, (long)(c->lastpos - c->str));
#endif
YIELD(1, c, 7);
return 0;
diff --git a/scripts/.cvsignore b/scripts/.cvsignore
deleted file mode 100644
index 67b6dc8..0000000
--- a/scripts/.cvsignore
+++ /dev/null
@@ -1,9 +0,0 @@
-dirlist.cgi
-w3mhelp.cgi
-w3mmail.cgi
-w3mhelp-funcdesc.en.pl
-w3mhelp-funcdesc.ja.pl
-w3mhelp-funcname.pl
-w3mhelp-funcdesc-stamp
-xface2xpm
-Makefile
diff --git a/scripts/Makefile.in b/scripts/Makefile.in
index 4da9ce5..5beb9b0 100644
--- a/scripts/Makefile.in
+++ b/scripts/Makefile.in
@@ -60,7 +60,7 @@ w3mhelp-funcname.pl: w3mhelp-funcname.pl.in ../funcname.tab $(top_srcdir)/doc/ke
@cat $(srcdir)/w3mhelp-funcname.pl.in >> w3mhelp-funcname.pl
@echo "done"
-w3mhelp-funcdesc-stamp: $(top_srcdir)/doc/README.func $(top_srcdir)/doc-jp/README.func w3mhelp-funcdesc.en.pl.in w3mhelp-funcdesc.ja.pl.in
+w3mhelp-funcdesc-stamp: $(top_srcdir)/doc/README.func $(top_srcdir)/doc-jp/README.func $(top_srcdir)/doc-de/README.func w3mhelp-funcdesc.en.pl.in w3mhelp-funcdesc.ja.pl.in w3mhelp-funcdesc.de.pl.in
@echo "generating w3mhelp-funcdesc*.pl..."
@for dirlang in $(DOCDIRS); do \
dir=`expr "$$dirlang" : "\(.*\):.*"`; \
@@ -87,7 +87,7 @@ install: $(LIB_TARGETS) $(HELP_TARGETS)
do \
$(INSTALL_SCRIPT) $$file $(DESTDIR)$(AUXBIN_DIR); \
done
- for file in $(LIB_TARGETS); \
+ for file in w3mdict.cgi $(LIB_TARGETS); \
do \
$(INSTALL_SCRIPT) $$file $(DESTDIR)$(CGIBIN_DIR); \
done
@@ -105,7 +105,7 @@ uninstall:
do \
rm -f $(AUXBIN_DIR)/$$file; \
done
- -for file in $(LIB_TARGETS); \
+ -for file in w3mdict.cgi $(LIB_TARGETS); \
do \
rm -f $(LIB_DIR)/$$file; \
done
diff --git a/scripts/bm2menu/README b/scripts/bm2menu/README
index b44f144..cc1f89b 100644
--- a/scripts/bm2menu/README
+++ b/scripts/bm2menu/README
@@ -1,21 +1,21 @@
bm2menu.pl
- �֥å��ޡ����ե����� ~/.w3m/bookmark.html ���Ѵ����� w3m ��
- �֥å��ޡ�����˥塼�Ȥ��ƻȤ����ͤˤ��롣
+ ブックマークファイル ~/.w3m/bookmark.html を変換して w3m の
+ ブックマークメニューとして使える様にする。
-����ˡ
+使用法
- ~/.w3m/bookmark.html ���Ѵ����� ~/.w3m/menu ���ɲá�
+ ~/.w3m/bookmark.html を変換して ~/.w3m/menu に追加。
perl bm2menu.pl ~/.w3m/bookmark.html >> ~/.w3m/menu
- ���ˡ�~/.w3m/keymap ��
+ 次に、~/.w3m/keymap に
keymap x MENU Bookmarks
- ���ͤ˥����γ�����Ƥ��ɲä��ޤ���
+ の様にキーの割り当てを追加します。
- ����ǡ����� `x' �ǥ֥å��ޡ�����˥塼�������ޤ���
- ��˥塼������ doc-jp/README.menu ���ɤ�Ǥ���������
+ これで、キー `x' でブックマークメニューが開きます。
+ メニューの操作は doc-jp/README.menu を読んでください。
diff --git a/scripts/multipart/.cvsignore b/scripts/multipart/.cvsignore
deleted file mode 100644
index db1dff2..0000000
--- a/scripts/multipart/.cvsignore
+++ /dev/null
@@ -1,2 +0,0 @@
-multipart.cgi
-Makefile
diff --git a/scripts/multipart/README b/scripts/multipart/README
index b82f585..ed1f73d 100644
--- a/scripts/multipart/README
+++ b/scripts/multipart/README
@@ -1,24 +1,24 @@
-Content-Type: multipart/* �򰷤� local-CGI
+Content-Type: multipart/* を扱う local-CGI
- Content-Type: multipart/* �ʥե�����򰷤������ local-CGI �Ǥ���
- ��� mailx �ʤɤǥ᡼��� PAGER="w3m -m" ���ɤ�������ꤷ�Ƥ��ޤ���
+ Content-Type: multipart/* なファイルを扱うための local-CGI です。
+ 主に mailx などでメールを PAGER="w3m -m" で読む場合を想定しています。
-���󥹥ȡ���
+インストール
* make install
- ɬ�פʤ� PERL, NKF, LIBDIR �����ꤷ�Ƥ���������
+ 必要なら PERL, NKF, LIBDIR を設定してください。
- * mailcap �� ~/.w3m/mailcap �˥ޡ���
- multipart.cgi �Υѥ�������
+ * mailcap を ~/.w3m/mailcap にマージ
+ multipart.cgi のパスに注意
- * w3m �� Option Setting Panel �ǡ�
- ����¸���� Content-Transfer-Encoding ��ǥ����ɤ���٤� ON
- ź�եե��������¸���������Ǥ���
+ * w3m の Option Setting Panel で、
+ 『保存時に Content-Transfer-Encoding をデコードする』を ON
+ 添付ファイルの保存時に便利です。
-ɬ�פʤ��
+必要なもの
- * NKF �⥸�塼��ޤ��� nkf
- ʸ���������Ѵ��� MIME �إå��Υǥ����ɤˤ�ȤäƤޤ���
- ���ˤ���ʤ�����Ѥ��Ƥ���������
+ * NKF モジュールまたは nkf
+ 文字コード変換や MIME ヘッダのデコードにを使ってます。
+ 気にいらなければ変えてください。
diff --git a/scripts/w3mdict.cgi b/scripts/w3mdict.cgi
new file mode 100755
index 0000000..6b0e62e
--- /dev/null
+++ b/scripts/w3mdict.cgi
@@ -0,0 +1,56 @@
+#!/bin/sh
+# w3mdict.cgi - A dictd dictionary query cgi for w3m
+#
+# REQUIREMENTS:
+# + dict client software
+# + an address of a dict server, for variable ${DICT_SERVER}
+# + a name of a favorite database on that server, for variable
+# ${FAVORITE_DATABASE}
+# OPTIONALLY:
+# + locally install a dict server (eg. dictd) and a collection
+# of dict databases (eg. wordnet, aka "wn")
+
+DICT_SERVER="localhost"
+FAVORITE_DATABASE="wn"
+RETURN_MESSAGE="\n\nPress 'B' to return to the previous page."
+printf "Content-type: text/plain\n"
+type dict \
+|| {
+ # Originally, we inconsiderately failed silently ...
+ # printf "W3m-control: BACK\n\n"
+ printf "\n\nERROR: dict client software not found${RETURN_MESSAGE}"
+ exit
+ }
+# First, we check only our best and favorite database. This is most
+# likely to give us a best defintion, and avoids displaying a long and
+# cluttered page with entries from many databases.
+dict --host "${DICT_SERVER}" \
+ --database "${FAVORITE_DATABASE}" \
+ "${QUERY_STRING}" 2>&1 \
+&& {
+ printf "${RETURN_MESSAGE}"
+ } \
+|| {
+ # The initial attempt failed, so let's search ALL databases
+ # available on the server.
+ dict --host "${DICT_SERVER}" \
+ "${QUERY_STRING}" 2>&1 \
+ && {
+ printf "${RETURN_MESSAGE}"
+ } \
+ || {
+ # No defintions were found in any of the server's databases, so
+ # let's return to the favorite database in order to retrieve its
+ # guess of what we meant to type. Originally, for this case, we
+ # pushed the user's default action to be entering another word for
+ # a dict defintion, so the print command was:
+ # printf "W3m-control: DICT_WORD\n\n"
+ # Now, we need only print a blank line to separate the cgi header
+ # from the page content.
+ printf "\n"
+ dict --host "${DICT_SERVER}" \
+ --database "${FAVORITE_DATABASE}" \
+ "${QUERY_STRING}" 2>&1
+ printf "${RETURN_MESSAGE}"
+ }
+ }
diff --git a/scripts/w3mhelp-funcdesc.de.pl.in b/scripts/w3mhelp-funcdesc.de.pl.in
new file mode 100644
index 0000000..11539d1
--- /dev/null
+++ b/scripts/w3mhelp-funcdesc.de.pl.in
@@ -0,0 +1,66 @@
+# charset
+$charset = 'UTF-8';
+
+# Buffer selection mode
+
+%buf_funcdesc = (
+ 'BUF:PREV', 'Gehe zum vorherigen Punkt',
+ 'BUF:NEXT', 'Gehe zum nächsten Punkt',
+ 'BUF:DELETE', 'Lösche den ausgewählten Eintrag',
+ 'BUF:GO', 'Gehe zum ausgewählten Eintrag',
+);
+
+%lineedit_funcdesc = (
+ 'LINEEDIT:FORWARD', 'Bewege Cursor vorwärts',
+ 'LINEEDIT:BACK', 'Bewege Cursor rückwärts',
+ 'LINEEDIT:BS', 'Vorheriges Zeichen löschen',
+ 'LINEEDIT:DEL', 'Aktuelles Zeichen löschen',
+ 'LINEEDIT:KILL_AFTER', 'Lösche alles nach dem Cursor',
+ 'LINEEDIT:KILL_BEFORE', 'Lösche alles vor dem Cursor',
+ 'LINEEDIT:TOP', 'Gehe zum Zeilenanfang',
+ 'LINEEDIT:BOTTOM', 'Gehe zum Zeilenende',
+ 'LINEEDIT:PREV', 'Hole den vorherigen Chronik-Eintrag',
+ 'LINEEDIT:NEXT', 'Hole den nächsten Chronik-Eintrag',
+ 'LINEEDIT:EDITOR', 'Bearbeite mit externem Editor',
+ 'LINEEDIT:COMPLETE', 'Versuche, den Dateinamen zu komplettieren',
+ 'LINEEDIT:ACCEPT', 'Eingabezeile annehmen',
+);
+
+%menu_funcdesc = (
+ 'MENU:SELECT', 'Wähle Eintrag aus',
+ 'MENU:CLOSE', 'Schließe Menü',
+ 'MENU:CANCEL', 'Einen Auswahlschritt zurück',
+ 'MENU:DOWN', 'Gehe zum nächsten Punkt',
+ 'MENU:UP', 'Gehe zum vorherigen Punkt',
+ 'MENU:LINE_UP', 'Scrolle einen Punkt aufwärts',
+ 'MENU:LINE_DOWN', 'Scrolle einen Punkt abwärts',
+ 'MENU:TOP', 'Gehe zum ersten Punkt',
+ 'MENU:LAST', 'Gehe zum letzten Punkt',
+ 'MENU:NEXT', 'Gehe zur nächsten Seite',
+ 'MENU:PREV', 'Gehe zur vorherigen Seite',
+ 'MENU:SEARCH_FORE', 'Suche vorwärts',
+ 'MENU:SEARCH_BACK', 'Suche rückwärts',
+ 'MENU:SEARCH_NEXT', 'Suche weitere Übereinstimmung',
+ 'MENU:SEARCH_PREV', 'Suche frühere Übereinstimmung',
+ 'MENU:SUSPEND', 'Zurückstellen',
+);
+
+%title = (
+ "Current keymap file", 'Aktuelle Datei mit Tastaturbefehlszuordnung',
+ "In-page Navigation", 'Navigation auf der Seite',
+ "Hyperlink Operations", 'Umgang mit Hyperlinks',
+ "File/Stream Operations", 'Umgang mit Dateien und Datenströmen',
+ "Buffer Operations", 'Umgang mit Puffern',
+ "Tab Operations", 'Umgang mit Reitern',
+ "Buffer and Tab Selection Mode", 'Puffer/Reiter-Auswahl-Modus',
+ "Bookmark Management", 'Lesezeichenverwaltung',
+ "Searches", 'Suchen',
+ "Dictionary Lookup", 'Abgleich mit Wörterbuch',
+ "Mark Operations", 'Umgang mit Textmarken',
+ "Miscellaneous", 'Verschiedenes',
+ "User-defined key bindings", 'Benutzerdefinierte Tastaturbefehle',
+ "Input Line Editing Mode", 'Bearbeitung der Eingabezeile',
+ "Popup Menu Mode", 'Navigation in Menüs',
+);
+
+1;
diff --git a/scripts/w3mhelp-funcdesc.en.pl.in b/scripts/w3mhelp-funcdesc.en.pl.in
index d854b59..b9f4ed8 100644
--- a/scripts/w3mhelp-funcdesc.en.pl.in
+++ b/scripts/w3mhelp-funcdesc.en.pl.in
@@ -4,44 +4,44 @@ $charset = 'US-ASCII';
# Buffer selection mode
%buf_funcdesc = (
- 'BUF:PREV', 'Select previous buffer',
- 'BUF:NEXT', 'Select next buffer',
- 'BUF:DELETE', 'Delete current buffer',
- 'BUF:GO', 'Go to the selected buffer',
+ 'BUF:PREV', 'Previous item',
+ 'BUF:NEXT', 'Next item',
+ 'BUF:DELETE', 'Delete item',
+ 'BUF:GO', 'Select item',
);
%lineedit_funcdesc = (
- 'LINEEDIT:FORWARD', 'Move cursor forward',
- 'LINEEDIT:BACK', 'Move cursor backward',
+ 'LINEEDIT:FORWARD', 'Cursor forward',
+ 'LINEEDIT:BACK', 'Cursor backward',
'LINEEDIT:BS', 'Delete previous character',
- 'LINEEDIT:DEL', 'Delete current character',
- 'LINEEDIT:KILL_AFTER', 'Kill everything after cursor',
- 'LINEEDIT:KILL_BEFORE', 'Kill everything before cursor',
- 'LINEEDIT:TOP', 'Move to the top of line',
- 'LINEEDIT:BOTTOM', 'Move to the bottom of line',
+ 'LINEEDIT:DEL', 'Delete character',
+ 'LINEEDIT:KILL_AFTER', 'Delete everything after cursor',
+ 'LINEEDIT:KILL_BEFORE', 'Delete everything before cursor',
+ 'LINEEDIT:TOP', 'Cursor to the beginning of the line',
+ 'LINEEDIT:BOTTOM', 'Cursor to the end of the line',
'LINEEDIT:PREV', 'Fetch the previous string from the history list',
'LINEEDIT:NEXT', 'Fetch the next string from the history list',
'LINEEDIT:EDITOR', 'Edit with external editor',
- 'LINEEDIT:COMPLETE', 'Complete filename',
- 'LINEEDIT:ACCEPT', 'Accept',
+ 'LINEEDIT:COMPLETE', 'Try to complete filename',
+ 'LINEEDIT:ACCEPT', 'Accept input line',
);
%menu_funcdesc = (
'MENU:SELECT', 'Select item',
'MENU:CLOSE', 'Close menu',
- 'MENU:CANCEL', 'Back',
- 'MENU:DOWN', 'Move to next item',
- 'MENU:UP', 'Move to previous item',
+ 'MENU:CANCEL', 'One selection step backward',
+ 'MENU:DOWN', 'Move to the next item',
+ 'MENU:UP', 'Move to the previous item',
'MENU:LINE_UP', 'Scroll up one item',
'MENU:LINE_DOWN', 'Scroll down one item',
- 'MENU:TOP', 'Go to top item',
- 'MENU:LAST', 'Go to last item',
- 'MENU:NEXT', 'Go to next page',
- 'MENU:PREV', 'Go to previous page',
- 'MENU:SEARCH_FORE', 'Search foreward',
+ 'MENU:TOP', 'Move to the first item',
+ 'MENU:LAST', 'Move to the final item',
+ 'MENU:NEXT', 'Go to the next page',
+ 'MENU:PREV', 'Go to the previous page',
+ 'MENU:SEARCH_FORE', 'Search forward',
'MENU:SEARCH_BACK', 'Search backward',
- 'MENU:SEARCH_NEXT', 'Search next regexp',
- 'MENU:SEARCH_PREV', 'Search previous regexp',
+ 'MENU:SEARCH_NEXT', 'Search for the next match',
+ 'MENU:SEARCH_PREV', 'Search for the previous match',
'MENU:SUSPEND', 'Suspend',
);
diff --git a/scripts/w3mhelp-funcdesc.ja.pl.in b/scripts/w3mhelp-funcdesc.ja.pl.in
index 051c888..d3b0b6f 100644
--- a/scripts/w3mhelp-funcdesc.ja.pl.in
+++ b/scripts/w3mhelp-funcdesc.ja.pl.in
@@ -1,66 +1,66 @@
# charset
-$charset = 'EUC-JP';
+$charset = 'UTF-8';
# Buffer selection mode
%buf_funcdesc = (
- 'BUF:PREV', '��ľ�ΥХåե�������',
- 'BUF:NEXT', '��IJ��ΥХåե�������',
- 'BUF:DELETE', '�������򤷤Ƥ���Хåե�����',
- 'BUF:GO', '�������򤷤Ƥ���Хåե���ɽ��',
+ 'BUF:PREV', '一つ上のバッファを選択',
+ 'BUF:NEXT', '一つ下のバッファを選択',
+ 'BUF:DELETE', '現在選択しているバッファを削除',
+ 'BUF:GO', '現在選択しているバッファを表示',
);
%lineedit_funcdesc = (
- 'LINEEDIT:FORWARD', '��������򱦤ذ�ư',
- 'LINEEDIT:BACK', '��������򺸤ذ�ư',
- 'LINEEDIT:BS', '����ʸ������',
- 'LINEEDIT:DEL', '����������֤�ʸ������',
- 'LINEEDIT:KILL_AFTER', '��������θ��������ƺ��',
- 'LINEEDIT:KILL_BEFORE', '������������ޤǤ����ƺ��',
- 'LINEEDIT:TOP', '��Ƭ�˰�ư',
- 'LINEEDIT:BOTTOM', '�����ذ�ư',
- 'LINEEDIT:PREV', '�ҥ��ȥ꤫��������ʸ�������Ф�',
- 'LINEEDIT:NEXT', '�ҥ��ȥ꤫�鼡��ʸ�������Ф�',
- 'LINEEDIT:EDITOR', '�������ǥ������Խ�',
- 'LINEEDIT:COMPLETE', '�ե�����̾���䴰',
- 'LINEEDIT:ACCEPT', '���Ͻ�λ',
+ 'LINEEDIT:FORWARD', 'カーソルを右へ移動',
+ 'LINEEDIT:BACK', 'カーソルを左へ移動',
+ 'LINEEDIT:BS', '前の文字を削除',
+ 'LINEEDIT:DEL', 'カーソル位置の文字を削除',
+ 'LINEEDIT:KILL_AFTER', 'カーソルの後方を全て削除',
+ 'LINEEDIT:KILL_BEFORE', 'カーソルの前までを全て削除',
+ 'LINEEDIT:TOP', '行頭に移動',
+ 'LINEEDIT:BOTTOM', '行末へ移動',
+ 'LINEEDIT:PREV', 'ヒストリから一つ前の文字列を取り出す',
+ 'LINEEDIT:NEXT', 'ヒストリから次の文字列を取り出す',
+ 'LINEEDIT:EDITOR', '外部エディタで編集',
+ 'LINEEDIT:COMPLETE', 'ファイル名の補完',
+ 'LINEEDIT:ACCEPT', '入力終了',
);
%menu_funcdesc = (
- 'MENU:SELECT', '���ܤ�����',
- 'MENU:CLOSE', '��˥塼���Ĥ���',
- 'MENU:CANCEL', '���',
- 'MENU:DOWN', '��IJ��ι��ܤ�',
- 'MENU:UP', '��ľ�ι��ܤ�',
- 'MENU:LINE_UP', '���ܤ򲼤˥���������',
- 'MENU:LINE_DOWN', '���ܤ��˥���������',
- 'MENU:TOP', '��Ƭ�ι��ܤ�',
- 'MENU:LAST', '�Ǹ�ι��ܤ�',
- 'MENU:NEXT', '���ڡ����ι��ܤ�',
- 'MENU:PREV', '���ڡ����ι��ܤ�',
- 'MENU:SEARCH_FORE', '���ܤ򲼤˸����äƸ���',
- 'MENU:SEARCH_BACK', '���ܤ��˸����äƸ���',
- 'MENU:SEARCH_NEXT', '���ι��ܤ򸡺�',
- 'MENU:SEARCH_PREV', '���ι��ܤ򸡺�',
- 'MENU:SUSPEND', '�����ڥ��',
+ 'MENU:SELECT', '項目を選択',
+ 'MENU:CLOSE', 'メニューを閉じる',
+ 'MENU:CANCEL', '戻る',
+ 'MENU:DOWN', '一つ下の項目へ',
+ 'MENU:UP', '一つ上の項目へ',
+ 'MENU:LINE_UP', '項目を下にスクロール',
+ 'MENU:LINE_DOWN', '項目を上にスクロール',
+ 'MENU:TOP', '先頭の項目へ',
+ 'MENU:LAST', '最後の項目へ',
+ 'MENU:NEXT', '次ページの項目へ',
+ 'MENU:PREV', '前ページの項目へ',
+ 'MENU:SEARCH_FORE', '項目を下に向かって検索',
+ 'MENU:SEARCH_BACK', '項目を上に向かって検索',
+ 'MENU:SEARCH_NEXT', '次の項目を検索',
+ 'MENU:SEARCH_PREV', '前の項目を検索',
+ 'MENU:SUSPEND', 'サスペンド',
);
%title = (
- "Show keymap file", 'keymap �ե�����򸫤�',
- "Page/Cursor motion", '�ڡ���/���������ư',
- "Hyperlink operation", '�ϥ��ѡ�������',
- "File/Stream operation", '�ե�����/���ȥ꡼�����',
- "Buffer operation", '�Хåե����',
- "Tab operation", '�������',
- "Buffer selection mode", '�Хåե�����⡼��',
- "Bookmark operation", '�֥å��ޡ������',
- "Search", '����',
- "Dictionary look-up", '���񸡺�',
- "Mark operation", '�ޡ������',
- "Miscellany", '����¾',
- "User defined keymaps", '�桼�����',
- "Line-edit mode", '���Խ��⡼��',
- "Popup menu", '��˥塼',
+ "Current keymap file", 'keymap ファイルを見る',
+ "In-page Navigation", 'ページ/カーソル移動',
+ "Hyperlink Operations", 'ハイパーリンク操作',
+ "File/Stream Operations", 'ファイル/ストリーム操作',
+ "Buffer Operations", 'バッファ操作',
+ "Tab Operations", 'タブ操作',
+ "Buffer and Tab Selection Mode", 'バッファ選択モード',
+ "Bookmark Management", 'ブックマーク操作',
+ "Searches", '検索',
+ "Dictionary Lookup", '辞書検索',
+ "Mark Operations", 'マーク操作',
+ "Miscellaneous", 'その他',
+ "User-defined key bindings", 'ユーザ定義',
+ "Input Line Editing Mode", '行編集モード',
+ "Popup Menu Mode", 'メニュー',
);
1;
diff --git a/scripts/w3mhelp.cgi.in b/scripts/w3mhelp.cgi.in
index b2fca8f..55358f8 100644
--- a/scripts/w3mhelp.cgi.in
+++ b/scripts/w3mhelp.cgi.in
@@ -48,7 +48,7 @@ if (defined($ENV{'QUERY_STRING'})) {
}
# print "tlang=$tlang\n";
eval {require "w3mhelp-funcdesc.$tlang.pl";};
- if (defined(%funcdesc)) {
+ if (%funcdesc) {
$lang = $tlang;
}
}
@@ -72,22 +72,26 @@ local (%funckeydesc, $key, $fname, $desc);
%funcname = (%funcname, %buf_funcname, %lineedit_funcname, %menu_funcname);
%funcdesc = (%funcdesc, %buf_funcdesc, %lineedit_funcdesc, %menu_funcdesc);
-while (($fname, $desc) = each %funcdesc) {
- $funckeydesc{$funcname{$fname}} = "$fname\n$desc\n";
+# sort for consistent order each time this is run
+foreach my $fname (sort keys %funcdesc) {
+ $funckeydesc{$funcname{$fname}} = "$fname\n$funcdesc{$fname}\n";
}
-while (($key, $fname) = each %keyfunc) {
+foreach $key (sort keys %keyfunc) {
$keydata{$key} && next;
- $funckeydesc{$funcname{$fname}} .= "$key,";
+ $funckeydesc{$funcname{$keyfunc{$key}}} .= "$key,";
}
-while (($key, $fname) = each %buf_keyfunc) {
- $funckeydesc{$funcname{$fname}} .= "$key,";
+foreach $key (sort keys %buf_keyfunc) {
+ $keydata{$key} && next;
+ $funckeydesc{$funcname{$buf_keyfunc{$key}}} .= "$key,";
}
-while (($key, $fname) = each %lineedit_keyfunc) {
- $funckeydesc{$funcname{$fname}} .= "$key,";
+foreach $key (sort keys %lineedit_keyfunc) {
+ $keydata{$key} && next;
+ $funckeydesc{$funcname{$lineedit_keyfunc{$key}}} .= "$key,";
}
-while (($key, $fname) = each %menu_keyfunc) {
- $funckeydesc{$funcname{$fname}} .= "$key,";
+foreach $key (sort keys %menu_keyfunc) {
+ $keydata{$key} && next;
+ $funckeydesc{$funcname{$menu_keyfunc{$key}}} .= "$key,";
}
print <<HEADING;
@@ -102,8 +106,7 @@ Content-Type: text/html; charset=$charset
*******
<A HREF="http://w3m.sourceforge.net/">w3m</A>
(WWW-wo-Miru) Version $version by
-<A HREF="mailto:aito\@fw.ipsj.or.jp">A.ITO</A> ********<BR>
- ***** Key assign table *****
+<A HREF="mailto:aito\@fw.ipsj.or.jp">A.ITO</A> ********
</CENTER>
HEADING
@@ -112,77 +115,77 @@ $q_version = $version;
$q_version =~ s/[^A-Za-z0-9_\$\.\-]/sprintf('%%%02X', ord($&))/ge;
$script = "<A HREF=\"$ENV{'SCRIPT_NAME'}?version=$q_version&amp;lang=";
-# doc:en_English doc-jp:ja_Japanese
+# doc:en_English doc-jp:ja_Japanese doc-de:de_German
for $otherlang (@docdirs) {
local(@d) = split(/[:_]/, $otherlang);
if ($d[1] ne $lang) {
$d[1] =~ s/[^A-Za-z0-9_\$\.\-]/sprintf('%%%02X', ord($&))/ge;
- print $script, $d[1], "\">$d[2] version</A>\n";
+ print $script, $d[1], "\">[$d[2]]</A>\n";
}
}
$keymap =~ s/[<>&]/$htmlesc{$&}/ge;
-$head = "Show keymap file";
+$head = 'Current keymap file';
if (defined($title{$head})) {
$head = $title{$head};
$head =~ s/[<>&]/$htmlesc{$&}/ge;
}
print "<P><A HREF=\"$keymap\">$head</A>\n";
-&show_keymap("Page/Cursor motion",
+&show_keymap('In-page Navigation',
split(" ", "pgFore pgBack movR movL movD movU
movR1 movL1 movD1 movU1 ldown1 lup1
shiftl shiftr col1L col1R linbeg linend ctrCsrH ctrCsrV
goLine goLineF goLineL movRW movLW
topA lastA nextA prevA movlistMn
nextR nextL nextD nextU nextRD nextLU
- undoPos redoPos"));
+ undoPos redoPos cursorTop cursorMiddle cursorBottom"));
-&show_keymap("Hyperlink operation",
+&show_keymap('Hyperlink Operations',
split(" ", "followA tabA svA followI svI submitForm
curURL peekURL peekIMG pginfo curlno chkURL chkWORD chkNMID
rFrame extbrz linkbrz linkLst listMn linkMn accessKey"));
-&show_keymap("File/Stream operation",
+&show_keymap('File/Stream Operations',
split(" ", "goURL gorURL tabURL tabrURL ldfile readsh pipesh
pipeBuf"));
-&show_keymap("Buffer operation",
- split(" ", "backBf nextBf prevBf selMn selBuf vwSrc svSrc svBuf
- editBf editScr reload reshape rdrwSc dispI stopI"));
+&show_keymap('Buffer Operations',
+ split(" ", "backBf nextBf prevBf goHome selMn selBuf vwSrc svSrc
+ svBuf editBf editScr reload reshape rdrwSc dispI stopI"));
-&show_keymap("Tab operation",
+&show_keymap('Tab Operations',
split(" ", "newT closeT nextT prevT tabMn tabR tabL"));
-&show_keymap("Bookmark operation",
+&show_keymap('Bookmark Management',
split(" ", "ldBmark adBmark"));
-&show_keymap("Search",
+&show_keymap('Searches',
split(" ", "srchfor srchbak srchnxt srchprv isrchfor isrchbak"));
-&show_keymap("Dictionary look-up",
+&show_keymap('Dictionary Lookup',
split(" ", "dictword dictwordat"));
-&show_keymap("Mark operation",
+&show_keymap('Mark Operations',
split(" ", "_mark nextMk prevMk reMark"));
-&show_keymap("Miscellany",
+&show_keymap('Miscellaneous',
split(" ", "mainMn ldhelp ldOpt dispVer cooLst ldHist ldDL
docCSet defCSet
msgs msToggle wrapToggle execCmd setAlarm setOpt setEnv defKey
reinit execsh susp qquitfm quitfm"));
-&show_keymap_data("User defined keymaps");
+&show_keymap_data('User-defined key bindings');
print "<BR>\n<HR WIDTH=80%>\n";
-&show_keymap("Buffer selection mode",
+&show_keymap('Buffer and Tab Selection Mode',
split(" ", "buffer_next buffer_prev buffer_delete buffer_go"));
print "<BR>\n<HR WIDTH=80%>\n";
-&show_keymap("Line-edit mode",
+&show_keymap('Input Line Editing Mode',
split(" ", "lineedit_forward lineedit_back lineedit_backspace
lineedit_delete lineedit_kill_after lineedit_kill_before
lineedit_top lineedit_bottom lineedit_prev lineedit_next
@@ -190,7 +193,7 @@ print "<BR>\n<HR WIDTH=80%>\n";
print "<BR>\n<HR WIDTH=80%>\n";
-&show_keymap("Popup menu",
+&show_keymap('Popup Menu Mode',
split(" ", "menu_select menu_close menu_cancel menu_down menu_up
menu_line_up menu_line_down menu_top menu_last menu_next
menu_prev menu_search_fore menu_search_back menu_search_next
diff --git a/scripts/w3mman/.cvsignore b/scripts/w3mman/.cvsignore
deleted file mode 100644
index e867c6e..0000000
--- a/scripts/w3mman/.cvsignore
+++ /dev/null
@@ -1,5 +0,0 @@
-w3mman
-w3mman2html.cgi
-w3mman.1
-
-Makefile
diff --git a/scripts/w3mman/Makefile.in b/scripts/w3mman/Makefile.in
index 569e2fc..ad1cffe 100644
--- a/scripts/w3mman/Makefile.in
+++ b/scripts/w3mman/Makefile.in
@@ -33,11 +33,13 @@ ETC_DIR = $(sysconfdir)
CONF_DIR = $(sysconfdir)/$(PACKAGE)
BIN_DIR = $(bindir)
MAN1_DIR = $(mandir)/man1
+MAN1_DE_DIR = $(mandir)/de/man1
TARGETS = w3mman
CGIBIN_TARGETS = w3mman2html.cgi
MAN1_TARGETS = w3mman.1
-MAN_TARGETS = $(MAN1_TARGETS)
+MAN1_DE_TARGETS = w3mman.de.1
+MAN_TARGETS = $(MAN1_TARGETS) $(MAN1_DE_TARGETS)
MKDIR = mkdir -p
INSTALL = @INSTALL@
@@ -53,6 +55,7 @@ install: $(TARGETS) $(CGIBIN_TARGETS) $(MAN_TARGETS)
-$(MKDIR) $(DESTDIR)$(BIN_DIR)
-$(MKDIR) $(DESTDIR)$(CGIBIN_DIR)
-$(MKDIR) $(DESTDIR)$(MAN1_DIR)
+ -$(MKDIR) $(DESTDIR)$(MAN1_DE_DIR)
for file in $(TARGETS); \
do \
$(INSTALL_SCRIPT) $$file $(DESTDIR)$(BIN_DIR); \
@@ -65,6 +68,12 @@ install: $(TARGETS) $(CGIBIN_TARGETS) $(MAN_TARGETS)
do \
$(INSTALL_MAN) $$file $(DESTDIR)$(MAN1_DIR); \
done
+ for file in $(MAN1_DE_TARGETS); \
+ do \
+ $(INSTALL_MAN) $$file $(DESTDIR)$(MAN1_DE_DIR); \
+ f=`echo "$$file" | sed -e 's/\.de\././'`; \
+ mv $(DESTDIR)$(MAN1_DE_DIR)/$$file $(DESTDIR)$(MAN1_DE_DIR)/$$f; \
+ done
uninstall:
-for file in $(TARGETS); \
@@ -79,6 +88,11 @@ uninstall:
do \
rm -f $(MAN1_DIR)/$$file; \
done
+ -for file in $(MAN1_DE_TARGETS); \
+ do \
+ f=`echo "$$file" | sed -e 's/\.de\././'`; \
+ rm -f $(MAN1_DE_DIR)/$$f; \
+ done
clean:
@@ -89,7 +103,7 @@ distclean:
dist: all
@-rm -fr $(distdir)/w3mman
-$(MKDIR) $(distdir)/w3mman
- cp Makefile README w3mman.in w3mman2html.cgi.in hlink.cgi w3mman.1.in $(distdir)/w3mman
+ cp Makefile README w3mman.in w3mman2html.cgi.in hlink.cgi w3mman.1.in w3mman.de.1.in $(distdir)/w3mman
( cd $(distdir); tar -cf - w3mman | GZIP='' gzip ) \
> $(distdir)/w3mman.tar.gz
-rm -fr $(distdir)/w3mman
diff --git a/scripts/w3mman/README b/scripts/w3mman/README
index 3bcbb3b..189e9ac 100644
--- a/scripts/w3mman/README
+++ b/scripts/w3mman/README
@@ -1,54 +1,54 @@
w3mman
- ¾�Υޥ˥奢���إå��ե�����˥�󥯤�Ϥ뤳�Ȥ��Ǥ���
- man ���ޥ�ɤ����إ��ޥ�ɤǤ���
+ 他のマニュアルやヘッダファイルにリンクをはることができる
+ man コマンドの代替コマンドです。
-����ˡ
+使用法
w3mman
w3mman <command>[(<section>)]
w3mman [<section>] <command>
w3mman -k <keyword>
-�Ķ��ѿ�
+環境変数
W3MMAN_W3M
- ���Ѥ��� w3m ���ޥ�ɤ���ꤷ�ޤ�(�ǥե���Ȥ� w3m)
+ 使用する w3m コマンドを指定します(デフォルトは w3m)
W3MMAN_MAN
- ���Ѥ��� man ���ޥ�ɤ���ꤷ�ޤ�(�ǥե���Ȥ� man)
+ 使用する man コマンドを指定します(デフォルトは man)
-���󥹥ȡ���
+インストール
make install
- ɬ�פʤ� PERL, MAN, LIBDIR �����ꤷ�Ƥ���������
- w3mman2html.cgi �⥤�󥹥ȡ��뤵��ޤ���
+ 必要なら PERL, MAN, LIBDIR を設定してください。
+ w3mman2html.cgi もインストールされます。
================
w3mman2html.cgi
-����ˡ
+使用法
w3m file:///$LIB/w3mman2html.cgi
w3m file:///$LIB/w3mman2html.cgi?<command>[(<section>)]
w3m file:///$LIB/w3mman2html.cgi?man=<command>[&section=<section>]
w3m file:///$LIB/w3mman2html.cgi?keyword=<keyword>
-���󥹥ȡ���
+インストール
make install
- ɬ�פʤ� PERL, MAN, LIBDIR �����ꤷ�Ƥ���������
- w3mman �⥤�󥹥ȡ��뤵��ޤ���
+ 必要なら PERL, MAN, LIBDIR を設定してください。
+ w3mman もインストールされます。
================
hlink.cgi
- �إå��ե�����ʤɤ˥�󥯤�ĥ��
+ ヘッダファイルなどにリンクを張る
-���󥹥ȡ���
+インストール
- /$LIB/ �˥��ԡ�
- w3mman2html.cgi �ǻ��Ѥ���ʤ�� $CGI2 �����ꤷ�Ƥ���������
+ /$LIB/ にコピー
+ w3mman2html.cgi で使用するならば $CGI2 に設定してください。
diff --git a/scripts/w3mman/w3mman.1.in b/scripts/w3mman/w3mman.1.in
index 1c0361d..68e3afc 100644
--- a/scripts/w3mman/w3mman.1.in
+++ b/scripts/w3mman/w3mman.1.in
@@ -1,4 +1,4 @@
-.TH W3MMAN 1 "Nov 5, 2005"
+.TH W3MMAN 1 "2016-07-13"
.\" Please adjust this date whenever revising the manpage.
.\"
.\" Some roff macros, for reference:
@@ -12,36 +12,54 @@
.\" .sp <n> insert n+1 empty lines
.\" for manpage-specific macros, see man(7)
.SH NAME
-w3mman \- an interface to the on-line reference manuals by w3m(1)
+w3mman \- an interface to the on-line reference manuals via w3m(1)
.SH SYNOPSIS
+.\" mh 2016-07-04: "page" is an optional argument.
+.\" Started without it, w3mman displays a form that allows selection
+.\" of a manual page according to section, name and keyword.
+.\" Therefore square brackets introduced
.B w3mman
-.RI "[-M " path ] " " [ section ] " page"
+[
+.BI \-M " path"
+] [ [
+.I section
+]
+.I page
+]
.br
.B w3mman
-.RI "[-M " path "] -k " keyword
+[
+.BI \-M " path"
+] [
+.I section
+]
+.BI \-k " keyword"
.br
.B w3mman
-.RI -l " file
+.BI \-l " file"
+.br
.SH DESCRIPTION
+.\" mh 2016-07-04 text edited. This section shall deliver
+.\" more information than section NAME
.B w3mman
-is the system's manual pager by
-.BR w3m (1).
+is a Perl script that uses
+.BR w3m (1)
+to serve as a pager for on-line reference manuals.
.SH OPTIONS
A summary of options is included below.
.TP
.BI \-M " path"
-Specify
+Specify
.I path
-as MANPATH.
+as alternative MANPATH to use.
.TP
.BI \-k " keyword"
-Specify
-.I keyword.
+Specify \fIkeyword\fP.
.TP
.BI \-l " file"
-Specify a
-.I file.
+Specify a \fIfile\fP.
.SH ENVIRONMENT
+Two variables are available for debugging.
.TP
.B W3MMAN_W3M
If W3MMAN_W3M is set, its value is used instead of @W3M@.
@@ -51,7 +69,7 @@ If W3MMAN_MAN is set, its value is used instead of @MAN@.
.SH FILES
.TP
.I @libexecdir@/@PACKAGE@/cgi-bin/w3mman2html.cgi
-convert manual page to html.
+manual page to HTML converter.
.SH SEE ALSO
.BR man (1),
.BR w3m (1).
diff --git a/scripts/w3mman/w3mman.de.1.in b/scripts/w3mman/w3mman.de.1.in
new file mode 100644
index 0000000..d6c5a44
--- /dev/null
+++ b/scripts/w3mman/w3mman.de.1.in
@@ -0,0 +1,71 @@
+.\"*******************************************************************
+.\"
+.\" This file was generated with po4a. Translate the source file.
+.\"
+.\"*******************************************************************
+.TH W3MMAN 1 2016\-07\-13
+.\" Please adjust this date whenever revising the manpage.
+.\"
+.\" Some roff macros, for reference:
+.\" .nh disable hyphenation
+.\" .hy enable hyphenation
+.\" .ad l left justify
+.\" .ad b justify to both left and right margins
+.\" .nf disable filling
+.\" .fi enable filling
+.\" .br insert line break
+.\" .sp <n> insert n+1 empty lines
+.\" for manpage-specific macros, see man(7)
+.SH NAME
+w3mman \- eine Schnittstelle zur Anzeige von Online\-Referenzhandbüchern durch
+w3m(1)
+.SH SYNOPSIS
+.\" mh 2016-07-04: "page" is an optional argument.
+.\" Started without it, w3mman displays a form that allows selection
+.\" of a manual page according to section, name and keyword.
+.\" Therefore square brackets introduced
+\fBw3mman\fP [ \fB\-M\fP \fIPfad\fP ] [ \fIAbschnitt\fP ] [ \fISeite\fP ]
+.br
+\fBw3mman\fP [\fB\-M\fP \fIPfad\fP] \fB\-k\fP \fIStichwort\fP
+.br
+\fBw3mman\fP \fB\-l\fP \fIDatei\fP
+.br
+.SH BESCHREIBUNG
+.\" mh 2016-07-04 text edited. This section shall deliver
+.\" more information than section NAME
+\fBw3mman\fP ist ein Perl\-Skript, welches auf \fBw3m\fP(1) zurückgreift, um als
+Betrachter für Online\-Referenzhandbücher zu dienen.
+.SH OPTIONEN
+Es folgt eine Zusammenfassung der Optionen.
+.TP
+\fB\-M\fP\fI Pfad\fP
+Suchpfad für Handbuchseiten auf \fIPfad\fP setzen
+.TP
+\fB\-k\fP \fIStichwort\fP
+zum \fIStichwort\fP passende Handbuchseiten anzeigen
+.TP
+\fB\-l\fP \fIDatei\fP
+die Handbuchseiten\-Datei \fIDatei\fP anzeigen
+.SH UMGEBUNGSVARIABLEN
+Zur Fehleranalyse stehen zwei Variablen zur Verfügung.
+.TP
+\fBW3MMAN_W3M\fP
+Ist W3MMAN_W3M gesetzt, wird ihr Wert anstelle von @W3M@ verwendet.
+.TP
+\fBW3MMAN_MAN\fP
+Ist W3MMAN_MAN gesetzt, wird ihr Wert anstelle von @MAN@ verwendet.
+.SH DATEIEN
+.TP
+\fI@libexecdir@/@PACKAGE@/cgi\-bin/w3mman2html.cgi\fP
+Skript, welches Handbuchseiten in HTML konvertiert
+.SH "SIEHE AUCH"
+\fBman\fP(1), \fBw3m\fP(1).
+.SH AUTOR
+Diese Handbuchseite wurde von Fumitoshi UKAI <ukai@debian.or.jp> für
+Debian GNU / Linux geschrieben, sie kann aber auch auf anderen Systemen
+verwendet werden.
+Die deutsche Übersetzung wurde 2016 von
+.UR markus.hiereth@freenet.de
+Markus Hiereth
+.UE
+erstellt.
diff --git a/scripts/w3mman/w3mman.in b/scripts/w3mman/w3mman.in
index 6a27e70..061cb1f 100644
--- a/scripts/w3mman/w3mman.in
+++ b/scripts/w3mman/w3mman.in
@@ -7,7 +7,7 @@ $SCRIPT = 'file:///$LIB/w3mman2html.cgi';
sub usage {
($_ = $0) =~ s@.*/@@;
print STDERR "$_ [-M <path>] [[<section>] <command>]\n";
- print STDERR "$_ [-M <path>] [-k <keyword>]\n";
+ print STDERR "$_ [-M <path>] [<section>] [-k <keyword>]\n";
print STDERR "$_ [-l <file>]\n";
exit 1;
}
@@ -20,19 +20,23 @@ while (@ARGV) {
$ENV{'MANPATH'} = shift @ARGV;
} elsif (/^-k$/) {
@ARGV || &usage();
- $query = "?keyword=" . &form_encode(shift @ARGV);
- } elsif (/^-l$/) {
- @ARGV || &usage();
- $query = "?quit=ok&local=" . &form_encode(shift @ARGV);
+ if ( $query eq "" ) { $query = "?quit=ok"; }
+ $query .= "&keyword=" . &form_encode(shift @ARGV);
+ } elsif (/^-l$/ || /\//) {
+ if (/^-l$/) {
+ @ARGV || &usage();
+ $_ = shift @ARGV;
+ }
+ $query = "?quit=ok&local=" . &form_encode($_);
$query .= "&pwd=" . &form_encode($ENV{'PWD'});
} elsif (/^-/) {
&usage();
- } elsif (/^\d/ || $_ eq 'n') {
- @ARGV || &usage();
- $query = "?quit=ok&man=" . &form_encode(shift @ARGV);
+ } elsif (/^\d/ || $_ eq 'n' || $_ eq 'l') {
+ if ( $query eq "" ) { $query = "?quit=ok"; }
$query .= "&section=" . &form_encode($_);
} else {
- $query = "?quit=ok&man=" . &form_encode($_);
+ if ( $query eq "" ) { $query = "?quit=ok"; }
+ $query .= "&man=" . &form_encode($_);
}
}
diff --git a/scripts/w3mman/w3mman2html.cgi.in b/scripts/w3mman/w3mman2html.cgi.in
index f430307..2d326a9 100644
--- a/scripts/w3mman/w3mman2html.cgi.in
+++ b/scripts/w3mman/w3mman2html.cgi.in
@@ -23,18 +23,23 @@ if ((! $query{"man"}) && (! $query{"local"})) {
if ($query{"keyword"}) {
$keyword = $query{"keyword"};
$k = &html_quote($keyword);
+ if ($query{"section"}) {
+ $section = $query{"section"};
+ $sectionopt = "-s $section ";
+ } else {
+ $sectionopt = "";
+ }
print <<EOF;
Content-Type: text/html
<html>
-<head><title>man -k $k</title></head>
+<head><title>man $sectionopt-k $k</title></head>
<body>
-<h2>man -k <b>$k</b></h2>
+<h2>man $sectionopt-k <b>$k</b></h2>
<ul>
EOF
$keyword =~ s:([^-\w\200-\377.,])::g;
- open(F, "$MAN -k $keyword 2> /dev/null |");
- @line = ();
+ open(F, "$MAN $sectionopt -k $keyword 2> /dev/null |");
while(<F>) {
chop;
$_ = &html_quote($_);
@@ -59,10 +64,10 @@ Content-Type: text/html
<body>
<form action="$CGI">
<table>
-<tr><td>Manual:<td><input name=man>
-<tr><td>Section:<td><input name=section>
-<tr><td>Keyword:<td><input name=keyword>
-<tr><td><td><input type=submit> <input type=reset>
+<tr><td>Manual:<td><input name=man />
+<tr><td>Section:<td><input name=section />
+<tr><td>Keyword:<td><input name=keyword />
+<tr><td><td><input type=submit /> <input type=reset />
</table>
</form>
</body>
@@ -76,7 +81,7 @@ if ($query{"local"}) {
if (! ($file =~ /^\//)) {
$file = $query{"pwd"} . '/' . $file;
}
- open(F, "MAN_KEEP_FORMATTING=1 $MAN -l $file 2> /dev/null |");
+ open(F, "MAN_KEEP_FORMATTING=1 $MAN $file 2> /dev/null |");
} else {
$man = $query{"man"};
if ($man =~ s/\((\w+)\)$//) {
@@ -126,12 +131,14 @@ while(<F>) {
s/\&/\&amp;/g;
s/\</\&lt;/g;
s/\>/\&gt;/g;
+ # non ASCII UTF-8 codepoint
+ my $utf8="[\300-\337][\200-\277]|[\340-\357][\200-\277]{2}|[\360-\367][\200-\277]{3}|[\370-\373][\200-\277]{4}|[\374\375][\200-\277]{5}";
- s@([\200-\377].)(\010{1,2}\1)+@<b>$1</b>@g;
+ s@($utf8)(\010\1)+@<b>$1</b>@g;
s@(\&\w+;|.)(\010\1)+@<b>$1</b>@g;
- s@__\010{1,2}((\<b\>)?[\200-\377].(\</b\>)?)@<u>$1</u>@g;
+ s@_\010((\<b\>)?($utf8)(\</b\>)?)@<u>$1</u>@g;
s@_\010((\<b\>)?(\&\w+\;|.)(\</b\>)?)@<u>$1</u>@g;
- s@((\<b\>)?[\200-\377].(\</b\>)?)\010{1,2}__@<u>$1</u>@g;
+ s@((\<b\>)?($utf8)(\</b\>)?)\010_@<u>$1</u>@g;
s@((\<b\>)?(\&\w+\;|.)(\</b\>)?)\010_@<u>$1</u>@g;
s@.\010(.)@$1@g;
@@ -156,7 +163,7 @@ EOF
}
s@(http|ftp)://[\w.\-/~]+[\w/]@<a href="$&">$&</a>@g;
- s@(\W)(mailto:)?(\w[\w.\-]*\@\w[\w.\-]*\.[\w.\-]*\w)@$1<a href="mailto:$3">$2$3</a>@g;
+ s@\b(mailto:|)(\w[\w.\-]*\@\w[\w.\-]*\.[\w.\-]*\w)@<a href="mailto:$2">$1$2</a>@g;
s@(\W)(\~?/[\w.][\w.\-/~]*)@$1 . &file_ref($2)@ge;
s@(include(<\/?[bu]\>|\s)*\&lt;)([\w.\-/]+)@$1 . &include_ref($3)@ge;
if ($prev && m@^\s*(\<[bu]\>)*(\w[\w.\-]*)(\</[bu]\>)*(\([\dm]\w*\))@) {
@@ -220,7 +227,7 @@ sub is_command {
local($p);
(! -d && -x) || return 0;
- if (! defined(%PATH)) {
+ if (! %PATH) {
for $p (split(":", $ENV{'PATH'})) {
$p =~ s@/+$@@;
$PATH{$p} = 1;
diff --git a/symbol.c b/symbol.c
index 50475ae..c047c56 100644
--- a/symbol.c
+++ b/symbol.c
@@ -176,10 +176,10 @@ push_symbol(Str str, char symbol, int width, int n)
#ifdef USE_M17N
if (width == 2)
- p = alt2_symbol[(int)symbol];
+ p = alt2_symbol[(unsigned char)symbol % N_SYMBOL];
else
#endif
- p = alt_symbol[(int)symbol];
+ p = alt_symbol[(unsigned char)symbol % N_SYMBOL];
for (i = 0; i < 2 && *p; i++, p++)
buf[i] = (*p == ' ') ? NBSP_CODE : *p;
diff --git a/table.c b/table.c
index e1243ff..eb5c9ba 100644
--- a/table.c
+++ b/table.c
@@ -188,7 +188,7 @@ dv2sv(double *dv, short *iv, int size)
indexarray = NewAtom_N(short, size);
edv = NewAtom_N(double, size);
for (i = 0; i < size; i++) {
- iv[i] = ceil(dv[i]);
+ iv[i] = (short) ceil(dv[i]);
edv[i] = (double)iv[i] - dv[i];
}
@@ -205,7 +205,7 @@ dv2sv(double *dv, short *iv, int size)
indexarray[i] = k;
}
iw = min((int)(w + 0.5), size);
- if (iw == 0)
+ if (iw <= 1)
return;
x = edv[(int)indexarray[iw - 1]];
for (i = 0; i < size; i++) {
@@ -429,7 +429,6 @@ visible_length(char *str)
char *t, *r2;
int amp_len = 0;
- t = str;
while (*str) {
prev_status = status;
if (next_status(*str, &status)) {
@@ -761,7 +760,7 @@ do_refill(struct table *tbl, int row, int col, int maxlimit)
struct parsed_tag *tag;
if ((tag = parse_tag(&p, TRUE)) != NULL)
parsedtag_get_value(tag, ATTR_TID, &id);
- if (id >= 0 && id < tbl->ntable) {
+ if (id >= 0 && id < tbl->ntable && tbl->tables[id].ptr) {
int alignment;
TextLineListItem *ti;
struct table *t = tbl->tables[id].ptr;
@@ -961,7 +960,7 @@ set_integered_width(struct table *t, double *dwidth, short *iwidth)
for (step = 0; step < 2; step++) {
for (i = 0; i <= t->maxcol; i += n) {
int nn;
- char *idx;
+ short *idx;
double nsum;
if (sum < 0.5)
return;
@@ -982,7 +981,7 @@ set_integered_width(struct table *t, double *dwidth, short *iwidth)
(double)rulewidth - mod[ii] > 0.5)
fixed[ii] = 1;
}
- idx = NewAtom_N(char, n);
+ idx = NewAtom_N(short, n);
for (k = 0; k < cell->maxcell; k++) {
int kk, w, width, m;
j = cell->index[k];
@@ -1624,6 +1623,15 @@ get_table_width(struct table *t, short *orgwidth, short *cellwidth, int flag)
#define fixed_table_width(t)\
(get_table_width(t,t->fixed_width,t->cell.fixed_width,CHECK_MINIMUM))
+#define MAX_COTABLE_LEVEL 100
+static int cotable_level;
+
+void
+initRenderTable(void)
+{
+ cotable_level = 0;
+}
+
void
renderCoTable(struct table *tbl, int maxlimit)
{
@@ -1634,8 +1642,14 @@ renderCoTable(struct table *tbl, int maxlimit)
int i, col, row;
int indent, maxwidth;
+ if (cotable_level >= MAX_COTABLE_LEVEL)
+ return; /* workaround to prevent infinite recursion */
+ cotable_level++;
+
for (i = 0; i < tbl->ntable; i++) {
t = tbl->tables[i].ptr;
+ if (t == NULL)
+ continue;
col = tbl->tables[i].col;
row = tbl->tables[i].row;
indent = tbl->tables[i].indent;
@@ -1691,7 +1705,7 @@ renderTable(struct table *t, int max_width, struct html_feed_environ *h_env)
{
int i, j, w, r, h;
Str renderbuf;
- short new_tabwidth[MAXCOL];
+ short new_tabwidth[MAXCOL] = { 0 };
#ifdef MATRIX
int itr;
VEC *newwidth;
@@ -1724,6 +1738,10 @@ renderTable(struct table *t, int max_width, struct html_feed_environ *h_env)
if (max_width < rulewidth)
max_width = rulewidth;
+#define MAX_TABWIDTH 10000
+ if (max_width > MAX_TABWIDTH)
+ max_width = MAX_TABWIDTH;
+
check_maximum_width(t);
#ifdef MATRIX
@@ -2272,7 +2290,8 @@ skip_space(struct table *t, char *line, struct table_linfo *linfo,
}
if (s > 0) {
#ifdef USE_M17N
- if (ctype == PC_KANJI1 && prev_ctype == PC_KANJI1)
+ if (!SimplePreserveSpace &&
+ ctype == PC_KANJI1 && prev_ctype == PC_KANJI1)
skip += s;
else
#endif
@@ -2323,6 +2342,8 @@ feed_table_block_tag(struct table *tbl,
int offset;
if (mode->indent_level <= 0 && indent == -1)
return;
+ if (mode->indent_level >= CHAR_MAX && indent == 1)
+ return;
setwidth(tbl, mode);
feed_table_inline_tag(tbl, line, mode, -1);
clearcontentssize(tbl, mode);
@@ -2336,10 +2357,14 @@ feed_table_block_tag(struct table *tbl,
if (mode->indent_level < MAX_INDENT_LEVEL)
tbl->indent -= INDENT_INCR;
}
+ if (tbl->indent < 0)
+ tbl->indent = 0;
offset = tbl->indent;
if (cmd == HTML_DT) {
if (mode->indent_level > 0 && mode->indent_level <= MAX_INDENT_LEVEL)
offset -= INDENT_INCR;
+ if (offset < 0)
+ offset = 0;
}
if (tbl->indent > 0) {
check_minimum0(tbl, 0);
@@ -2546,8 +2571,10 @@ feed_table_tag(struct table *tbl, char *line, struct table_mode *mode,
}
}
#ifdef ID_EXT
- if (parsedtag_get_value(tag, ATTR_ID, &p))
+ if (parsedtag_get_value(tag, ATTR_ID, &p)) {
+ check_row(tbl, tbl->row);
tbl->tridvalue[tbl->row] = Strnew_charp(p);
+ }
#endif /* ID_EXT */
tbl->trattr = align | valign;
break;
@@ -2572,7 +2599,7 @@ feed_table_tag(struct table *tbl, char *line, struct table_mode *mode,
}
tbl->col++;
check_row(tbl, tbl->row);
- while (tbl->tabattr[tbl->row][tbl->col]) {
+ while (tbl->col < MAXCOL && tbl->tabattr[tbl->row][tbl->col]) {
tbl->col++;
}
if (tbl->col > MAXCOL - 1) {
@@ -2600,12 +2627,16 @@ feed_table_tag(struct table *tbl, char *line, struct table_mode *mode,
if ((tbl->row + rowspan) >= tbl->max_rowsize)
check_row(tbl, tbl->row + rowspan);
}
+ if (rowspan < 1)
+ rowspan = 1;
if (parsedtag_get_value(tag, ATTR_COLSPAN, &colspan)) {
if ((tbl->col + colspan) >= MAXCOL) {
/* Can't expand column */
colspan = MAXCOL - tbl->col;
}
}
+ if (colspan < 1)
+ colspan = 1;
if (parsedtag_get_value(tag, ATTR_ALIGN, &i)) {
switch (i) {
case ALIGN_LEFT:
@@ -2878,6 +2909,14 @@ feed_table_tag(struct table *tbl, char *line, struct table_mode *mode,
tmp = process_input(tag);
feed_table1(tbl, tmp, mode, width);
break;
+ case HTML_BUTTON:
+ tmp = process_button(tag);
+ feed_table1(tbl, tmp, mode, width);
+ break;
+ case HTML_N_BUTTON:
+ tmp = process_n_button();
+ feed_table1(tbl, tmp, mode, width);
+ break;
case HTML_SELECT:
tmp = process_select(tag);
if (tmp)
@@ -3010,7 +3049,6 @@ feed_table_tag(struct table *tbl, char *line, struct table_mode *mode,
break;
case HTML_TABLE_ALT:
id = -1;
- w = 0;
parsedtag_get_value(tag, ATTR_TID, &id);
if (id >= 0 && id < tbl->ntable) {
struct table *tbl1 = tbl->tables[id].ptr;
diff --git a/table.h b/table.h
index 83b661f..fdcdef3 100644
--- a/table.h
+++ b/table.h
@@ -17,7 +17,7 @@
#define MAX_TABLE_N 20 /* maximum number of table in same level */
#define MAXROW 50
-#define MAXCOL 50
+#define MAXCOL 256
#define MAX_WIDTH 80
diff --git a/tagtable.tab b/tagtable.tab
index f9b7b76..cc94942 100644
--- a/tagtable.tab
+++ b/tagtable.tab
@@ -176,6 +176,7 @@ bdo HTML_BDO
big HTML_BIG
/big HTML_N_BIG
button HTML_BUTTON
+/button HTML_N_BUTTON
fieldset HTML_FIELDSET
/fieldset HTML_N_FIELDSET
iframe HTML_IFRAME
@@ -191,11 +192,17 @@ optgroup HTML_OPTGROUP
param HTML_PARAM
small HTML_SMALL
/small HTML_N_SMALL
+figure HTML_FIGURE
+/figure HTML_N_FIGURE
+figcaption HTML_FIGCAPTION
+/figcaption HTML_N_FIGCAPTION
internal HTML_INTERNAL
/internal HTML_N_INTERNAL
select_int HTML_SELECT_INT
/select_int HTML_N_SELECT_INT
option_int HTML_OPTION_INT
+section HTML_SECTION
+/section HTML_N_SECTION
textarea_int HTML_TEXTAREA_INT
/textarea_int HTML_N_TEXTAREA_INT
pre_plain HTML_PRE_PLAIN
diff --git a/terms.c b/terms.c
index 7a3c987..a636ac0 100644
--- a/terms.c
+++ b/terms.c
@@ -12,6 +12,7 @@
#include <unistd.h>
#include "config.h"
#include <string.h>
+#include <sys/wait.h>
#ifdef HAVE_SYS_SELECT_H
#include <sys/select.h>
#endif
@@ -222,6 +223,7 @@ static void
check_cygwin_console(void)
{
char *term = getenv("TERM");
+ char *ctype;
HANDLE hWnd;
if (term == NULL)
@@ -236,7 +238,9 @@ check_cygwin_console(void)
isLocalConsole = 1;
}
}
- if (strncmp(getenv("LANG"), "ja", 2) == 0) {
+ if (((ctype = getenv("LC_ALL")) ||
+ (ctype = getenv("LC_CTYPE")) ||
+ (ctype = getenv("LANG"))) && strncmp(ctype, "ja", 2) == 0) {
isWinConsole = TERM_CYGWIN_RESERVE_IME;
}
#ifdef SUPPORT_WIN9X_CONSOLE_MBCS
@@ -463,6 +467,262 @@ writestr(char *s)
#define MOVE(line,column) writestr(tgoto(T_cm,column,line));
+#ifdef USE_IMAGE
+void
+put_image_osc5379(char *url, int x, int y, int w, int h, int sx, int sy, int sw, int sh, int n_terminal_image)
+{
+ Str buf;
+ char *size ;
+
+ if (w > 0 && h > 0)
+ size = Sprintf("%dx%d",w,h)->ptr;
+ else
+ size = "";
+
+ MOVE(y,x);
+ buf = Sprintf("\x1b]5379;show_picture %s %s %dx%d+%d+%d\x07",url,size,sw,sh,sx,sy);
+ writestr(buf->ptr);
+ MOVE(Currentbuf->cursorY,Currentbuf->cursorX);
+}
+
+static void
+save_gif(const char *path, u_char *header, size_t header_size, u_char *body, size_t body_size)
+{
+ int fd;
+
+ if ((fd = open(path, O_WRONLY|O_CREAT, 0600)) >= 0) {
+ write(fd, header, header_size) ;
+ write(fd, body, body_size) ;
+ write(fd, "\x3b" , 1) ;
+ close(fd) ;
+ }
+}
+
+static u_char *
+skip_gif_header(u_char *p)
+{
+ /* Header */
+ p += 10;
+
+ if (*(p) & 0x80) {
+ p += (3 * (2 << ((*p) & 0x7)));
+ }
+ p += 3;
+
+ return p;
+}
+
+static Str
+save_first_animation_frame(const char *path)
+{
+ int fd;
+ struct stat st;
+ u_char *header;
+ size_t header_size;
+ u_char *body;
+ u_char *p;
+ ssize_t len;
+ Str new_path;
+
+ new_path = Strnew_charp(path);
+ Strcat_charp(new_path, "-1");
+ if (stat(new_path->ptr, &st) == 0) {
+ return new_path;
+ }
+
+ if ((fd = open( path, O_RDONLY)) < 0) {
+ return NULL;
+ }
+
+ if (fstat( fd, &st) != 0 || ! (header = GC_malloc( st.st_size))){
+ close( fd);
+ return NULL;
+ }
+
+ len = read(fd, header, st.st_size);
+ close(fd);
+
+ /* Header */
+
+ if (len != st.st_size || strncmp(header, "GIF89a", 6) != 0) {
+ return NULL;
+ }
+
+ p = skip_gif_header(header);
+ header_size = p - header;
+
+ /* Application Extension */
+ if (p[0] == 0x21 && p[1] == 0xff) {
+ p += 19;
+ }
+
+ /* Other blocks */
+ body = NULL;
+ while (p + 2 < header + st.st_size) {
+ if (*(p++) == 0x21 && *(p++) == 0xf9 && *(p++) == 0x04) {
+ if( body) {
+ /* Graphic Control Extension */
+ save_gif(new_path->ptr, header, header_size, body, p - 3 - body);
+ return new_path;
+ }
+ else {
+ /* skip the first frame. */
+ }
+ body = p - 3;
+ }
+ }
+
+ return NULL;
+}
+
+void ttymode_set(int mode, int imode);
+void ttymode_reset(int mode, int imode);
+
+void
+put_image_sixel(char *url, int x, int y, int w, int h, int sx, int sy, int sw, int sh, int n_terminal_image)
+{
+ pid_t pid;
+ int do_anim;
+ MySignalHandler(*volatile previntr) (SIGNAL_ARG);
+ MySignalHandler(*volatile prevquit) (SIGNAL_ARG);
+ MySignalHandler(*volatile prevstop) (SIGNAL_ARG);
+
+ MOVE(y,x);
+ flush_tty();
+
+ do_anim = (n_terminal_image == 1 && x == 0 && y == 0 && sx == 0 && sy == 0);
+
+ previntr = mySignal(SIGINT, SIG_IGN);
+ prevquit = mySignal(SIGQUIT, SIG_IGN);
+ prevstop = mySignal(SIGTSTP, SIG_IGN);
+
+ if ((pid = fork()) == 0) {
+ char *env;
+ int n = 0;
+ char *argv[20];
+ char digit[2][11+1];
+ char clip[44+3+1];
+ Str str_url;
+
+ close(STDERR_FILENO); /* Don't output error message. */
+ if (do_anim) {
+ writestr("\x1b[?80h");
+ }
+ else if (!strstr(url, "://") && strcmp(url+strlen(url)-4, ".gif") == 0 &&
+ (str_url = save_first_animation_frame(url))) {
+ url = str_url->ptr;
+ }
+ ttymode_set(ISIG, 0);
+
+ if ((env = getenv("W3M_IMG2SIXEL"))) {
+ char *p;
+ env = Strnew_charp(env)->ptr;
+ while (n < 8 && (p = strchr(env, ' '))) {
+ *p = '\0';
+ if (*env != '\0') {
+ argv[n++] = env;
+ }
+ env = p+1;
+ }
+ if (*env != '\0') {
+ argv[n++] = env;
+ }
+ }
+ else {
+ argv[n++] = "img2sixel";
+ }
+ argv[n++] = "-l";
+ argv[n++] = do_anim ? "auto" : "disable";
+ argv[n++] = "-w";
+ sprintf(digit[0], "%d", w*pixel_per_char_i);
+ argv[n++] = digit[0];
+ argv[n++] = "-h";
+ sprintf(digit[1], "%d", h*pixel_per_line_i);
+ argv[n++] = digit[1];
+ argv[n++] = "-c";
+ sprintf(clip, "%dx%d+%d+%d", sw*pixel_per_char_i, sh*pixel_per_line_i,
+ sx*pixel_per_char_i, sy*pixel_per_line_i);
+ argv[n++] = clip;
+ argv[n++] = url;
+ if (getenv("TERM") && strcmp(getenv("TERM"), "screen") == 0 &&
+ (!getenv("SCREEN_VARIANT") || strcmp(getenv("SCREEN_VARIANT"), "sixel") != 0)) {
+ argv[n++] = "-P";
+ }
+ argv[n++] = NULL;
+ execvp(argv[0],argv);
+ exit(0);
+ }
+ else if (pid > 0) {
+ int status;
+ waitpid(pid, &status, 0);
+ ttymode_reset(ISIG, 0);
+ mySignal(SIGINT, previntr);
+ mySignal(SIGQUIT, prevquit);
+ mySignal(SIGTSTP, prevstop);
+ if (do_anim) {
+ writestr("\x1b[?80l");
+ }
+ }
+
+ MOVE(Currentbuf->cursorY,Currentbuf->cursorX);
+}
+
+int
+get_pixel_per_cell(int *ppc, int *ppl)
+{
+ fd_set rfd;
+ struct timeval tval;
+ char buf[100];
+ char *p;
+ ssize_t len;
+ ssize_t left;
+ int wp,hp,wc,hc;
+ int i;
+
+#ifdef TIOCGWINSZ
+ struct winsize ws;
+ if (ioctl(tty, TIOCGWINSZ, &ws) == 0 && ws.ws_ypixel > 0 && ws.ws_row > 0 &&
+ ws.ws_xpixel > 0 && ws.ws_col > 0) {
+ *ppc = ws.ws_xpixel / ws.ws_col;
+ *ppl = ws.ws_ypixel / ws.ws_row;
+ return 1;
+ }
+#endif
+
+ fputs("\x1b[14t\x1b[18t",ttyf); flush_tty();
+
+ p = buf;
+ left = sizeof(buf) - 1;
+ for (i = 0; i < 10; i++) {
+ tval.tv_usec = 200000; /* 0.2 sec * 10 */
+ tval.tv_sec = 0;
+ FD_ZERO(&rfd);
+ FD_SET(tty,&rfd);
+ if (select(tty+1,&rfd,NULL,NULL,&tval) <= 0 || ! FD_ISSET(tty,&rfd))
+ continue;
+
+ if ((len = read(tty,p,left)) <= 0)
+ continue;
+ p[len] = '\0';
+
+ if (sscanf(buf,"\x1b[4;%d;%dt\x1b[8;%d;%dt",&hp,&wp,&hc,&wc) == 4) {
+ if (wp > 0 && wc > 0 && hp > 0 && hc > 0) {
+ *ppc = wp / wc;
+ *ppl = hp / hc;
+ return 1;
+ }
+ else {
+ return 0;
+ }
+ }
+ p += len;
+ left -= len;
+ }
+
+ return 0;
+}
+#endif /* USE_IMAGE */
+
#ifdef USE_MOUSE
#define W3M_TERM_INFO(name, title, mouse) name, title, mouse
#define NEED_XTERM_ON (1)
@@ -563,7 +823,7 @@ ttymode_set(int mode, int imode)
while (TerminalSet(tty, &ioval) == -1) {
if (errno == EINTR || errno == EAGAIN)
continue;
- printf("Error occured while set %x: errno=%d\n", mode, errno);
+ printf("Error occurred while set %x: errno=%d\n", mode, errno);
reset_error_exit(SIGNAL_ARGLIST);
}
#endif
@@ -584,7 +844,7 @@ ttymode_reset(int mode, int imode)
while (TerminalSet(tty, &ioval) == -1) {
if (errno == EINTR || errno == EAGAIN)
continue;
- printf("Error occured while reset %x: errno=%d\n", mode, errno);
+ printf("Error occurred while reset %x: errno=%d\n", mode, errno);
reset_error_exit(SIGNAL_ARGLIST);
}
#endif /* __MINGW32_VERSION */
@@ -601,7 +861,7 @@ set_cc(int spec, int val)
while (TerminalSet(tty, &ioval) == -1) {
if (errno == EINTR || errno == EAGAIN)
continue;
- printf("Error occured: errno=%d\n", errno);
+ printf("Error occurred: errno=%d\n", errno);
reset_error_exit(SIGNAL_ARGLIST);
}
}
@@ -634,7 +894,8 @@ reset_tty(void)
writestr(T_se); /* reset terminal */
flush_tty();
TerminalSet(tty, &d_ioval);
- close_tty();
+ if (tty != 2)
+ close_tty();
}
static MySignalHandler
@@ -953,7 +1214,6 @@ addch(char pc)
{
l_prop *pr;
int dest, i;
- short *dirty;
#ifdef USE_M17N
static Str tmp = NULL;
char **p;
@@ -975,7 +1235,6 @@ addch(char pc)
return;
p = ScreenImage[CurLine]->lineimage;
pr = ScreenImage[CurLine]->lineprop;
- dirty = &ScreenImage[CurLine]->isdirty;
#ifndef USE_M17N
/* Eliminate unprintables according to * iso-8859-*.
@@ -1986,6 +2245,10 @@ skip_escseq(void)
getch();
getch();
getch();
+ } else if (is_xterm && c == '<') {
+ c = getch();
+ while (IS_DIGIT(c) || c == ';')
+ c = getch();
}
else
#endif
@@ -2019,7 +2282,7 @@ sleep_till_anykey(int sec, int purge)
}
er = TerminalSet(tty, &ioval);
if (er == -1) {
- printf("Error occured: errno=%d\n", errno);
+ printf("Error occurred: errno=%d\n", errno);
reset_error_exit(SIGNAL_ARGLIST);
}
return ret;
@@ -2027,8 +2290,8 @@ sleep_till_anykey(int sec, int purge)
#ifdef USE_MOUSE
-#define XTERM_ON {fputs("\033[?1001s\033[?1000h",ttyf); flush_tty();}
-#define XTERM_OFF {fputs("\033[?1000l\033[?1001r",ttyf); flush_tty();}
+#define XTERM_ON {fputs("\033[?1001s\033[?1000h\033[?1006h",ttyf); flush_tty();}
+#define XTERM_OFF {fputs("\033[?1006l\033[?1000l\033[?1001r",ttyf); flush_tty();}
#define CYGWIN_ON {fputs("\033[?1000h",ttyf); flush_tty();}
#define CYGWIN_OFF {fputs("\033[?1000l",ttyf); flush_tty();}
diff --git a/tests/a1.expected b/tests/a1.expected
new file mode 100644
index 0000000..5812232
--- /dev/null
+++ b/tests/a1.expected
@@ -0,0 +1,2 @@
+
+test
diff --git a/tests/a1.html b/tests/a1.html
new file mode 100644
index 0000000..7e89006
--- /dev/null
+++ b/tests/a1.html
@@ -0,0 +1 @@
+<a href="example"><div>test</div></a>
diff --git a/tests/a2.expected b/tests/a2.expected
new file mode 100644
index 0000000..9daeafb
--- /dev/null
+++ b/tests/a2.expected
@@ -0,0 +1 @@
+test
diff --git a/tests/a2.html b/tests/a2.html
new file mode 100644
index 0000000..197b006
--- /dev/null
+++ b/tests/a2.html
@@ -0,0 +1,3 @@
+<!doctype html>
+<meta charset=utf-8>
+<a href="example"><div>test</div></a>
diff --git a/tests/name_entity_1.expected b/tests/name_entity_1.expected
new file mode 100644
index 0000000..2a6fd2c
--- /dev/null
+++ b/tests/name_entity_1.expected
@@ -0,0 +1,2 @@
+This is an example sentence that contains some "quoted words" --
+punctuation that would be displayed as question marks but should not.
diff --git a/tests/name_entity_1.html b/tests/name_entity_1.html
new file mode 100644
index 0000000..f2e3633
--- /dev/null
+++ b/tests/name_entity_1.html
@@ -0,0 +1,2 @@
+This is an example sentence that contains some &ldquo;quoted words&rdquo; &mdash;
+<br>punctuation that would be displayed as question marks but should not.
diff --git a/tests/name_entity_1.opts b/tests/name_entity_1.opts
new file mode 100644
index 0000000..f9ac4b0
--- /dev/null
+++ b/tests/name_entity_1.opts
@@ -0,0 +1,2 @@
+-O
+us-ascii
diff --git a/tests/name_entity_2.expected b/tests/name_entity_2.expected
new file mode 100644
index 0000000..b287794
--- /dev/null
+++ b/tests/name_entity_2.expected
@@ -0,0 +1 @@
+2πr
diff --git a/tests/name_entity_2.html b/tests/name_entity_2.html
new file mode 100644
index 0000000..9be30f0
--- /dev/null
+++ b/tests/name_entity_2.html
@@ -0,0 +1 @@
+2&pi;r
diff --git a/tests/q1.expected b/tests/q1.expected
new file mode 100644
index 0000000..84b67a1
--- /dev/null
+++ b/tests/q1.expected
@@ -0,0 +1 @@
+`test'
diff --git a/tests/q1.html b/tests/q1.html
new file mode 100644
index 0000000..292b019
--- /dev/null
+++ b/tests/q1.html
@@ -0,0 +1,2 @@
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
+<q>test</q>
diff --git a/tests/q1.opts b/tests/q1.opts
new file mode 100644
index 0000000..f9ac4b0
--- /dev/null
+++ b/tests/q1.opts
@@ -0,0 +1,2 @@
+-O
+us-ascii
diff --git a/tests/q2.expected b/tests/q2.expected
new file mode 100644
index 0000000..bd72179
--- /dev/null
+++ b/tests/q2.expected
@@ -0,0 +1 @@
+“test”
diff --git a/tests/q2.html b/tests/q2.html
new file mode 100644
index 0000000..8f1e80b
--- /dev/null
+++ b/tests/q2.html
@@ -0,0 +1,3 @@
+<!doctype html>
+<meta charset=utf-8>
+<q>test</q>
diff --git a/tests/q3.expected b/tests/q3.expected
new file mode 100644
index 0000000..c5e67df
--- /dev/null
+++ b/tests/q3.expected
@@ -0,0 +1 @@
+�test�
diff --git a/tests/q3.html b/tests/q3.html
new file mode 100644
index 0000000..672a868
--- /dev/null
+++ b/tests/q3.html
@@ -0,0 +1,3 @@
+<!doctype html>
+<meta charset=Big5>
+<q>test</q>
diff --git a/tests/q3.opts b/tests/q3.opts
new file mode 100644
index 0000000..32d2b1a
--- /dev/null
+++ b/tests/q3.opts
@@ -0,0 +1,4 @@
+-I
+windows-1252
+-O
+windows-1252
diff --git a/tests/q4.expected b/tests/q4.expected
new file mode 100644
index 0000000..c5e67df
--- /dev/null
+++ b/tests/q4.expected
@@ -0,0 +1 @@
+�test�
diff --git a/tests/q4.html b/tests/q4.html
new file mode 100644
index 0000000..672a868
--- /dev/null
+++ b/tests/q4.html
@@ -0,0 +1,3 @@
+<!doctype html>
+<meta charset=Big5>
+<q>test</q>
diff --git a/tests/q4.opts b/tests/q4.opts
new file mode 100644
index 0000000..074570d
--- /dev/null
+++ b/tests/q4.opts
@@ -0,0 +1,2 @@
+-O
+windows-1252
diff --git a/tests/q5.expected b/tests/q5.expected
new file mode 100644
index 0000000..4f4614d
--- /dev/null
+++ b/tests/q5.expected
@@ -0,0 +1 @@
+“example of a ‘nested’ quote”
diff --git a/tests/q5.html b/tests/q5.html
new file mode 100644
index 0000000..f4fe761
--- /dev/null
+++ b/tests/q5.html
@@ -0,0 +1,3 @@
+<!doctype html>
+<meta charset=utf-8>
+<q>example of a <q>nested</q> quote</q>
diff --git a/tests/q6.expected b/tests/q6.expected
new file mode 100644
index 0000000..fc98f57
--- /dev/null
+++ b/tests/q6.expected
@@ -0,0 +1 @@
+"example of a 'nested' quote"
diff --git a/tests/q6.html b/tests/q6.html
new file mode 100644
index 0000000..e5f1de5
--- /dev/null
+++ b/tests/q6.html
@@ -0,0 +1,3 @@
+<!doctype html>
+<meta charset=big5>
+<q>example of a <q>nested</q> quote</q>
diff --git a/tests/q6.opts b/tests/q6.opts
new file mode 100644
index 0000000..1b59fbf
--- /dev/null
+++ b/tests/q6.opts
@@ -0,0 +1 @@
+-O Big5
diff --git a/tests/run_tests b/tests/run_tests
new file mode 100644
index 0000000..0ec3080
--- /dev/null
+++ b/tests/run_tests
@@ -0,0 +1,31 @@
+total=0
+pass=0
+fail=0
+w3m="../w3m
+-config
+/dev/null
+-o
+ignore_null_img_alt=false"
+for i in *.html; do
+ cmd="$w3m
+-I
+utf-8
+-O
+utf-8
+-T
+text/html"
+ opts="`basename "$i" .html`.opts"
+ test -f "$opts" && cmd="$cmd
+`grep -v '^#' $opts`"
+ if (set -x;IFS='
+';$cmd) < "$i" | diff -u - "`basename "$i" .html`.expected"; then
+ pass="`expr 1 + "$pass"`"
+ else
+ fail="`expr 1 + "$fail"`"
+ fi
+ total="`expr 1 + "$total"`"
+done
+echo "TOTAL: $total test(s)"
+echo "PASS : $pass"
+echo "FAIL : $fail"
+test 0 -eq "$fail"
diff --git a/url.c b/url.c
index ed6062e..5cb171d 100644
--- a/url.c
+++ b/url.c
@@ -1,6 +1,7 @@
/* $Id: url.c,v 1.100 2010/12/15 10:50:24 htrb Exp $ */
#include "fm.h"
#ifndef __MINGW32_VERSION
+#include <unistd.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
@@ -40,6 +41,10 @@
#define close(fd) closesocket(fd)
#endif
+#ifndef HOST_NAME_MAX
+#define HOST_NAME_MAX 64
+#endif
+
#ifdef INET6
/* see rc.c, "dns_order" and dnsorders[] */
int ai_family_order_table[7][3] = {
@@ -121,6 +126,7 @@ static struct table2 DefaultGuess[] = {
};
static void add_index_file(ParsedURL *pu, URLFile *uf);
+static char * schemeNumToName(int scheme);
/* #define HTTP_DEFAULT_FILE "/index.html" */
@@ -318,14 +324,21 @@ openSSLHandle(int sock, char *hostname, char **p_cert)
#endif /* defined(USE_SSL_VERIFY) */
if (ssl_ctx == NULL) {
int option;
-#if SSLEAY_VERSION_NUMBER < 0x0800
+#if OPENSSL_VERSION_NUMBER < 0x0800
ssl_ctx = SSL_CTX_new();
X509_set_default_verify_paths(ssl_ctx->cert);
#else /* SSLEAY_VERSION_NUMBER >= 0x0800 */
+#if (OPENSSL_VERSION_NUMBER < 0x10100000L) || defined(LIBRESSL_VERSION_NUMBER)
SSLeay_add_ssl_algorithms();
SSL_load_error_strings();
+#else
+ OPENSSL_init_ssl(0, NULL);
+#endif
if (!(ssl_ctx = SSL_CTX_new(SSLv23_client_method())))
goto eend;
+#if (OPENSSL_VERSION_NUMBER < 0x10100000L) || defined(LIBRESSL_VERSION_NUMBER)
+ SSL_CTX_set_cipher_list(ssl_ctx, "DEFAULT:!LOW:!RC4:!EXP");
+#endif
option = SSL_OP_ALL;
if (ssl_forbid_method) {
if (strchr(ssl_forbid_method, '2'))
@@ -336,8 +349,30 @@ openSSLHandle(int sock, char *hostname, char **p_cert)
option |= SSL_OP_NO_TLSv1;
if (strchr(ssl_forbid_method, 'T'))
option |= SSL_OP_NO_TLSv1;
+ if (strchr(ssl_forbid_method, '4'))
+ option |= SSL_OP_NO_TLSv1;
+#ifdef SSL_OP_NO_TLSv1_1
+ if (strchr(ssl_forbid_method, '5'))
+ option |= SSL_OP_NO_TLSv1_1;
+#endif
+#ifdef SSL_OP_NO_TLSv1_2
+ if (strchr(ssl_forbid_method, '6'))
+ option |= SSL_OP_NO_TLSv1_2;
+#endif
+#ifdef SSL_OP_NO_TLSv1_3
+ if (strchr(ssl_forbid_method, '7'))
+ option |= SSL_OP_NO_TLSv1_3;
+#endif
}
+#ifdef SSL_OP_NO_COMPRESSION
+ option |= SSL_OP_NO_COMPRESSION;
+#endif
SSL_CTX_set_options(ssl_ctx, option);
+
+#ifdef SSL_MODE_RELEASE_BUFFERS
+ SSL_CTX_set_mode (ssl_ctx, SSL_MODE_RELEASE_BUFFERS);
+#endif
+
#ifdef USE_SSL_VERIFY
/* derived from openssl-0.9.5/apps/s_{client,cb}.c */
#if 1 /* use SSL_get_verify_result() to verify cert */
@@ -444,6 +479,8 @@ baseURL(Buffer *buf)
/* <BASE> tag is defined in the document */
return buf->baseURL;
}
+ else if (IS_EMPTY_PARSED_URL(&buf->currentURL))
+ return NULL;
else
return &buf->currentURL;
}
@@ -638,16 +675,21 @@ openSocket(char *const hostname,
#define COPYPATH_SPC_ALLOW 0
#define COPYPATH_SPC_IGNORE 1
#define COPYPATH_SPC_REPLACE 2
+#define COPYPATH_SPC_MASK 3
+#define COPYPATH_LOWERCASE 4
static char *
copyPath(char *orgpath, int length, int option)
{
Str tmp = Strnew();
- while (*orgpath && length != 0) {
- if (IS_SPACE(*orgpath)) {
- switch (option) {
+ char ch;
+ while ((ch = *orgpath) != 0 && length != 0) {
+ if (option & COPYPATH_LOWERCASE)
+ ch = TOLOWER(ch);
+ if (IS_SPACE(ch)) {
+ switch (option & COPYPATH_SPC_MASK) {
case COPYPATH_SPC_ALLOW:
- Strcat_char(tmp, *orgpath);
+ Strcat_char(tmp, ch);
break;
case COPYPATH_SPC_IGNORE:
/* do nothing */
@@ -658,7 +700,7 @@ copyPath(char *orgpath, int length, int option)
}
}
else
- Strcat_char(tmp, *orgpath);
+ Strcat_char(tmp, ch);
orgpath++;
length--;
}
@@ -668,22 +710,14 @@ copyPath(char *orgpath, int length, int option)
void
parseURL(char *url, ParsedURL *p_url, ParsedURL *current)
{
- char *p, *q;
+ char *p, *q, *qq;
Str tmp;
url = url_quote(url); /* quote 0x01-0x20, 0x7F-0xFF */
p = url;
+ copyParsedURL(p_url, NULL);
p_url->scheme = SCM_MISSING;
- p_url->port = 0;
- p_url->user = NULL;
- p_url->pass = NULL;
- p_url->host = NULL;
- p_url->is_nocache = 0;
- p_url->file = NULL;
- p_url->real_file = NULL;
- p_url->query = NULL;
- p_url->label = NULL;
/* RFC1808: Relative Uniform Resource Locators
* 4. Resolving Relative URLs
@@ -693,13 +727,34 @@ parseURL(char *url, ParsedURL *p_url, ParsedURL *current)
copyParsedURL(p_url, current);
goto do_label;
}
+ if (!strncasecmp(url, "file://", 7)) {
#if defined( __EMX__ ) || defined( __CYGWIN__ )
- if (!strncmp(url, "file://localhost/", 17)) {
- p_url->scheme = SCM_LOCAL;
- p += 17 - 1;
- url += 17 - 1;
- }
+ if (!strncasecmp(url + 7, "localhost/", 10)) {
+ p_url->scheme = SCM_LOCAL;
+ p += 7 + 10 - 1;
+ url += 7 + 10 - 1;
+ } else
#endif
+ {
+ /* Recognize the machine's host name. This is necessary for URLs
+ * produced by 'ls --hyperlink' or similar. */
+ char hostname[HOST_NAME_MAX + 2];
+ if (gethostname (hostname, HOST_NAME_MAX + 2) == 0) {
+ size_t hostname_len;
+ /* Don't use hostname if it is truncated. */
+ hostname[HOST_NAME_MAX + 1] = '\0';
+ hostname_len = strlen (hostname);
+ if (hostname_len <= HOST_NAME_MAX) {
+ if (!strncasecmp(url + 7, hostname, hostname_len)
+ && *(url + 7 + hostname_len) == '/') {
+ p_url->scheme = SCM_LOCAL;
+ p += 7 + hostname_len;
+ url += 7 + hostname_len;
+ }
+ }
+ }
+ }
+ }
#ifdef SUPPORT_DOS_DRIVE_PREFIX
if (IS_ALPHA(*p) && (p[1] == ':' || p[1] == '|')) {
p_url->scheme = SCM_LOCAL;
@@ -802,19 +857,20 @@ parseURL(char *url, ParsedURL *p_url, ParsedURL *current)
/* scheme://user:pass@host or
* scheme://host:port
*/
- p_url->host = copyPath(q, p - q, COPYPATH_SPC_IGNORE);
+ qq = q;
q = ++p;
while (*p && strchr("@/?#", *p) == NULL)
p++;
if (*p == '@') {
/* scheme://user:pass@... */
+ p_url->user = copyPath(qq, q - 1 - qq, COPYPATH_SPC_IGNORE);
p_url->pass = copyPath(q, p - q, COPYPATH_SPC_ALLOW);
- q = ++p;
- p_url->user = p_url->host;
- p_url->host = NULL;
+ p++;
goto analyze_url;
}
/* scheme://host:port/ */
+ p_url->host = copyPath(qq, q - 1 - qq,
+ COPYPATH_SPC_IGNORE | COPYPATH_LOWERCASE);
tmp = Strnew_charp_n(q, p - q);
p_url->port = atoi(tmp->ptr);
/* *p is one of ['\0', '/', '?', '#'] */
@@ -822,15 +878,19 @@ parseURL(char *url, ParsedURL *p_url, ParsedURL *current)
case '@':
/* scheme://user@... */
p_url->user = copyPath(q, p - q, COPYPATH_SPC_IGNORE);
- q = ++p;
+ p++;
goto analyze_url;
case '\0':
/* scheme://host */
case '/':
case '?':
case '#':
- p_url->host = copyPath(q, p - q, COPYPATH_SPC_IGNORE);
- p_url->port = DefaultPort[p_url->scheme];
+ p_url->host = copyPath(q, p - q,
+ COPYPATH_SPC_IGNORE | COPYPATH_LOWERCASE);
+ if (p_url->scheme != SCM_UNKNOWN)
+ p_url->port = DefaultPort[p_url->scheme];
+ else
+ p_url->port = 0;
break;
}
analyze_file:
@@ -956,12 +1016,16 @@ parseURL(char *url, ParsedURL *p_url, ParsedURL *current)
p_url->label = NULL;
}
-#define initParsedURL(p) bzero(p,sizeof(ParsedURL))
#define ALLOC_STR(s) ((s)==NULL?NULL:allocStr(s,-1))
void
-copyParsedURL(ParsedURL *p, ParsedURL *q)
+copyParsedURL(ParsedURL *p, const ParsedURL *q)
{
+ if (q == NULL) {
+ memset(p, 0, sizeof(ParsedURL));
+ p->scheme = SCM_UNKNOWN;
+ return;
+ }
p->scheme = q->scheme;
p->port = q->port;
p->is_nocache = q->is_nocache;
@@ -1280,16 +1344,35 @@ getURLScheme(char **url)
}
static char *
+schemeNumToName(int scheme)
+{
+ int i;
+
+ for (i = 0; schemetable[i].cmdname != NULL; i++) {
+ if (schemetable[i].cmd == scheme)
+ return schemetable[i].cmdname;
+ }
+ return NULL;
+}
+
+static char *
otherinfo(ParsedURL *target, ParsedURL *current, char *referer)
{
Str s = Strnew();
+ const int *no_referer_ptr;
+ int no_referer;
+ const char* url_user_agent = query_SCONF_USER_AGENT(target);
- Strcat_charp(s, "User-Agent: ");
- if (UserAgent == NULL || *UserAgent == '\0')
- Strcat_charp(s, w3m_version);
- else
- Strcat_charp(s, UserAgent);
- Strcat_charp(s, "\r\n");
+ if (!override_user_agent) {
+ Strcat_charp(s, "User-Agent: ");
+ if (url_user_agent)
+ Strcat_charp(s, url_user_agent);
+ else if (UserAgent == NULL || *UserAgent == '\0')
+ Strcat_charp(s, w3m_version);
+ else
+ Strcat_charp(s, UserAgent);
+ Strcat_charp(s, "\r\n");
+ }
Strcat_m_charp(s, "Accept: ", AcceptMedia, "\r\n", NULL);
Strcat_m_charp(s, "Accept-Encoding: ", AcceptEncoding, "\r\n", NULL);
@@ -1306,7 +1389,12 @@ otherinfo(ParsedURL *target, ParsedURL *current, char *referer)
Strcat_charp(s, "Pragma: no-cache\r\n");
Strcat_charp(s, "Cache-control: no-cache\r\n");
}
- if (!NoSendReferer) {
+ no_referer = NoSendReferer;
+ no_referer_ptr = query_SCONF_NO_REFERER_FROM(current);
+ no_referer = no_referer || (no_referer_ptr && *no_referer_ptr);
+ no_referer_ptr = query_SCONF_NO_REFERER_TO(target);
+ no_referer = no_referer || (no_referer_ptr && *no_referer_ptr);
+ if (!no_referer) {
#ifdef USE_SSL
if (current && current->scheme == SCM_HTTPS && target->scheme != SCM_HTTPS) {
/* Don't send Referer: if https:// -> http:// */
@@ -1314,6 +1402,7 @@ otherinfo(ParsedURL *target, ParsedURL *current, char *referer)
else
#endif
if (referer == NULL && current && current->scheme != SCM_LOCAL &&
+ current->scheme != SCM_LOCAL_CGI &&
(current->scheme != SCM_FTP ||
(current->user == NULL && current->pass == NULL))) {
char *p = current->label;
@@ -1384,7 +1473,6 @@ HTTPrequest(ParsedURL *pu, ParsedURL *current, HRequest *hr, TextList *extra)
{
Str tmp;
TextListItem *i;
- int seen_www_auth = 0;
#ifdef USE_COOKIE
Str cookie;
#endif /* USE_COOKIE */
@@ -1400,7 +1488,6 @@ HTTPrequest(ParsedURL *pu, ParsedURL *current, HRequest *hr, TextList *extra)
for (i = extra->first; i != NULL; i = i->next) {
if (strncasecmp(i->ptr, "Authorization:",
sizeof("Authorization:") - 1) == 0) {
- seen_www_auth = 1;
#ifdef USE_SSL
if (hr->command == HR_COMMAND_CONNECT)
continue;
@@ -1430,20 +1517,20 @@ HTTPrequest(ParsedURL *pu, ParsedURL *current, HRequest *hr, TextList *extra)
#endif /* USE_COOKIE */
if (hr->command == HR_COMMAND_POST) {
if (hr->request->enctype == FORM_ENCTYPE_MULTIPART) {
- Strcat_charp(tmp, "Content-type: multipart/form-data; boundary=");
+ Strcat_charp(tmp, "Content-Type: multipart/form-data; boundary=");
Strcat_charp(tmp, hr->request->boundary);
Strcat_charp(tmp, "\r\n");
Strcat(tmp,
- Sprintf("Content-length: %ld\r\n", hr->request->length));
+ Sprintf("Content-Length: %ld\r\n", hr->request->length));
Strcat_charp(tmp, "\r\n");
}
else {
if (!override_content_type) {
Strcat_charp(tmp,
- "Content-type: application/x-www-form-urlencoded\r\n");
+ "Content-Type: application/x-www-form-urlencoded\r\n");
}
Strcat(tmp,
- Sprintf("Content-length: %ld\r\n", hr->request->length));
+ Sprintf("Content-Length: %ld\r\n", hr->request->length));
if (header_string)
Strcat(tmp, header_string);
Strcat_charp(tmp, "\r\n");
@@ -1485,6 +1572,11 @@ openURL(char *url, ParsedURL *pu, ParsedURL *current,
Str tmp;
int sock, scheme;
char *p, *q, *u;
+#ifdef USE_GOPHER
+ Str gophertmp;
+ char type;
+ int n;
+#endif
URLFile uf;
HRequest hr0;
#ifdef USE_SSL
@@ -1603,7 +1695,7 @@ openURL(char *url, ParsedURL *pu, ParsedURL *current,
pu->host != NULL && !check_no_proxy(pu->host)) {
hr->flag |= HR_FLAG_PROXY;
sock = openSocket(FTP_proxy_parsed.host,
- schemetable[FTP_proxy_parsed.scheme].cmdname,
+ schemeNumToName(FTP_proxy_parsed.scheme),
FTP_proxy_parsed.port);
if (sock < 0)
return uf;
@@ -1645,15 +1737,15 @@ openURL(char *url, ParsedURL *pu, ParsedURL *current,
}
else if (pu->scheme == SCM_HTTPS) {
sock = openSocket(HTTPS_proxy_parsed.host,
- schemetable[HTTPS_proxy_parsed.scheme].
- cmdname, HTTPS_proxy_parsed.port);
+ schemeNumToName(HTTPS_proxy_parsed.scheme),
+ HTTPS_proxy_parsed.port);
sslh = NULL;
}
else {
#endif /* USE_SSL */
sock = openSocket(HTTP_proxy_parsed.host,
- schemetable[HTTP_proxy_parsed.scheme].
- cmdname, HTTP_proxy_parsed.port);
+ schemeNumToName(HTTP_proxy_parsed.scheme),
+ HTTP_proxy_parsed.port);
#ifdef USE_SSL
sslh = NULL;
}
@@ -1685,8 +1777,7 @@ openURL(char *url, ParsedURL *pu, ParsedURL *current,
}
}
else {
- sock = openSocket(pu->host,
- schemetable[pu->scheme].cmdname, pu->port);
+ sock = openSocket(pu->host, schemeNumToName(pu->scheme), pu->port);
if (sock < 0) {
*status = HTST_MISSING;
return uf;
@@ -1713,6 +1804,8 @@ openURL(char *url, ParsedURL *pu, ParsedURL *current,
write(sock, tmp->ptr, tmp->length);
if(w3m_reqlog){
FILE *ff = fopen(w3m_reqlog, "a");
+ if (ff == NULL)
+ return uf;
if (sslh)
fputs("HTTPS: request via SSL\n", ff);
else
@@ -1735,6 +1828,8 @@ openURL(char *url, ParsedURL *pu, ParsedURL *current,
write(sock, tmp->ptr, tmp->length);
if(w3m_reqlog){
FILE *ff = fopen(w3m_reqlog, "a");
+ if (ff == NULL)
+ return uf;
fwrite(tmp->ptr, sizeof(char), tmp->length, ff);
fclose(ff);
}
@@ -1745,12 +1840,49 @@ openURL(char *url, ParsedURL *pu, ParsedURL *current,
break;
#ifdef USE_GOPHER
case SCM_GOPHER:
+ p = pu->file;
+ n = 0;
+ while(*p == '/') {
+ ++p;
+ ++n;
+ }
+ if(*p != '\0') {
+ type = pu->file[n];
+ switch(type) {
+ case '0':
+ case '1':
+ case 'm':
+ case 's':
+ case 'g':
+ case 'h':
+ case 'I':
+ case '5':
+ case '7':
+ case '9':
+ tmp = Strnew_charp(pu->file);
+ gophertmp = Strdup(tmp);
+ Strdelete(tmp, n, 1);
+ pu->file = tmp->ptr;
+ break;
+ default:
+ type = '\0';
+ break;
+ }
+ } else {
+ type = '\0';
+ }
+ if(pu->query != NULL) {
+ tmp = Strnew_charp(pu->file);
+ Strcat_char(tmp, '\t');
+ Strcat_charp(tmp, pu->query);
+ pu->file = tmp->ptr;
+ }
if (non_null(GOPHER_proxy) &&
!Do_not_use_proxy &&
pu->host != NULL && !check_no_proxy(pu->host)) {
hr->flag |= HR_FLAG_PROXY;
sock = openSocket(GOPHER_proxy_parsed.host,
- schemetable[GOPHER_proxy_parsed.scheme].cmdname,
+ schemeNumToName(GOPHER_proxy_parsed.scheme),
GOPHER_proxy_parsed.port);
if (sock < 0)
return uf;
@@ -1758,8 +1890,7 @@ openURL(char *url, ParsedURL *pu, ParsedURL *current,
tmp = HTTPrequest(pu, current, hr, extra_header);
}
else {
- sock = openSocket(pu->host,
- schemetable[pu->scheme].cmdname, pu->port);
+ sock = openSocket(pu->host, schemeNumToName(pu->scheme), pu->port);
if (sock < 0)
return uf;
if (pu->file == NULL)
@@ -1768,6 +1899,9 @@ openURL(char *url, ParsedURL *pu, ParsedURL *current,
Strcat_char(tmp, '\n');
}
write(sock, tmp->ptr, tmp->length);
+ if(type != '\0') {
+ pu->file = gophertmp->ptr;
+ }
break;
#endif /* USE_GOPHER */
#ifdef USE_NNTP
@@ -2049,7 +2183,7 @@ filename_extension(char *path, int is_url)
break;
}
if (*last_dot == '.') {
- for (i = 1; last_dot[i] && i < 8; i++) {
+ for (i = 1; i < 8 && last_dot[i]; i++) {
if (is_url && !IS_ALNUM(last_dot[i]))
break;
}
@@ -2234,3 +2368,66 @@ schemeToProxy(int scheme)
}
return pu;
}
+
+#ifdef USE_M17N
+wc_ces
+url_to_charset(const char *url, const ParsedURL *base, wc_ces doc_charset)
+{
+ const ParsedURL *pu;
+ ParsedURL pu_buf;
+ const wc_ces *csptr;
+
+ if (url && *url && *url != '#') {
+ parseURL2((char *)url, &pu_buf, (ParsedURL *)base);
+ pu = &pu_buf;
+ } else {
+ pu = base;
+ }
+ if (pu && (pu->scheme == SCM_LOCAL || pu->scheme == SCM_LOCAL_CGI))
+ return SystemCharset;
+ csptr = query_SCONF_URL_CHARSET(pu);
+ return (csptr && *csptr) ? *csptr :
+ doc_charset ? doc_charset : DocumentCharset;
+}
+
+char *
+url_encode(const char *url, const ParsedURL *base, wc_ces doc_charset)
+{
+ return url_quote_conv((char *)url,
+ url_to_charset(url, base, doc_charset));
+}
+
+#if 0 /* unused */
+char *
+url_decode(const char *url, const ParsedURL *base, wc_ces doc_charset)
+{
+ if (!DecodeURL)
+ return (char *)url;
+ return url_unquote_conv((char *)url,
+ url_to_charset(url, base, doc_charset));
+}
+#endif
+
+char *
+url_decode2(const char *url, const Buffer *buf)
+{
+ wc_ces url_charset;
+
+ if (!DecodeURL)
+ return (char *)url;
+ url_charset = buf ?
+ url_to_charset(url, baseURL((Buffer *)buf), buf->document_charset) :
+ url_to_charset(url, NULL, 0);
+ return url_unquote_conv((char *)url, url_charset);
+}
+
+#else /* !defined(USE_M17N) */
+
+char *
+url_decode0(const char *url)
+{
+ if (!DecodeURL)
+ return (char *)url;
+ return url_unquote_conv((char *)url, 0);
+}
+#endif /* !defined(USE_M17N) */
diff --git a/version.c.in b/version.c.in
index 31d30e4..ab25163 100644
--- a/version.c.in
+++ b/version.c.in
@@ -1,5 +1,5 @@
/* $Id: version.c.in,v 1.49 2012/05/22 09:45:56 inu Exp $ */
-#define CURRENT_VERSION "w3m/0.5.3+cvs"
+#define CURRENT_VERSION "w3m/0.5.3+gitYYYYMMDD"
#ifndef FM_H
char *w3m_version = CURRENT_VERSION;
diff --git a/w3m-doc/README.html b/w3m-doc/README.html
deleted file mode 100644
index 1caa3cd..0000000
--- a/w3m-doc/README.html
+++ /dev/null
@@ -1,75 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
-
-<HTML>
-<HEAD>
-<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-2022-jp">
-<TITLE>w3m $B%I%-%e%a%s%H@0Hw$NJ}?K(B</TITLE>
-</HEAD>
-
-<BODY>
-
-<DIV ALIGN="center">
-w3m $B%I%-%e%a%s%H@0Hw$NJ}?K(B
-</DIV>
-<DIV ALIGN="right">
-Yoshinobu Sakane February 15, 2001
-</DIV>
-
-<OL>
-<H1><LI>$BJ}?K(B</H1>
-<DIV>
- <P>
- w3m$B$K4X$9$k%I%-%e%a%s%HN`$r0J2<$NJ}?K$G@0Hw$7$?$$$H9M$($F$$$^$9!#(B
- <P>
- <UL>
- <LI>$B8=;~E@(B(w3m-0.1.11-pre)$B$G;6J8$7$F$$$k%I%-%e%a%s%H$r0lDj$N%k!<%k$N$b$H$K$^$H$a$k(B
- <LI>$BF~LgDxEY$N%I%-%e%a%s%H$H?<$_$K$O$a$k(B:-)$B$?$a$N%I%-%e%a%s%H$rMQ0U$9$k(B
- <LI>HTML$BHG$H%W%l%$%s%F%-%9%HHG$rMQ0U$9$k!#$?$@$7!"%=!<%9$H$J$k%I%-%e%a%s%H$O0l$D(B
- </UL>
-</DIV>
-<BR>
-
-<H1><LI>$B9|AH$_%I%-%e%a%s%H$N@bL@(B</H1>
-<DIV>
- <P>
- <TABLE BORDER>
- <CAPTION>$B!T%3%s%F%s%D!U(B</CAPTION>
- <TR>
- <TD><A HREF="w3mdoc.pl">w3mdoc.pl</A></TD>
- <TD><A HREF="http://www2u.biglobe.ne.jp/~hsaka/">$B:dK\$5$s(B</A>$B$46`@=$N(Bperl$B%9%/%j%W%H(B</TD>
- <TR>
- <TD><A HREF="mkdocs">mkdocs</A></TD>
- <TD>$B%I%-%e%a%s%H@07AMQ%7%'%k%9%/%j%W%H(B</TD>
- <TR>
- <TD>README.html</TD>
- <TD>$B$3$N%U%!%$%k(B</TD>
- <TR>
- <TD>*.html.in</TD>
- <TD>$B3F>O!?@aKh$N%I%-%e%a%s%H%=!<%9(B</TD>
- <TR>
- <TD>*.wd</TD>
- <TD>$B3F<oDj5A%U%!%$%k(B</TD>
- </TABLE>
- <P>
- w3mdoc.pl$B$N;H$$J}$K$D$$$F$O!":dK\$5$s$,=q$+$l$?(B<A HREF="sample/README">README</A>$B!"5Z$S!"%5%s%W%k%=!<%9$r;2>H$7$F$/$@$5$$!#(B<br>
-</DIV>
-<BR>
-
-<H1><LI>$B%I%-%e%a%s%H@0Hw$N?J$aJ}(B</H1>
-<DIV>
- <P>
- <UL>
- <LI>$BM-;V(B($B0J9_!"(B<B>w3m-doc$B%a%s%P(B</B>$B$H5-$9(B)$B$K$h$kJ,3d:n6H(B
- <LI>$BJ,3d$NC10L$O(Bw3m-doc$B%a%s%P4V$GD4@0(B
- <LI>$B:#2s<($99|AH$_$O$"$/$^$G;X?K!#>u67!?ET9g$K$h$j(Bw3m-doc$B%a%s%P4V$GD4@0$7JQ99$9$k(B
- <LI>$B$^$:$OF|K\8lHG$N%I%-%e%a%s%H$r:n$j!">u67$r8+$F1QLu$9$k(B
- <LI>$B$"$kDxEY$G$-$?$H$3$m$+$i!"C`<!!"(Bw3m-dev ML$B%a%s%P$N%l%S%e!<$r<u$1$k(B
- </UL>
- <P>
- $B$H!"9M$($F$$$^$9!#(B
-</DIV>
-
-</OL>
-
-</BODY>
-</HTML>
diff --git a/w3m-doc/community.html.in b/w3m-doc/community.html.in
deleted file mode 100644
index 2868287..0000000
--- a/w3m-doc/community.html.in
+++ /dev/null
@@ -1,48 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
-<HTML>
-
-@include define.wd
-@include contain.wd
-
-<HEAD>
-<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-2022-jp">
-<TITLE>W3M&nbsp;COMMUNITY&nbsp;- w3m $B%3%_%e%K%F%#(B -</TITLE>
-</HEAD>
-
-<BODY>
-
-<H1><A NAME="index">w3m $B%3%_%e%K%F%#(B</A></H1>
-<DIV>
-<!-- w3m$B%3%_%e%K%F%#$K4X$7$F(B -->
-</DIV>
- <UL>
- <LI><A HREF="#ML">$B%a!<%j%s%0%j%9%H(B</A>
- <LI><A HREF="#links">$B4XO"(B Web</A>
- </UL>
-
-<DIV>
-<A HREF="@DOC.index@">$B%H%C%W%Z%$%8$KLa$k(B</A>
-</DIV>
-<HR>
-
-<H2><A NAME="ML">$B%a!<%j%s%0%j%9%H(B</A></H2>
-<!-- w3m-dev, w3m-dev-en ML$B$N>R2p(B -->
-<DIV>
-<P>w3m $B3+H/<TMQ%a!<%j%s%0%j%9%H(B
-</DIV>
-<DIV>
-<A HREF="#index">$B$3$N%Z!<%8$N@hF,$KLa$k(B</A>
-</DIV>
-<HR>
-
-<H2><A NAME="links">$B4XO"(B Web</A></H2>
-<!-- w3m$B$K4X78$7$F$$$k(BWeb -->
-<DIV>
-<A HREF="#index">$B$3$N%Z!<%8$N@hF,$KLa$k(B</A>
-</DIV>
-<HR>
-
-<A HREF="@DOC.index@">$B%H%C%W%Z%$%8$KLa$k(B</A>
-
-</BODY>
-</HTML>
diff --git a/w3m-doc/configuration.html.in b/w3m-doc/configuration.html.in
deleted file mode 100644
index 136768f..0000000
--- a/w3m-doc/configuration.html.in
+++ /dev/null
@@ -1,182 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
-<HTML>
-
-@include define.wd
-@include contain.wd
-
-<HEAD>
-<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-2022-jp">
-<TITLE>CONFIGURATION&nbsp;- $B3F<o@_Dj(B -</TITLE>
-</HEAD>
-
-<BODY>
-
-<H1><A NAME="index">$B3F<o@_Dj(B</A></H1>
-<DIV>
-<!-- w3m$B$N3F<o@_Dj$N>\:Y$r5-$9(B -->
- <UL>
- <LI><A HREF="#option">$B5/F0%*%W%7%g%s(B</A>
- <LI><A HREF="#environment">$B4D6-JQ?t(B</A>
- <LI><A HREF="#bookmark">bookmark $B%U%!%$%k(B</A>
- <LI><A HREF="#option_panel">$B%*%W%7%g%s%Q%M%k(B</A>
- <UL>
- <LI><A HREF="#external_viewer">$B30It%S%e!<%"$NJT=8(B</A>
- </UL>
- <LI><A HREF="#other_customize">$B$=$NB>%+%9%?%^%$%:(B</A>
- <UL>
- <LI><A HREF="#keymap">keymap</A>
- <LI><A HREF="#menu">menu</A>
- </UL>
- </UL>
-</DIV>
-
-<DIV>
-<A HREF="@DOC.index@">$B%H%C%W%Z%$%8$KLa$k(B</A>
-</DIV>
-<HR>
-
-<H2><A NAME="option">$B5/F0%*%W%7%g%s(B</A></H2>
-<!-- $B%*%W%7%g%s$K$D$$$F$N@bL@(B -->
-<DIV>
-<P>w3m $B$N5/F0%*%W%7%g%s$O0J2<$NDL$j$G$9!#(B
-<BLOCKQUOTE>
-<DL>
-<DT>-t $B%?%VI}(B
- <DD>$B%?%V$NI}$r;XDj$9$k!#%G%U%)%k%H$O(B<B>8</B>$B!#(B
-<DT>-r
- <DD>text/plain $B$NJ8>O$rI=<($9$k>l9g!"=E$MBG$A$K$h$k6/D4J8;z$rI=<($7$J$$!#$3$N0z?t$r;XDj$7$J$$>l9g!"(B``A^H_''$B$O(B A $B$N(B<U>$B%"%s%@!<%i%$%s(B</U>$B$H$7$FI=<($5$l!"(B``A^HA'' $B$O(B A $B$N(B<B>$B%\!<%k%I(B</B>$B$H$7$FI=<($5$l$k!#(B
-<DT>-l $B9T?t(B
- <DD>$BI8=`F~NO$NFbMF$rI=<($9$k;~$KJ]B8$5$l$k:GBg9T?t$r;XDj$9$k!#%G%U%)%k%H$O(B <B>10000</B>$B!#(B
-<DT>-s
- <DD>Shift_JIS $B%3!<%I$GI=<($9$k!#(B
-<DT>-j
- <DD>JIS(ISO-2022-JP) $B%3!<%I$GI=<($9$k!#(B
-<DT>-e
- <DD>EUC-JP $B%3!<%I$GI=<($9$k!#(B
-<DT>-O e|s|j|N|m|n
- <DD>$BI=<($9$k4A;z%3!<%I$r;XDj$9$k!#(B
-<DT>-I e|s
- <DD>$BF~NO%U%!%$%k$N4A;z%3!<%I$r;XDj$9$k!#(B
-<DT>-B
- <DD>Bookmark $B%U%!%$%k$r%m!<%I$9$k!#(B
-<DT>-bookmark $B%U%!%$%kL>(B
- <DD>Bookmark $B%U%!%$%k$r;XDj$N%U%!%$%k$K$9$k!#(B
-<DT>-T $B%?%$%W(B
- <DD>$BI=<($9$kJ8=q$N%?%$%W$r;XDj$9$k!#$3$N;XDj$,$J$$>l9g!"%U%!%$%kL>$N3HD%;R$K$h$C$F<+F0H=JL$5$l$k!#H=JL$G$-$J$$>l9g$O(B text/plain $B$H$_$J$5$l$k!#(B
- <P>
- $BNc(B:<BR>
- <U>$BI8=`F~NO$+$i(B HTML $B%U%!%$%k$rFI$s$GI=<($9$k(B</U>
-<PRE>
- cat hoge.html | w3m -T text/html
-</PRE><P>
- <U>HTML$B%U%!%$%k$N%=!<%9$rI=<($9$k(B</U>
-<PRE>
- w3m -T text/plain hoge.html
-</PRE>
-<DT>-m
- <DD>Internet message $B%b!<%I$GI=<($9$k!#(BInternet message $B%b!<%I$N>l9g!"%X%C%@$NFbMF$r8+$F!"(BContent-Type: $B$,$"$l$P$=$l$r;29M$K$9$k!#EE;R%a!<%k$d%M%C%H%K%e!<%9$N5-;v$rFI$`;~$KJXMx!#(B
-<DT>-v
- <DD>$B$3$N%*%W%7%g%s$r;XDj$9$k$H!"(Bw3m $B$N%9%?!<%H%"%C%W!&%Z!<%8$rI=<($9$k!#(B
-<DT>-M
- <DD>$B%+%i!<I=<($r$7$J$$(B($B%b%N%/%mI=<($9$k(B)$B!#(B
-<DT>-F
- <DD>$B%U%l!<%`$r<+F0I=<($9$k!#(B
-<DT>-cols $BI}(B
- <DD>-dump $B%*%W%7%g%s$r;H$&>l9g$K!"J8=q$NI}$r;XDj$9$k!#(B
-<DT>-ppc $B%T%/%;%k?t(B
- <DD>$BJ8;z$NI}$r;XDj$9$k!#%G%U%)%k%H$O(B<B>8.0</B>$B!#(B
-<DT>-dump
- <DD>URL $B$G;XDj$5$l$?(B WWW $B$NFbMF$rFI$_9~$_!"@07A$5$l$?%P%C%U%!$NFbMF$rI8=`=PNO$K=q$-=P$9!#J8=q$NI}$O(B 80 $B7e$H2>Dj$5$l$k!#$3$NI}$O(B -cols $B%*%W%7%g%s$GJQ992DG=!#(B
-<DT>-dump_head
- <DD>URL $B$G;XDj$5$l$?(B WWW $B$NFbMF$rFI$_9~$_!"$=$N%X%C%@>pJs$N$_$rI8=`=PNO$K=q$-=P$9!#(B
-<DT>-dump_source
- <DD>URL $B$G;XDj$5$l$?(B WWW $B$NFbMF$rFI$_9~$_!"@07A$;$:$KI8=`=PNO$K=q$-=P$9!#4A;z%3!<%I$NJQ49$b9T$o$J$$!#(B
-<DT>-dump_both
- <DD>-dump_head $B$H(B -dump_souce $B$NN>J}$N8z2L(B
-<DT>-dump_extra
- <DD>-dump_both $B$K2C$(!"3HD%>pJs(B(extra information)$B$rI8=`=PNO$K=q$-=P$9!#(B
-<DT>-post $B%U%!%$%kL>(B
- <DD>$B;XDj$7$?%U%!%$%k$NFbMF$G(B POST $B%a%=%C%I$rMQ$$$k!#(B
-<DT>-header $BJ8;zNs(B
- <DD>insert string as a header ($B$C$F2?!)(B)
-<DT>+$B9THV9f(B
- <DD>w3m $B5/F08e$K!";XDj$N9THV9f$K0\F0$9$k!#(B
-<DT>-num
- <DD>$B9THV9f$rI=<($9$k!#(B
-<DT>-no-proxy
- <DD>$B%W%m%-%7$rMxMQ$7$J$$!#(B
-<DT>-no-mouse
- <DD>$B%^%&%9$rMxMQ$7$J$$!#(B
-<DT>-cookie
- <DD>$B%/%C%-!<$r=hM}$9$k!#(B
-<DT>-no-cookie
- <DD>$B%/%C%-!<$r=hM}$7$J$$!#(B
-<DT>-S
- <DD>tet/plain $B$NJ8=q$rI=<($9$k>l9g!"J#?t$N6u9T$r(B 1$B$D$K$^$H$a$FI=<($9$k!#(B
-<DT>-W
- <DD>$BJ8;zNs8!:w;~!"@^$jJV$7%5!<%A$r;H$&$+$I$&$+$r@Z$j49$($k!#(B
-<DT>-X
- <DD>w3m $B=*N;;~$K!"(Bw3m $B5/F0A0$N2hLL$KLa$i$J$$!#(B
-<DT>-o option=value
- <DD>w3m $B$K4X$9$k$5$^$6$^$J(B option $B$KBP$7$F(B $BCM(B (value) $B$r%;%C%H$9$k!#(B``w3m -o''$B$H<B9T$7$?>l9g!"(Busage $B$KB3$$$F!";XDj2DG=$J(B option $B$H$=$N@bL@$rI=<($9$k!#(B
-<DT>-config $B%U%!%$%kL>(B
- <DD>w3m $B$N(B config $B%U%!%$%k$r;XDj$9$k!#(B
-<!--
-<DT>-debug
- <DD>$B%G%P%C%0MQ$J$N$G!";XDj$7$J$$$3$H!#(B
--->
-</DL>
-</BLOCKQUOTE>
-</DIV>
-
-<DIV>
-<A HREF="#index">$B$3$N%Z!<%8$N@hF,$KLa$k(B</A>
-</DIV>
-<HR>
-
-<H2><A NAME="environment">$B4D6-JQ?t(B</A></H2>
-<!-- w3m $B$,;2>H$9$k4D6-JQ?t$K$D$$$F(B -->
-<DIV>
-<A HREF="#index">$B$3$N%Z!<%8$N@hF,$KLa$k(B</A>
-</DIV>
-<HR>
-
-<H2><A NAME="bookmark">bookmark $B%U%!%$%k(B</A></H2>
-<!-- bookmark $B%U%!%$%k$K$D$$$F$N@bL@(B -->
-<DIV>
-<A HREF="#index">$B$3$N%Z!<%8$N@hF,$KLa$k(B</A>
-</DIV>
-<HR>
-
-<H2><A NAME="option_panel">$B%*%W%7%g%s%Q%M%k(B</A></H2>
-<!-- $B%*%W%7%g%s%Q%M%k$K$D$$$F$N@bL@(B -->
-
-<H3><A NAME="external_viewer">$B30It%S%e!<%"$NJT=8(B</A></H3>
-<!-- $B30It%S%e!<%"$NJT=8$K$D$$$F$N@bL@(B -->
-
-<DIV>
-<A HREF="#index">$B$3$N%Z!<%8$N@hF,$KLa$k(B</A>
-</DIV>
-<HR>
-
-<H2><A NAME="other_customize">$B$=$NB>%+%9%?%^%$%:(B</A></H2>
-<!-- $B$=$NB>$N%+%9%?%^%$%:9`L\$K$D$$$F$N@bL@(B -->
-
-<H3><A NAME="keymap">keymap</A></H3>
-<!-- keymap $B$N%+%9%?%^%$%:$K$D$$$F$N@bL@(B -->
-<DIV>
-<A HREF="#index">$B$3$N%Z!<%8$N@hF,$KLa$k(B</A>
-</DIV>
-<HR>
-
-<H3><A NAME="menu">menu</A></H3>
-<!-- menu $B$N%+%9%?%^%$%:$K$D$$$F$N@bL@(B -->
-<DIV>
-<A HREF="#index">$B$3$N%Z!<%8$N@hF,$KLa$k(B</A>
-</DIV>
-<HR>
-
-<A HREF="@DOC.index@">$B%H%C%W%Z%$%8$KLa$k(B</A>
-
-</BODY>
-</HTML>
diff --git a/w3m-doc/contain.wd b/w3m-doc/contain.wd
deleted file mode 100644
index 8d48872..0000000
--- a/w3m-doc/contain.wd
+++ /dev/null
@@ -1,14 +0,0 @@
-@define
-DOC.index index.html
-DOC.prologue prologue.html
-DOC.copyright copyright.html
-DOC.outline outline.html
-DOC.detail detail.html
-DOC.install install.html
-DOC.operation operation.html
-DOC.configuration configuration.html
-DOC.function function.html
-DOC.FAQ faq.html
-DOC.developement developement.html
-DOC.community community.html
-@end
diff --git a/w3m-doc/copyright.html.in b/w3m-doc/copyright.html.in
deleted file mode 100644
index 67c2ca1..0000000
--- a/w3m-doc/copyright.html.in
+++ /dev/null
@@ -1,45 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
-<HTML>
-
-@include define.wd
-@include contain.wd
-
-<HEAD>
-<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-2022-jp">
-<TITLE>COPYRIGHT&nbsp;- Copyright -</TITLE>
-</HEAD>
-
-<BODY>
-
-<H1><A NAME="index">Copyright</A></H1>
-<DIV>
-<!-- w3m$B$N(BCopyright$B$K4X$7$F(B -->
-</DIV>
- <UL>
- <LI><A HREF="#copyright">$BCx:n8"!"%i%$%;%s%9(B</A>
- <LI><A HREF="#thanks">$B<U<-(B</A>
- </UL>
-
-<DIV>
-<A HREF="@DOC.index@">$B%H%C%W%Z%$%8$KLa$k(B</A>
-</DIV>
-<HR>
-
-<H2><A NAME="copyright">$BCx:n8"!"%i%$%;%s%9(B</A></H2>
-<!-- w3m $B$NCx:n8"!"%i%$%;%s%9$K$D$$$F$N@bL@(B -->
-<DIV>
-<A HREF="#index">$B$3$N%Z!<%8$N@hF,$KLa$k(B</A>
-</DIV>
-<HR>
-
-<H2><A NAME="thanks">$B<U<-(B</A></H2>
-<!-- $B<U<-(B -->
-<DIV>
-<A HREF="#index">$B$3$N%Z!<%8$N@hF,$KLa$k(B</A>
-</DIV>
-<HR>
-
-<A HREF="@DOC.index@">$B%H%C%W%Z%$%8$KLa$k(B</A>
-
-</BODY>
-</HTML>
diff --git a/w3m-doc/define.wd b/w3m-doc/define.wd
deleted file mode 100644
index d2df71d..0000000
--- a/w3m-doc/define.wd
+++ /dev/null
@@ -1,9 +0,0 @@
-@define
-W3M.version w3m-0.2.2
-W3M.author Akinori ITO
-W3M.home http://w3m.sourceforge.net/
-AITO.mail aito@fw.ipsj.or.jp
-W3M.bbs http://mi.med.tohoku.ac.jp/~satodai/w3m/bbs/spool/log.html
-W3M.note http://www2u.biglobe.ne.jp/~hsaka/w3mnote.cgi
-README.fm ../doc/ja/README.fm
-@end
diff --git a/w3m-doc/detail.html.in b/w3m-doc/detail.html.in
deleted file mode 100644
index 6836657..0000000
--- a/w3m-doc/detail.html.in
+++ /dev/null
@@ -1,32 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
-<HTML>
-
-@include define.wd
-@include contain.wd
-
-<HEAD>
-<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-2022-jp">
-<TITLE>DETAIL&nbsp;- $B>\:YJT(B -</TITLE>
-</HEAD>
-
-<BODY>
-
-<H1><A NAME="index">$B>\:YJT(B</A></H1>
-<DIV>
-<!-- w3m$B$N3F<o5!G=$K$D$$$F$N>\:Y$r5-$9(B -->
-</DIV>
- <UL>
- <LI><A HREF="@DOC.install@">$B%$%s%9%H!<%k$N>\:Y(B</A>
- <LI><A HREF="@DOC.operation@">w3m $BA`:nK!(B</A> <!-- $B%-!<A`:n@bL@(B -->
- <LI><A HREF="@DOC.configuration@">$B3F<o@_Dj(B</A>
- <LI><A HREF="@DOC.function@">$B5!G=>\:Y(B</A>
- <LI><A HREF="@DOC.FAQ@">FAQ</A>
- <LI><A HREF="@DOC.developement@">$B3+H/%I%-%e%a%s%H(B</A>
- <LI><A HREF="@DOC.community@">w3m $B%3%_%e%K%F%#(B</A>
- <LI><A HREF="@DOC.copyright@">Copiright</A>
- </UL>
-<HR>
-<A HREF="@DOC.index@">$B%H%C%W%Z%$%8$KLa$k(B</A>
-
-</BODY>
-</HTML>
diff --git a/w3m-doc/development.html.in b/w3m-doc/development.html.in
deleted file mode 100644
index 38b56fd..0000000
--- a/w3m-doc/development.html.in
+++ /dev/null
@@ -1,77 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
-<HTML>
-
-@include define.wd
-@include contain.wd
-
-<HEAD>
-<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-2022-jp">
-<TITLE>DEVELOPMENT&nbsp;-$B3+H/%I%-%e%a%s%H(B-</TITLE>
-</HEAD>
-
-<BODY>
-
-<H1><A NAME="index">w3m$B3+H/%I%-%e%a%s%H(B</A></H1>
-<DIV>
-<!-- w3m$B$N3+H/$K4X$7$F$$$m$$$m$H5-$9(B -->
-</DIV>
- <UL>
- <LI><A HREF="#story">w3m$B$N3+H/$K$D$$$F(B</A>
- <LI><A HREF="#known_bugs">$B8=:_H=L@$7$F$$$k%P%0(B</A>
- <LI><A HREF="#ToDo">ToDo</A>
- <LI><A HREF="#history">$BMzNr(B</A>
- <LI><A HREF="#policy">$B3+H/%]%j%7!<(B</A>
- <LI><A HREF="#tips">$B3+H/<T8~$1(BTips</A>
- </UL>
-
-<DIV>
-<A HREF="@DOC.index@">$B%H%C%W%Z%$%8$KLa$k(B</A>
-</DIV>
-<HR>
-
-<H2><A NAME="story">w3m$B$N3+H/$K$D$$$F(B</A></H2>
-<!-- doc-jp/STORY.html$B$+$i0zMQ(B -->
-<DIV>
-<A HREF="#index">$B$3$N%Z!<%8$N@hF,$KLa$k(B</A>
-</DIV>
-<HR>
-
-<H2><A NAME="known_bugs">$B8=:_H=L@$7$F$$$k%P%0(B</A><H2>
-<!-- $B8=:_H=L@$7$F$$$k%P%0(B -->
-<DIV>
-<A HREF="#index">$B$3$N%Z!<%8$N@hF,$KLa$k(B</A>
-</DIV>
-<HR>
-
-<H2><A NAME="ToDo">ToDo</A><H2>
-<!-- $B$d$i$M$P$J$i$s$3$H!?$d$m$&$+$J$!$J$3$H(B -->
-<DIV>
-<A HREF="#index">$B$3$N%Z!<%8$N@hF,$KLa$k(B</A>
-</DIV>
-<HR>
-
-<H2><A NAME="history">$BMzNr(B</A><H2>
-<!-- w3m$B3+H/MzNr(B -->
-<DIV>
-<A HREF="#index">$B$3$N%Z!<%8$N@hF,$KLa$k(B</A>
-</DIV>
-<HR>
-
-<H2><A NAME="policy">$B3+H/%]%j%7!<(B</A><H2>
-<!-- w3m$B$NL\;X$9$3$H!?3+H/>e$N$3$@$o$j(B -->
-<DIV>
-<A HREF="#index">$B$3$N%Z!<%8$N@hF,$KLa$k(B</A>
-</DIV>
-<HR>
-
-<H2><A NAME="tips">$B3+H/<T8~$1(BTips</A><H2>
-<!-- w3m$B$r3+H/$9$k$&$($G$N>.5;(B -->
-<DIV>
-<A HREF="#index">$B$3$N%Z!<%8$N@hF,$KLa$k(B</A>
-</DIV>
-<HR>
-
-<A HREF="@DOC.index@">$B%H%C%W%Z%$%8$KLa$k(B</A>
-
-</BODY>
-</HTML>
diff --git a/w3m-doc/faq.html.in b/w3m-doc/faq.html.in
deleted file mode 100644
index 7da0392..0000000
--- a/w3m-doc/faq.html.in
+++ /dev/null
@@ -1,45 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
-<HTML>
-
-@include define.wd
-@include contain.wd
-
-<HEAD>
-<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-2022-jp">
-<TITLE>FAQ&nbsp;- FAQ -</TITLE>
-</HEAD>
-
-<BODY>
-
-<H1><A NAME="index">FAQ</A></H1>
-<DIV>
-<!-- w3m $B$K4X$7$FNI$/J9$+$l$k(B($B$G$"$m$&(B)$B<ALd$H$=$NEz$(!"$*$h$S!"(BTips $B$r5-$9(B -->
-</DIV>
- <UL>
- <LI><A HREF="#faq">$B$h$/J9$+$l$k<ALd$H$=$NEz$((B</A>
- <LI><A HREF="#tips">Tips</A>
- </UL>
-
-<DIV>
-<A HREF="@DOC.index@">$B%H%C%W%Z%$%8$KLa$k(B</A>
-</DIV>
-<HR>
-
-<H2><A NAME="faq">$B$h$/J9$+$l$k<ALd$H$=$NEz$((B</A></H2>
-<!-- w3m $B$K4X$7$FNI$/J9$+$l$k<ALd$H$=$NEz$($K$D$$$F(B -->
-<DIV>
-<A HREF="#index">$B$3$N%Z!<%8$N@hF,$KLa$k(B</A>
-</DIV>
-<HR>
-
-<H2><A NAME="tips">Tips</A></H2>
-<!-- Tips ($B>.5;(B) -->
-<DIV>
-<A HREF="#index">$B$3$N%Z!<%8$N@hF,$KLa$k(B</A>
-</DIV>
-<HR>
-
-<A HREF="@DOC.index@">$B%H%C%W%Z%$%8$KLa$k(B</A>
-
-</BODY>
-</HTML>
diff --git a/w3m-doc/function.html.in b/w3m-doc/function.html.in
deleted file mode 100644
index 9590838..0000000
--- a/w3m-doc/function.html.in
+++ /dev/null
@@ -1,71 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
-<HTML>
-
-@include define.wd
-@include contain.wd
-
-<HEAD>
-<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-2022-jp">
-<TITLE>FUNCTION&nbsp;- $B5!G=>\:Y(B -</TITLE>
-</HEAD>
-
-<BODY>
-
-<H1><A NAME="index">$B5!G=>\:Y(B</A></H1>
-<DIV>
-<!-- w3m $B$N3F5!G=$K$D$$$F$N>\:Y@bL@$r5-$9(B -->
-</DIV>
- <UL>
- <LI><A HREF="#url">$BBP1~$7$F$$$k(B URL</A>
- <LI><A HREF="#html">$BBP1~$7$F$$$k(B HTML</A>
- <LI><A HREF="#ssl">SSL</A>
- <LI><A HREF="#cookie">cookie</A>
- <LI><A HREF="#local_CGI">$B%m!<%+%k(B CGI $B5!G=(B</A>
- </UL>
-
-<DIV>
-<A HREF="@DOC.index@">$B%H%C%W%Z%$%8$KLa$k(B</A>
-</DIV>
-<HR>
-
-<H2><A NAME="url">$BBP1~$7$F$$$k(B URL</A></H2>
-<!-- w3m $B$,2r<a2DG=$J(B URL $B$K$D$$$F$N@bL@(B -->
-<DIV>
-<A HREF="#index">$B$3$N%Z!<%8$N@hF,$KLa$k(B</A>
-</DIV>
-<HR>
-
-<H2><A NAME="html">$BBP1~$7$F$$$k(B HTML</A></H2>
-<!-- w3m $B$,BP1~$7$F$$$k(B HTML $B$K$D$$$F(B -->
-<DIV>
-<A HREF="#index">$B$3$N%Z!<%8$N@hF,$KLa$k(B</A>
-</DIV>
-<HR>
-
-<H2><A NAME="ssl">SSL</A></H2>
-<!-- SSL $B$K$D$$$F$N@bL@(B -->
-<DIV>
-<A HREF="#index">$B$3$N%Z!<%8$N@hF,$KLa$k(B</A>
-</DIV>
-<HR>
-
-<H2><A NAME="cookie">cookie</A></H2>
-<!-- cookie $B$K$D$$$F$N@bL@(B -->
-
-<DIV>
-<A HREF="#index">$B$3$N%Z!<%8$N@hF,$KLa$k(B</A>
-</DIV>
-<HR>
-
-<H2><A NAME="local_CGI">$B%m!<%+%k(B CGI $B5!G=(B</A></H2>
-<!-- $B%m!<%+%k(B CGI $B5!G=$K$D$$$F$N@bL@(B -->
-
-<DIV>
-<A HREF="#index">$B$3$N%Z!<%8$N@hF,$KLa$k(B</A>
-</DIV>
-<HR>
-
-<A HREF="@DOC.index@">$B%H%C%W%Z%$%8$KLa$k(B</A>
-
-</BODY>
-</HTML>
diff --git a/w3m-doc/index.html.in b/w3m-doc/index.html.in
deleted file mode 100644
index 7871c48..0000000
--- a/w3m-doc/index.html.in
+++ /dev/null
@@ -1,113 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
-<HTML>
-
-@include define.wd
-@include contain.wd
-
-<HEAD>
-<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-2022-jp">
-<TITLE>THE DOCUMENTS FOR W3M</TITLE>
-</HEAD>
-
-<BODY>
-
-<!-- $B$3$N$"$?$j$K(B w3m $B$N%m%4(B($B$C$F$J$$$+!)(B) $B$H$+(B -->
-<!-- w3m: WWW wo Miru Tool version @W3M.version@ $B$H$+(B -->
-<!-- (C) Copyright by @W3M.author@ March 23, 1999 $B$H$+(B -->
-<!-- $B$rF~$l$F$*$/$Y$-$+$J!)(B -->
-
-<H1><A NAME="index">$B:w0z(B</A></H1>
-<OL>
- <LI><A HREF="@DOC.prologue@" NAME="prologue">$B$O$8$a$K(B</A> <!-- README $B$N!H(B1. $B$O$8$a$K!I$NItJ,(B -->
- <UL>
- <LI><A HREF="@DOC.prologue@#summary">w3m $B$H$O(B</A><IMG SRC=dummy ALT="[$B:Q(B]">
- <LI><A HREF="@DOC.prologue@#glossary">$BMQ8l$N@bL@(B</A><IMG SRC=dummy ALT="[$B:Q(B]">
- <LI><A HREF="@DOC.prologue@#disclaimer">$BCm0U;v9`(B</A><IMG SRC=dummy ALT="[$B:Q(B]">
- <LI><A HREF="@DOC.copyright@">$BCx:n8"!"%i%$%;%s%9(B</A>
- <LI><A HREF="@DOC.prologue@#confirmation">$BF0:n3NG'(B OS</A><IMG SRC=dummy ALT="[$B:Q(B]">
- </UL>
- <LI><A HREF="@DOC.outline@" NAME="outline">$B35MWJT(B</A>
- <UL>
- <LI><A HREF="@DOC.outline@#install">$B%$%s%9%H!<%k$N35MW(B</A><IMG SRC=dummy ALT="[$B:Q(B]">
- <LI><A HREF="@DOC.outline@#operation">$BA`:nJ}K!$N35MW(B</A><IMG SRC=dummy ALT="[$B:Q(B]">
- <UL>
- <LI><A HREF="@DOC.outline@#display">$BI=<(FbMF$N@bL@(B</A><IMG SRC=dummy ALT="[$B:Q(B]">
- <LI><A HREF="@DOC.outline@#basic">$B4pK\E*$J;H$$J}(B</A><IMG SRC=dummy ALT="[$B:Q(B]">
- <LI><A HREF="@DOC.outline@#help">$B%X%k%W$N;2>H(B</A><IMG SRC=dummy ALT="[$B:Q(B]">
- </UL>
- </UL>
- <LI><A HREF="@DOC.detail@" NAME="detail">$B>\:YJT(B</A>
- <UL>
- <LI><A HREF="@DOC.install@" NAME="install">$B%$%s%9%H!<%k$N>\:Y(B</A>
- <UL>
- <LI><A HREF="@DOC.install@#get_w3m">w3m $BF~<jJ}K!(B</A><IMG SRC=dummy ALT="[$B:Q(B]">
- <UL>
- <LI><A HREF="@DOC.install@#w3m_home">w3m Homepage</A><IMG SRC=dummy ALT="[$B:Q(B]">
- <LI><A HREF="@DOC.install@#BBS">w3m $B$K4X$9$k7G<(HD(B</A><IMG SRC=dummy ALT="[$B:Q(B]">
- </UL>
- <LI><A HREF="@DOC.install@#require">$BI,MW$JJ*(B</A><IMG SRC=dummy ALT="[$B:Q(B]">
- <LI><A HREF="@DOC.install@#configure">configure $B$K$D$$$F(B</A><IMG SRC=dummy ALT="[$B:Q(B]">
- <LI><A HREF="@DOC.install@#config_h">config.h $B$K$D$$$F(B</A><IMG SRC=dummy ALT="[$B:Q(B]">
- <LI><A HREF="@DOC.install@#make">make $B$K$D$$$F(B</A><IMG SRC=dummy ALT="[$B:Q(B]">
- <LI><A HREF="@DOC.install@#tips">$BB>$N(B OS $B$G%$%s%9%H!<%k$9$k:]$N(B Tips</A><IMG SRC=dummy ALT="[$B:Q(B]">
- </UL>
- <LI><A HREF="@DOC.operation@" NAME="operation">w3m $BA`:nK!(B</A> <!-- $B%-!<A`:n@bL@(B -->
- <UL>
- <LI><A HREF="@DOC.operation@#buffer">$B%P%C%U%!A`:n(B</A>
- <LI><A HREF="@DOC.operation@#mouse">$B%^%&%9A`:n(B</A>
- <LI><A HREF="@DOC.operation@#line_edit">$B:G2<9TF~NO(B</A>
- <LI><A HREF="@DOC.operation@#menu">$B%a%K%e!<A`:n(B</A>
- </UL>
- <LI><A HREF="@DOC.configuration@" NAME="configuration">$B3F<o@_Dj(B</A>
- <UL>
- <LI><A HREF="@DOC.configuration@#option">$B5/F0%*%W%7%g%s(B</A><IMG SRC=dummy ALT="[$B:Q(B]">
- <LI><A HREF="@DOC.configuration@#environment">$B4D6-JQ?t(B</A>
- <LI><A HREF="@DOC.configuration@#bookmark">bookmark $B%U%!%$%k(B</A>
- <LI><A HREF="@DOC.configuration@#option_panel">$B%*%W%7%g%s%Q%M%k(B</A>
- <UL>
- <LI><A HREF="@DOC.configuration@#external_viewer">$B30It%S%e!<%"$NJT=8(B</A>
- </UL>
- <LI><A HREF="@DOC.configuration@#other_customize">$B$=$NB>%+%9%?%^%$%:(B</A>
- <UL>
- <LI><A HREF="@DOC.configuration@#keymap">keymap</A>
- <LI><A HREF="@DOC.configuration@#menu">menu</A>
- </UL>
- </UL>
- <LI><A HREF="@DOC.function@" NAME="function">$B5!G=>\:Y(B</A>
- <UL>
- <LI><A HREF="@DOC.function@#url">$BBP1~$7$F$$$k(B URL</A>
- <LI><A HREF="@DOC.function@#html">$BBP1~$7$F$$$k(B HTML</A>
- <LI><A HREF="@DOC.function@#ssl">SSL</A>
- <LI><A HREF="@DOC.function@#cookie">cookie</A>
- <LI><A HREF="@DOC.function@#local_CGI">$B%m!<%+%k(B CGI $B5!G=(B</A>
- </UL>
- <LI><A HREF="@DOC.FAQ@" NAME="faq">FAQ</A>
- <UL>
- <LI><A HREF="@DOC.FAQ@#faq">$B$h$/J9$+$l$k<ALd$H$=$NEz$((B</A>
- <LI><A HREF="@DOC.FAQ@#tips">Tips</A>
- </UL>
- <LI><A HREF="@DOC.developement@" NAME="developement">$B3+H/%I%-%e%a%s%H(B</A>
- <UL>
- <LI><A HREF="@DOC.developement@#story">w3m $B$N3+H/$K$D$$$F(B</A>
- <LI><A HREF="@DOC.developement@#known_bugs">$B8=:_H=L@$7$F$$$k%P%0(B</A>
- <LI><A HREF="@DOC.developement@#ToDo">ToDo</A>
- <LI><A HREF="@DOC.developement@#history">$BMzNr(B</A>
- <LI><A HREF="@DOC.developement@#policy">$B3+H/%]%j%7!<(B</A>
- <LI><A HREF="@DOC.developement@#tips">$B3+H/<T8~$1(BTips</A>
- </UL>
- <LI><A HREF="@DOC.community@" NAME="community">w3m $B%3%_%e%K%F%#(B</A>
- <UL>
- <LI><A HREF="@DOC.community@#ML">$B%a!<%j%s%0%j%9%H(B</A>
- <LI><A HREF="@DOC.community@#links">$B4XO"(B Web</A>
- </UL>
- <LI><A HREF="@DOC.copyright@" NAME="copyright">Copyright</A>
- <UL>
- <LI><A HREF="@DOC.copyright@#copyright">$BCx:n8"!"%i%$%;%s%9(B</A>
- <LI><A HREF="@DOC.copyright@#thanks">$B<U<-(B</A>
- </UL>
- </UL>
-</OL>
-
-</BODY>
-
-</HTML>
diff --git a/w3m-doc/install.html.in b/w3m-doc/install.html.in
deleted file mode 100644
index 8e27f03..0000000
--- a/w3m-doc/install.html.in
+++ /dev/null
@@ -1,389 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
-<HTML>
-
-@include define.wd
-@include contain.wd
-
-<HEAD>
-<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-2022-jp">
-<TITLE>INSTALL&nbsp;- $B%$%s%9%H!<%k$N>\:Y(B -</TITLE>
-</HEAD>
-
-<BODY>
-
-<H1><A NAME="index">$B%$%s%9%H!<%k$N>\:Y(B</A></H1>
-<DIV>
-<!-- w3m $B$N%$%s%9%H!<%k$N>\:Y$r5-$9(B -->
-</DIV>
- <UL>
- <LI><A HREF="#get_w3m">w3m $BF~<jJ}K!(B</A>
- <UL>
- <LI><A HREF="#w3m_home">w3m Homepage</A>
- <LI><A HREF="#BBS">w3m $B$K4X$9$k7G<(HD(B</A>
- </UL>
- <LI><A HREF="#require">$BI,MW$JJ*(B</A>
- <LI><A HREF="#configure">configure $B$K$D$$$F(B</A>
- <LI><A HREF="#config_h">config.h $B$K$D$$$F(B</A>
- <LI><A HREF="#make">make $B$K$D$$$F(B</A>
- <LI><A HREF="#tips">$BB>$N(B OS $B$G%$%s%9%H!<%k$9$k:]$N(B Tips</A>
- </UL>
-
-<DIV>
-<A HREF="@DOC.index@">$B%H%C%W%Z%$%8$KLa$k(B</A>
-</DIV>
-<HR>
-
-<H2><A NAME="get_w3m">w3m $BF~<jJ}K!(B</A></H2>
-<!-- w3m $BF~<jJ}K!(B -->
-<DIV>
-<P>w3m $B$N:G?7HG$O!"0J2<$N(B<A HREF="#w3m_home">w3m home</A> $B$K$b<($7$F$"$k!"(B
-<BLOCKQUOTE>
-<A HREF="http://prdownloads.sourceforge.net/w3m/">http://prdownloads.sourceforge.net/w3m/</A>
-</BLOCKQUOTE>
-$B$+$i<j$KF~$j$^$9!#(B
-<P>$B$A$J$_$K!"8=:_$N:G?7%P!<%8%g%s$O!"(B<B>@W3M.version@</B> $B$G$9!#(B
-<P>$B$J$*!"(Bw3m $B$K4X$9$k>pJs(B($B:G?7HG$d%Q%C%AEy!9(B)$B$K$D$$$F$O!"(B<A HREF="@DOC.community@">w3m $B%3%_%e%K%F%#(B</A>$B$r;2>H$7!"%a!<%j%s%0%j%9%H!"(BWeb BBS $BEy$+$iF~<j$7$F$/$@$5$$!#(B
-</DIV>
-
-<H3><A NAME="w3m_home">w3m Homepage</A></H3>
-<!-- w3m Homepage$B$K$D$$$F(B -->
-<DIV>
-<P>w3m $B$N(B Homepage $B$O(B
-<BLOCKQUOTE>
-<TABLE BORDER="0">
-<TR><TD><A HREF="@W3M.home@">W3M Homepage</A></TD>
- <TD>@W3M.home@</TD>
-</TABLE>
-</BLOCKQUOTE>
-$B$G$9!#(B
-</DIV>
-
-<H3><A NAME="BBS">w3m $B$K4X$9$k7G<(HD(B</A></H3>
-<!-- $B7G<(HD(B -->
-<DIV>
-<P>w3m $B$K4X$9$k7G<(HD$K$O0J2<$NDL$j$G$9!#(B
-<BLOCKQUOTE>
-<TABLE BORDER="0">
-<TR><TD><A HREF="@W3M.bbs@">w3m $BO"MmD"(B</A></TD>
- <TD>@W3M.bbs@</TD>
- <TD>&nbsp;</TD>
-<TR><TD><A HREF="@W3M.note@">w3m $B$*$\$($,$-(B</A></TD>
- <TD>@W3M.note@</TD>
- <TD>&nbsp;</TD>
-</TABLE>
-</BLOCKQUOTE>
-</DIV>
-
-<DIV>
-<A HREF="#index">$B$3$N%Z!<%8$N@hF,$KLa$k(B</A>
-</DIV>
-<HR>
-
-<H2><A NAME="require">$BI,MW$JJ*(B</A></H2>
-<!-- w3m $B$r(B make $B$9$k$&$($GI,MW$JJ*!?$"$l$PNI$$J*(B -->
-<DIV>
-<P>w3m $B$r(B make $B$9$k$&$($G!"I,?\$J$b$N!"$*$h$S!"$"$l$PNI$$$b$N$O0J2<$NDL$j$G$9!#(B
-<P>
-<UL><LI>$BI,?\$J$b$N(B
- <UL><LI>ANSI-C $B8_49(B C $B%3%s%Q%$%i(B
- </UL>
- <LI>$B$"$l$PNI$$$b$N(B
- <UL><LI>SSLeay/OpenSSL $B%i%$%V%i%j(B
- <UL><LI>Secure HTTP(https:$B!A(B) $B$r;HMQ$9$k>l9g(B
- </UL>
- <LI>GNU patch$B%3%^%s%I(B
- <UL><LI>w3m $B$K(B patch $B$rE,MQ$9$k>l9g(B
- </UL>
- <LI>Perl
- <UL><LI>w3m $B$G(B $B%G%#%l%/%H%j%j%9%H$rI=<($9$k>l9g$N%m!<%+%k(B CGI $B$G;HMQ$9$k(B
- </UL>
- </UL>
-</UL>
-
-<A HREF="#index">$B$3$N%Z!<%8$N@hF,$KLa$k(B</A>
-</DIV>
-<HR>
-
-<H2><A NAME="configure">configure $B$K$D$$$F(B</A></H2>
-<!-- configure $B<B9T;~$N@bL@(B -->
-<DIV>
-<P>w3m $B$N%"!<%+%$%V%U%!%$%k$rE83+$7$?%G%#%l%/%H%j$K$"$k(B <B>./configure</B> $B$r<B9T$7$^$9!#$$$/$D$+<ALd$5$l$k$N$G!"$=$l$KEz$($F$/$@$5$$!#(B
-<P>$B0J2<$O!"(B<B>./configure</B> $B<B9T;~$K!"<B:]$KJ9$+$l$k<ALd$N@bL@$G$9!#$J$*!"(B<B>./configure</B> $B$O3F<ALd$KBP$9$kEz$($N4{DjCM(B(default)$B$r;}$C$F$$$^$9!#J8;zNs$rF~NO$;$:$K%j%?!<%s!&%-!<$@$1$r2!$7$?>l9g$O!"$3$N4{DjCM$,;XDj$5$l$?;v$K$J$j$^$9!#(B
-<P><DL>
-<DT>Which directory do you want to put the binary?
- <DD>$B4{DjCM(B: <U>/usr/local/bin</U><BR>
- w3m $B$r$I$3$N%G%#%l%/%H%j$N2<$K%$%s%9%H!<%k$9$k$+$r;XDj$7$^$9!#(B
- </DD>
-<DT>Which directory do you want to put the support binary files?
- <DD>$B4{DjCM(B: <U>/usr/local/lib/w3m</U><BR>
- w3m $B$,;2>H$9$k%i%$%V%i%j$rCV$/>l=j$r;XDj$7$^$9!#(B
- </DD>
-<DT>Which directory do you want to put the helpfile?
- <DD>$B4{DjCM(B: <U>/usr/local/lib/w3m</U><BR>
- w3m $B$N%X%k%W%U%!%$%k$rCV$/>l=j$r;XDj$7$^$9!#(B
- </DD>
-<DT>Which language do you prefer?
- <DD>
- <TABLE BORDER="0">
- <TR><TD>1</TD><TD>-</TD><TD NOWRAP>Japanese (charset ISO-2022-JP, EUC-JP, Shift_JIS)</TD>
- <TR><TD>2</TD><TD>-</TD><TD NOWRAP>English (charset US_ASCII, ISO-8859-1, etc.)</TD>
- </TABLE>
- $B4{DjCM(B: <U>1</U><BR>
- w3m $B$G;HMQ$9$k8@8l$r;XDj$7$^$9!#(B
- </DD>
-<DT>Input your display kanji code.
- <DD>
- <TABLE BORDER="0">
- <TR><TD>S</TD><TD>-</TD><TD>Shift JIS</TD>
- <TR><TD>E</TD><TD>-</TD><TD>EUC-JP</TD>
- <TR><TD>j</TD><TD>-</TD><TD>JIS: ESC $@ - ESC (J</TD>
- <TR><TD>N</TD><TD>-</TD><TD>JIS: ESC $B - ESC (J</TD>
- <TR><TD>n</TD><TD>-</TD><TD>JIS: ESC $B - ESC (B</TD>
- <TR><TD>m</TD><TD>-</TD><TD>JIS: ESC $@ - ESC (B</TD>
- </TABLE>
- $B4{DjCM(B: $BL5$7(B<BR>
- $B$"$J$?$N%7%9%F%`$GI=<($KMQ$$$i$l$k4A;z%3!<%I$r;XDj$7$^$9!#(B
- </DD>
-<DT>Do you want to use Lynx-like key binding?
- <DD>$B4{DjCM(B: <U>n</U><BR>
- w3m $B$r(B Lynx $BIw$N%-!<%P%$%s%G%#%s%0$G;HMQ$9$k$+$I$&$+$r;XDj$7$^$9!#;HMQ$9$k>l9g$O(B``<B>y</B>''$B$r!";HMQ$7$J$$>l9g$O(B``<B>n</B>''$B$r;XDj$7$^$9!#(B
- </DD>
-<DT>Do you want to use 2-byte character for table border, item, etc.
- <DD>$B4{DjCM(B: <U>y</U><BR>
- $B%F!<%V%k$NOH$K7S@~$rMQ$$$?$j!"%"%$%F%`$K4A;z%7%s%\%k$r;HMQ$9$k$+$I$&$+$r;XDj$7$^$9!#;HMQ$9$k>l9g$O(B``<B>y</B>''$B$r!";HMQ$7$J$$>l9g$O(B``<B>n</B>''$B$r;XDj$7$^$9!#(B
- </DD>
-<DT>Do you want to automatically generate domain parts of passwords for anonymous FTP logins
- <DD>$B4{DjCM(B: <U>n</U><BR>
- $B%"%N%K%^%9(B ftp $B$G(B login $B$9$k:]$N%Q%9%o!<%I$r%m%0%$%sL>$H%I%a%$%sL>$+$i<+F0@8@.$9$k$+$I$&$+$r;XDj$7$^$9!#;HMQ$9$k>l9g$O(B``<B>y</B>''$B$r!";HMQ$7$J$$>l9g$O(B``<B>n</B>''$B$r;XDj$7$^$9!#(B
- </DD>
-<DT>Do you want listing of options
- <DD>$B4{DjCM(B: <U>n</U><BR>
- w3m $B$N(B usage $BI=<(;~$K!":Y$+$J%*%W%7%g%s$K$D$$$F$b%j%9%HI=<($9$k$+$I$&$+$r;XDj$7$^$9!#;HMQ$9$k>l9g$O(B``<B>y</B>''$B$r!";HMQ$7$J$$>l9g$O(B``<B>n</B>''$B$r;XDj$7$^$9!#(B
- </DD>
-<DT>Do you want NNTP support
- <DD>$B4{DjCM(B: <U>n</U><BR>
- w3m $B$G(B NNTP $B$r%5%]!<%H$9$k$+$I$&$+$r;XDj$7$^$9!#;HMQ$9$k>l9g$O(B``<B>y</B>''$B$r!";HMQ$7$J$$>l9g$O(B``<B>n</B>''$B$r;XDj$7$^$9!#(B``<B>y</B>''$B$r;XDj$7$?>l9g!"!H(B<U>news:$B!A(B</U>$B!I$N(B URI $B$,;HMQ$G$-$k$h$&$K$J$k!#(B
- </DD>
-<DT>Do you want ANSI color escape sequences supprot?
- <DD>$B4{DjCM(B: <U>n</U><BR>
- HTML$BJ8=q(B<U>$B0J30(B</U>$B$,!"(BANSI $B$N%+%i!<MQ%(%9%1!<%W!&%7!<%1%s%9$KBP1~$9$k$+$I$&$+$r;XDj$7$^$9!#;HMQ$9$k>l9g$O(B``<B>y</B>''$B$r!";HMQ$7$J$$>l9g$O(B``<B>n</B>''$B$r;XDj$7$^$9!#(B
- </DD>
-<DT>Let's do some configurations. Choose config option among the list.
- <DD>
- <TABLE BORDER="0">
- <TR><TD>1</TD><TD>-</TD><TD>Baby model</TD><TD>(no color, no menu, no mouse, no cookie, no SSL)</TD>
- <TR><TD>2</TD><TD>-</TD><TD>Little model</TD><TD>(color, menu, no mouse, no cookie, no SSL)</TD>
- <TR><TD>3</TD><TD>-</TD><TD>Mouse model</TD><TD>(color, menu, mouse, no cookie, no SSL)</TD>
- <TR><TD>4</TD><TD>-</TD><TD>Cookie model</TD><TD>(color, menu, mouse, cookie, no SSL)</TD>
- <TR><TD>5</TD><TD>-</TD><TD>Monster model</TD><TD>(with everything; you need openSSL library)</TD>
- <TR><TD>6</TD><TD>-</TD><TD>Customize</TD>
- </TABLE>
- $B4{DjCM(B: $BL5$7(B<BR>
- make $B$9$k(B w3m $B$N%b%G%k$r;XDj$7$^$9!#(B``<B>6</B>''$B$r;XDj$7$?>l9g!"8DJL$K%*%W%7%g%s$N;HMQ$rA*Br$7$^$9!#(B<BR>
- $BA*Br$9$k%*%W%7%g%s$O0J2<$NDL$j!#(B<BR>
- <BLOCKQUOTE>
- <TABLE BORDER="0">
- <TR><TD>color</TD><TD>-</TD><TD>$B%+%i!<I=<((B</TD>
- <TR><TD>menu</TD><TD>-</TD><TD>$B%a%K%e!<I=<((B</TD>
- <TR><TD>mouse</TD><TD>-</TD><TD>$B%^%&%9BP1~(B</TD>
- <TR><TD>cookie</TD><TD>-</TD><TD>cookie $BBP1~(B</TD>
- <TR><TD>SSL</TD><TD>-</TD><TD>SSL$BBP1~(B($BJLES!"(BopenSSL$B$,I,MW(B)</TD>
- </TABLE>
- </BLOCKQUOTE>
- </DD>
-<DT>Input your favorite editor program.
- <DD>$B4{DjCM(B: <U>/usr/bin/vi</U><BR>
- $B%(%G%#%?!&%W%m%0%i%`$r;XDj$7$^$9!#$3$N@_Dj$O8e$G(B<A HREF="@DOC.configuration@">$B8D?MKh$KJQ99!&@_Dj(B</A>$B$G$-$^$9(B
- </DD>
-<DT>Input your favorite mailer program.
- <DD>$B4{DjCM(B: <U>/usr/bin/mailx</U>$B!"$^$?$O!"(B<U>/usr/bin/mail</U><BR>
- $B%a%$%i!<!&%W%m%0%i%`$r;XDj$7$^$9!#$3$N@_Dj$O8e$G(B<A HREF="@DOC.configuration@">$B8D?MKh$KJQ99!&@_Dj(B</A>$B$G$-$^$9!#(B
- </DD>
-<DT>Input your favorite external browser program.
- <DD>$B4{DjCM(B: <U>netscape</U>$B!"$^$?$O!"(B<U>iexplore</U>$B!"$^$?$O!"(B<U>lynx</U><BR>
- $BBeBX%V%i%&%6!&%W%m%0%i%`$r;XDj$7$^$9!#$3$N@_Dj$O8e$G(B<A HREF="@DOC.configuration@">$B8D?MKh$KJQ99!&@_Dj(B</A>$B$G$-$^$9!#(B
- </DD>
-<DT>Input your favorite C-compiler.
- <DD>$B4{DjCM(B: <U>gcc</U>$B!"$^$?$O!"(B<U>cc</U><BR>
- $B;HMQ$9$k(B C $B%3%s%Q%$%i$r;XDj$7$^$9!#(B
- </DD>
-<DT>Input your favorite C flags.
- <DD>$B4{DjCM(B: <U>-O</U><BR>
- C $B%3%s%Q%$%i$G;HMQ$9$k%3%s%Q%$%k%*%W%7%g%s$r;XDj$7$^$9!#(B
- </DD>
-<DT>Which terminal library do you want to use? (type "none" if you do not need one)
- <DD>$BC<Kv@)8fMQ%i%$%V%i%j$r;XDj$7$^$9!#(B
- </DD>
-<DT>Input additional LD flags other than listed above, if any:
- <DD>$B%j%s%/;~$KDI2C$9$Y$-%i%$%V%i%j!"%U%i%0$,$"$l$P$=$l$r;XDj$7$^$9!#(B
- </DD>
-</DL>
-<P>
-<A HREF="#index">$B$3$N%Z!<%8$N@hF,$KLa$k(B</A>
-</DIV>
-<HR>
-
-<H2><A NAME="config_h">config.h $B$K$D$$$F(B</A></H2>
-<!-- config.h $B$G(B define $B$9$k$b$NEy$K$D$$$F(B -->
-<DIV>
-<P><A HREF="#configure">configure</A> $B$G$O@_Dj$5$l$J$$$=$NB>$N5!G=$r;H$$$?$$>l9g$K$O!"(B<B>config.h</B> $B$rJQ99$9$kI,MW$,$"$j$^$9!#(B
-<P>$B0J2<$K(B config.h $B$G;XDj$G$-$k3F(B define $B$NL>>N$H35MW$r5-$7$^$9!#(B
-<P><DL>
-<DT>DICT
- <DD><B>$B<-=q0z$-5!G=(B</B>$B$rM-8z$K$7$^$9!#(B<BR>
- $BD4$Y$?$$C18l$K%+!<%=%k$r9g$o$;!"!H(B<B>ESC&nbsp;W</B>$B!I$G(B <B>w3mdict</B> $B%3%^%s%I$r8F$S=P$7$^$9!#(B<BR>
- <B>w3mdict</B> $B%3%^%s%I$O(B w3m $B$N%"!<%+%$%V$K$OF1:-$5$l$F$$$J$$$N$G!"<+?H$N4D6-$K9g$o$;$F:n@.$7$F$/$@$5$$!#(B<BR>
- $B$?$H$($P!"$b$C$H$b4JC1$JNc$H$7$F!"(B<B>man</B> $B%3%^%s%I$K(B wrap $B$9$k>l9g!"0J2<$N$h$&$K$7$^$9!#(B<BR>
- <BLOCKQUOTE>
- % cat w3mdict<BR>
- #!/bin/sh<BR>
- <BR>
- man $*<BR>
- </BLOCKQUOTE>
- $B4{DjCM$O(B <B>#undef</B> $B$G$9!#(B
- </DD>
-<DT>USE_MARK
- <DD><B>$B%^!<%/A`:n(B</B>$B$rM-8z$K$7$^$9!#$$$o$f$k(B vi $B$N%^!<%/A`:n$HF1Ey$N$b$N$G$9!#(B<BR>
- $B$3$l$r(B define $B$9$k$H!"0J2<$N5!G=$r;H$($k$h$&$K$J$j$^$9!#(B
- <UL>
- <LI>$B!H(B<B>CTRL-SPC</B>$B!I(B: $B%^!<%/$N@_Dj!?2r=|(B($B%H%0%k(B)
- <LI>$B!H(B<B>ESC p</B>$B!I(B: $BA0$N%^!<%/$X0\F0(B
- <LI>$B!H(B<B>ESC n</B>$B!I(B: $B<!$N%^!<%/$X0\F0(B
- <LI>$B!H(B<B>&quot;</B>$B!I(B($B%@%V%k!&%/%)!<%F!<%7%g%s(B): $B@55,I=8=$K$h$k%^!<%/(B
- </UL>
- $B4{DjCM$O(B <B>#undef</B> $B$G$9!#(B
- </DD>
-<DT>USE_HISTORY
- <DD>URL $BMzNr$NJ]B8!"8F$S=P$7(B($B!H(B<B>CTRL-h</B>$B!I(B)$B$,$G$-$k$h$&$K$J$j$^$9!#(B<BR>
- $B4{DjCM$O(B <B>#define</B> $B$G$9!#(B
- </DD>
-<DT>BG_COLOR
- <DD>$BGX7J$N?'$N@_Dj$,2DG=$H$J$j$^$9(B($B%+%i!<I=<($G$-$k(B w3m $B$N>l9g$KM-8z(B)$B!#(B<BR>
- $B4{DjCM$O(B <B>#define</B> $B$G$9!#(B
- </DD>
-<DT>VIEW_UNSEENOBJECTS
- <DD>$BGX7J2hA|$X$N%j%s%/$J$I!"DL>o$O8+$($J$$%*%V%8%'%/%H$X$N%j%s%/$r8+$($k$h$&$K$7$^$9!#(B<BR>
- $B4{DjCM$O(B <B>#undef</B> $B$G$9!#(B
- </DD>
-<DT>VI_PREC_NUM
- <DD>$B%Z%$%80\F05!G=$,(B vi $B$N$h$&$K!X7+$jJV$72s?t!\5!G=!Y$K$J$k$h$&$K$7$^$9!#(B<BR>
- $B$?$H$($P!"!H(B<B>2&nbsp;SPC</B>$B!I$@$H!V#2%Z%$%8?J$`!W$H$+!"!H(B<B>2&nbsp;b</B>$B!I$@$H!V#2%Z%$%8La$k!W$N$h$&$K$J$j$^$9!#(B<BR>
- $B4{DjCM$O(B <B>#undef</B> $B$G$9!#(Bundef $B$N>l9g$O!"!H(B<B>2&nbsp;SPC</B>$B!I$@$H!V#2(B<U>$B9T(B</U>$B?J$`!W$K$J$j$^$9!#(B
- </DD>
-<DT>FORMAT_NICE
- <DD>$B1QC18l$r(B fill $B$7$^$9!#(B<BR>
- $B4{DjCM$O(B <B>#undef</B> $B$G$9!#(B
- </DD>
-<DT>USE_GOPHER
- <DD>GOPHER $B%W%m%H%3%k$r%5%]!<%H$7$^$9!#(B<BR>
- $B4{DjCM$O(B <B>#undef</B> $B$G$9!#(B
- </DD>
-<DT>USE_NNTP
- <DD>NNTP $B$r%5%]!<%H$7$^$9!#(B<BR>
- $B$3$N(B define $B$O(B <A HREF="#configure">configure</A> $B$G@_Dj$5$l$^$9!#(B<BR>
- $B4{DjCM$O(B <B>#undef</B> $B$G$9!#(B
- </DD>
-<DT>ANSI_COLOR
- <DD>$B%Z!<%8%c%b!<%I$G(B ANSI color $B%(%9%1!<%W%7!<%1%s%9$KBP1~$7$^$9!#(B<BR>
- HTML $B$N;~$d!"%(%9%1!<%W%7!<%1%s%9$,L5$$>l9g$K$OBP1~$7$^$;$s!#(B<BR>
- $B$3$N(B define $B$O(B <A HREF="#configure">configure</A> $B$G@_Dj$5$l$^$9!#(B<BR>
- $B4{DjCM$O(B <B>#define</B> $B$G$9!#(B
- </DD>
-<DT>ID_EXT
- <DD>HTML4.0 $B$N(B ID $BB0@-$r%j%s%/$GC)$l$k$h$&$K$7$^$9!#(B<BR>
- $B4{DjCM$O(B <B>#define</B> $B$G$9!#(B
- </DD>
-<DT>BUFINFO
- <DD>$B%+%l%s%H$J%P%C%U%!$N(B URL $B$r(B ~/.w3m/bufinfo $B%U%!%$%k$K=q$-=P$9$h$&$K$7$^$9!#(B<BR>
- $B4{DjCM$O(B <B>#define</B> $B$G$9!#(B
- </DD>
-<DT>USE_EGD
- <DD>EGD(Entropy Gathering Daemon)$B$KBP1~$7Mp?t$N%7!<%I$rF@$^$9!#(B<BR>
- SSL $B$rAH$_9~$s$@(B w3m $B$N>l9g$KM-8z$G$9!#(B<BR>
- $B4{DjCM$O(B <B>#undef</B> $B$G$9!#(B
- </DD>
-<DT>EMACS_LIKE_LINEEDIT
- <DD>$B:G2<9T$G$NF~NO;~!"(BEmacs $B%i%$%/$J%-!<3d$jEv$F$K$J$j$^$9!#(B<BR>
- $B4{DjCM$O(B <B>#undef</B> $B$G$9!#(B
- </DD>
-<DT>ENABLE_REMOVE_TRAILINGSPACES
- <DD>$B9TKv$N6uGr$r<h$j=|$-$^$9!#(B<BR>
- $B4{DjCM$O(B <B>#undef</B> $B$G$9!#(B
- </DD>
-<DT>LABEL_TOPLINE
- <DD>$B%i%Y%k$KHt$s$@:]$N%+!<%=%k0LCV$r2hLL$N@hF,$K$7$^$9!#(B<BR>
- $B4{DjCM$O(B <B>#undef</B> $B$G$9!#(B
- </DD>
-<DT>NEXTPAGE_TOPLINE
- <DD>$B%Z%$%80\F0$G!"<!$N2hLL$K0\F0$7$?:]$N%+!<%=%k0LCV$rI,$:2hLL$N@hF,$K$7$^$9!#(B<BR>
- $B4{DjCM$O(B <B>#undef</B> $B$G$9!#(Bundef $B$N>l9g!"J8=q$NKvHx0J9_$K6u9T$,F~$i$J$$$h$&$KD4@0$5$l$k$?$a!"I,$:$7$b%+!<%=%k0LCV$O2hLL$N@hF,$KMh$^$;$s!#(B
- </DD>
-<P><DIV ALIGN="left"><B>###&nbsp;$B0J9_$N(B define $B$O(B @W3M.version@ $B$G$O(B unofficial $B$JJ*$G$9(B&nbsp;###</B></DIV>
-<P>
-<DT>MENU_THIN_FRAME
- <DD>$B%a%K%e!<OH$K:Y$$7S@~$r;HMQ$7$^$9!#(B<BR>
- $B4{DjCM$O(B <B>#undef</B> $B$G$9!#(B
- </DD>
-</DL>
-
-<A HREF="#index">$B$3$N%Z!<%8$N@hF,$KLa$k(B</A>
-</DIV>
-<HR>
-
-<H2><A NAME="make">make $B$K$D$$$F(B</A></H2>
-<!-- make $B;~$N@bL@(B -->
-<DIV>
-<P><A HREF="#configure">configure</A> $B$r<B9T$7$F!"I,MW$K1~$8$F(B <A HREF="config_h">config.h $B$N=$@5(B</A>$B$r9T$C$?8e!"(B<B>make</B> $B$r<B9T$7$^$9!#(B
-<P>make $B;~$K%3%s%Q%$%k%(%i!<$,H/@8$9$k$h$&$G$"$l$P!"(B
-<BLOCKQUOTE>
- % make | &amp; tee MAKE.log
-</BLOCKQUOTE>
-$B$r<B9T$7$F!"%m%0%U%!%$%k$r85$KLdBj$N2r7h$r9T$C$F$/$@$5$$!#(B
-<P>$B$^$?!";vA0$K3:Ev%P!<%8%g%s$G$N(B w3m $B$N%Q%C%A$rF~<j$7$F$$$k>l9g$K$O!"(B<B>patch</B> $B$r<B9T$7$F$+$i(B make $B$r9T$C$F$/$@$5$$!#(B
-<P>make $B$,40N;$7!"%$%s%9%H!<%k$9$k>l9g$K$O!"(Broot $B$K$J$C$F!"(B
-<BLOCKQUOTE>
- % make install
-</BLOCKQUOTE>
-$B$r<B9T$7$F$/$@$5$$!#(B
-<P>$B0J>e$G%$%s%9%H!<%k$O=*N;$G$9!#(B
-<P><A HREF="#index">$B$3$N%Z!<%8$N@hF,$KLa$k(B</A>
-</DIV>
-<HR>
-
-<H2><A NAME="tips">$BB>$N(B OS $B$G%$%s%9%H!<%k$9$k:]$N(B Tips</A></H2>
-<!-- $B3F<o(B OS $B>e$G(B w3m $B$r%$%s%9%H!<%k$9$k:]$N(B Tips -->
-<DIV>
-<P><DL>
-<DT>HP-UX
- <DD>HP $B$N(B (gcc $B$G$O$J$$(B) C $B%3%s%Q%$%i$G%3%s%Q%$%k$9$k>l9g!"(B<A HREF="#configure">configure</A> $B$N(B
- <BLOCKQUOTE>
- Input your favorite C-compiler.<BR>
- (Default: cc)
- </BLOCKQUOTE>
- $B$K!"(B<B>cc -Aa -D_HPUX_SOURCE</B> $B$HEz$($F$/$@$5$$!#(B<B>cc</B> $B$@$1$@$H%3%s%Q%$%k$,DL$j$^$;$s!#(B<B>gcc</B> $B$J$i$PIaDL$K%3%s%Q%$%k$ODL$j$^$9$,!"(Bgcc $B$N%P!<%8%g%s$,8E$a$N>l9g$K$O(B <B>-g</B> $B$r(B<U>$BIU$1$J$$(B</U>$B$G$/$@$5$$!#(B
- </DD>
-<DT>OS/2
- <DD><B>emx</B> $B$r;H$&;v$G(B w3m $B$r%3%s%Q%$%k$9$k;v$,$G$-$^$9!#(B<BR>
- $B$^$::G=i$K!"(B
- <BLOCKQUOTE>
- % cd gc
- % make -f EMX_MAKEFILE
- </BLOCKQUOTE>
- $B$r<B9T$7$F(B GC $B%i%$%V%i%j$r%3%s%Q%$%k$7$F$*$$$F$+$i!"(Bw3m $BK\BN$r%3%s%Q%$%k$7$^$9!#$J$*!"%+%i!<I=<($,JQ$K$J$k$i$7$$$N$G!"%b%N%/%mMQ$K%3%s%Q%$%k$7$?J}$,NI$$$G$7$g$&!#(B
- </DD>
-<DT>Windows
- <DD><A HREF="README.cygwin">README.cygwin</A> $B$r$4Mw$/$@$5$$!#(B
- </DD>
-<DT>MS-DOS
- <DD><A HREF="README.dj">README.dj</A> $B$r$4Mw$/$@$5$$!#(B
- </DD>
-</DL>
-
-<A HREF="#index">$B$3$N%Z!<%8$N@hF,$KLa$k(B</A>
-</DIV>
-<HR>
-
-<A HREF="@DOC.index@">$B%H%C%W%Z%$%8$KLa$k(B</A>
-
-</BODY>
-</HTML>
diff --git a/w3m-doc/mkdocs b/w3m-doc/mkdocs
deleted file mode 100755
index 560c2dc..0000000
--- a/w3m-doc/mkdocs
+++ /dev/null
@@ -1,57 +0,0 @@
-#!/bin/sh
-
-convert()
-{
- SRC=$1
- HTML=`echo ${SRC} | ${SED} 's/\.in$//p'`
- DOC=`echo ${HTML} | ${SED} 's/\.html$//p' | ${TR} '[a-z]' '[A-Z]'`
- echo "converting ${SRC} to ${HTML_TOP_DIR}/${_JA_DIR}/${HTML} ... \c"
- ${NKF} -e ${SRC} | ${SED} -e 's/��/��/gp' -e 's/��/��/gp' | ${NKF} -j | ${W3MDOC} > ${HTML_TOP_DIR}/${_JA_DIR}/${HTML}
- echo "done.\nconverting ${HTML} to ${DOC_TOP_DIR}/${_JA_DIR}/${DOC} ... \c"
- ${W3M} -dump -e ${HTML_TOP_DIR}/${_JA_DIR}/${HTML} > ${DOC_TOP_DIR}/${_JA_DIR}/${DOC}
- echo "done."
-}
-
-W3MDOC="./w3mdoc.pl"
-W3M="w3m"
-if [ -x ${HOME}/bin/pre_w3m ]; then
- W3M=${HOME}/bin/pre_w3m
-fi
-
-NKF="/usr/local/bin/nkf"
-SED="/usr/bin/sed"
-TR="/usr/bin/tr"
-
-HTML_TOP_DIR="html"
-DOC_TOP_DIR="doc"
-_JA_DIR="ja"
-#HTML_DIR="html"
-#DOC_DIR="doc"
-
-if [ ! -d ${HTML_TOP_DIR} ]; then
- mkdir ${HTML_TOP_DIR}
- if [ ! -d ${HTML_TOP_DIR}/${_JA_DIR} ]; then
- mkdir ${HTML_TOP_DIR}/${_JA_DIR}
- fi
-fi
-if [ ! -d ${DOC_TOP_DIR} ]; then
- mkdir ${DOC_TOP_DIR}
- if [ ! -d ${DOC_TOP_DIR}/${_JA_DIR} ]; then
- mkdir ${DOC_TOP_DIR}/${_JA_DIR}
- fi
-fi
-
-if [ $# -eq 0 ]; then
- for _IN in *.in
- do
- convert ${_IN}
- done
-else
- for _IN in $*
- do
- case ${_IN} in
- *.in) convert ${_IN};;
- *) ;;
- esac
- done
-fi
diff --git a/w3m-doc/operation.html.in b/w3m-doc/operation.html.in
deleted file mode 100644
index 7195159..0000000
--- a/w3m-doc/operation.html.in
+++ /dev/null
@@ -1,50 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
-<HTML>
-
-@include define.wd
-@include contain.wd
-
-<HEAD>
-<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-2022-jp">
-<TITLE>OPERATION&nbsp;- w3m $BA`:nK!(B -</TITLE>
-</HEAD>
-
-<BODY>
-
-<H1><A NAME="index">w3m $BA`:nK!(B</A></H1>
-<DIV>
-<!-- w3m $B$rA`:n$9$k>e$G$N>\:Y$r5-$9(B -->
-</DIV>
- <UL>
- <LI><A HREF="#buffer">$B%P%C%U%!A`:n(B</A>
- <LI><A HREF="#mouse">$B%^%&%9A`:n(B</A>
- <LI><A HREF="#line_edit">$B:G2<9TF~NO(B</A>
- <LI><A HREF="#menu">$B%a%K%e!<(B</A>
- </UL>
-
-<DIV>
-<A HREF="@DOC.index@">$B%H%C%W%Z%$%8$KLa$k(B</A>
-</DIV>
-<HR>
-
-<H2><A NAME="buffer">$B%P%C%U%!A`:n(B</A></H2>
-<!-- $B%P%C%U%!A`:n;~$N@bL@(B -->
-
-<H3><A NAME="mouse">$B%^%&%9A`:n(B</A></H3>
-<!-- $B%^%&%9A`:n;~$N@bL@(B -->
-
-<H3><A NAME="line_edit">$B:G2<9TF~NO(B</A></H3>
-<!-- $B:G2<9TF~NO;~$NA`:n$K$D$$$F$N@bL@(B -->
-
-<H3><A NAME="menu">$B%a%K%e!<A`:n(B</A></H3>
-<!-- $B%a%K%e!<A`:n;~$N@bL@(B -->
-
-<DIV>
-<A HREF="#index">$B$3$N%Z!<%8$N@hF,$KLa$k(B</A>
-</DIV>
-<HR>
-
-<A HREF="@DOC.index@">$B%H%C%W%Z%$%8$KLa$k(B</A>
-
-</BODY>
-</HTML>
diff --git a/w3m-doc/outline.html.in b/w3m-doc/outline.html.in
deleted file mode 100644
index 60bda47..0000000
--- a/w3m-doc/outline.html.in
+++ /dev/null
@@ -1,352 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
-<HTML>
-
-@include define.wd
-@include contain.wd
-
-<HEAD>
-<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-2022-jp">
-<TITLE>OUTLINE&nbsp;- $B35MWJT(B -</TITLE>
-</HEAD>
-
-<BODY>
-
-<H1><A NAME="index">$B35MWJT(B</A></H1>
-<UL>
- <LI><A HREF="#install">$B%$%s%9%H!<%k$N35MW(B</A>
- <LI><A HREF="#operation">$BA`:nJ}K!$N35MW(B</A>
- <UL>
- <LI><A HREF="#display">$BI=<(FbMF$N@bL@(B</A>
- <LI><A HREF="#basic">$B4pK\E*$J;H$$J}(B</A>
- <LI><A HREF="#help">$B%X%k%W$N;2>H(B</A>
- <UL>
- <LI><A HREF="#w3m_original">w3m $B%*%j%8%J%k$N%-!<A`:n(B</A>
- <LI><A HREF="#like_lynx">Lynx $BIw$N%-!<A`:n(B</A>
- </UL>
- </UL>
-</UL>
-
-<DIV>
-<A HREF="@DOC.index@">$B%H%C%W%Z%$%8$KLa$k(B</A>
-</DIV>
-
-<HR>
-
-<H2><A NAME="install">$B%$%s%9%H!<%k$N35MW(B</A></H2>
-<!-- $B%$%s%9%H!<%k$N35MW(B -->
-<DIV>
-<P>w3m$B$r%$%s%9%H!<%k$9$k$K$O!"<!$N$h$&$K$7$^$9!#$J$*!"$3$3$G$O35MW$r=R$Y$k$K;_$a$F$*$-$^$9!#>\:Y$K$D$$$F$O(B<A HREF="@DOC.install@">$B%$%s%9%H!<%k$N>\:Y(B</A>$B$r;2>H$7$F$/$@$5$$!#(B
-<P><OL>
- <LI>configure $B$r<B9T$9$k!#$$$/$D$+<ALd$5$l$k$N$G!"$=$l$KEz$($^$9!#(B
- <LI>make $B$r<B9T(B
- <LI>make install $B$r<B9T(B
- </OL>
-<P>$B0J>e$G%$%s%9%H!<%k$O=*$o$j$G$9!#(B<BR>
-<BR>
-<A HREF="index">$B$3$N%Z%$%8$N@hF,$KLa$k(B</A>
-</DIV>
-<HR>
-
-<H2><A NAME="operation">$BA`:nJ}K!$N35MW(B</A></H2>
-<!-- $BA`:nJ}K!$N35MW(B -->
-<P>
-w3m $B$N5/F0;~$N;XDj$O<!$NDL$j$G$9!#(B
-<P>
-<PRE>
- w3m [options] [file | URL]
-</PRE>
-<P>
-$B0z?t$K%m!<%+%k%U%!%$%kL>$r;XDj$9$l$P$=$N%U%!%$%k$rI=<($7!"(BURL $B$r;XDj$9$l$P$=$N(B URL $B$G<($5$l$k(B WWW $B$NFbMF$rI=<($7$^$9!#(B<BR>
-$B2?$b;XDj$7$J$1$l$P!"I8=`F~NO$NFbMF$rI=<($7$^$9!#$?$@$7!"I8=`F~NO$,(B tty $B$G$"$k>l9g$K$O!"(Busage$B$r=PNO$7$F=*N;$7$^$9!#(B
-<P>
-$B;XDj$G$-$k0z?t$K$D$$$F$O!"(B<A HREF="@DOC.configuration#option">$B5/F0%*%W%7%g%s(B</A> $B$r;2>H$7$F$/$@$5$$!#(B
-
-<HR>
-
-<H3><A NAME="display">$BI=<(FbMF$N@bL@(B</A></H3>
-<!-- $BI=<(FbMF$N@bL@(B -->
-<P>
-HTML$BJ8=q$rI=<($7$F$$$k$H$-$K$O!"<!$N$h$&$JI=<($K$J$j$^$9!#(B
-<P>
-<DIV ALIGN="center">
-<TABLE BORDER="1">
-<TR><TH>&nbsp;</TH><TH>$B%+%i!<I=<(;~(B</TH><TH>$B%b%N%/%mI=<(;~(B</TH>
-<TR><TD>$B%j%s%/(B</TD><TD ALIGN="center">$B@D?'(B</TD><TD ALIGN="center">$B2<@~(B</TD>
-<TR><TD>$B%$%s%i%$%s2hA|(B</TD><TD ALIGN="center">$BNP?'(B</TD><TD ALIGN="center">$BH?E>I=<((B</TD>
-<TR><TD>$B%U%)!<%`$NF~NOItJ,(B</TD><TD ALIGN="center">$B@V?'(B</TD><TD ALIGN="center">$BH?E>I=<((B</TD>
-</TABLE>
-</DIV>
-<P>
-$B%+%i!<I=<(;~$N?'$O!"%*%W%7%g%s@_Dj%Q%M%k$GJQ99$9$k;v$,$G$-$^$9!#(B
-
-<HR>
-
-<H3><A NAME="basic">$B4pK\E*$J;H$$J}(B</A></H3>
-<!-- $B4pK\E*$J;H$$J}(B -->
-<P>
-w3m $B$r5/F0$7$?8e$O!"(B1$BJ8;z$N%3%^%s%I$r%-!<%\!<%I$+$iF~NO$9$k;v$GA`:n$7$^$9!#4pK\E*$J;H$$J}$K$D$$$F$O!"(Bw3m $B$r5/F0$7$?8e$K(B``<B>H</B>''$B$rF~NO$7$F!"(B<A HREF="#help">$B%X%k%W(B</A>$B$r;2>H$7$F$/$@$5$$!#(B<BR>
-$B$J$*!"%X%k%W%Z!<%8$N5-=R$G$O!"(B<B>C-x</B> $B$O(B<U>$B%3%s%H%m!<%k(B&nbsp;+&nbsp;x</U>$B$rI=$7$^$9!#$^$?!"(B<B>SPC</B> $B$O(B<U>$B%9%Z!<%9%P!<(B</U>$B!"(B<B>RET</B> $B$O(B<U>$B%j%?!<%s%-!<(B</U>$B!"(B<B>ESC</B> $B$O(B<U>$B%(%9%1!<%W%-!<(B</U>$B$G$9!#(B
-<P>
-w3m $B$N%-!<A`:n$O!"(Bw3m $B$N(B make $B;~$K7h$a$i$l$k%-!<A`:n$H8D?MMQ$KDj5A$9$k%-!<A`:n$,$"$j$^$9!#$^$?!"(Bmake $B;~$K7h$a$i$l$k%-!<A`:n$K$O!"!H(Bw3m $B%*%j%8%J%k$N%-!<A`:n!I$H!H(BLynx $BIw$N%-!<A`:n!I$,$"$j$^$9!#%X%k%W$GI=<($9$kFbMF$O!"!H(Bw3m $B%*%j%8%J%k!I!"!H(BLynx $BIw!I$N$$$:$l$+$G$9!#(B
-<P>
-$B$^$?!"%^%&%95!G=$r(B ON $B$K$7$F(B w3m $B$r(B make $B$7$F$"$l$P!"%^%&%9$r;H$C$F(B w3m $B$rA`:n$9$k$3$H$,$G$-$^$9!#%^%&%9$,;H$($k$N$O!"(B<B>xterm</B>/<B>kterm</B>/<B>rxvt</B> $B$r;HMQ$7$F$$$k>l9g!"$^$?$O(B GPM $B$,F0$$$F$$$k4D6-$r;H$C$F$$$k>l9g$G$9!#(B<BR>
-$B%^%&%9$N>\$7$$A`:n$K$D$$$F$O(B<A HREF="@DOC.operation@#mouse">$B!X%^%&%9A`:n!Y(B</A>$B$r$4Mw$/$@$5$$!#(B
-<P>
-<HR>
-
-<H3><A NAME="help">$B%X%k%W$N;2>H(B</A></H3>
-<!-- $B%X%k%W$N;2>H(B -->
-<P>
-w3m $B$N(Bmake$B;~$K;XDj$7$?%-!<A`:n$K$h$C$F!"%X%k%W%U%!%$%k$,0[$J$j$^$9!#(B
-<UL>
- <LI><A HREF="#w3m_original">w3m $B%*%j%8%J%k$N%-!<A`:n(B</A>
- <LI><A HREF="#like_lynx">Lynx $BIw$N%-!<A`:n(B</A>
-</UL>
-<P>
-<HR>
-
-<P>
-<H4><A NAME="w3m_original">w3m $B%*%j%8%J%k$N%-!<A`:n(B</A></H4>
-
-<H5>$B%Z!<%8(B/$B%+!<%=%k0\F0(B</H5>
-<TABLE CELLPADDING=0>
- <TR> <TD WIDTH=100>SPC,C-v</TD> <TD>$B<!%Z!<%8(B</TD></TR>
- <TR> <TD>b,ESC v</TD> <TD>$BA0%Z!<%8(B</TD></TR>
- <TR> <TD>l,C-f</TD> <TD>$B%+!<%=%k$r1&$X0\F0(B</TD></TR>
- <TR> <TD>h,C-b</TD> <TD>$B%+!<%=%k$r:8$X0\F0(B</TD></TR>
- <TR> <TD>j,C-n</TD> <TD>$B%+!<%=%k$r2<$X0\F0(B</TD></TR>
- <TR> <TD>k,C-p</TD> <TD>$B%+!<%=%k$r>e$X0\F0(B</TD></TR>
- <TR> <TD>J</TD><TD>$B0l9T>e$K%9%/%m!<%k(B($B?J$`(B)</TD></TR>
- <TR> <TD>K</TD><TD>$B0l9T2<$K%9%/%m!<%k(B($BLa$k(B)</TD></TR>
- <TR> <TD>w</TD><TD>$B<!$NC18l$K0\F0(B</TD></TR>
- <TR> <TD>W</TD><TD>$BA0$NC18l$K0\F0(B</TD></TR>
- <TR> <TD>&gt;</TD> <TD>$B1&$K0l2hLLJ,%7%U%H(B</TD></TR>
- <TR> <TD>&lt;</TD> <TD>$B:8$K0l2hLLJ,%7%U%H(B</TD></TR>
- <TR> <TD>.</TD> <TD>$B1&$K0lJ8;zJ,%7%U%H(B</TD></TR>
- <TR> <TD>,</TD> <TD>$B:8$K0lJ8;zJ,%7%U%H(B</TD></TR>
- <TR> <TD>g</TD> <TD>$B%Z!<%8$N@hF,9T$K0\F0(B</TD></TR>
- <TR> <TD>G</TD> <TD>$B%Z!<%8$N:G=*9T$K0\F0(B</TD></TR>
- <TR> <TD>ESC g</TD> <TD>$B;XDj9T$K0\F0(B</TD></TR>
- <TR> <TD>TAB</TD> <TD>$B<!$N%O%$%Q!<%j%s%/$K0\F0(B</TD></TR>
- <TR> <TD>C-u, ESC TAB</TD> <TD>$BA0$N%O%$%Q!<%j%s%/$K0\F0(B</TD></TR>
- <TR> <TD>[</TD> <TD>$B:G=i$N%O%$%Q!<%j%s%/$K0\F0(B</TD></TR>
- <TR> <TD>]</TD> <TD>$B:G8e$N%O%$%Q!<%j%s%/$K0\F0(B</TD></TR>
-</TABLE>
-
-<H5>$B%O%$%Q!<%j%s%/A`:n(B</H5>
-
-<TABLE CELLPADDING=0>
- <TR> <TD WIDTH=100>RET</TD> <TD>$B%+!<%=%k2<$N%j%s%/$XHt$V(B</TD></TR>
- <TR> <TD>a, ESC RET</TD> <TD>$B%j%s%/@h$NJ8=q$r%U%!%$%k$KJ]B8(B</TD></TR>
- <TR> <TD>ESC I</TD> <TD>$B%j%s%/@h$N2hA|$r%U%!%$%k$KJ]B8(B</TD></TR>
- <TR> <TD>u</TD> <TD>$B%j%s%/@h(B URL $B$NI=<((B</TD></TR>
- <TR> <TD>I</TD> <TD>$B%$%s%i%$%s%$%a!<%8$NI=<((B</TD></TR>
- <TR> <TD>:</TD> <TD>URL$B$N$h$&$JJ8;z$r%"%s%+!<$H$7$F%^!<%/(B</TD></TR>
- <TR> <TD>ESC :</TD> <TD>Message-ID $B$N$h$&$JJ8;z$r%"%s%+!<$H$7$F%^!<%/(B</TD></TR>
- <TR> <TD>c</TD> <TD>$B8=%Z!<%8$N(B URL $B$rI=<((B</TD></TR>
- <TR> <TD>=</TD> <TD>$B8=%I%-%e%a%s%H$N>pJs$rI=<((B</TD></TR>
- <TR> <TD>F</TD> <TD>$B%U%l!<%`$rI=<($9$k(B</TD></TR>
- <TR> <TD>M</TD> <TD>$B8=%Z!<%8$r30It%V%i%&%6$GI=<($9$k(B(2M,3M $B$G(B2$BHVL\$H(B3$BHVL\$N%V%i%&%6$r8F$S$@$9(B)</TD></TR>
- <TR> <TD>ESC M</TD> <TD>$B%j%s%/@h$r30It%V%i%&%6$GI=<($9$k(B(2ESC M,3ESC M $B$G(B2$BHVL\$H(B3$BHVL\$N%V%i%&%6$r8F$S$@$9(B)</TD></TR>
-</TABLE>
-
-<H5>$B%U%!%$%k(B/$B%9%H%j!<%`A`:n(B</H5>
-<TABLE CELLPADDING=0>
- <TR> <TD WIDTH=100>U</TD> <TD>URL$B$r;XDj(B</TD></TR>
- <TR> <TD>V</TD> <TD>$B%U%!%$%k$r3+$/(B</TD></TR>
- <TR> <TD>@</TD> <TD>$B%7%'%k$r5/F0$7FI$_9~$`(B</TD></TR>
- <TR> <TD>#</TD> <TD>$B%7%'%k$r5/F0$7FI$_9~$`(B</TD></TR>
-</TABLE>
-
-<H5>$B%P%C%U%!A`:n(B</H5>
-<TABLE CELLPADDING=0>
- <TR> <TD WIDTH=100>B</TD> <TD>$BA0$N%P%C%U%!$K0\F0(B</TD></TR>
- <TR> <TD>v</TD> <TD>HTML$B%=!<%9$rI=<((B</TD></TR>
- <TR> <TD>s</TD> <TD>$B%P%C%U%!$rA*Br(B</TD></TR>
- <TR> <TD>E</TD> <TD>$B%P%C%U%!$N%=!<%9$rJT=8(B</TD></TR>
- <TR> <TD>R</TD> <TD>$B%P%C%U%!$r:FFI$_9~$_(B</TD></TR>
- <TR> <TD>S</TD> <TD>$B%P%C%U%!$rJ]B8(B</TD></TR>
- <TR> <TD>ESC s</TD> <TD>HTML $B%=!<%9$rJ]B8(B</TD></TR>
- <TR> <TD>ESC e</TD> <TD>$B%P%C%U%!$NI=<(%$%a!<%8$rJT=8(B</TD></TR>
-</TABLE>
-
-<H5>$B%V%C%/%^!<%/A`:n(B</H5>
-<TABLE CELLPADDING=0>
- <TR> <TD WIDTH=100>ESC b</TD> <TD>$B%V%C%/%^!<%/$rFI$_9~$`(B</TD></TR>
- <TR> <TD>ESC a</TD> <TD>$B8=%Z!<%8$r%V%C%/%^!<%/$KDI2C(B</TD></TR>
-</TABLE>
-
-<H5>$B8!:w(B</H5>
-<TABLE CELLPADDING=0>
- <TR> <TD WIDTH=100>/,C-s</TD> <TD>$BA0J}8!:w(B</TD></TR>
- <TR> <TD>?,C-r</TD> <TD>$B8eJ}8!:w(B</TD></TR>
- <TR> <TD>n</TD> <TD>$B<!$r8!:w(B</TD></TR>
- <TR> <TD>N</TD> <TD>$BA0$r8!:w(B</TD></TR>
-</TABLE>
-
-<H5>$B%^!<%/A`:n(B</H5>
-<TABLE CELLPADDING=0>
- <TR> <TD WIDTH=100>C-SPC</TD> <TD>$B%^!<%/$N@_Dj(B/$B>C5n(B</TD></TR>
- <TR> <TD>ESC p</TD> <TD>$BA0$N%^!<%/$X0\F0(B</TD></TR>
- <TR> <TD>ESC n</TD> <TD>$B<!$N%^!<%/$X0\F0(B</TD></TR>
- <TR> <TD>"</TD> <TD>$B@55,I=8=$K$h$k%^!<%/(B</TD></TR>
-</TABLE>
-
-<H5>$B$=$NB>(B</H5>
-<TABLE CELLPADDING=0>
- <TR> <TD WIDTH=100>!</TD> <TD>$B%7%'%k$N<B9T(B</TD></TR>
- <TR> <TD>H</TD> <TD>$B%X%k%W(B($B$3$N%U%!%$%k$rI=<((B)</TD></TR>
- <TR> <TD>o</TD> <TD>$B%*%W%7%g%s@_Dj(B</TD></TR>
- <TR> <TD>C-k</TD> <TD>$B%/%C%-!<0lMw$rI=<((B</TD></TR>
- <TR> <TD>C-c</TD> <TD>$BJ8=q$NFI$_9~$_$rCfCG(B</TD></TR>
- <TR> <TD>C-z</TD> <TD>$B%5%9%Z%s%I(B</TD></TR>
- <TR> <TD>q</TD> <TD>w3m $B$r=*N;(B($B3NG'$"$j(B)</TD></TR>
- <TR> <TD>Q</TD> <TD>w3m $B$r=*N;(B($B3NG'$J$7(B)</TD></TR>
-</TABLE>
-
-<H5>$B9TJT=8%b!<%I(B</H5>
-<TABLE CELLPADDING=0>
- <TR> <TD WIDTH=100>C-f</TD> <TD>$B%+!<%=%k$r1&$X0\F0(B</TD></TR>
- <TR> <TD>C-b</TD> <TD>$B%+!<%=%k$r:8$X0\F0(B</TD></TR>
- <TR> <TD>C-h</TD> <TD>$BA0$NJ8;z$r:o=|(B</TD></TR>
- <TR> <TD>C-d</TD> <TD>$B%+!<%=%k0LCV$NJ8;z$r:o=|(B</TD></TR>
- <TR> <TD>C-k</TD> <TD>$B%+!<%=%k$N8eJ}$rA4$F:o=|(B</TD></TR>
- <TR> <TD>C-u</TD> <TD>$B%+!<%=%k$NA0$^$G$rA4$F:o=|(B</TD></TR>
- <TR> <TD>C-a</TD> <TD>$B9TF,$K0\F0(B</TD></TR>
- <TR> <TD>C-e</TD> <TD>$B9TKv$X0\F0(B</TD></TR>
- <TR> <TD>C-p</TD> <TD>$B%R%9%H%j$+$i0l$DA0$NJ8;zNs$r<h$j=P$9(B</TD></TR>
- <TR> <TD>C-n</TD> <TD>$B%R%9%H%j$+$i<!$NJ8;zNs$r<h$j=P$9(B</TD></TR>
- <TR> <TD>TAB,SPC</TD> <TD>$B%U%!%$%kL>$NJd40(B</TD></TR>
- <TR> <TD>RETURN</TD> <TD>$BF~NO=*N;(B</TD></TR>
-</TABLE>
-<HR>
-
-<P>
-<H4><A NAME="like_lynx">Lynx $BIw$N%-!<A`:n(B</A></H4>
-
-<H5>$B%Z!<%8(B/$B%+!<%=%k0\F0(B</H5>
-<table cellpadding=0>
-<TR><TD>SPC,C-v<TD>$B<!$N%Z!<%8$rI=<($7$^$9!%(B
-<TR><TD>b,ESC v<TD>$BA0$N%Z!<%8$rI=<($7$^$9!%(B
-<TR><TD>l<TD>$B%+!<%=%k$r1&$K0\F0$7$^$9!%(B
-<TR><TD>h<TD>$B%+!<%=%k$r:8$K0\F0$7$^$9!%(B
-<TR><TD>j<TD>$B%+!<%=%k$r2<$K0\F0$7$^$9!%(B
-<TR><TD>k<TD>$B%+!<%=%k$r>e$K0\F0$7$^$9!%(B
-<TR><TD>J<TD>$B2hLL$r(B1$B9T>e$K%9%/%m!<%k$7$^$9!%(B
-<TR><TD>K<TD>$B2hLL$r(B1$B9T2<$K%9%/%m!<%k$7$^$9!%(B
-<TR><TD>&gt;<TD>$B2hLLA4BN$r1&$K$:$i$7$^$9!%(B($BI=<(FbMF$r:8$K$:$i$9(B)
-<TR><TD>&lt;<TD>$B2hLLA4BN$r:8$K$:$i$7$^$9!%(B($BI=<(FbMF$r1&$K$:$i$9(B)
-<TR><TD>C-a<TD>$BJ8=q$N$$$A$P$s>e$N9T$K0\F0$7$^$9!%(B
-<TR><TD>C-e<TD>$BJ8=q$N$$$A$P$s2<$N9T$K0\F0$7$^$9!%(B
-<TR><TD>G<TD>$B2hLL2<$G9THV9f$rF~NO$7!$$=$3$G;XDj$7$?9T$K0\F0$7$^$9!%(B
-$B$3$3$G(B $ $B$rF~NO$9$k$H!$:G=*9T$K0\F0$7$^$9!%(B
-<TR><TD>TAB, C-n, $B2<Lp0u(B<TD>$B<!$N%j%s%/$K0\F0$7$^$9!%(B
-<TR><TD>ESC TAB, C-p, $B>eLp0u(B<TD>$BA0$N%j%s%/$K0\F0$7$^$9!%(B
-</table>
-
-<H5>$B%O%$%Q!<%j%s%/A`:n(B</H5>
-<table cellpadding=0>
-<TR><TD WIDTH=100>RET, C-f, $B1&Lp0u(B<TD>$B8=:_%+!<%=%k$,$"$k%j%s%/$,;X$9@h$NJ8=q$rFI$_$3$_$^$9!%(B
-<TR><TD>d, ESC RET<TD>$B8=:_%+!<%=%k$,$"$k%j%s%/$,;X$9@h$NJ8=q$r%U%!%$%k$KJ]B8$7$^$9!%(B
-<TR><TD>u<TD>$B8=:_%+!<%=%k$,$"$k%j%s%/$,;X$9@h$N(BURL$B$rI=<($7$^$9!%(B
-<TR><TD>I<TD>$B8=:_%+!<%=%k$,$"$k%j%s%/$KBP1~$9$k2hA|$rI=<($7$^$9!%(B
-<TR><TD>ESC I<TD>$B8=:_%+!<%=%k$,$"$k%j%s%/$,;X$92hA|$r%U%!%$%k$KJ]B8$7$^$9!%(B
-<TR><TD>:<TD>URL $BIw$NJ8;zNs$r%j%s%/$K$7$^$9!%$3$N5!G=$O!$(BHTML $B$G$J$$J8=q$r(B
-$BFI$s$G$$$k$H$-$K$bM-8z$G$9!%(B
-<TR><TD>ESC :<TD>Message-ID $BIw$NJ8;zNs$r!$(Bnews: $B$N%j%s%/$K$7$^$9!%$3$N5!G=$O!$(BHTML $B$G$J$$J8=q$rFI$s$G$$$k$H$-$K$bM-8z$G$9!%(B
-<TR><TD>c<TD>$B8=:_$NJ8=q$N(B URL $B$rI=<($7$^$9!%(B
-<TR><TD>=<TD>$B8=:_$NJ8=q$K4X$9$k>pJs$rI=<($7$^$9!%(B
-<TR><TD>F<TD>&lt;FRAMESET&gt; $B$r4^$`J8=q$rI=<($7$F$$$k$H$-$K!$(B&lt;FRAME&gt; $B%?%0$N;X$9J#?t$NJ8=q$r(B1$B$D$NJ8=q$KJQ49$7$FI=<($7$^$9!%(B
-<TR><TD>M<TD>$B8=:_8+$F$$$k%Z!<%8$r!$30It%V%i%&%6$r;H$C$FI=<($7$^$9!%(B 2M, 3M $B$G(B2$BHVL\$H(B3$BHVL\$N%V%i%&%6$r;H$$$^$9!%(B
-<TR><TD>ESC M<TD>$B8=:_$N%j%s%/@h$r!$30It%V%i%&%6$r;H$C$FI=<($7$^$9!%(B 2ESC M, 3ESC M $B$G(B2$BHVL\$H(B3$BHVL\$N%V%i%&%6$r;H$$$^$9!%(B
-</table>
-
-<H5>$B%U%!%$%k$H(B URL $B4X78$NA`:n(B</H5>
-<table cellpadding=0>
-<TR><TD WIDTH=100>g, U<TD>URL $B$r;XDj$7$F3+$-$^$9!%(B
-<TR><TD>V<TD>$B%m!<%+%k%U%!%$%k$r;XDj$7$F3+$-$^$9!%(B
-<TR><TD>@<TD>$B%3%^%s%I$r<B9T$7!$7k2L$rA4ItFI$s$G$+$iI=<($7$^$9!%(B
-<TR><TD>#<TD>$B%3%^%s%I$r<B9T$7!$7k2L$rFI$_$3$_$J$,$iI=<($7$^$9!%(B
-</table>
-
-<H5>$B%P%C%U%!A`:n(B</H5>
-<table cellpadding=0>
-<TR><TD WIDTH=100>B, C-b, $B:8Lp0u(B<TD>$B8=:_8+$F$$$k%P%C%U%!$r:o=|$7!$0l$DA0$N%P%C%U%!$rI=<($7$^$9!%(B
-<TR><TD>\<TD>HTML $B$N%=!<%9$rI=<($7$^$9!%(B
-<TR><TD>s, C-h<TD>$B%P%C%U%!A*Br%b!<%I$KF~$j$^$9!%(B
-<TR><TD>E<TD>$B8=:_8+$F$$$k%P%C%U%!$,%m!<%+%k%U%!%$%k$N>l9g!$$=$N%U%!%$%k$r%(%G%#%?$GJT=8$7$^$9!%%(%G%#%?$r=*N;$7$?8e!$$=$N%U%!%$%k$r:FEYFI$_9~$_$^$9!%(B
-<TR><TD>R, C-r<TD>$B%P%C%U%!$r:FEYFI$_9~$_$^$9!%(B
-<TR><TD>S, p<TD>$B%P%C%U%!$NI=<(FbMF$r%U%!%$%k$KJ]B8$7$^$9!%(B
-<TR><TD>ESC s<TD>HTML $B$N%=!<%9$r%U%!%$%k$KJ]B8$7$^$9!%(Bv $B$G%=!<%9$rI=<($7$F(B S $B$GJ]B8$9$k$N$H$[$\F1$8$G$9$,!$(BESC s $B$GJ]B8$7$?%U%!%$%k$O4A;z%3!<%I$,%*%j%8%J%k$N$^$^$G$"$k$N$KBP$7$F!$(Bv S $B$GJ]B8$9$k$H8=:_I=<($K;H$C$F$$$k4A;z%3!<%I$KJQ49$5$l$FJ]B8$5$l$^$9!%(B
-<TR><TD>ESC e<TD>$B8=:_I=<($5$l$F$$$k%P%C%U%!$r!$I=<($5$l$F$$$k7A<0$N$^$^%(%G%#%?$GJT=8$7$^$9!%(B
-</table>
-
-<H5>$B%P%C%U%!A*Br%b!<%I(B</H5>
-"s" $B$G%P%C%U%!A*Br%b!<%I$KF~$C$?$H$-$N%-!<A`:n$G$9!%(B
-<table cellpadding=0>
-<TR><TD WIDTH=100>k,C-p<TD>$B0l$D>e$N%P%C%U%!$rA*Br$7$^$9!%(B
-<TR><TD>j,C-n<TD>$B0l$D2<$N%P%C%U%!$rA*Br$7$^$9!%(B
-<TR><TD>D<TD>$B8=:_A*Br$7$F$$$k%P%C%U%!$r:o=|$7$^$9!%(B
-<TR><TD>RET<TD>$B8=:_A*Br$7$F$$$k%P%C%U%!$rI=<($7$^$9!%(B
-</table>
-
-<H5>$B%V%C%/%^!<%/A`:n(B</H5>
-<table cellpadding=0>
-<TR><TD WIDTH=100>v, ESC b<TD>$B%V%C%/%^!<%/$rFI$_9~$_$^$9!%(B
-<TR><TD>a, ESC a<TD>$B8=:_8+$F$$$k%Z!<%8$r%V%C%/%^!<%/$KDI2C$7$^$9!%(B
-</table>
-
-<H5>$B8!:w(B</H5>
-<table cellpadding=0>
-<TR><TD WIDTH=100>/<TD>$B8=:_$N%+!<%=%k0LCV$+$i%U%!%$%kKvHx$K8~$+$C$F@55,I=8=$r8!:w$7$^$9!%(B
-<TR><TD>?<TD>$B8=:_$N%+!<%=%k0LCV$+$i%U%!%$%k$N@hF,$K8~$+$C$F@55,I=8=$r8!:w$7$^$9!%(B
-<TR><TD>n<TD>$B<!$r8!:w$7$^$9!%(B
-</table>
-
-<H5>$B%^!<%/A`:n(B</H5>
-<table cellpadding=0>
-<TR><TD WIDTH=100>C-SPC<TD>$B%^!<%/$r@_Dj!?2r=|$7$^$9!%%^!<%/$OH?E>I=<($5$l$^$9!%(B
-<TR><TD>ESC p<TD>$B0l$DA0$N%^!<%/$K0\F0$7$^$9!%(B
-<TR><TD>ESC n<TD>$B0l$D8e$N%^!<%/$K0\F0$7$^$9!%(B
-<TR><TD>"<TD>$B@55,I=8=$G;XDj$5$l$?J8;zNs$rA4$F%^!<%/$7$^$9!%(B
-</table>
-
-<H5>$B$=$NB>(B</H5>
-<table cellpadding=0>
-<TR><TD WIDTH=100>!<TD>$B%7%'%k%3%^%s%I$r<B9T$7$^$9!%(B
-<TR><TD>H, ?<TD>$B%X%k%W%U%!%$%k$rI=<($7$^$9!%(B
-<TR><TD>o<TD>$B%*%W%7%g%s@_Dj%Q%M%k$rI=<($7$^$9!%(B
-<TR><TD>C-k</TD> <TD>$B%/%C%-!<0lMw$rI=<((B</TD></TR>
-<TR><TD>C-c<TD>$BJ8=q$NFI$_9~$_$rCfCG$7$^$9!%(B
-<TR><TD>C-z</TD><TD>$B%5%9%Z%s%I$7$^$9!%(B</TD></TR>
-<TR><TD>q<TD>w3m $B$r=*N;$7$^$9!%%*%W%7%g%s$N@_Dj$K$h$C$F!$=*N;$9$k$+$I$&$+3NG'$7$^$9!%(B
-<TR><TD>Q<TD>$B3NG'$;$:$K(B w3m $B$r=*N;$7$^$9!%(B
-</table>
-
-<H5>$B9TJT=8%b!<%I(B</H5>
-$B2hLL$N:G2<9T$GJ8;zNs$rF~NO$9$k>l9g$KM-8z$J%-!<A`:n$G$9!%(B
-<table cellpadding=0>
-<TR><TD WIDTH=100>C-f<TD>$B%+!<%=%k$r1&$K0\F0$7$^$9!%(B
-<TR><TD>C-b<TD>$B%+!<%=%k$r:8$K0\F0$7$^$9!%(B
-<TR><TD>C-h<TD>$B%+!<%=%k$ND>A0$NJ8;z$r:o=|$7$^$9!%(B
-<TR><TD>C-d<TD>$B%+!<%=%k0LCV$NJ8;z$r:o=|$7$^$9!%(B
-<TR><TD>C-k<TD>$B%+!<%=%k0LCV$+$i8e$r:o=|$7$^$9!%(B
-<TR><TD>C-u<TD>$B%+!<%=%k0LCV$+$iA0$r:o=|$7$^$9!%(B
-<TR><TD>C-a<TD>$BJ8;zNs$N@hF,$K0\F0$7$^$9!%(B
-<TR><TD>C-e<TD>$BJ8;zNs$N:G8e$K0\F0$7$^$9!%(B
-<TR><TD>SPC<TD>$B%U%!%$%kL>F~NO;~$K!$%U%!%$%kL>$rJd40$7$^$9!%(B
-<TR><TD>RETURN<TD>$BF~NO$r=*N;$7$^$9!%(B
-</table>
-
-<DIV>
-<A HREF="index">$B$3$N%Z%$%8$N@hF,$KLa$k(B</A>
-</DIV>
-<HR>
-
-<DIV>
-<A HREF="@DOC.index@">$B%H%C%W%Z%$%8$KLa$k(B</A>
-</DIV>
-
-</BODY>
-</HTML>
-
diff --git a/w3m-doc/prologue.html.in b/w3m-doc/prologue.html.in
deleted file mode 100644
index 922bc4b..0000000
--- a/w3m-doc/prologue.html.in
+++ /dev/null
@@ -1,99 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
-<HTML>
-
-@include define.wd
-@include contain.wd
-
-<HEAD>
-<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-2022-jp">
-<TITLE>PROLOGUE&nbsp;- $B$O$8$a$K(B -</title>
-</HEAD>
-
-<BODY>
-
-<H1><A NAME="index">$B$O$8$a$K(B</A></H1>
-
-<UL>
- <LI><A HREF="#summary">w3m $B$H$O(B</A>
- <LI><A HREF="#glossary">$BMQ8l$N@bL@(B</A>
- <LI><A HREF="#disclaimer">$BCm0U;v9`(B</A>
- <LI><A HREF="@DOC.copyright@">$BCx:n8"!"%i%$%;%s%9(B</A>
- <LI><A HREF="#confirmation">$BF0:n3NG'(B OS</A>
-</UL>
-
-<DIV>
-<A HREF="@DOC.index@">$B%H%C%W%Z%$%8$KLa$k(B</A>
-</DIV>
-<HR>
-
-<H2><A NAME="summary">w3m $B$H$O(B</A></H2>
-<!-- w3m $B$H$O(B -->
-<DIV>
-<P>$B!!(Bw3m $B$O!"(BWorld Wide Web $B$KBP1~$7$?%F%-%9%H%Y!<%9$N%Z!<%8%c$G$9!#(Bkterm $B$J$I$N%-%c%i%/%?C<Kv>e$G!"%m!<%+%k%U%!%$%k$r8+$?$j!"(BWWW $B$NFbMF$r8+$?$j$9$k$3$H$,$G$-$^$9!#(B<BR>
-<P>$B!!(Bw3m $B$O!"(Bfm $B$H$$$&%Z!<%8%c$r%Y!<%9$H$7$F:n$i$l$^$7$?!#(Bfm $B$K$D$$$F$N>\:Y$O!"(B<A HREF="@README.fm@">README.fm</A> $B$r$*FI$_$/$@$5$$!#(Bw3m $B$N%Z!<%8%c$H$7$F$N4pK\E*$JFCD'$O!"(Bfm $B$H$[$H$s$IF1$8$G$9!#(B<BR>
-<P>$B!!(Bw3m $BFH<+$NFCD'$H$7$F$O!"<!$N$h$&$J$b$N$,$"$j$^$9!#(B<BR>
-<P><UL>
- <LI>WWW $BBP1~$J$N$G!"(BHTML $B$NJ8>O$rFI$s$G$$$k;~$K$O!"$=$NCf$N%j%s%/$rC)$C$?$j2hA|$r8+$k;v$,$G$-$k!#(B
- <LI>Internet message $BI=<($N$?$a$N%b!<%I$,$"$k!#$3$N;~!"(BContent-Type: $B$,(B text/html $B$N>l9g$O!"<+F0E*$K(B HTML $B$NJ8=q$H$7$FI=<($9$k!#$^$?!"<+NO$G(B MIME header $B$N%G%3!<%I$r$9$k!#(B
- <LI>$B8+$F$$$k(B plain text $BJ8=qCf$K(B URL $BI=5-$,$"$C$?>l9g!"$=$NItJ,$+$i%j%s%/$r$?$I$k;v$,$G$-$k!#(B
- </UL>
-<BR>
-<A HREF="#index">$B$3$N%Z%$%8$N@hF,$KLa$k(B</A>
-</DIV>
-<HR>
-
-<H2><A NAME="glossary">$BMQ8l$N@bL@(B</A></H2>
-<!-- $B@bL@$NET9g>e$KI,MW$JMQ8l@bL@(B -->
-<DIV>
-<A HREF="#index">$B$3$N%Z%$%8$N@hF,$KLa$k(B</A>
-</DIV>
-<HR>
-
-<H2><A NAME="disclaimer">$BCm0U;v9`(B</A></H2>
-<!-- $BCm0U;v9`(B -->
-<DIV>
-<P>$B$3$N%=%U%H%&%'%"$K$h$C$FMxMQ<T$^$?$OBh;0<T$,2?$i$+$NHo32$r<u$1$?>l9g!":n<T$O$=$N@UG$$r0l@Z$*$$$^$;$s!#$3$N;v$r>5Bz$9$k8B$j$K$*$$$F!"$3$N%=%U%H%&%'%"$O!"C/$G$b:n<T$KCG$j$J$/MxMQ!&2~JQ!&G[I[$G$-$^$9!#(B<BR>
-<P>
-<A HREF="#index">$B$3$N%Z%$%8$N@hF,$KLa$k(B</A>
-</DIV>
-<HR>
-
-<H2>$BCx:n8"!"%i%$%;%s%9(B</H2>
-<DIV>
-<P>$B!!(B<A HREF="@DOC.copyright@">$BCx:n8"!"%i%$%;%s%9(B</A>$B$r;2>H$/$@$5$$!#(B
-</DIV>
-<DIV>
-<A HREF="#index">$B$3$N%Z%$%8$N@hF,$KLa$k(B</A>
-</DIV>
-<HR>
-
-<H2><A NAME="confirmation">$BF0:n3NG'(BOS</A></H2>
-<!-- $BF0:n3NG'(BOS -->
-<DIV>
-<P>$B!!8=:_!"F0:n$,3NG'$5$l$F$$$k(B OS $B$O0J2<$NDL$j$G$9!#(B
-<BLOCKQUOTE>
- <TABLE BORDER="0">
- <TR><TD ALIGN="left">SunOS4.1.x</TD>
- <TR><TD ALIGN="left">HP-UX 9.x, 10.x</TD>
- <TR><TD ALIGN="left">Soraris2.5.x</TD>
- <TR><TD ALIGN="left">Linux 2.0.30</TD>
- <TR><TD ALIGN="left">FreeBSD 2.2.8, 3.1, 3.2, 4.6</TD>
- <TR><TD ALIGN="left">NetBSD/macppc, m68k</TD>
- <TR><TD ALIGN="left">EWS4800 Release12.2 Rev.A</TD>
- <TR><TD ALIGN="left">Digital UNIX: v3.2D, v4.0D</TD>
- <TR><TD ALIGN="left">IRIX 5.3, IRIX 6.5</TD>
- <TR><TD ALIGN="left">OS/2 with emx</TD>
- <TR><TD ALIGN="left">Windows 9x/NT with Cygwin32 b20.1</TD>
- <TR><TD ALIGN="left">MS-DOS with DJGPP and WATT32 packet drive</TD>
- <TR><TD ALIGN="left">MacOS X Server</TD>
- <TR><TD ALIGN="left">MacOS X 10.1, 10.2</TD>
- </TABLE>
-</BLOCKQUOTE>
-<A HREF="#index">$B$3$N%Z%$%8$N@hF,$KLa$k(B</A>
-</DIV>
-<HR>
-
-<A HREF="@DOC.index@">$B%H%C%W%Z%$%8$KLa$k(B</A>
-
-</BODY>
-</HTML>
diff --git a/w3m-doc/sample/README b/w3m-doc/sample/README
deleted file mode 100644
index 7bb9dab..0000000
--- a/w3m-doc/sample/README
+++ /dev/null
@@ -1,41 +0,0 @@
-
-�Ȥ���
- perl w3mdoc.pl sample.wd > sample.html
-
-Ÿ���������
-
-* @xxx.yyy@
-
- @define �� @end ���������줿�ͤ�Ÿ������롣
-
-* @YYY(xxx)@
-
- @code �� @end ���������줿�ؿ���ƤӽФ���Ÿ������롣
-
- ��)
- URL(xxx) xxx.url
- LINK(xxx) <A HREF="xxx.url">xxx.title</A>
- MAILTO(xxx) <A HREF="mailto:xxx.address">xxx.name</A>
-
-���ޥ�ɰ���
-
-* ���
- @define
- xxx.yyy zzz
- @end
-
- xxx.yyy �� zzz ��������롣xxx �ϰʲ��δؿ��ΰ����ˤ�ʤ롣
- ��� define.wd �򻲾ȡ�
-
-* ������(�ؿ����)
- @code
- ������
- @end
-
- w3mdoc ��������Ƥ������Υ����ɤ�ľ�ܽ񤯡��Ȥꤢ���� perl5��
- ��� html.wd �򻲾ȡ�
-
-* ���󥯥롼��
- @include file
-
- �ե������ include ���롣
diff --git a/w3m-doc/sample/define.wd b/w3m-doc/sample/define.wd
deleted file mode 100644
index f588f4c..0000000
--- a/w3m-doc/sample/define.wd
+++ /dev/null
@@ -1,4 +0,0 @@
-@define
-hsaka.url http://www2u.biglobe.ne.jp/~hsaka/
-hsaka.title ���ܹ�§�Υۡ���ڡ���
-@end
diff --git a/w3m-doc/sample/html.wd b/w3m-doc/sample/html.wd
deleted file mode 100644
index 1b1d7f2..0000000
--- a/w3m-doc/sample/html.wd
+++ /dev/null
@@ -1,18 +0,0 @@
-@code
-sub URL {
- $_[0]->CHECK(qw(url));
- $_[0]->{url};
-}
-sub LINK {
- $_[0]->CHECK(qw(url title));
- "<A HREF=\"$_[0]->{url}\">$_[0]->{title}</A>";
-}
-sub LINK_SEC {
- $_[0]->CHECK(qw(url section title));
- "<A HREF=\"$_[0]->{url}\">$_[0]->{section} $_[0]->{title}</A>";
-}
-sub MAILTO {
- $_[0]->CHECK(qw(address name));
- "<A HREF=\"mailto:$_[0]->{address}\">$_[0]->{name}</A>";
-}
-@end
diff --git a/w3m-doc/sample/keymap.cgi b/w3m-doc/sample/keymap.cgi
deleted file mode 100755
index f68f5fb..0000000
--- a/w3m-doc/sample/keymap.cgi
+++ /dev/null
@@ -1,268 +0,0 @@
-#!/usr/local/bin/perl
-
-$QUERY = $ENV{'QUERY_STRING'};
-$KEYMAP = "$ENV{'HOME'}/.w3m/keymap";
-
-if ($QUERY) {
- # &write_keymap($QUERY);
- print <<EOF;
-Content-Type: text/html
-w3m-control: DELETE_PREVBUF
-w3m-control: BACK
-
-EOF
- exit;
-}
-&init_func();
-@key = ();
-@func = ();
-@data = ();
-open(KEYMAP, $KEYMAP);
-while (<KEYMAP>) {
- s/^keymap\s+// || next;
- (($k, $_) = &getQWord($_)) || next;
- (($f, $_) = &getWord($_)) || next;
- $FUNC_EXIST{$f} || next;
- ($d, $_) = &getQWord($_);
- push(@key, $k);
- push(@func, $f);
- push(@data, $d);
-}
-close(KEYMAP);
-
-$N = @key;
-
-print <<EOF;
-Content-Type: text/html
-
-<head><title>Keymap Setting</title></head>
-<h1>Keymap Setting</h1>
-<form action="file:///\$LIB/keymap.cgi">
-<table>
-<tr><td>&nbsp;Key<td>&nbsp;Command<td>&nbsp;Argument
-<tr><td><input name=k_$N size=6>
-<td><select name=f_$N>
-EOF
-&print_func();
-print <<EOF;
-</select>
-<td><input name=d_$N>
-<td><input type=submit name=ok value=Ok>
-<tr><td colspan=4><hr>
-EOF
-$i = 0;
-while(@key) {
- $k = &Q(shift @key);
- $f = shift @func;
- $d = &Q(shift @data);
- print <<EOF;
-<tr><td><input type=hidden name=k_$i value=\"$k\">&nbsp;$k
-<td><select name=f_$i>
-EOF
- &print_func($f);
- print <<EOF;
-</select>
-<td><input name=d_$i value=\"$d\">
-<td><input type=checkbox name=del_$i>Delete
-EOF
- $i++;
-}
-print <<EOF;
-</table>
-</form>
-EOF
-
-sub write_keymap {
- local($query) = @_;
- @key = ();
- @func = ();
- @data = ();
-
- for $q (split('&', $query)) {
- ($_, $d) = split('=', $q);
- if (s/^k_//) {
- $key[$_] = $d;
- } elsif (s/^f_//) {
- $func[$_] = $d;
- } elsif (s/^d_//) {
- $data[$_] = $d;
- } elsif (s/^del_//) {
- $del[$_] = 1;
- }
- }
- open(KEYMAP, "> ${KEYMAP}") || next;
- while(@key) {
- $k = &UQ(shift @key);
- $f = shift @func;
- $d = &UQ(shift @data);
- ($f =~ /^\w/) || next;
- (shift @del) && next;
- print KEYMAP "keymap\t$k\t$f";
- if ($d ne '') {
- if ($d =~ /[\"\'\\\s]/) {
- $d =~ s/([\"\\])/\\$1/g;
- print KEYMAP "\t\t\"$d\"";
- } else {
- $d =~ s/([\"\\])/\\$1/g;
- print KEYMAP "\t\t$d";
- }
- }
- print KEYMAP "\n";
- }
- close(KEYMAP);
-}
-
-sub UQ {
- local($_) = @_;
- s/\+/ /g;
- s/%([\da-f][\da-f])/pack('c', hex($1))/egi;
- return $_;
-}
-
-sub Q {
- local($_) = @_;
- s/\&/\&amp;/g;
- s/\</\&lt;/g;
- s/\>/\&gt;/g;
- s/\"/\&quot;/g;
- return $_;
-}
-
-sub getQWord {
- local($_) = @_;
- local($x) = '';
- s/^\s+//;
- while($_ ne '') {
- if (s/^\'(([^\'\\]|\\.)*)\'// ||
- s/^\"(([^\"\\]|\\.)*)\"// ||
- s/^([^\'\"\\\s]+)// || s/^\\(.)//) {
- $x .= $1;
- } else {
- last;
- }
- }
- return ($x, $_);
-}
-
-sub getWord {
- local($_) = @_;
- s/^\s+//;
- s/^(\S+)// || return ();
- return ($1, $_);
-}
-
-sub print_func {
- local($f) = @_;
- for(@FUNC_LIST) {
- if ($f eq $_) {
- print "<option selected>$_\n";
- } else {
- print "<option>$_\n";
- }
- }
-}
-
-sub init_func {
- @FUNC_LIST = ();
- %FUNC_EXIST = ();
- while(<DATA>) {
- chop;
- push(@FUNC_LIST, $_);
- $FUNC_EXIST{$_} = 1;
- }
-}
-
-__END__
-- - - - - - -
-ABORT
-ADD_BOOKMARK
-BACK
-BEGIN
-BOOKMARK
-CENTER_H
-CENTER_V
-COOKIE
-DELETE_PREVBUF
-DICT_WORD
-DICT_WORD_AT
-DOWN
-DOWNLOAD
-EDIT
-EDIT_SCREEN
-END
-ESCBMAP
-ESCMAP
-EXEC_SHELL
-EXIT
-EXTERN
-EXTERN_LINK
-FRAME
-GOTO
-GOTO_LINE
-GOTO_LINK
-HELP
-HISTORY
-INFO
-INIT_MAILCAP
-INTERRUPT
-LEFT
-LINE_BEGIN
-LINE_END
-LINE_INFO
-LINK_BEGIN
-LINK_END
-LOAD
-MAIN_MENU
-MARK
-MARK_MID
-MARK_URL
-MENU
-MOUSE
-MOUSE_TOGGLE
-MOVE_DOWN
-MOVE_LEFT
-MOVE_RIGHT
-MOVE_UP
-NEXT_LINK
-NEXT_MARK
-NEXT_PAGE
-NEXT_WORD
-NOTHING
-NULL
-OPTIONS
-PCMAP
-PEEK
-PEEK_LINK
-PIPE_SHELL
-PREV_LINK
-PREV_MARK
-PREV_PAGE
-PREV_WORD
-PRINT
-QUIT
-READ_SHELL
-REDRAW
-REG_MARK
-RELOAD
-RIGHT
-SAVE
-SAVE_IMAGE
-SAVE_LINK
-SAVE_SCREEN
-SEARCH
-SEARCH_BACK
-SEARCH_FORE
-SEARCH_NEXT
-SEARCH_PREV
-SELECT
-SHELL
-SHIFT_LEFT
-SHIFT_RIGHT
-SOURCE
-SUSPEND
-UP
-VIEW
-VIEW_BOOKMARK
-VIEW_IMAGE
-WHEREIS
-WRAP_TOGGLE
diff --git a/w3m-doc/sample/s.wd b/w3m-doc/sample/s.wd
deleted file mode 100644
index 02ae4ce..0000000
--- a/w3m-doc/sample/s.wd
+++ /dev/null
@@ -1,8 +0,0 @@
-@include html.wd
-@include define.wd
-
-����ϥ���ץ�Ǥ���
-<P>
-\@hsaka.url\@ = @hsaka.url@
-<BR>
-\@LINK(hsaka)\@ = @LINK(hsaka)@
diff --git a/w3m-doc/sample/sample.html b/w3m-doc/sample/sample.html
deleted file mode 100644
index b58b0c7..0000000
--- a/w3m-doc/sample/sample.html
+++ /dev/null
@@ -1,6 +0,0 @@
-
-����ϥ���ץ�Ǥ���
-<P>
-@hsaka.url@ = http://www2u.biglobe.ne.jp/~hsaka/
-<BR>
-@LINK(hsaka)@ = <A HREF="http://www2u.biglobe.ne.jp/~hsaka/">���ܹ�§�Υۡ���ڡ���</A>
diff --git a/w3m-doc/sample/sample.wd b/w3m-doc/sample/sample.wd
deleted file mode 100644
index 0edfd0c..0000000
--- a/w3m-doc/sample/sample.wd
+++ /dev/null
@@ -1,11 +0,0 @@
-@include html.wd
-@define
-hsaka.url http://www2u.biglobe.ne.jp/~hsaka/
-hsaka.title ���ܹ�§�Υۡ���ڡ���
-@end
-
-����ϥ���ץ�Ǥ���
-<P>
-\@hsaka.url\@ = @hsaka.url@
-<BR>
-\@LINK(hsaka)\@ = @LINK(hsaka)@
diff --git a/w3m-doc/sample/w3mdoc.pl b/w3m-doc/sample/w3mdoc.pl
deleted file mode 100755
index 6097926..0000000
--- a/w3m-doc/sample/w3mdoc.pl
+++ /dev/null
@@ -1,102 +0,0 @@
-#!/usr/local/bin/perl
-
-package w3mdoc;
-
-sub CHECK {
- my($a, @b) = @_;
- for(@b) {
- defined($a->{$_}) || die("\"$a->{id}.$_\" is not defined.\n");
- }
-}
-
-sub DEF {
- my($a, $b, $c) = @_;
-
- if (! defined($data->{$a})) {
- $data->{$a} = bless { id => $a };
- }
- $data->{$a}{$b} = $c;
-}
-
-sub SUB {
- local($_) = @_;
- my($a, $b);
-
- if (/^\@(\w+)\.(\w+)\@$/) {
- ($a, $b) = ($1, $2);
- defined($data->{$a}) || die("\"$a.$b\" is not defined.\n");
- $data->{$a}->CHECK($b);
- return $data->{$a}{$b};
- }
- if (/^\@(\w+)\((\w+)\)\@$/) {
- ($a, $b) = ($1, $2);
- defined(&{$a}) || die("\"$a()\" is not defined.\n");
- defined($data->{$b}) || die("\"$a($b)\" is not defined.\n");
- return $data->{$b}->$a();
- }
- return '@';
-}
-
-package main;
-
-@ARGV || unshift(@ARGV, "-");
-while(@ARGV) {
- $file = shift @ARGV;
- &make_doc($file);
-}
-
-sub make_doc {
- my($file) = @_;
- my($in_def, $in_code, $code, $a, $b);
- local(*F);
- local($_);
-
- open(F, $file) || die("$file: $!\n");
- $in_def = 0;
- $in_code = 0;
- while(<F>) {
- if ($in_def) {
- if (/^\@end/) {
- $in_def = 0;
- next;
- }
- s/^\s+//;
- s/^(\w+)\.(\w+)// || next;
- ($a, $b) = ($1, $2);
- s/^\s+//;
- s/\s+$//;
- &w3mdoc::DEF($a, $b, $_);
- next;
- }
- if ($in_code) {
- if (/^\@end/) {
- eval "package w3mdoc; $code";
- $in_code = 0;
- next;
- }
- $code .= $_;
- next;
- }
- if (/^\@define/) {
- $in_def = 1;
- next;
- }
- if (/^\@code/) {
- $in_code = 1;
- $code = "";
- next;
- }
- if (s/^\@include\s+//) {
- s/\s+$//;
- &make_doc($_);
- next;
- }
- if (/^\@/) {
- die("unknown command: $_");
- }
- s/(\\@|\@(\w+(\.\w+|\(\w+\)))\@)/&w3mdoc::SUB($1)/eg;
- print;
- }
- close(F);
-}
-
diff --git a/w3m-doc/w3mdoc.pl b/w3m-doc/w3mdoc.pl
deleted file mode 100755
index 6097926..0000000
--- a/w3m-doc/w3mdoc.pl
+++ /dev/null
@@ -1,102 +0,0 @@
-#!/usr/local/bin/perl
-
-package w3mdoc;
-
-sub CHECK {
- my($a, @b) = @_;
- for(@b) {
- defined($a->{$_}) || die("\"$a->{id}.$_\" is not defined.\n");
- }
-}
-
-sub DEF {
- my($a, $b, $c) = @_;
-
- if (! defined($data->{$a})) {
- $data->{$a} = bless { id => $a };
- }
- $data->{$a}{$b} = $c;
-}
-
-sub SUB {
- local($_) = @_;
- my($a, $b);
-
- if (/^\@(\w+)\.(\w+)\@$/) {
- ($a, $b) = ($1, $2);
- defined($data->{$a}) || die("\"$a.$b\" is not defined.\n");
- $data->{$a}->CHECK($b);
- return $data->{$a}{$b};
- }
- if (/^\@(\w+)\((\w+)\)\@$/) {
- ($a, $b) = ($1, $2);
- defined(&{$a}) || die("\"$a()\" is not defined.\n");
- defined($data->{$b}) || die("\"$a($b)\" is not defined.\n");
- return $data->{$b}->$a();
- }
- return '@';
-}
-
-package main;
-
-@ARGV || unshift(@ARGV, "-");
-while(@ARGV) {
- $file = shift @ARGV;
- &make_doc($file);
-}
-
-sub make_doc {
- my($file) = @_;
- my($in_def, $in_code, $code, $a, $b);
- local(*F);
- local($_);
-
- open(F, $file) || die("$file: $!\n");
- $in_def = 0;
- $in_code = 0;
- while(<F>) {
- if ($in_def) {
- if (/^\@end/) {
- $in_def = 0;
- next;
- }
- s/^\s+//;
- s/^(\w+)\.(\w+)// || next;
- ($a, $b) = ($1, $2);
- s/^\s+//;
- s/\s+$//;
- &w3mdoc::DEF($a, $b, $_);
- next;
- }
- if ($in_code) {
- if (/^\@end/) {
- eval "package w3mdoc; $code";
- $in_code = 0;
- next;
- }
- $code .= $_;
- next;
- }
- if (/^\@define/) {
- $in_def = 1;
- next;
- }
- if (/^\@code/) {
- $in_code = 1;
- $code = "";
- next;
- }
- if (s/^\@include\s+//) {
- s/\s+$//;
- &make_doc($_);
- next;
- }
- if (/^\@/) {
- die("unknown command: $_");
- }
- s/(\\@|\@(\w+(\.\w+|\(\w+\)))\@)/&w3mdoc::SUB($1)/eg;
- print;
- }
- close(F);
-}
-
diff --git a/w3mbookmark.c b/w3mbookmark.c
index 4355536..a306f26 100644
--- a/w3mbookmark.c
+++ b/w3mbookmark.c
@@ -79,6 +79,7 @@ print_bookmark_panel(char *bmark, char *url, char *title, char *charset)
}
}
printf("</select>\n");
+ fclose(f);
}
printf(bkmark_src2, html_quote(url), html_quote(title));
}
@@ -99,7 +100,7 @@ create_new_bookmark(char *bmark, char *section, char *title, char *url,
fprintf(f, "<body>\n<h1>Bookmarks</h1>\n");
fprintf(f, "<h2>%s</h2>\n<ul>\n", section);
fprintf(f, "<li><a href=\"%s\">%s</a>\n", url, title);
- fprintf(f, end_section);
+ fprintf(f, "%s", end_section);
fprintf(f, "</ul>\n</body>\n</html>\n");
fclose(f);
}
@@ -168,7 +169,10 @@ insert_bookmark(char *bmark, struct parsed_tagarg *data)
/* In this case, a new bookmark is appeneded after the bookmark file */
return create_new_bookmark(bmark, section, title, url, "a");
}
- f = fopen(bmark, "w");
+ if ((f = fopen(bmark, "w")) == NULL) {
+ printf("\nCannot open bookmark %s\n", bmark);
+ return FALSE;
+ }
while (tl->nitem) {
fputs(popText(tl), f);
}
diff --git a/w3mhelp-lynx_en.html.in b/w3mhelp-lynx_en.html.in
index 7448877..d073b0f 100644
--- a/w3mhelp-lynx_en.html.in
+++ b/w3mhelp-lynx_en.html.in
@@ -43,20 +43,20 @@ w3m</A>
<table cellpadding=0>
<TR><TD WIDTH=100>RET, C-f, Right arrow<TD>Follow hyperlink
<TR><TD>d, ESC RET<TD>Save link to file
-<TR><TD>u<TD>Peek link URL
-<TR><TD>i<TD>Peek image URL
+<TR><TD>u<TD>Peek at link URL
+<TR><TD>i<TD>Peek at image URL
<TR><TD>I<TD>View inline image
<TR><TD>ESC I<TD>Save inline image to file
-<TR><TD>:<TD>Mark URL-like strings as anchors
-<TR><TD>ESC :<TD>Mark Message-ID-like strings as news anchors
-<TR><TD>c<TD>Peek current URL
+<TR><TD>:<TD>Mark URL-like strings as links
+<TR><TD>ESC :<TD>Mark Message-ID-like strings as links
+<TR><TD>c<TD>Peek at current URL
<TR><TD>=<TD>Display information about current document
-<TR><TD>C-h<TD>View history of URL
-<TR><TD>F<TD>Render frame
+<TR><TD>C-h<TD>View browser history
+<TR><TD>F<TD>Render frames
<TR><TD>M<TD>Browse current document using external browser
-(use 2M and 3M to invoke second and third browser)
+(prefix 2, 3, ..., or 9 to invoke alternate configured browsers, e.g. 3 M)
<TR><TD>ESC M<TD>Browse link using external browser
-(use 2ESC M and 3ESC M to invoke second and third browser)
+(prefixed as above, e.g. 3ESC M)
</table>
<H2>File/Stream operation</H2>
@@ -98,7 +98,7 @@ w3m</A>
<table cellpadding=0>
<TR><TD WIDTH=100>/, C-s<TD>Search forward
<TR><TD>n<TD>Search next
-<TR><TD>w<TD>Toggle wrap search mode
+<TR><TD>w<TD>Toggle search wrap mode
</table>
<H2>Mark operation</H2>
@@ -121,7 +121,7 @@ w3m</A>
<TR><TD>Q<TD>Quit without confirmation
</table>
-<H2>Line-edit mode</H2>
+<H2>Line-editing mode</H2>
<table cellpadding=0>
<TR><TD WIDTH=100>C-f<TD>Move cursor forward
<TR><TD>C-b<TD>Move cursor backward
diff --git a/w3mhelp-lynx_ja.html.in b/w3mhelp-lynx_ja.html.in
index d160984..708a09a 100644
--- a/w3mhelp-lynx_ja.html.in
+++ b/w3mhelp-lynx_ja.html.in
@@ -1,6 +1,6 @@
<HTML>
<HEAD>
-<TITLE>w3m �إ�ץڡ���</TITLE>
+<TITLE>w3m ヘルプページ</TITLE>
</HEAD>
<BODY>
@@ -8,141 +8,141 @@
*******
<A HREF="http://w3m.sourceforge.net/">w3m</A>
(WWW-wo-Miru) Version @CURRENT_VERSION@ by
- <A HREF="mailto:aito@fw.ipsj.or.jp">A.ITO(��ƣ��§)</A>
+ <A HREF="mailto:aito@fw.ipsj.or.jp">A.ITO(伊藤彰則)</A>
********
<BR>
- ***** lynx-like ����������� *****
+ ***** lynx-like キー割り当て *****
</CENTER>
<A HREF="w3mhelp-lynx_en.html">English</A>
-<H3>�ڡ���/���������ư</H3>
+<H3>ページ/カーソル移動</H3>
<table cellpadding=0>
-<TR><TD>SPC,C-v,+<TD>���Υڡ�����ɽ�����ޤ���
-<TR><TD>b,ESC v,-<TD>���Υڡ�����ɽ�����ޤ���
-<TR><TD>l<TD>��������򱦤˰�ư���ޤ���
-<TR><TD>h<TD>��������򺸤˰�ư���ޤ���
-<TR><TD>j<TD>��������򲼤˰�ư���ޤ���
-<TR><TD>k<TD>����������˰�ư���ޤ���
-<TR><TD>J<TD>���̤�1�Ծ�˥��������뤷�ޤ���
-<TR><TD>K<TD>���̤�1�Բ��˥��������뤷�ޤ���
-<TR><TD>^<TD>��Ƭ�˰�ư���ޤ���
-<TR><TD>$<TD>�����˰�ư���ޤ���
-<TR><TD>&gt;<TD>�������Τ򱦤ˤ��餷�ޤ���(ɽ�����Ƥ򺸤ˤ��餹)
-<TR><TD>&lt;<TD>�������Τ򺸤ˤ��餷�ޤ���(ɽ�����Ƥ򱦤ˤ��餹)
-<TR><TD>C-a<TD>ʸ��Τ����Ф��ιԤ˰�ư���ޤ���
-<TR><TD>C-e<TD>ʸ��Τ����Ф󲼤ιԤ˰�ư���ޤ���
-<TR><TD>G<TD>���̲��ǹ��ֹ�����Ϥ��������ǻ��ꤷ���Ԥ˰�ư���ޤ���
-������ $ �����Ϥ���ȡ��ǽ��Ԥ˰�ư���ޤ���
-<TR><TD>Z<TD>��������Τ�����֤�Ԥ�����˰�ư���ޤ���
-<TR><TD>z<TD>��������Τ���Ԥ���̤�����˰�ư���ޤ���
-<TR><TD>TAB, C-n, �����<TD>���Υ�󥯤˰�ư���ޤ���
-<TR><TD>ESC TAB, C-p, �����<TD>���Υ�󥯤˰�ư���ޤ���
-<TR><TD>C-g<TD>�ڡ�����Ǥθ��߰��֤�ɽ�����ޤ���
+<TR><TD>SPC,C-v,+<TD>次のページを表示します.
+<TR><TD>b,ESC v,-<TD>前のページを表示します.
+<TR><TD>l<TD>カーソルを右に移動します.
+<TR><TD>h<TD>カーソルを左に移動します.
+<TR><TD>j<TD>カーソルを下に移動します.
+<TR><TD>k<TD>カーソルを上に移動します.
+<TR><TD>J<TD>画面を1行上にスクロールします.
+<TR><TD>K<TD>画面を1行下にスクロールします.
+<TR><TD>^<TD>行頭に移動します.
+<TR><TD>$<TD>行末に移動します.
+<TR><TD>&gt;<TD>画面全体を右にずらします.(表示内容を左にずらす)
+<TR><TD>&lt;<TD>画面全体を左にずらします.(表示内容を右にずらす)
+<TR><TD>C-a<TD>文書のいちばん上の行に移動します.
+<TR><TD>C-e<TD>文書のいちばん下の行に移動します.
+<TR><TD>G<TD>画面下で行番号を入力し,そこで指定した行に移動します.
+ここで $ を入力すると,最終行に移動します.
+<TR><TD>Z<TD>カーソルのある位置を行の中央に移動します.
+<TR><TD>z<TD>カーソルのある行を画面の中央に移動します.
+<TR><TD>TAB, C-n, 下矢印<TD>次のリンクに移動します.
+<TR><TD>ESC TAB, C-p, 上矢印<TD>前のリンクに移動します.
+<TR><TD>C-g<TD>ページ中での現在位置を表示します.
</table>
-<H3>�ϥ��ѡ�������</H3>
+<H3>ハイパーリンク操作</H3>
<table cellpadding=0>
-<TR><TD WIDTH=100>RET, C-f, �����<TD>���ߥ������뤬�����󥯤��ؤ����ʸ����ɤߤ��ߤޤ���
-<TR><TD>d, ESC RET<TD>���ߥ������뤬�����󥯤��ؤ����ʸ���ե��������¸���ޤ���
-<TR><TD>u<TD>���ߥ������뤬�����󥯤��ؤ����URL��ɽ�����ޤ���
-<TR><TD>i<TD>��󥯤˴�Ϣ�դ���줿�����ؤ�URL��ɽ�����ޤ���
-<TR><TD>I<TD>���ߥ������뤬�����󥯤��б����������ɽ�����ޤ���
-<TR><TD>ESC I<TD>���ߥ������뤬�����󥯤��ؤ�������ե��������¸���ޤ���
-<TR><TD>:<TD>URL����ʸ������󥯤ˤ��ޤ������ε�ǽ�ϡ�HTML�Ǥʤ�ʸ���
-�ɤ�Ǥ���Ȥ��ˤ�ͭ���Ǥ���
-<TR><TD>ESC :<TD>Message-ID����ʸ�����news: �Υ�󥯤ˤ��ޤ������ε�ǽ�ϡ�HTML�Ǥʤ�ʸ����ɤ�Ǥ���Ȥ��ˤ�ͭ���Ǥ���
-<TR><TD>c<TD>���ߤ�ʸ���URL��ɽ�����ޤ���
-<TR><TD>=<TD>���ߤ�ʸ��˴ؤ�������ɽ�����ޤ���
-<TR><TD>C-h<TD>URL�����ɽ�����ޤ���
-<TR><TD>F<TD>&lt;FRAMESET&gt;��ޤ�ʸ���ɽ�����Ƥ���Ȥ��ˡ�&lt;FRAME&gt;
-�����λؤ�ʣ����ʸ���1�Ĥ�ʸ����Ѵ�����ɽ�����ޤ���
-<TR><TD>M<TD>���߸��Ƥ���ڡ����򡤳����֥饦����Ȥä�ɽ�����ޤ���
-2M, 3M ��2���ܤ�3���ܤΥ֥饦����Ȥ��ޤ���
-<TR><TD>ESC M<TD>���ߤΥ����򡤳����֥饦����Ȥä�ɽ�����ޤ���
-2ESC M, 3ESC M ��2���ܤ�3���ܤΥ֥饦����Ȥ��ޤ���
+<TR><TD WIDTH=100>RET, C-f, 右矢印<TD>現在カーソルがあるリンクが指す先の文書を読みこみます.
+<TR><TD>d, ESC RET<TD>現在カーソルがあるリンクが指す先の文書をファイルに保存します.
+<TR><TD>u<TD>現在カーソルがあるリンクが指す先のURLを表示します.
+<TR><TD>i<TD>リンクに関連付けられた画像へのURLを表示します.
+<TR><TD>I<TD>現在カーソルがあるリンクに対応する画像を表示します.
+<TR><TD>ESC I<TD>現在カーソルがあるリンクが指す画像をファイルに保存します.
+<TR><TD>:<TD>URL風の文字列をリンクにします.この機能は,HTMLでない文書を
+読んでいるときにも有効です.
+<TR><TD>ESC :<TD>Message-ID風の文字列を,news: のリンクにします.この機能は,HTMLでない文書を読んでいるときにも有効です.
+<TR><TD>c<TD>現在の文書のURLを表示します.
+<TR><TD>=<TD>現在の文書に関する情報を表示します.
+<TR><TD>C-h<TD>URL履歴を表示します.
+<TR><TD>F<TD>&lt;FRAMESET&gt;を含む文書を表示しているときに,&lt;FRAME&gt;
+タグの指す複数の文書を1つの文書に変換して表示します.
+<TR><TD>M<TD>現在見ているページを,外部ブラウザを使って表示します.
+2M, 3M, ..., 9M で2番目,3番目,9番目のブラウザを使います.
+<TR><TD>ESC M<TD>現在のリンク先を,外部ブラウザを使って表示します.
+2ESC M, 3ESC M, ..., 9ESC M で2番目,3番目,9番目のブラウザを使います.
</table>
-<H3>�ե������URL�ط������</H3>
+<H3>ファイルとURL関係の操作</H3>
<table cellpadding=0>
-<TR><TD WIDTH=100>g, U<TD>URL����ꤷ�Ƴ����ޤ���
-<TR><TD>V<TD>��������ե��������ꤷ�Ƴ����ޤ���
-<TR><TD>@<TD>���ޥ�ɤ�¹Ԥ�����̤������ɤ�Ǥ���ɽ�����ޤ���
-<TR><TD>#<TD>���ޥ�ɤ�¹Ԥ�����̤��ɤߤ��ߤʤ���ɽ�����ޤ���
+<TR><TD WIDTH=100>g, U<TD>URLを指定して開きます.
+<TR><TD>V<TD>ローカルファイルを指定して開きます.
+<TR><TD>@<TD>コマンドを実行し,結果を全部読んでから表示します.
+<TR><TD>#<TD>コマンドを実行し,結果を読みこみながら表示します.
</table>
-<H3>�Хåե����</H3>
+<H3>バッファ操作</H3>
<table cellpadding=0>
-<TR><TD WIDTH=100>B, C-b, �����<TD>���߸��Ƥ���Хåե���������������ΥХåե���ɽ�����ޤ���
-<TR><TD>\<TD>HTML�Υ�������ɽ�����ޤ���
-<TR><TD>s<TD>�Хåե�����⡼�ɤ�����ޤ���
-<TR><TD>E<TD>���߸��Ƥ���Хåե�����������ե�����ξ�硤���Υե�����򥨥ǥ������Խ����ޤ������ǥ�����λ�����塤���Υե����������ɤ߹��ߤޤ���
-<TR><TD>C-l, C-w<TD>���̤�����褷�ޤ���
-<TR><TD>R, C-r<TD>�Хåե�������ɤ߹��ߤޤ���
-<TR><TD>S, p<TD>�Хåե���ɽ�����Ƥ�ե��������¸���ޤ���
-<TR><TD>ESC s<TD>HTML�Υ�������ե��������¸���ޤ���v �ǥ�������ɽ������ S ��
-��¸����ΤȤۤ�Ʊ���Ǥ�����ESC s ����¸�����ե�����ϴ��������ɤ����ꥸ�ʥ��
-�ޤޤǤ���Τ��Ф��ơ�v S ����¸����ȸ���ɽ���˻ȤäƤ�����������ɤ��Ѵ�����
-����¸����ޤ���
-<TR><TD>ESC e<TD>����ɽ������Ƥ���Хåե���ɽ������Ƥ�������Τޤ�
-���ǥ������Խ����ޤ���
+<TR><TD WIDTH=100>B, C-b, 左矢印<TD>現在見ているバッファを削除し,一つ前のバッファを表示します.
+<TR><TD>\<TD>HTMLのソースを表示します.
+<TR><TD>s<TD>バッファ選択モードに入ります.
+<TR><TD>E<TD>現在見ているバッファがローカルファイルの場合,そのファイルをエディタで編集します.エディタを終了した後,そのファイルを再度読み込みます.
+<TR><TD>C-l, C-w<TD>画面を再描画します.
+<TR><TD>R, C-r<TD>バッファを再度読み込みます.
+<TR><TD>S, p<TD>バッファの表示内容をファイルに保存します.
+<TR><TD>ESC s<TD>HTMLのソースをファイルに保存します.v でソースを表示して S で
+保存するのとほぼ同じですが,ESC s で保存したファイルは漢字コードがオリジナルの
+ままであるのに対して,v S で保存すると現在表示に使っている漢字コードに変換され
+て保存されます.
+<TR><TD>ESC e<TD>現在表示されているバッファを,表示されている形式のまま
+エディタで編集します.
</table>
-<H3>�Хåե�����⡼��</H3>
-"s" �ǥХåե�����⡼�ɤ����ä��Ȥ��Υ������Ǥ���
+<H3>バッファ選択モード</H3>
+"s" でバッファ選択モードに入ったときのキー操作です.
<table cellpadding=0>
-<TR><TD WIDTH=100>k,C-p<TD>��ľ�ΥХåե������򤷤ޤ���
-<TR><TD>j,C-n<TD>��IJ��ΥХåե������򤷤ޤ���
-<TR><TD>D<TD>�������򤷤Ƥ���Хåե��������ޤ���
-<TR><TD>RET<TD>�������򤷤Ƥ���Хåե���ɽ�����ޤ���
+<TR><TD WIDTH=100>k,C-p<TD>一つ上のバッファを選択します.
+<TR><TD>j,C-n<TD>一つ下のバッファを選択します.
+<TR><TD>D<TD>現在選択しているバッファを削除します.
+<TR><TD>RET<TD>現在選択しているバッファを表示します.
</table>
-<H3>�֥å��ޡ������</H3>
+<H3>ブックマーク操作</H3>
<table cellpadding=0>
-<TR><TD WIDTH=100>v, ESC b<TD>�֥å��ޡ������ɤ߹��ߤޤ���
-<TR><TD>a, ESC a<TD>���߸��Ƥ���ڡ�����֥å��ޡ������ɲä��ޤ���
+<TR><TD WIDTH=100>v, ESC b<TD>ブックマークを読み込みます.
+<TR><TD>a, ESC a<TD>現在見ているページをブックマークに追加します.
</table>
-<H3>����</H3>
+<H3>検索</H3>
<table cellpadding=0>
-<TR><TD WIDTH=100>/,C-s<TD>���ߤΥ���������֤���ե����������˸����ä�����ɽ���򸡺����ޤ���
-<TR><TD>n<TD>���򸡺����ޤ���
-<TR><TD>w<TD>�ޤ��֤������⡼�ɤ��ڤ괹���ޤ���
+<TR><TD WIDTH=100>/,C-s<TD>現在のカーソル位置からファイル末尾に向かって正規表現を検索します.
+<TR><TD>n<TD>次を検索します.
+<TR><TD>w<TD>折り返し検索モードを切り換えます.
</table>
-<H3>�ޡ������</H3>
+<H3>マーク操作</H3>
<table cellpadding=0>
-<TR><TD WIDTH=100>C-SPC<TD>�ޡ��������꡿������ޤ����ޡ�����ȿžɽ������ޤ���
-<TR><TD>P<TD>������Υޡ����˰�ư���ޤ���
-<TR><TD>N<TD>��ĸ�Υޡ����˰�ư���ޤ���
-<TR><TD>"<TD>����ɽ���ǻ��ꤵ�줿ʸ��������ƥޡ������ޤ���
+<TR><TD WIDTH=100>C-SPC<TD>マークを設定/解除します.マークは反転表示されます.
+<TR><TD>P<TD>一つ前のマークに移動します.
+<TR><TD>N<TD>一つ後のマークに移動します.
+<TR><TD>"<TD>正規表現で指定された文字列を全てマークします.
</table>
-<H3>����¾</H3>
+<H3>その他</H3>
<table cellpadding=0>
-<TR><TD WIDTH=100>!<TD>�����륳�ޥ�ɤ�¹Ԥ��ޤ���
-<TR><TD>H, ?<TD>�إ�ץե������ɽ�����ޤ���
-<TR><TD>o<TD>���ץ��������ѥͥ��ɽ�����ޤ���
-<TR><TD>C-k</TD> <TD>���å���������ɽ��</TD></TR>
-<TR><TD>C-c<TD>ʸ����ɤ߹��ߤ����Ǥ��ޤ���
-<TR><TD>C-z</TD><TD>�����ڥ�ɤ��ޤ���</TD></TR>
-<TR><TD>q<TD>w3m��λ���ޤ������ץ���������ˤ�äơ���λ���뤫�ɤ�����ǧ���ޤ���
-<TR><TD>Q<TD>��ǧ������w3m��λ���ޤ���
+<TR><TD WIDTH=100>!<TD>シェルコマンドを実行します.
+<TR><TD>H, ?<TD>ヘルプファイルを表示します.
+<TR><TD>o<TD>オプション設定パネルを表示します.
+<TR><TD>C-k</TD> <TD>クッキー一覧を表示</TD></TR>
+<TR><TD>C-c<TD>文書の読み込みを中断します.
+<TR><TD>C-z</TD><TD>サスペンドします.</TD></TR>
+<TR><TD>q<TD>w3mを終了します.オプションの設定によって,終了するかどうか確認します.
+<TR><TD>Q<TD>確認せずにw3mを終了します.
</table>
-<H3>���Խ��⡼��</H3>
-���̤κDz��Ԥ�ʸ��������Ϥ������ͭ���ʥ������Ǥ���
+<H3>行編集モード</H3>
+画面の最下行で文字列を入力する場合に有効なキー操作です.
<table cellpadding=0>
-<TR><TD WIDTH=100>C-f<TD>��������򱦤˰�ư���ޤ���
-<TR><TD>C-b<TD>��������򺸤˰�ư���ޤ���
-<TR><TD>C-h<TD>���������ľ����ʸ���������ޤ���
-<TR><TD>C-d<TD>����������֤�ʸ���������ޤ���
-<TR><TD>C-k<TD>����������֤����������ޤ���
-<TR><TD>C-u<TD>����������֤������������ޤ���
-<TR><TD>C-a<TD>ʸ�������Ƭ�˰�ư���ޤ���
-<TR><TD>C-e<TD>ʸ����κǸ�˰�ư���ޤ���
-<TR><TD>SPC<TD>�ե�����̾���ϻ��ˡ��ե�����̾���䴰���ޤ���
-<TR><TD>RETURN<TD>���Ϥ�λ���ޤ���
+<TR><TD WIDTH=100>C-f<TD>カーソルを右に移動します.
+<TR><TD>C-b<TD>カーソルを左に移動します.
+<TR><TD>C-h<TD>カーソルの直前の文字を削除します.
+<TR><TD>C-d<TD>カーソル位置の文字を削除します.
+<TR><TD>C-k<TD>カーソル位置から後を削除します.
+<TR><TD>C-u<TD>カーソル位置から前を削除します.
+<TR><TD>C-a<TD>文字列の先頭に移動します.
+<TR><TD>C-e<TD>文字列の最後に移動します.
+<TR><TD>SPC<TD>ファイル名入力時に,ファイル名を補完します.
+<TR><TD>RETURN<TD>入力を終了します.
</table>
diff --git a/w3mhelp-w3m_en.html.in b/w3mhelp-w3m_en.html.in
index eb46e8a..a692142 100644
--- a/w3mhelp-w3m_en.html.in
+++ b/w3mhelp-w3m_en.html.in
@@ -47,21 +47,21 @@ w3m</A>
<table cellpadding=0>
<TR><TD WIDTH=100>RET<TD>Follow hyperlink
<TR><TD>a, ESC RET<TD>Save link to file
-<TR><TD>u<TD>Peek link URL
-<TR><TD>i<TD>Peek image URL
+<TR><TD>u<TD>Peek at link URL
+<TR><TD>i<TD>Peek at image URL
<TR><TD>I<TD>View inline image
<TR><TD>ESC I<TD>Save inline image to file
-<TR><TD>:<TD>Mark URL-like strings as anchors
-<TR><TD>ESC :<TD>Mark Message-ID-like strings as news anchors
-<TR><TD>c<TD>Peek current URL
+<TR><TD>:<TD>Mark URL-like strings as links
+<TR><TD>ESC :<TD>Mark Message-ID-like strings as links
+<TR><TD>c<TD>Peek at current URL
<TR><TD>=<TD>Display information about current document
<TR><TD>C-g<TD>Show current line number
-<TR><TD>C-h<TD>View history of URL
-<TR><TD>F<TD>Render frame
+<TR><TD>C-h<TD>View browser history
+<TR><TD>F<TD>Render frames
<TR><TD>M<TD>Browse current document using external browser
-(use 2M and 3M to invoke second and third browser)
+(prefix 2, 3, ..., or 9 to invoke alternate configured browsers, e.g. 3 M)
<TR><TD>ESC M<TD>Browse link using external browser
-(use 2ESC M and 3ESC M to invoke second and third browser)
+(prefixed as above, e.g. 3ESC M)
</table>
<H2>File/Stream operation</H2>
@@ -105,7 +105,7 @@ w3m</A>
<TR><TD>?,C-r<TD>Search backward
<TR><TD>n<TD>Search next
<TR><TD>N<TD>Search previous
-<TR><TD>C-w<TD>Toggle wrap search mode
+<TR><TD>C-w<TD>Toggle search wrap mode
</table>
<H2>Dictionary look-up</H2>
@@ -134,7 +134,7 @@ w3m</A>
<TR><TD>Q<TD>Quit without confirmation
</table>
-<H2>Line-edit mode</H2>
+<H2>Line-editing mode</H2>
<table cellpadding=0>
<TR><TD WIDTH=100>C-f<TD>Move cursor forward
<TR><TD>C-b<TD>Move cursor backward
diff --git a/w3mhelp-w3m_ja.html.in b/w3mhelp-w3m_ja.html.in
index 95464ab..95947ca 100644
--- a/w3mhelp-w3m_ja.html.in
+++ b/w3mhelp-w3m_ja.html.in
@@ -1,6 +1,6 @@
<HTML>
<HEAD>
-<TITLE>w3m �إ�� �ڡ���</TITLE>
+<TITLE>w3m ヘルプ ページ</TITLE>
</HEAD>
<BODY>
@@ -8,148 +8,148 @@
*******
<A HREF="http://w3m.sourceforge.net/">w3m</A>
(WWW-wo-Miru) Version @CURRENT_VERSION@ by
- <A HREF="mailto:aito@fw.ipsj.or.jp">A.ITO(��ƣ��§)</A>
+ <A HREF="mailto:aito@fw.ipsj.or.jp">A.ITO(伊藤彰則)</A>
********
<BR>
- ***** ����������� *****
+ ***** キー割り当て *****
</CENTER>
<A HREF="w3mhelp-w3m_en.html">English</A>
-<H2>�ڡ���/���������ư</H2>
+<H2>ページ/カーソル移動</H2>
<TABLE CELLPADDING=0>
- <TR> <TD WIDTH=100>SPC,C-v</TD> <TD>���ڡ���</TD></TR>
- <TR> <TD>b,ESC v</TD> <TD>���ڡ���</TD></TR>
- <TR> <TD>l,C-f</TD> <TD>��������򱦤ذ�ư</TD></TR>
- <TR> <TD>h,C-b</TD> <TD>��������򺸤ذ�ư</TD></TR>
- <TR> <TD>j,C-n</TD> <TD>��������򲼤ذ�ư</TD></TR>
- <TR> <TD>k,C-p</TD> <TD>����������ذ�ư</TD></TR>
- <TR> <TD>J</TD><TD>��Ծ�˥���������(�ʤ�)</TD></TR>
- <TR> <TD>K</TD><TD>��Բ��˥���������(���)</TD></TR>
- <TR> <TD>^,C-a</TD><TD>��Ƭ�˰�ư</TD></TR>
- <TR> <TD>$,C-e</TD><TD>�����˰�ư</TD></TR>
- <TR> <TD>w</TD><TD>����ñ��˰�ư</TD></TR>
- <TR> <TD>W</TD><TD>����ñ��˰�ư</TD></TR>
- <TR> <TD>&gt;</TD> <TD>���˰����ʬ���ե�</TD></TR>
- <TR> <TD>&lt;</TD> <TD>���˰����ʬ���ե�</TD></TR>
- <TR> <TD>.</TD> <TD>���˰�ʸ��ʬ���ե�</TD></TR>
- <TR> <TD>,</TD> <TD>���˰�ʸ��ʬ���ե�</TD></TR>
- <TR> <TD>g,M-&lt;</TD> <TD>�ڡ�������Ƭ�Ԥ˰�ư</TD></TR>
- <TR> <TD>G,M-&gt;</TD> <TD>�ڡ����κǽ��Ԥ˰�ư</TD></TR>
- <TR> <TD>ESC g</TD> <TD>����Ԥ˰�ư</TD></TR>
- <TR> <TD>Z</TD> <TD>��������Τ�����֤�Ԥ�����˰�ư</TD></TR>
- <TR> <TD>z</TD> <TD>��������Τ���Ԥ���̤�����˰�ư</TD></TR>
- <TR> <TD>TAB</TD> <TD>���Υϥ��ѡ���󥯤˰�ư</TD></TR>
- <TR> <TD>C-u, ESC TAB</TD> <TD>���Υϥ��ѡ���󥯤˰�ư</TD></TR>
- <TR> <TD>[</TD> <TD>�ǽ�Υϥ��ѡ���󥯤˰�ư</TD></TR>
- <TR> <TD>]</TD> <TD>�Ǹ�Υϥ��ѡ���󥯤˰�ư</TD></TR>
+ <TR> <TD WIDTH=100>SPC,C-v</TD> <TD>次ページ</TD></TR>
+ <TR> <TD>b,ESC v</TD> <TD>前ページ</TD></TR>
+ <TR> <TD>l,C-f</TD> <TD>カーソルを右へ移動</TD></TR>
+ <TR> <TD>h,C-b</TD> <TD>カーソルを左へ移動</TD></TR>
+ <TR> <TD>j,C-n</TD> <TD>カーソルを下へ移動</TD></TR>
+ <TR> <TD>k,C-p</TD> <TD>カーソルを上へ移動</TD></TR>
+ <TR> <TD>J</TD><TD>一行上にスクロール(進む)</TD></TR>
+ <TR> <TD>K</TD><TD>一行下にスクロール(戻る)</TD></TR>
+ <TR> <TD>^,C-a</TD><TD>行頭に移動</TD></TR>
+ <TR> <TD>$,C-e</TD><TD>行末に移動</TD></TR>
+ <TR> <TD>w</TD><TD>次の単語に移動</TD></TR>
+ <TR> <TD>W</TD><TD>前の単語に移動</TD></TR>
+ <TR> <TD>&gt;</TD> <TD>右に一画面分シフト</TD></TR>
+ <TR> <TD>&lt;</TD> <TD>左に一画面分シフト</TD></TR>
+ <TR> <TD>.</TD> <TD>右に一文字分シフト</TD></TR>
+ <TR> <TD>,</TD> <TD>左に一文字分シフト</TD></TR>
+ <TR> <TD>g,M-&lt;</TD> <TD>ページの先頭行に移動</TD></TR>
+ <TR> <TD>G,M-&gt;</TD> <TD>ページの最終行に移動</TD></TR>
+ <TR> <TD>ESC g</TD> <TD>指定行に移動</TD></TR>
+ <TR> <TD>Z</TD> <TD>カーソルのある位置を行の中央に移動</TD></TR>
+ <TR> <TD>z</TD> <TD>カーソルのある行を画面の中央に移動</TD></TR>
+ <TR> <TD>TAB</TD> <TD>次のハイパーリンクに移動</TD></TR>
+ <TR> <TD>C-u, ESC TAB</TD> <TD>前のハイパーリンクに移動</TD></TR>
+ <TR> <TD>[</TD> <TD>最初のハイパーリンクに移動</TD></TR>
+ <TR> <TD>]</TD> <TD>最後のハイパーリンクに移動</TD></TR>
</TABLE>
-<H2>�ϥ��ѡ�������</H2>
+<H2>ハイパーリンク操作</H2>
<TABLE CELLPADDING=0>
- <TR> <TD WIDTH=100>RET</TD> <TD>�������벼�Υ�󥯤�����</TD></TR>
- <TR> <TD>a, ESC RET</TD> <TD>������ʸ���ե��������¸</TD></TR>
- <TR> <TD>ESC I</TD> <TD>�����β�����ե��������¸</TD></TR>
- <TR> <TD>u</TD> <TD>�����URL��ɽ��</TD></TR>
- <TR> <TD>i</TD> <TD>��󥯤˴�Ϣ�դ���줿�����ؤ�URL��ɽ��</TD></TR>
- <TR> <TD>I</TD> <TD>����饤�󥤥᡼����ɽ��</TD></TR>
- <TR> <TD>:</TD> <TD>URL�Τ褦��ʸ���򥢥󥫡��Ȥ��ƥޡ���</TD></TR>
- <TR> <TD>ESC :</TD> <TD>Message-ID�Τ褦��ʸ���򥢥󥫡��Ȥ��ƥޡ���</TD></TR>
- <TR> <TD>c</TD> <TD>���ڡ�����URL��ɽ��</TD></TR>
- <TR> <TD>=</TD> <TD>���ɥ�����Ȥξ����ɽ��</TD></TR>
- <TR> <TD>C-g</TD> <TD>�ڡ�����Ǥθ��߰��֤�ɽ��</TD></TR>
- <TR> <TD>C-h</TD> <TD>URL�����ɽ��</TD></TR>
- <TR> <TD>F</TD> <TD>�ե졼���ɽ������</TD></TR>
- <TR> <TD>M</TD> <TD>���ڡ��������֥饦����ɽ������(2M,3M��2���ܤ�3���ܤΥ֥饦����ƤӤ���)</TD></TR>
- <TR> <TD>ESC M</TD> <TD>���������֥饦����ɽ������(2ESC M,3ESC M��2���ܤ�3���ܤΥ֥饦����ƤӤ���)</TD></TR>
+ <TR> <TD WIDTH=100>RET</TD> <TD>カーソル下のリンクへ飛ぶ</TD></TR>
+ <TR> <TD>a, ESC RET</TD> <TD>リンク先の文書をファイルに保存</TD></TR>
+ <TR> <TD>ESC I</TD> <TD>リンク先の画像をファイルに保存</TD></TR>
+ <TR> <TD>u</TD> <TD>リンク先URLの表示</TD></TR>
+ <TR> <TD>i</TD> <TD>リンクに関連付けられた画像へのURLの表示</TD></TR>
+ <TR> <TD>I</TD> <TD>インラインイメージの表示</TD></TR>
+ <TR> <TD>:</TD> <TD>URLのような文字をアンカーとしてマーク</TD></TR>
+ <TR> <TD>ESC :</TD> <TD>Message-IDのような文字をアンカーとしてマーク</TD></TR>
+ <TR> <TD>c</TD> <TD>現ページのURLを表示</TD></TR>
+ <TR> <TD>=</TD> <TD>現ドキュメントの情報を表示</TD></TR>
+ <TR> <TD>C-g</TD> <TD>ページ中での現在位置を表示</TD></TR>
+ <TR> <TD>C-h</TD> <TD>URL履歴を表示</TD></TR>
+ <TR> <TD>F</TD> <TD>フレームを表示する</TD></TR>
+ <TR> <TD>M</TD> <TD>現ページを外部ブラウザで表示する(2M, 3M, ..., 9M で2番目,3番目,9番目のブラウザを呼びだす)</TD></TR>
+ <TR> <TD>ESC M</TD> <TD>リンク先を外部ブラウザで表示する(2ESC M, 3ESC M, ..., 9ESC M で2番目,3番目,9番目のブラウザを呼びだす)</TD></TR>
</TABLE>
-<H2>�ե�����/���ȥ꡼�����</H2>
+<H2>ファイル/ストリーム操作</H2>
<TABLE CELLPADDING=0>
- <TR> <TD WIDTH=100>U</TD> <TD>URL�����</TD></TR>
- <TR> <TD>V</TD> <TD>�ե�����򳫤�</TD></TR>
- <TR> <TD>@</TD> <TD>�������ư���ɤ߹���</TD></TR>
- <TR> <TD>#</TD> <TD>�������ư���ɤ߹���</TD></TR>
+ <TR> <TD WIDTH=100>U</TD> <TD>URLを指定</TD></TR>
+ <TR> <TD>V</TD> <TD>ファイルを開く</TD></TR>
+ <TR> <TD>@</TD> <TD>シェルを起動し読み込む</TD></TR>
+ <TR> <TD>#</TD> <TD>シェルを起動し読み込む</TD></TR>
</TABLE>
-<H2>�Хåե����</H2>
+<H2>バッファ操作</H2>
<TABLE CELLPADDING=0>
- <TR> <TD WIDTH=100>B</TD> <TD>���ΥХåե��˰�ư</TD></TR>
- <TR> <TD>v</TD> <TD>HTML��������ɽ��</TD></TR>
- <TR> <TD>s</TD> <TD>�Хåե�������</TD></TR>
- <TR> <TD>E</TD> <TD>�Хåե��Υ��������Խ�</TD></TR>
- <TR> <TD>C-l</TD> <TD>���̤κ�����</TD></TR>
- <TR> <TD>R</TD> <TD>�Хåե�����ɤ߹���</TD></TR>
- <TR> <TD>S</TD> <TD>�Хåե�����¸</TD></TR>
- <TR> <TD>ESC s</TD> <TD>HTML����������¸</TD></TR>
- <TR> <TD>ESC e</TD> <TD>�Хåե���ɽ�����᡼�����Խ�</TD></TR>
+ <TR> <TD WIDTH=100>B</TD> <TD>前のバッファに移動</TD></TR>
+ <TR> <TD>v</TD> <TD>HTMLソースを表示</TD></TR>
+ <TR> <TD>s</TD> <TD>バッファを選択</TD></TR>
+ <TR> <TD>E</TD> <TD>バッファのソースを編集</TD></TR>
+ <TR> <TD>C-l</TD> <TD>画面の再描画</TD></TR>
+ <TR> <TD>R</TD> <TD>バッファを再読み込み</TD></TR>
+ <TR> <TD>S</TD> <TD>バッファを保存</TD></TR>
+ <TR> <TD>ESC s</TD> <TD>HTMLソースを保存</TD></TR>
+ <TR> <TD>ESC e</TD> <TD>バッファの表示イメージを編集</TD></TR>
</TABLE>
-<H2>�Хåե�����⡼��</H2>
-"s" �ǥХåե�����⡼�ɤ����ä��Ȥ��Υ������
+<H2>バッファ選択モード</H2>
+"s" でバッファ選択モードに入ったときのキー操作
<TABLE CELLPADDING=0>
- <TR> <TD WIDTH=100>k,C-p</TD> <TD>��ľ�ΥХåե�������</TD></TR>
- <TR> <TD>j,C-n</TD> <TD>��IJ��ΥХåե�������</TD></TR>
- <TR> <TD>D</TD> <TD>�������򤷤Ƥ���Хåե�����</TD></TR>
- <TR> <TD>RET</TD> <TD>�������򤷤Ƥ���Хåե���ɽ��</TD></TR>
+ <TR> <TD WIDTH=100>k,C-p</TD> <TD>一つ上のバッファを選択</TD></TR>
+ <TR> <TD>j,C-n</TD> <TD>一つ下のバッファを選択</TD></TR>
+ <TR> <TD>D</TD> <TD>現在選択しているバッファを削除</TD></TR>
+ <TR> <TD>RET</TD> <TD>現在選択しているバッファを表示</TD></TR>
</TABLE>
-<H2>�֥å��ޡ������</H2>
+<H2>ブックマーク操作</H2>
<TABLE CELLPADDING=0>
- <TR> <TD WIDTH=100>ESC b</TD> <TD>�֥å��ޡ������ɤ߹���</TD></TR>
- <TR> <TD>ESC a</TD> <TD>���ڡ�����֥å��ޡ������ɲ�</TD></TR>
+ <TR> <TD WIDTH=100>ESC b</TD> <TD>ブックマークを読み込む</TD></TR>
+ <TR> <TD>ESC a</TD> <TD>現ページをブックマークに追加</TD></TR>
</TABLE>
-<H2>����</H2>
+<H2>検索</H2>
<TABLE CELLPADDING=0>
- <TR> <TD WIDTH=100>/,C-s</TD> <TD>��������</TD></TR>
- <TR> <TD>?,C-r</TD> <TD>��������</TD></TR>
- <TR> <TD>n</TD> <TD>���򸡺�</TD></TR>
- <TR> <TD>N</TD> <TD>���򸡺�</TD></TR>
- <TR> <TD>C-w</TD> <TD>�ޤ��֤������⡼�ɤ��ڤ괹��</TD></TR>
+ <TR> <TD WIDTH=100>/,C-s</TD> <TD>前方検索</TD></TR>
+ <TR> <TD>?,C-r</TD> <TD>後方検索</TD></TR>
+ <TR> <TD>n</TD> <TD>次を検索</TD></TR>
+ <TR> <TD>N</TD> <TD>前を検索</TD></TR>
+ <TR> <TD>C-w</TD> <TD>折り返し検索モードの切り換え</TD></TR>
</TABLE>
-<H2>���񸡺�</H2>
+<H2>辞書検索</H2>
<TABLE CELLPADDING=0>
- <TR> <TD WIDTH=100>M-w</TD> <TD>���Ϥ���ñ��򼭽񥳥ޥ�ɤǸ���</TD></TR>
- <TR> <TD>M-W</TD> <TD>����������֤�ñ��򼭽񥳥ޥ�ɤǸ���</TD></TR>
+ <TR> <TD WIDTH=100>M-w</TD> <TD>入力した単語を辞書コマンドで検索</TD></TR>
+ <TR> <TD>M-W</TD> <TD>カーソル位置の単語を辞書コマンドで検索</TD></TR>
</TABLE>
-<H2>�ޡ������</H2>
+<H2>マーク操作</H2>
<TABLE CELLPADDING=0>
- <TR> <TD WIDTH=100>C-SPC</TD> <TD>�ޡ���������/�õ�</TD></TR>
- <TR> <TD>ESC p</TD> <TD>���Υޡ����ذ�ư</TD></TR>
- <TR> <TD>ESC n</TD> <TD>���Υޡ����ذ�ư</TD></TR>
- <TR> <TD>"</TD> <TD>����ɽ���ˤ��ޡ���</TD></TR>
+ <TR> <TD WIDTH=100>C-SPC</TD> <TD>マークの設定/消去</TD></TR>
+ <TR> <TD>ESC p</TD> <TD>前のマークへ移動</TD></TR>
+ <TR> <TD>ESC n</TD> <TD>次のマークへ移動</TD></TR>
+ <TR> <TD>"</TD> <TD>正規表現によるマーク</TD></TR>
</TABLE>
-<H2>����¾</H2>
+<H2>その他</H2>
<TABLE CELLPADDING=0>
- <TR> <TD WIDTH=100>!</TD> <TD>������μ¹�</TD></TR>
- <TR> <TD>H</TD> <TD>�إ��(���Υե������ɽ��)</TD></TR>
- <TR> <TD>o</TD> <TD>���ץ��������</TD></TR>
- <TR> <TD>C-k</TD> <TD>���å���������ɽ��</TD></TR>
- <TR> <TD>C-c</TD> <TD>ʸ����ɤ߹��ߤ�����</TD></TR>
- <TR> <TD>C-z</TD> <TD>�����ڥ��</TD></TR>
- <TR> <TD>q</TD> <TD>w3m��λ(��ǧ����)</TD></TR>
- <TR> <TD>Q</TD> <TD>w3m��λ(��ǧ�ʤ�)</TD></TR>
+ <TR> <TD WIDTH=100>!</TD> <TD>シェルの実行</TD></TR>
+ <TR> <TD>H</TD> <TD>ヘルプ(このファイルを表示)</TD></TR>
+ <TR> <TD>o</TD> <TD>オプション設定</TD></TR>
+ <TR> <TD>C-k</TD> <TD>クッキー一覧を表示</TD></TR>
+ <TR> <TD>C-c</TD> <TD>文書の読み込みを中断</TD></TR>
+ <TR> <TD>C-z</TD> <TD>サスペンド</TD></TR>
+ <TR> <TD>q</TD> <TD>w3mを終了(確認あり)</TD></TR>
+ <TR> <TD>Q</TD> <TD>w3mを終了(確認なし)</TD></TR>
</TABLE>
-<H2>���Խ��⡼��</H2>
+<H2>行編集モード</H2>
<TABLE CELLPADDING=0>
- <TR> <TD WIDTH=100>C-f</TD> <TD>��������򱦤ذ�ư</TD></TR>
- <TR> <TD>C-b</TD> <TD>��������򺸤ذ�ư</TD></TR>
- <TR> <TD>C-h</TD> <TD>����ʸ������</TD></TR>
- <TR> <TD>C-d</TD> <TD>����������֤�ʸ������</TD></TR>
- <TR> <TD>C-k</TD> <TD>��������θ��������ƺ��</TD></TR>
- <TR> <TD>C-u</TD> <TD>������������ޤǤ����ƺ��</TD></TR>
- <TR> <TD>C-a</TD> <TD>��Ƭ�˰�ư</TD></TR>
- <TR> <TD>C-e</TD> <TD>�����ذ�ư</TD></TR>
- <TR> <TD>C-p</TD> <TD>�ҥ��ȥ꤫��������ʸ�������Ф�</TD></TR>
- <TR> <TD>C-n</TD> <TD>�ҥ��ȥ꤫�鼡��ʸ�������Ф�</TD></TR>
- <TR> <TD>TAB,SPC</TD> <TD>�ե�����̾���䴰</TD></TR>
- <TR> <TD>RETURN</TD> <TD>���Ͻ�λ</TD></TR>
+ <TR> <TD WIDTH=100>C-f</TD> <TD>カーソルを右へ移動</TD></TR>
+ <TR> <TD>C-b</TD> <TD>カーソルを左へ移動</TD></TR>
+ <TR> <TD>C-h</TD> <TD>前の文字を削除</TD></TR>
+ <TR> <TD>C-d</TD> <TD>カーソル位置の文字を削除</TD></TR>
+ <TR> <TD>C-k</TD> <TD>カーソルの後方を全て削除</TD></TR>
+ <TR> <TD>C-u</TD> <TD>カーソルの前までを全て削除</TD></TR>
+ <TR> <TD>C-a</TD> <TD>行頭に移動</TD></TR>
+ <TR> <TD>C-e</TD> <TD>行末へ移動</TD></TR>
+ <TR> <TD>C-p</TD> <TD>ヒストリから一つ前の文字列を取り出す</TD></TR>
+ <TR> <TD>C-n</TD> <TD>ヒストリから次の文字列を取り出す</TD></TR>
+ <TR> <TD>TAB,SPC</TD> <TD>ファイル名の補完</TD></TR>
+ <TR> <TD>RETURN</TD> <TD>入力終了</TD></TR>
</TABLE>
<HR>
</BODY>
diff --git a/w3mhelperpanel.c b/w3mhelperpanel.c
index 110794b..96b60a0 100644
--- a/w3mhelperpanel.c
+++ b/w3mhelperpanel.c
@@ -115,6 +115,7 @@ printMailcapPanel(char *mailcap)
printf("</table>\n<input type=submit name=submit value=\"%s\">\n</form>\n\
</body>\n</html>\n",
MSG_DOIT);
+ fclose(f);
}
void
diff --git a/w3mimg/.cvsignore b/w3mimg/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/w3mimg/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/w3mimg/Makefile.in b/w3mimg/Makefile.in
index dfc550c..8e2ad73 100644
--- a/w3mimg/Makefile.in
+++ b/w3mimg/Makefile.in
@@ -16,9 +16,9 @@ IMGCFLAGS=@IMGX11CFLAGS@ @IMGFBCFLAGS@ @IMGWINCFLAGS@
IMGOBJS=@IMGOBJS@
.PHONY: $(SUBDIRS)
-all: @IMGTARGETS@ w3mimg.a
+all: w3mimg.a
-w3mimg.a: $(IMGOBJS)
+w3mimg.a: w3mimg.o @IMGTARGETS@
$(AR) rv $@ $(IMGOBJS)
$(RANLIB) $@
diff --git a/w3mimg/fb/.cvsignore b/w3mimg/fb/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/w3mimg/fb/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/w3mimg/fb/fb.c b/w3mimg/fb/fb.c
index cd11128..7960584 100644
--- a/w3mimg/fb/fb.c
+++ b/w3mimg/fb/fb.c
@@ -12,12 +12,24 @@
#include <errno.h>
#include <sys/ioctl.h>
#include <sys/mman.h>
+#if defined(__linux__)
#include <linux/fb.h>
+#elif defined(__FreeBSD__)
+#include <sys/fbio.h>
+#endif
+#if defined(__FreeBSD__)
+#include <sys/types.h>
+#include <machine/param.h>
+#endif
#include "fb.h"
#define FB_ENV "FRAMEBUFFER"
+#if defined(__linux__)
#define FB_DEFDEV "/dev/fb0"
+#elif defined(__FreeBSD__)
+#define FB_DEFDEV "/dev/ttyv0"
+#endif
#define MONO_OFFSET_8BIT 0x40
#define COLORS_MONO_8BIT 0x40
@@ -38,22 +50,65 @@
#define IMAGE_SIZE_MAX 10000
+#if defined(__linux__)
static struct fb_cmap *fb_cmap_create(struct fb_fix_screeninfo *,
struct fb_var_screeninfo *);
+#elif defined(__FreeBSD__)
+static video_color_palette_t *fb_cmap_create(video_info_t *video_info,
+ video_adapter_info_t *video_adapter_info);
+#endif
+#if defined(__linux__)
static void fb_cmap_destroy(struct fb_cmap *cmap);
+#elif defined(__FreeBSD__)
+static void fb_cmap_destroy(video_color_palette_t *cmap);
+#endif
+#if defined(__linux__)
static int fb_fscrn_get(int fbfp, struct fb_fix_screeninfo *scinfo);
+#endif
+#if defined(__linux__)
static void *fb_mmap(int fbfp, struct fb_fix_screeninfo *scinfo);
+#elif defined(__FreeBSD__)
+static void *fb_mmap(int fbfp, video_adapter_info_t *video_adapter_info);
+#endif
+#if defined(__linux__)
static int fb_munmap(void *buf, struct fb_fix_screeninfo *scinfo);
+#elif defined(__FreeBSD__)
+static int fb_munmap(void *buf, video_adapter_info_t *video_adapter_info);
+#endif
+#if defined(__linux__)
static int fb_vscrn_get(int fbfp, struct fb_var_screeninfo *scinfo);
+#endif
+#if defined(__linux__)
static int fb_cmap_set(int fbfp, struct fb_cmap *cmap);
+#elif defined(__FreeBSD__)
+static int fb_cmap_set(int fbfp, video_color_palette_t *cmap);
+#endif
+#if defined(__linux__)
static int fb_cmap_get(int fbfp, struct fb_cmap *cmap);
+#elif defined(__FreeBSD__)
+static int fb_cmap_get(int fbfp, video_color_palette_t *cmap);
+#endif
static int fb_cmap_init(void);
static int fb_get_cmap_index(int r, int g, int b);
static unsigned long fb_get_packed_color(int r, int g, int b);
+#if defined(__FreeBSD__)
+static int fb_video_mode_get(int fbfp, int *video_mode);
+static int fb_video_info_get(int fbfp, video_info_t *video_info);
+static int fb_video_adapter_info_get(int fbfp, video_adapter_info_t *video_adapter_info);
+#endif
+#if defined(__linux__)
static struct fb_fix_screeninfo fscinfo;
static struct fb_var_screeninfo vscinfo;
+#elif defined(__FreeBSD__)
+static video_info_t video_info;
+static video_adapter_info_t video_adapter_info;
+#endif
+#if defined(__linux__)
static struct fb_cmap *cmap = NULL, *cmap_org = NULL;
+#elif defined(__FreeBSD__)
+static video_color_palette_t *cmap = NULL, *cmap_org = NULL;
+#endif
static int is_open = FALSE;
static int fbfp = -1;
static size_t pixel_size = 0;
@@ -63,6 +118,9 @@ int
fb_open(void)
{
char *fbdev = { FB_DEFDEV };
+#if defined(__FreeBSD__)
+ int video_mode;
+#endif
if (is_open == TRUE)
return 1;
@@ -76,6 +134,7 @@ fb_open(void)
goto ERR_END;
}
+#if defined(__linux__)
if (fb_fscrn_get(fbfp, &fscinfo)) {
goto ERR_END;
}
@@ -83,22 +142,69 @@ fb_open(void)
if (fb_vscrn_get(fbfp, &vscinfo)) {
goto ERR_END;
}
+#elif defined(__FreeBSD__)
+ if (fb_video_mode_get(fbfp, &video_mode)) {
+ goto ERR_END;
+ }
+ video_info.vi_mode = video_mode;
+
+ if (fb_video_info_get(fbfp, &video_info)) {
+ goto ERR_END;
+ }
+ if (fb_video_adapter_info_get(fbfp, &video_adapter_info)) {
+ goto ERR_END;
+ }
+ if (!(video_info.vi_flags & V_INFO_GRAPHICS) ||
+ !(video_info.vi_flags & V_INFO_LINEAR)) {
+ goto ERR_END;
+ }
+#endif
+
+#if defined(__linux__)
if ((cmap = fb_cmap_create(&fscinfo, &vscinfo)) == (struct fb_cmap *)-1) {
goto ERR_END;
}
+#elif defined(__FreeBSD__)
+ if ((cmap = fb_cmap_create(&video_info, &video_adapter_info)) == (video_color_palette_t *)-1) {
+ goto ERR_END;
+ }
+#endif
+#if defined(__linux__)
if (!(buf = fb_mmap(fbfp, &fscinfo))) {
fprintf(stderr, "Can't allocate memory.\n");
goto ERR_END;
}
+#elif defined(__FreeBSD__)
+ if (!(buf = fb_mmap(fbfp, &video_adapter_info))) {
+ fprintf(stderr, "Can't allocate memory.\n");
+ goto ERR_END;
+ }
+#endif
+#if defined(__linux__)
if (fscinfo.type != FB_TYPE_PACKED_PIXELS) {
fprintf(stderr, "This type of framebuffer is not supported.\n");
goto ERR_END;
}
+#elif defined(__FreeBSD__)
+ if (!(video_info.vi_mem_model == V_INFO_MM_PACKED ||
+ video_info.vi_mem_model == V_INFO_MM_DIRECT)) {
+ fprintf(stderr, "This type of framebuffer is not supported.\n");
+ goto ERR_END;
+ }
+#endif
+#if defined(__linux__)
if (fscinfo.visual == FB_VISUAL_PSEUDOCOLOR && vscinfo.bits_per_pixel == 8) {
+#elif defined(__FreeBSD__)
+ if (video_adapter_info.va_flags & V_ADP_PALETTE &&
+ video_info.vi_mem_model == V_INFO_MM_PACKED &&
+ video_info.vi_depth == 8) {
+#else
+ if (0) {
+#endif
if (fb_cmap_get(fbfp, cmap)) {
fprintf(stderr, "Can't get color map.\n");
fb_cmap_destroy(cmap);
@@ -111,6 +217,7 @@ fb_open(void)
pixel_size = 1;
}
+#if defined(__linux__)
else if ((fscinfo.visual == FB_VISUAL_TRUECOLOR ||
fscinfo.visual == FB_VISUAL_DIRECTCOLOR) &&
(vscinfo.bits_per_pixel == 15 ||
@@ -118,6 +225,14 @@ fb_open(void)
vscinfo.bits_per_pixel == 24 || vscinfo.bits_per_pixel == 32)) {
pixel_size = (vscinfo.bits_per_pixel + 7) / CHAR_BIT;
}
+#elif defined(__FreeBSD__)
+ else if (video_info.vi_mem_model == V_INFO_MM_DIRECT &&
+ (video_info.vi_depth == 15 ||
+ video_info.vi_depth == 16 ||
+ video_info.vi_depth == 24 || video_info.vi_depth == 32)) {
+ pixel_size = (video_info.vi_depth + 7) / CHAR_BIT;
+ }
+#endif
else {
fprintf(stderr, "This type of framebuffer is not supported.\n");
goto ERR_END;
@@ -147,7 +262,11 @@ fb_close(void)
cmap = NULL;
}
if (buf != NULL) {
+#if defined(__linux__)
fb_munmap(buf, &fscinfo);
+#elif defined(__FreeBSD__)
+ fb_munmap(buf, &video_adapter_info);
+#endif
buf = NULL;
}
@@ -259,11 +378,19 @@ fb_image_draw(FB_IMAGE * image, int x, int y, int sx, int sy, int width,
if (y + height > fb_height())
height = fb_height() - y;
+#if defined(__linux__)
offset_fb = fscinfo.line_length * y + pixel_size * x;
+#elif defined(__FreeBSD__)
+ offset_fb = video_adapter_info.va_line_width * y + pixel_size * x;
+#endif
offset_img = image->rowstride * sy + pixel_size * sx;
for (i = 0; i < height; i++) {
memcpy(buf + offset_fb, image->data + offset_img, pixel_size * width);
+#if defined(__linux__)
offset_fb += fscinfo.line_length;
+#elif defined(__FreeBSD__)
+ offset_fb += video_adapter_info.va_line_width;
+#endif
offset_img += image->rowstride;
}
@@ -336,7 +463,11 @@ fb_width(void)
if (is_open != TRUE)
return 0;
+#if defined(__linux__)
return vscinfo.xres;
+#elif defined(__FreeBSD__)
+ return video_info.vi_width;
+#endif
}
int
@@ -345,7 +476,11 @@ fb_height(void)
if (is_open != TRUE)
return 0;
+#if defined(__linux__)
return vscinfo.yres;
+#elif defined(__FreeBSD__)
+ return video_info.vi_height;
+#endif
}
int
@@ -369,7 +504,11 @@ fb_clear(int x, int y, int w, int h, int r, int g, int b)
h = fb_height() - y;
if (tmp == NULL) {
+#if defined(__linux__)
tmp = malloc(fscinfo.line_length);
+#elif defined(__FreeBSD__)
+ tmp = malloc(video_adapter_info.va_line_width);
+#endif
if (tmp == NULL)
return 1;
}
@@ -384,10 +523,18 @@ fb_clear(int x, int y, int w, int h, int r, int g, int b)
gg = g;
bb = b;
}
+#if defined(__linux__)
offset_fb = fscinfo.line_length * y + pixel_size * x;
+#elif defined(__FreeBSD__)
+ offset_fb = video_adapter_info.va_line_width * y + pixel_size * x;
+#endif
for (i = 0; i < h; i++) {
memcpy(buf + offset_fb, tmp, pixel_size * w);
+#if defined(__linux__)
offset_fb += fscinfo.line_length;
+#elif defined(__FreeBSD__)
+ offset_fb += video_adapter_info.va_line_width;
+#endif
}
return 0;
}
@@ -400,11 +547,21 @@ fb_get_packed_color(int r, int g, int b)
return fb_get_cmap_index(r, g, b);
}
else {
+#if defined(__linux__)
return
((r >> (CHAR_BIT - vscinfo.red.length)) << vscinfo.red.offset) +
((g >> (CHAR_BIT - vscinfo.green.length)) << vscinfo.green.
offset) +
((b >> (CHAR_BIT - vscinfo.blue.length)) << vscinfo.blue.offset);
+#elif defined(__FreeBSD__)
+ return
+ ((r >> (CHAR_BIT - video_info.vi_pixel_fsizes[0])) <<
+ video_info.vi_pixel_fields[0]) +
+ ((g >> (CHAR_BIT - video_info.vi_pixel_fsizes[1])) <<
+ video_info.vi_pixel_fields[1]) +
+ ((b >> (CHAR_BIT - video_info.vi_pixel_fsizes[2])) <<
+ video_info.vi_pixel_fields[2]);
+#endif
}
}
@@ -433,16 +590,31 @@ fb_cmap_init(void)
if (cmap == NULL)
return 1;
+#if defined(__linux__)
if (cmap->len < COLOR_OFFSET_8BIT + COLORS_8BIT) {
fprintf(stderr, "Can't allocate enough color.\n");
return 1;
}
+#elif defined(__FreeBSD__)
+ if (cmap->count < COLOR_OFFSET_8BIT + COLORS_8BIT) {
+ fprintf(stderr, "Can't allocate enough color.\n");
+ return 1;
+ }
+#endif
if (cmap_org == NULL) {
+#if defined(__linux__)
if ((cmap_org =
fb_cmap_create(&fscinfo, &vscinfo)) == (struct fb_cmap *)-1) {
return 1;
}
+#elif defined(__FreeBSD__)
+ if ((cmap_org =
+ fb_cmap_create(&video_info, &video_adapter_info)) ==
+ (video_color_palette_t *)-1) {
+ return 1;
+ }
+#endif
if (fb_cmap_get(fbfp, cmap_org)) {
fprintf(stderr, "Can't get color map.\n");
@@ -452,8 +624,13 @@ fb_cmap_init(void)
}
}
+#if defined(__linux__)
cmap->start = MONO_OFFSET_8BIT;
cmap->len = COLORS_8BIT + COLORS_MONO_8BIT;
+#elif defined(__FreeBSD__)
+ cmap->index = MONO_OFFSET_8BIT;
+ cmap->count = COLORS_8BIT + COLORS_MONO_8BIT;
+#endif
for (lp = 0; lp < COLORS_MONO_8BIT; lp++) {
int c;
@@ -506,73 +683,223 @@ fb_cmap_init(void)
#define LUT_MAX (256)
+#if defined(__linux__)
static struct fb_cmap *
fb_cmap_create(struct fb_fix_screeninfo *fscinfo,
struct fb_var_screeninfo *vscinfo)
+#elif defined(__FreeBSD__)
+static video_color_palette_t *
+fb_cmap_create(video_info_t *video_info,
+ video_adapter_info_t *video_adapter_info)
+#endif
{
+#if defined(__linux__)
struct fb_cmap *cmap;
+#elif defined(__FreeBSD__)
+ video_color_palette_t *cmap;
+#endif
int cmaplen = LUT_MAX;
/* check the existence of colormap */
+#if defined(__linux__)
if (fscinfo->visual == FB_VISUAL_MONO01 ||
fscinfo->visual == FB_VISUAL_MONO10 ||
fscinfo->visual == FB_VISUAL_TRUECOLOR)
return NULL;
+#elif defined(__FreeBSD__)
+ if (!(video_adapter_info->va_flags & V_ADP_PALETTE))
+ return NULL;
+#endif
+#if defined(__linux__)
cmap = (struct fb_cmap *)malloc(sizeof(struct fb_cmap));
+#elif defined(__FreeBSD__)
+ cmap = (video_color_palette_t *)malloc(sizeof(video_color_palette_t));
+#endif
if (!cmap) {
perror("cmap malloc error\n");
+#if defined(__linux__)
return (struct fb_cmap *)-1;
+#elif defined(__FreeBSD__)
+ return (video_color_palette_t *)-1;
+#endif
}
+#if defined(__linux__)
memset(cmap, 0, sizeof(struct fb_cmap));
+#elif defined(__FreeBSD__)
+ memset(cmap, 0, sizeof(video_color_palette_t));
+#endif
+
+#if defined(__FreeBSD__)
+ if (video_info->vi_mem_model == V_INFO_MM_PACKED) {
+ cmap->red = (u_char *) malloc(sizeof(u_char) * cmaplen);
+ if (!cmap->red) {
+ perror("red lut malloc error\n");
+ return (video_color_palette_t *)-1;
+ }
+ cmap->green = (u_char *) malloc(sizeof(u_char) * cmaplen);
+ if (!cmap->green) {
+ perror("green lut malloc error\n");
+ free(cmap->red);
+ return (video_color_palette_t *)-1;
+ }
+ cmap->blue = (u_char *) malloc(sizeof(u_char) * cmaplen);
+ if (!cmap->blue) {
+ perror("blue lut malloc error\n");
+ free(cmap->red);
+ free(cmap->green);
+ return (video_color_palette_t *)-1;
+ }
+ cmap->transparent = (u_char *) malloc(sizeof(u_char) * cmaplen);
+ if (!cmap->transparent) {
+ perror("transparent lut malloc error\n");
+ free(cmap->red);
+ free(cmap->green);
+ free(cmap->blue);
+ return (video_color_palette_t *)-1;
+ }
+ cmap->count = cmaplen;
+ return cmap;
+ }
+#endif
/* Allocates memory for a colormap */
+#if defined(__linux__)
if (vscinfo->red.length) {
cmap->red = (__u16 *) malloc(sizeof(__u16) * cmaplen);
+#elif defined(__FreeBSD__)
+ if (video_info->vi_pixel_fsizes[0]) {
+ cmap->red = (u_char *) malloc(sizeof(u_char) * cmaplen);
+#else
+ if (0) {
+#endif
if (!cmap->red) {
perror("red lut malloc error\n");
+#if defined(__linux__)
return (struct fb_cmap *)-1;
+#elif defined(__FreeBSD__)
+ return (video_color_palette_t *)-1;
+#endif
}
}
+#if defined(__linux__)
if (vscinfo->green.length) {
cmap->green = (__u16 *) malloc(sizeof(__u16) * cmaplen);
+#elif defined(__FreeBSD__)
+ if (video_info->vi_pixel_fsizes[1]) {
+ cmap->green = (u_char *) malloc(sizeof(u_char) * cmaplen);
+#else
+ if (0) {
+#endif
if (!cmap->green) {
+#if defined(__linux__)
if (vscinfo->red.length)
free(cmap->red);
+#elif defined(__FreeBSD__)
+ if (video_info->vi_pixel_fsizes[0])
+ free(cmap->red);
+#endif
perror("green lut malloc error\n");
+#if defined(__linux__)
return (struct fb_cmap *)-1;
+#elif defined(__FreeBSD__)
+ return (video_color_palette_t *)-1;
+#endif
}
}
+#if defined(__linux__)
if (vscinfo->blue.length) {
cmap->blue = (__u16 *) malloc(sizeof(__u16) * cmaplen);
+#elif defined(__FreeBSD__)
+ if (video_info->vi_pixel_fsizes[2]) {
+ cmap->blue = (u_char *) malloc(sizeof(u_char) * cmaplen);
+#else
+ if (0) {
+#endif
if (!cmap->blue) {
+#if defined(__linux__)
if (vscinfo->red.length)
free(cmap->red);
+#elif defined(__FreeBSD__)
+ if (video_info->vi_pixel_fsizes[0])
+ free(cmap->red);
+#endif
+#if defined(__linux__)
if (vscinfo->green.length)
free(cmap->green);
+#elif defined(__FreeBSD__)
+ if (video_info->vi_pixel_fsizes[1])
+ free(cmap->green);
+#endif
perror("blue lut malloc error\n");
+#if defined(__linux__)
return (struct fb_cmap *)-1;
+#elif defined(__FreeBSD__)
+ return (video_color_palette_t *)-1;
+#endif
}
}
+#if defined(__linux__)
if (vscinfo->transp.length) {
cmap->transp = (__u16 *) malloc(sizeof(__u16) * cmaplen);
+#elif defined(__FreeBSD__)
+ if (video_info->vi_pixel_fsizes[3]) {
+ cmap->transparent = (u_char *) malloc(sizeof(u_char) * cmaplen);
+#else
+ if (0) {
+#endif
+#if defined(__linux__)
if (!cmap->transp) {
+#elif defined(__FreeBSD__)
+ if (!cmap->transparent) {
+#else
+ if (0) {
+#endif
+#if defined(__linux__)
if (vscinfo->red.length)
free(cmap->red);
+#elif defined(__FreeBSD__)
+ if (video_info->vi_pixel_fsizes[0])
+ free(cmap->red);
+#endif
+#if defined(__linux__)
if (vscinfo->green.length)
free(cmap->green);
+#elif defined(__FreeBSD__)
+ if (video_info->vi_pixel_fsizes[1])
+ free(cmap->green);
+#endif
+#if defined(__linux__)
if (vscinfo->blue.length)
free(cmap->blue);
perror("transp lut malloc error\n");
+#elif defined(__FreeBSD__)
+ if (video_info->vi_pixel_fsizes[2])
+ free(cmap->blue);
+ perror("transparent lut malloc error\n");
+#endif
+#if defined(__linux__)
return (struct fb_cmap *)-1;
+#elif defined(__FreeBSD__)
+ return (video_color_palette_t *)-1;
+#endif
}
}
+#if defined(__linux__)
cmap->len = cmaplen;
+#elif defined(__FreeBSD__)
+ cmap->count = cmaplen;
+#endif
return cmap;
}
+#if defined(__linux__)
static void
fb_cmap_destroy(struct fb_cmap *cmap)
+#elif defined(__FreeBSD__)
+static void
+fb_cmap_destroy(video_color_palette_t *cmap)
+#endif
{
if (cmap->red)
free(cmap->red);
@@ -580,28 +907,57 @@ fb_cmap_destroy(struct fb_cmap *cmap)
free(cmap->green);
if (cmap->blue)
free(cmap->blue);
+#if defined(__linux__)
if (cmap->transp)
free(cmap->transp);
+#elif defined(__FreeBSD__)
+ if (cmap->transparent)
+ free(cmap->transparent);
+#endif
free(cmap);
}
+#if defined(__linux__)
static int
fb_cmap_get(int fbfp, struct fb_cmap *cmap)
+#elif defined(__FreeBSD__)
+static int
+fb_cmap_get(int fbfp, video_color_palette_t *cmap)
+#endif
{
+#if defined(__linux__)
if (ioctl(fbfp, FBIOGETCMAP, cmap)) {
perror("ioctl FBIOGETCMAP error\n");
return -1;
}
+#elif defined(__FreeBSD__)
+ if (ioctl(fbfp, FBIO_GETPALETTE, cmap) == -1) {
+ perror("ioctl FBIO_GETPALETTE error\n");
+ return -1;
+ }
+#endif
return 0;
}
+#if defined(__linux__)
static int
fb_cmap_set(int fbfp, struct fb_cmap *cmap)
+#elif defined(__FreeBSD__)
+static int
+fb_cmap_set(int fbfp, video_color_palette_t *cmap)
+#endif
{
+#if defined(__linux__)
if (ioctl(fbfp, FBIOPUTCMAP, cmap)) {
perror("ioctl FBIOPUTCMAP error\n");
return -1;
}
+#elif defined(__FreeBSD__)
+ if (ioctl(fbfp, FBIO_SETPALETTE, cmap) == -1) {
+ perror("ioctl FBIO_SETPALETTE error\n");
+ return -1;
+ }
+#endif
return 0;
}
@@ -612,10 +968,16 @@ fb_cmap_set(int fbfp, struct fb_cmap *cmap)
* fb_munmap() deletes the mappings
*/
+#if defined(__linux__)
static void *
fb_mmap(int fbfp, struct fb_fix_screeninfo *scinfo)
+#elif defined(__FreeBSD__)
+static void *
+fb_mmap(int fbfp, video_adapter_info_t *video_adapter_info)
+#endif
{
void *buf;
+#if defined(__linux__)
if ((buf = (unsigned char *)
mmap(NULL, scinfo->smem_len, PROT_READ | PROT_WRITE, MAP_SHARED, fbfp,
(off_t) 0))
@@ -623,13 +985,41 @@ fb_mmap(int fbfp, struct fb_fix_screeninfo *scinfo)
perror("mmap error");
return NULL;
}
+#elif defined(__FreeBSD__)
+ size_t mmap_offset;
+ size_t mmap_length;
+ mmap_offset = (size_t)(video_adapter_info->va_window) & (PAGE_MASK);
+ mmap_length = (size_t)(video_adapter_info->va_window_size +
+ mmap_offset + PAGE_MASK) & (~PAGE_MASK);
+ if ((buf = (unsigned char *)
+ mmap(NULL, mmap_length, PROT_READ | PROT_WRITE, MAP_SHARED, fbfp,
+ (off_t) 0))
+ == MAP_FAILED) {
+ perror("mmap error");
+ return NULL;
+ }
+#endif
return buf;
}
+#if defined(__linux__)
static int
fb_munmap(void *buf, struct fb_fix_screeninfo *scinfo)
+#elif defined(__FreeBSD__)
+static int
+fb_munmap(void *buf, video_adapter_info_t *video_adapter_info)
+#endif
{
+#if defined(__linux__)
return munmap(buf, scinfo->smem_len);
+#elif defined(__FreeBSD__)
+ size_t mmap_offset;
+ size_t mmap_length;
+ mmap_offset = (size_t)(video_adapter_info->va_window) & (PAGE_MASK);
+ mmap_length = (size_t)(video_adapter_info->va_window_size +
+ mmap_offset + PAGE_MASK) & (~PAGE_MASK);
+ return munmap((void *)((u_long)buf & (~PAGE_MASK)), mmap_length);
+#endif
}
/*
@@ -637,6 +1027,7 @@ fb_munmap(void *buf, struct fb_fix_screeninfo *scinfo)
*
* fb_fscrn_get() get information
*/
+#if defined(__linux__)
static int
fb_fscrn_get(int fbfp, struct fb_fix_screeninfo *scinfo)
{
@@ -646,12 +1037,14 @@ fb_fscrn_get(int fbfp, struct fb_fix_screeninfo *scinfo)
}
return 0;
}
+#endif
/*
* (struct fb_var_screeninfo) device independent variable information
*
* fb_vscrn_get() get information
*/
+#if defined(__linux__)
static int
fb_vscrn_get(int fbfp, struct fb_var_screeninfo *scinfo)
{
@@ -661,3 +1054,41 @@ fb_vscrn_get(int fbfp, struct fb_var_screeninfo *scinfo)
}
return 0;
}
+#endif
+
+#if defined(__FreeBSD__)
+static int
+fb_video_mode_get(int fbfp, int *video_mode)
+{
+ if (ioctl(fbfp, FBIO_GETMODE, video_mode) == -1) {
+ perror("ioctl FBIO_GETMODE error\n");
+ return -1;
+ }
+ return 0;
+}
+#endif
+
+#if defined(__FreeBSD__)
+static int
+fb_video_info_get(int fbfp, video_info_t *video_info)
+{
+ if (ioctl(fbfp, FBIO_MODEINFO, video_info) == -1) {
+ perror("ioctl FBIO_MODEINFO error\n");
+ return -1;
+ }
+ return 0;
+}
+#endif
+
+#if defined(__FreeBSD__)
+static int
+fb_video_adapter_info_get(int fbfp, video_adapter_info_t *video_adapter_info)
+{
+ if (ioctl(fbfp, FBIO_ADPINFO, video_adapter_info) == -1) {
+ perror("ioctl FBIO_ADPINFO error\n");
+ return -1;
+ }
+ return 0;
+}
+#endif
+
diff --git a/w3mimg/fb/fb.h b/w3mimg/fb/fb.h
index 1138bb0..5d86454 100644
--- a/w3mimg/fb/fb.h
+++ b/w3mimg/fb/fb.h
@@ -1,7 +1,11 @@
/* $Id: fb.h,v 1.7 2003/07/07 15:48:17 ukai Exp $ */
#ifndef fb_header
#define fb_header
+#if defined(__linux__)
#include <linux/fb.h>
+#elif defined(__FreeBSD__)
+#include <sys/fbio.h>
+#endif
typedef struct {
int num;
diff --git a/w3mimg/fb/fb_gdkpixbuf.c b/w3mimg/fb/fb_gdkpixbuf.c
index 36e3b62..f1e8d97 100644
--- a/w3mimg/fb/fb_gdkpixbuf.c
+++ b/w3mimg/fb/fb_gdkpixbuf.c
@@ -6,7 +6,7 @@
#include "config.h"
#if defined(USE_GTK2)
#include <glib-object.h>
-#include <gdk/gdk.h>
+#include <gdk-pixbuf/gdk-pixbuf.h>
#endif
#include <gdk-pixbuf/gdk-pixbuf.h>
#include "fb.h"
diff --git a/w3mimg/fb/fb_imlib2.c b/w3mimg/fb/fb_imlib2.c
index ea36637..1a5151c 100644
--- a/w3mimg/fb/fb_imlib2.c
+++ b/w3mimg/fb/fb_imlib2.c
@@ -3,7 +3,6 @@
fb_imlib2.c 0.3 Copyright (C) 2002, hito
**************************************************************************/
-#include <X11/Xlib.h>
#include <Imlib2.h>
#include "fb.h"
#include "fb_img.h"
diff --git a/w3mimg/fb/fb_w3mimg.c b/w3mimg/fb/fb_w3mimg.c
index d3ae5a9..62511f0 100644
--- a/w3mimg/fb/fb_w3mimg.c
+++ b/w3mimg/fb/fb_w3mimg.c
@@ -153,10 +153,15 @@ check_tty_console(char *tty)
return 0;
if (strncmp(tty, "/dev/", 5) == 0)
tty += 5;
+#if defined(__linux__)
if (strncmp(tty, "tty", 3) == 0 && isdigit(*(tty + 3)))
return 1;
if (strncmp(tty, "vc/", 3) == 0 && isdigit(*(tty + 3)))
return 1;
+#elif defined(__FreeBSD__)
+ if (strncmp(tty, "ttyv", 4) == 0 && isxdigit(*(tty + 4)))
+ return 1;
+#endif
return 0;
}
#else
@@ -172,7 +177,9 @@ w3mimg_fbopen()
return NULL;
memset(wop, 0, sizeof(w3mimg_op));
- if (!check_tty_console(getenv("W3M_TTY")) && strcmp("jfbterm", getenv("TERM")) != 0) {
+ if (!check_tty_console(getenv("W3M_TTY")) &&
+ strncmp("fbterm", getenv("TERM"), 6) != 0 &&
+ strncmp("jfbterm", getenv("TERM"), 7) != 0) {
fprintf(stderr, "w3mimgdisplay/fb: tty is not console\n");
goto error;
}
diff --git a/w3mimg/fb/readme.txt b/w3mimg/fb/readme.txt
index 92e71a5..c3c43cd 100644
--- a/w3mimg/fb/readme.txt
+++ b/w3mimg/fb/readme.txt
@@ -1,73 +1,73 @@
Source: http://homepage3.nifty.com/slokar/fb/
original readme.txt
-���󶡤�����
- ��w3mimgdisplayfb w3mimgdisplay (�ۤ�)�ߴ��� framebuffer �Ѳ����ӥ塼��
- ��w3mimgsizefb w3mimgsize �ߴ��β������������ץ������
+■提供するもの
+ ・w3mimgdisplayfb w3mimgdisplay (ほぼ)互換の framebuffer 用画像ビューア
+ ・w3mimgsizefb w3mimgsize 互換の画像サイズ報告プログラム
-��ɬ�פʤ��
- ��GdkPixbuf or Imlib2
- ��TRUE-COLOR �� framebuffer �����ѤǤ���Ķ�
+■必要なもの
+ ・GdkPixbuf or Imlib2
+ ・TRUE-COLOR の framebuffer を利用できる環境
-������ѥ���
- ��Makefile �� CFLAGS, LDFLAGS �� Imlib2, GdkPixbuf �Τɤ��餫���Ѥ���
- ����ͭ���ˤ��Ƥ��� make ���Ƥ�������
+■コンパイル
+ ・Makefile の CFLAGS, LDFLAGS を Imlib2, GdkPixbuf のどちらか利用する
+ 方を有効にしてから make してださい。
-������ˡ
- ��w3mimgdisplay, w3mimgsize ��Ʊ��
+■利用法
+ ・w3mimgdisplay, w3mimgsize と同様
-��������
- ��framebuffer �� 15,16,24,32bpp PACKED-PIXELS TRUE-COLOR
- �ˤ����б����Ƥ��ޤ���
- ������ w3mimgdisplayfb �� -bg ���ץ�������Ѥ��ʤ������طʿ��Ϲ�
- (#000000)�Ȳ��ꤷ�Ƥ��ޤ���
+■制限等
+ ・framebuffer は 15,16,24,32bpp PACKED-PIXELS TRUE-COLOR
+ にしか対応していません。
+ ・現在 w3mimgdisplayfb は -bg オプションを使用しない場合の背景色は黒
+ (#000000)と仮定しています。
-����ȯ�Ķ�
- �� w3m version w3m/0.3+cvs-1.353-m17n-20020316
- �� linux 2.4.18 (Vine Linux 2.5)
- �� gcc 2.95.3
- �� GdkPixbuf 0.16.0
- �� Imlib2 1.0.6
- �� $ dmesg |grep vesafb
+■開発環境
+ ・ w3m version w3m/0.3+cvs-1.353-m17n-20020316
+ ・ linux 2.4.18 (Vine Linux 2.5)
+ ・ gcc 2.95.3
+ ・ GdkPixbuf 0.16.0
+ ・ Imlib2 1.0.6
+ ・ $ dmesg |grep vesafb
vesafb: framebuffer at 0xe2000000, mapped to 0xc880d000, size 8192k
vesafb: mode is 1024x768x16, linelength=2048, pages=4
vesafb: protected mode interface info at c000:4785
vesafb: scrolling: redraw
vesafb: directcolor: size=0:5:6:5, shift=0:11:5:0
- �� �ӥǥ�������
+ ・ ビデオカード
VGA compatible controller: ATI Technologies Inc 3D Rage Pro AGP 1X/2X (rev 92).
Master Capable. Latency=64. Min Gnt=8.
Non-prefetchable 32 bit memory at 0xe2000000 [0xe2ffffff].
I/O at 0xd800 [0xd8ff].
Non-prefetchable 32 bit memory at 0xe1800000 [0xe1800fff].
-������¾
- ��w3mimgsizefb, w3mimgdisplayfb �Ϻ��ܹ�§����� w3mimgsize,
- w3mimgdisplay ���Ȥˤ��Ƥ��ޤ�(�Ȥ������ۤȤ�ɤ��ΤޤޤǤ�)��
- ��framebuffer ����ط��Υ����ɤϡ���ޤ������󤸤���Υ���ץ�ץ���
- �����Ȥˤ��Ƥ��ޤ�(�Ȥ������ۤȤ�ɤ��ΤޤޤǤ�)��
- ���ޤ���ȯ�Ӿ�Ǥ��ꡢư���ǧ���Խ�ʬ�Ǥ������Ѥ����ݤϤ����Ȥ���Ǥ
- �Ǥ��ꤤ���ޤ���
- ����������ʪ�˴ޤޤ�륳���ɤ��ѹ��Ѥ� BSD �饤���󥹤˽�����ΤȤ���
- �����ܺ٤� license.txt �򻲾Ȥ��Ƥ���������
+■その他
+ ・w3mimgsizefb, w3mimgdisplayfb は坂本浩則さんの w3mimgsize,
+ w3mimgdisplay をもとにしています(というかほとんどそのままです)。
+ ・framebuffer 描画関係のコードは、やまさきしんじさんのサンプルプログ
+ ラムをもとにしています(というかほとんどそのままです)。
+ ・まだ開発途上であり、動作確認も不十分です。使用される際はご自身の責任
+ でお願いします。
+ ・この配布物に含まれるコードは変更済み BSD ライセンスに従うものとしま
+ す。詳細は license.txt を参照してください。
-����Ϣ URI
- �� W3M Homepage http://w3m.sourceforge.net/
- �� w3m-img http://www2u.biglobe.ne.jp/~hsaka/w3m/index-ja.html
- �� Linux Kernel Hack Japan http://www.sainet.or.jp/~yamasaki/
- �� Imlib2 http://www.enlightenment.org/pages/main.html
- �� GdkPixbuf http://developer.gnome.org/arch/imaging/gdkpixbuf.html
+■関連 URI
+ ・ W3M Homepage http://w3m.sourceforge.net/
+ ・ w3m-img http://www2u.biglobe.ne.jp/~hsaka/w3m/index-ja.html
+ ・ Linux Kernel Hack Japan http://www.sainet.or.jp/~yamasaki/
+ ・ Imlib2 http://www.enlightenment.org/pages/main.html
+ ・ GdkPixbuf http://developer.gnome.org/arch/imaging/gdkpixbuf.html
-������
- ��2002/07/05 ��ȯ����
- ��2002/07/07 ImageMagick ��ư���ǧ
- ��2002/07/10 GdkPixbuf ��ư���ǧ
- ��2002/07/11 Imlib2 ��ư���ǧ
- ��2002/07/15 Version 0.1
- ����
- ��2002/07/22 Version 0.2
- �������
+■履歴
+ ・2002/07/05 開発開始
+ ・2002/07/07 ImageMagick 版動作確認
+ ・2002/07/10 GdkPixbuf 版動作確認
+ ・2002/07/11 Imlib2 版動作確認
+ ・2002/07/15 Version 0.1
+ 公開
+ ・2002/07/22 Version 0.2
+ 描画の高速化
-��Ϣ����
+■連絡先
ZXB01226@nifty.com
http://homepage3.nifty.com/slokar/
diff --git a/w3mimg/win/.cvsignore b/w3mimg/win/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/w3mimg/win/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/w3mimg/x11/.cvsignore b/w3mimg/x11/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
--- a/w3mimg/x11/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
diff --git a/w3mimg/x11/x11_w3mimg.c b/w3mimg/x11/x11_w3mimg.c
index f5be4a8..9a539de 100644
--- a/w3mimg/x11/x11_w3mimg.c
+++ b/w3mimg/x11/x11_w3mimg.c
@@ -14,7 +14,7 @@
#elif defined(USE_GDKPIXBUF)
#if defined(USE_GTK2)
#include <glib-object.h>
-#include <gdk/gdk.h>
+#include <gdk-pixbuf/gdk-pixbuf.h>
#include <gdk-pixbuf-xlib/gdk-pixbuf-xlib.h>
#else
#include <gdk-pixbuf/gdk-pixbuf-xlib.h>
@@ -121,24 +121,32 @@ x11_init(w3mimg_op * self)
if (self == NULL)
return 0;
xi = (struct x11_info *)self->priv;
+#if defined(USE_IMLIB)
if (xi == NULL)
return 0;
-#if defined(USE_IMLIB)
if (!xi->id) {
xi->id = Imlib_init(xi->display);
if (!xi->id)
return 0;
}
#elif defined(USE_GDKPIXBUF)
- if (!xi->init_flag) {
+ if (!xi) {
+#if defined(USE_GTK2)
+ g_type_init();
+#endif
+ }
+ else if (!xi->init_flag) {
+ XWindowAttributes attr;
#if defined(USE_GTK2)
g_type_init();
#endif
- gdk_pixbuf_xlib_init(xi->display, 0);
+ XGetWindowAttributes(xi->display, xi->parent, &attr);
+ /* gdk_pixbuf_xlib_init_with_depth() ignores depth, sigh... */
+ gdk_pixbuf_xlib_init_with_depth(xi->display, 0, attr.depth);
xi->init_flag = TRUE;
}
#endif
- if (!xi->imageGC) {
+ if (xi && !xi->imageGC) {
xi->imageGC = XCreateGC(xi->display, xi->parent, 0, NULL);
if (!xi->imageGC)
return 0;
@@ -200,14 +208,16 @@ x11_set_background(w3mimg_op * self, char *background)
{
XColor screen_def, exact_def;
struct x11_info *xi;
+ XWindowAttributes attr;
if (self == NULL)
return;
xi = (struct x11_info *)self->priv;
if (xi == NULL)
return;
+ XGetWindowAttributes(xi->display, xi->window, &attr);
if (background &&
- XAllocNamedColor(xi->display, DefaultColormap(xi->display, 0),
+ XAllocNamedColor(xi->display, attr.colormap,
background, &screen_def, &exact_def))
xi->background_pixel = screen_def.pixel;
else {
@@ -216,7 +226,7 @@ x11_set_background(w3mimg_op * self, char *background)
XImage *i;
p = XCreatePixmap(xi->display, xi->window, 1, 1,
- DefaultDepth(xi->display, 0));
+ attr.depth);
gc = XCreateGC(xi->display, xi->window, 0, NULL);
if (!p || !gc)
exit(1); /* XXX */
@@ -258,6 +268,7 @@ x11_img_new(struct x11_info *xi, int w, int h, int n)
{
struct x11_image *img = NULL;
int i;
+ XWindowAttributes attr;
img = malloc(sizeof(*img));
if (!img)
@@ -267,9 +278,10 @@ x11_img_new(struct x11_info *xi, int w, int h, int n)
if (!img->pixmap)
goto ERROR;
+ XGetWindowAttributes(xi->display, xi->window, &attr);
for (i = 0; i < n; i++) {
img->pixmap[i] = XCreatePixmap(xi->display, xi->parent, w, h,
- DefaultDepth(xi->display, 0));
+ attr.depth);
if (!img->pixmap[i])
goto ERROR;
@@ -318,6 +330,41 @@ resize_image(GdkPixbuf * pixbuf, int width, int height)
return NULL;
return resized_pixbuf;
}
+
+#if defined(USE_GTK2)
+static void
+render_pixbuf_to_pixmap_32(Display *display, GC gc, Pixmap pixmap, GdkPixbuf * pixbuf)
+{
+ unsigned int x, y, width, height, rowstride, bytes_per_pixel;
+ unsigned char *line;
+ XImage *image;
+
+ width = gdk_pixbuf_get_width(pixbuf) ;
+ height = gdk_pixbuf_get_height(pixbuf) ;
+
+ if (!(image = XGetImage(display, pixmap, 0, 0, width, height, AllPlanes, ZPixmap)))
+ return ;
+
+ bytes_per_pixel = (gdk_pixbuf_get_has_alpha(pixbuf)) ? 4 : 3;
+ rowstride = gdk_pixbuf_get_rowstride(pixbuf);
+ line = gdk_pixbuf_get_pixels(pixbuf);
+
+ for (y = 0; y < height; y++) {
+ u_char *pixel;
+
+ pixel = line;
+ for (x = 0; x < width; x++) {
+ XPutPixel(image, x, y,
+ (pixel[0] <<16) | (pixel[1] <<8) | pixel[2] | 0xff000000);
+ pixel += bytes_per_pixel;
+ }
+ line += rowstride;
+ }
+
+ XPutImage(display, pixmap, gc, image, 0, 0, 0, 0, width, height);
+ XDestroyImage(image);
+}
+#endif
#endif
static int
@@ -342,6 +389,7 @@ x11_load_image(w3mimg_op * self, W3MImage * img, char *fname, int w, int h)
GList *frames;
#endif
#endif
+ XWindowAttributes attr;
if (self == NULL)
return 0;
@@ -349,6 +397,7 @@ x11_load_image(w3mimg_op * self, W3MImage * img, char *fname, int w, int h)
if (xi == NULL)
return 0;
+ XGetWindowAttributes(xi->display, xi->window, &attr);
#if defined(USE_IMLIB)
im = Imlib_load_image(xi->id, fname);
if (!im)
@@ -358,7 +407,7 @@ x11_load_image(w3mimg_op * self, W3MImage * img, char *fname, int w, int h)
if (h <= 0)
h = im->rgb_height;
img->pixmap = (void *)XCreatePixmap(xi->display, xi->parent, w, h,
- DefaultDepth(xi->display, 0));
+ attr.depth);
if (!img->pixmap)
return 0;
XSetForeground(xi->display, xi->imageGC, xi->background_pixel);
@@ -374,17 +423,21 @@ x11_load_image(w3mimg_op * self, W3MImage * img, char *fname, int w, int h)
w = imlib_image_get_width();
if (h <= 0)
h = imlib_image_get_height();
+
+ im = imlib_create_cropped_scaled_image(0, 0, imlib_image_get_width(), imlib_image_get_height(), w, h);
+ imlib_context_set_image(im);
+
img->pixmap = (void *)XCreatePixmap(xi->display, xi->parent, w, h,
- DefaultDepth(xi->display, 0));
+ attr.depth);
if (!img->pixmap)
return 0;
XSetForeground(xi->display, xi->imageGC, xi->background_pixel);
XFillRectangle(xi->display, (Pixmap) img->pixmap, xi->imageGC, 0, 0, w, h);
imlib_context_set_display(xi->display);
- imlib_context_set_visual(DefaultVisual(xi->display, 0));
- imlib_context_set_colormap(DefaultColormap(xi->display, 0));
+ imlib_context_set_visual(attr.visual);
+ imlib_context_set_colormap(attr.colormap);
imlib_context_set_drawable((Drawable) img->pixmap);
- imlib_render_image_on_drawable_at_size(0, 0, w, h);
+ imlib_render_image_on_drawable(0, 0);
imlib_free_image();
#elif defined(USE_GDKPIXBUF)
max_anim = self->max_anim;
@@ -416,7 +469,7 @@ x11_load_image(w3mimg_op * self, W3MImage * img, char *fname, int w, int h)
ratio_h = 1.0 * h / ih;
}
tmp_pixmap = XCreatePixmap(xi->display, xi->parent, w, h,
- DefaultDepth(xi->display, 0));
+ attr.depth);
XSetForeground(xi->display, xi->imageGC, xi->background_pixel);
XFillRectangle(xi->display, (Pixmap) tmp_pixmap, xi->imageGC, 0, 0, w, h);
if (!tmp_pixmap) {
@@ -459,7 +512,10 @@ x11_load_image(w3mimg_op * self, W3MImage * img, char *fname, int w, int h)
if (delay > ximg->delay)
ximg->delay = delay;
- gdk_pixbuf_xlib_render_to_drawable_alpha(pixbuf,
+ if (attr.depth == 32)
+ render_pixbuf_to_pixmap_32(xi->display, xi->imageGC, ximg->pixmap[j], pixbuf);
+ else
+ gdk_pixbuf_xlib_render_to_drawable_alpha(pixbuf,
(Drawable) ximg->pixmap[j], 0,
0, 0, 0, w, h,
GDK_PIXBUF_ALPHA_BILEVEL, 1,
@@ -653,9 +709,11 @@ x11_get_image_size(w3mimg_op * self, W3MImage * img, char *fname, int *w,
if (self == NULL)
return 0;
+#if defined(USE_IMLIB) && defined(USE_IMLIB2)
xi = (struct x11_info *)self->priv;
if (xi == NULL)
return 0;
+#endif
#if defined(USE_IMLIB)
im = Imlib_load_image(xi->id, fname);
@@ -755,6 +813,9 @@ w3mimg_x11open()
return NULL;
memset(wop, 0, sizeof(w3mimg_op));
+ if (getenv("W3M_USE_REMOTE_IMAGE"))
+ goto end;
+
xi = (struct x11_info *)malloc(sizeof(struct x11_info));
if (xi == NULL)
goto error;
@@ -807,6 +868,7 @@ w3mimg_x11open()
wop->priv = xi;
+ end:
wop->init = x11_init;
wop->finish = x11_finish;
wop->active = x11_active;
diff --git a/w3mimgdisplay.c b/w3mimgdisplay.c
index 5486a47..ccfa373 100644
--- a/w3mimgdisplay.c
+++ b/w3mimgdisplay.c
@@ -281,6 +281,10 @@ DrawImage(char *buf, int redraw)
maxImage = n + 1;
imageBuf = (W3MImage *) realloc((void *)imageBuf,
sizeof(W3MImage) * maxImage);
+ if (imageBuf == NULL) {
+ fprintf(stderr, "Out of memory\n");
+ exit(1);
+ }
for (; i < maxImage; i++)
imageBuf[i].pixmap = NULL;
}