19
ChangeLog
19
ChangeLog
@@ -1,5 +1,24 @@
|
|||||||
2001-12-01 Fumitoshi UKAI <ukai@debian.or.jp>
|
2001-12-01 Fumitoshi UKAI <ukai@debian.or.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/REAMDE.func: add ALARM, SUSPEND
|
||||||
* doc-jp/README.func: ditto
|
* doc-jp/README.func: ditto
|
||||||
|
|
||||||
|
18
XMakefile
18
XMakefile
@@ -1,4 +1,4 @@
|
|||||||
# $Id: XMakefile,v 1.10 2001/11/21 18:51:48 ukai Exp $
|
# $Id: XMakefile,v 1.11 2001/11/30 16:48:15 ukai Exp $
|
||||||
SRCS=main.c file.c buffer.c display.c etc.c search.c linein.c table.c local.c \
|
SRCS=main.c file.c buffer.c display.c etc.c search.c linein.c table.c local.c \
|
||||||
form.c map.c frame.c rc.c menu.c mailcap.c\
|
form.c map.c frame.c rc.c menu.c mailcap.c\
|
||||||
func.c cookie.c history.c backend.c $(KEYBIND_SRC)
|
func.c cookie.c history.c backend.c $(KEYBIND_SRC)
|
||||||
@@ -30,7 +30,6 @@ CFLAGS=$(OPTS) $(MYCFLAGS) $(DEFS)
|
|||||||
LIBS=-L. -lindep $(GCLIB) $(MATHLIB) $(LOCAL_LIBRARIES) $(SYS_LIBRARIES)
|
LIBS=-L. -lindep $(GCLIB) $(MATHLIB) $(LOCAL_LIBRARIES) $(SYS_LIBRARIES)
|
||||||
LIBS2=-L. -lindep $(GCLIB) $(LOCAL_LIBRARIES)
|
LIBS2=-L. -lindep $(GCLIB) $(LOCAL_LIBRARIES)
|
||||||
INSTALL=sh install.sh
|
INSTALL=sh install.sh
|
||||||
INSTALL2=sh ../install.sh
|
|
||||||
AR=ar
|
AR=ar
|
||||||
|
|
||||||
all: $(TARGETS) all-scripts
|
all: $(TARGETS) all-scripts
|
||||||
@@ -83,29 +82,32 @@ gc/gc.a:
|
|||||||
cd gc; $(MAKE) CC='$(CC)' CFLAGS='$(GCCFLAGS) $(GC_CFLAGS)' SPECIALCFLAGS='-I./\$(srcdir)/include $(GC_CFLAGS)'
|
cd gc; $(MAKE) CC='$(CC)' CFLAGS='$(GCCFLAGS) $(GC_CFLAGS)' SPECIALCFLAGS='-I./\$(srcdir)/include $(GC_CFLAGS)'
|
||||||
|
|
||||||
|
|
||||||
install: $(TARGETS) all-scripts
|
install: install-core install-scripts
|
||||||
|
|
||||||
|
install-core: $(TARGETS)
|
||||||
-$(MKDIR) $(DESTDIR)$(BIN_DIR)
|
-$(MKDIR) $(DESTDIR)$(BIN_DIR)
|
||||||
-$(MKDIR) $(DESTDIR)$(HELP_DIR)
|
-$(MKDIR) $(DESTDIR)$(HELP_DIR)
|
||||||
-$(MKDIR) $(DESTDIR)$(LIB_DIR)
|
-$(MKDIR) $(DESTDIR)$(LIB_DIR)
|
||||||
$(INSTALL) -m 755 $(TARGET) $(DESTDIR)$(BIN_DIR)/$(TARGET)
|
$(INSTALL) -m 755 $(TARGET) $(DESTDIR)$(BIN_DIR)/$(TARGET)
|
||||||
|
$(INSTALL) -m 644 $(HELP_FILE) $(DESTDIR)$(HELP_DIR)/w3mhelp.html
|
||||||
|
for d in $(EXT_TARGETS); do $(INSTALL) -m 755 $$d $(DESTDIR)$(LIB_DIR)/$$d; done
|
||||||
|
|
||||||
|
install-helpfile:
|
||||||
$(INSTALL) -m 644 w3mhelp-w3m_en.html $(DESTDIR)$(HELP_DIR)/w3mhelp-w3m_en.html
|
$(INSTALL) -m 644 w3mhelp-w3m_en.html $(DESTDIR)$(HELP_DIR)/w3mhelp-w3m_en.html
|
||||||
$(INSTALL) -m 644 w3mhelp-w3m_ja.html $(DESTDIR)$(HELP_DIR)/w3mhelp-w3m_ja.html
|
$(INSTALL) -m 644 w3mhelp-w3m_ja.html $(DESTDIR)$(HELP_DIR)/w3mhelp-w3m_ja.html
|
||||||
$(INSTALL) -m 644 w3mhelp-lynx_en.html $(DESTDIR)$(HELP_DIR)/w3mhelp-lynx_en.html
|
$(INSTALL) -m 644 w3mhelp-lynx_en.html $(DESTDIR)$(HELP_DIR)/w3mhelp-lynx_en.html
|
||||||
$(INSTALL) -m 644 w3mhelp-lynx_ja.html $(DESTDIR)$(HELP_DIR)/w3mhelp-lynx_ja.html
|
$(INSTALL) -m 644 w3mhelp-lynx_ja.html $(DESTDIR)$(HELP_DIR)/w3mhelp-lynx_ja.html
|
||||||
$(INSTALL) -m 644 $(HELP_FILE) $(DESTDIR)$(HELP_DIR)/w3mhelp.html
|
|
||||||
for d in $(EXT_TARGETS); do $(INSTALL) -m 755 $$d $(DESTDIR)$(LIB_DIR)/$$d; done
|
|
||||||
(cd scripts; for i in *.cgi; do $(INSTALL2) -m 755 $$i $(DESTDIR)$(LIB_DIR)/$$i; done)
|
|
||||||
|
|
||||||
all-scripts:
|
all-scripts:
|
||||||
for dir in $(SCRIPTSUBDIRS); \
|
for dir in $(SCRIPTSUBDIRS); \
|
||||||
do \
|
do \
|
||||||
(cd $$dir; $(MAKE) PERL='$(PERL)' BIN_DIR='$(BIN_DIR)' LIB_DIR='$(LIB_DIR)'); \
|
(cd $$dir; $(MAKE) PERL='$(PERL)' BIN_DIR='$(BIN_DIR)' LIB_DIR='$(LIB_DIR)' HELP_DIR='$(HELP_DIR)'); \
|
||||||
done
|
done
|
||||||
|
|
||||||
install-scripts: all-scripts
|
install-scripts: all-scripts
|
||||||
for dir in $(SCRIPTSUBDIRS); \
|
for dir in $(SCRIPTSUBDIRS); \
|
||||||
do \
|
do \
|
||||||
(cd $$dir; $(MAKE) PERL='$(PERL)' BIN_DIR='$(BIN_DIR)' LIB_DIR='$(LIB_DIR)' DESTDIR='$(DESTDIR)' INSTALL='sh $(PWD)/install.sh' install); \
|
(cd $$dir; $(MAKE) PERL='$(PERL)' BIN_DIR='$(BIN_DIR)' LIB_DIR='$(LIB_DIR)' HELP_DIR='$(HELP_DIR)' DESTDIR='$(DESTDIR)' INSTALL='sh $(PWD)/install.sh' install); \
|
||||||
done
|
done
|
||||||
|
|
||||||
uninstall:
|
uninstall:
|
||||||
|
@@ -1 +1,4 @@
|
|||||||
dirlist.cgi
|
dirlist.cgi
|
||||||
|
w3mhelp.cgi
|
||||||
|
w3hmhelp-*.pl
|
||||||
|
|
||||||
|
@@ -3,27 +3,69 @@ prefix = /usr/local
|
|||||||
DESTDIR =
|
DESTDIR =
|
||||||
BIN_DIR = $(prefix)/bin
|
BIN_DIR = $(prefix)/bin
|
||||||
LIB_DIR = $(prefix)/lib/w3m
|
LIB_DIR = $(prefix)/lib/w3m
|
||||||
|
HELP_DIR = $(prefix)/lib/w3m
|
||||||
|
|
||||||
LIB_TARGETS = dirlist.cgi
|
LIB_TARGETS = dirlist.cgi w3mhelp.cgi
|
||||||
|
|
||||||
INSTALL = install -c
|
INSTALL = install -c
|
||||||
INSTALL_SCRIPT = $(INSTALL) -m 755
|
INSTALL_SCRIPT = $(INSTALL) -m 755
|
||||||
|
|
||||||
PERL = /usr/local/bin/perl
|
PERL = /usr/local/bin/perl
|
||||||
|
|
||||||
|
DOCDIRS = doc:en_English doc-jp:ja_Japanese
|
||||||
|
|
||||||
.SUFFIXES: .in
|
.SUFFIXES: .in
|
||||||
|
|
||||||
all: $(LIB_TARGETS)
|
all: $(LIB_TARGETS) helplibs
|
||||||
|
|
||||||
.in:
|
.in:
|
||||||
sed 's%@PERL@%$(PERL)%' $< > $@
|
@echo "generating $@..."
|
||||||
chmod +x $@
|
@sed -e 's%@PERL@%$(PERL)%' -e 's%@HELP_DIR@%$(HELP_DIR)%' \
|
||||||
|
-e 's%@DOCDIRS@%$(DOCDIRS)%' $< > $@
|
||||||
|
@chmod +x $@
|
||||||
|
@echo done
|
||||||
|
|
||||||
|
helplibs:
|
||||||
|
@echo "generating w3mhelp-funcname.pl..."
|
||||||
|
@echo '%funcname = (' > w3mhelp-funcname.pl
|
||||||
|
@while read fname fid; do \
|
||||||
|
case "$$fname" in [a-zA-Z@]*) echo "'$$fname', '$$fid',";; esac; \
|
||||||
|
done < ../funcname.tab >> w3mhelp-funcname.pl
|
||||||
|
@echo ');' >> w3mhelp-funcname.pl
|
||||||
|
@echo '%keyfunc = (' >> w3mhelp-funcname.pl
|
||||||
|
@case "$(KEYBIND_SRC)" in *lynx*) keymap=keymap.lynx;; *) keymap=keymap.default;; esac; \
|
||||||
|
while read keyword keys func rest; do \
|
||||||
|
if [ "X$$keyword" = Xkeymap ]; then \
|
||||||
|
keys=`echo "$$keys" | sed -e 's/\\\\/\\\\&/g'`; \
|
||||||
|
echo "'$$keys', '$$func',"; \
|
||||||
|
fi; \
|
||||||
|
done < ../doc/$$keymap >> w3mhelp-funcname.pl
|
||||||
|
@echo ');' >> w3mhelp-funcname.pl
|
||||||
|
@echo '1;' >> w3mhelp-funcname.pl
|
||||||
|
@echo "done"
|
||||||
|
|
||||||
|
@echo "generating w3mhelp-funcdesc*.pl..."
|
||||||
|
@for dirlang in $(DOCDIRS); do \
|
||||||
|
dir=`expr "$$dirlang" : "\(.*\):.*"`; \
|
||||||
|
lang=`expr "$$dirlang" : ".*:\(.*\)_.*"`; \
|
||||||
|
echo '%funcdesc = (' > w3mhelp-funcdesc.$$lang.pl; \
|
||||||
|
while read func desc; do \
|
||||||
|
case "$$func" in [a-zA-Z@]*) echo "'$$func', '$$desc', ";; esac; \
|
||||||
|
done < ../$$dir/README.func >> w3mhelp-funcdesc.$$lang.pl; \
|
||||||
|
echo ');' >> w3mhelp-funcdesc.$$lang.pl; \
|
||||||
|
echo '1;' >> w3mhelp-funcdesc.$$lang.pl; \
|
||||||
|
done
|
||||||
|
@echo done
|
||||||
|
|
||||||
install: $(LIB_TARGETS)
|
install: $(LIB_TARGETS)
|
||||||
for file in $(LIB_TARGETS); \
|
for file in $(LIB_TARGETS); \
|
||||||
do \
|
do \
|
||||||
$(INSTALL_SCRIPT) $$file $(DISTDIR)$(LIB_DIR); \
|
$(INSTALL_SCRIPT) $$file $(DESTDIR)$(LIB_DIR); \
|
||||||
|
done
|
||||||
|
for file in w3mhelp-*.pl; \
|
||||||
|
do \
|
||||||
|
$(INSTALL) $$file $(DESTDIR)$(HELP_DIR); \
|
||||||
done
|
done
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -f $(LIB_TARGETS)
|
rm -f $(LIB_TARGETS) w3mhelp-*.pl
|
||||||
|
186
scripts/w3mhelp.cgi.in
Normal file
186
scripts/w3mhelp.cgi.in
Normal file
@@ -0,0 +1,186 @@
|
|||||||
|
#!@PERL@
|
||||||
|
# $Id: w3mhelp.cgi.in,v 1.1 2001/11/30 16:48:19 ukai Exp $
|
||||||
|
|
||||||
|
$helpdir="@HELP_DIR@";
|
||||||
|
unshift(@INC, $helpdir);
|
||||||
|
@docdirs=qw(@DOCDIRS@);
|
||||||
|
|
||||||
|
require "w3mhelp-funcname.pl";
|
||||||
|
require "w3mhelp-funcdesc.en.pl";
|
||||||
|
$lang = 'en';
|
||||||
|
|
||||||
|
%htmlesc = qw(< < > > & &);
|
||||||
|
|
||||||
|
$keymap = "$ENV{'HOME'}/.w3m/keymap";
|
||||||
|
$version = '*unknown*';
|
||||||
|
if (defined($ENV{'QUERY_STRING'})) {
|
||||||
|
print "QUERY_STRING=$ENV{'QUERY_STRING'}\n";
|
||||||
|
if ($ENV{'QUERY_STRING'} =~ /(^|&)version=([^&]*)/) {
|
||||||
|
$version = $2;
|
||||||
|
$version =~ s/\+|%([0-9A-Fa-f][0-9A-Fa-f])/$& eq '+' ? ' ' : pack('C', hex($1))/ge;
|
||||||
|
$version =~ s/w3m\///;
|
||||||
|
}
|
||||||
|
if ($ENV{'QUERY_STRING'} =~ /(^|&)lang=([^&]*)/) {
|
||||||
|
local $tlang=$2;
|
||||||
|
$tlang =~ s/\+|%([0-9A-Fa-f][0-9A-Fa-f])/$& eq '+' ? ' ' : pack('C', hex($1))/ge;
|
||||||
|
$tlang =~ tr/A-Z/a-z/;
|
||||||
|
print "tlang=$tlang\n";
|
||||||
|
eval qq{require "w3mhelp-funcdesc.$tlang.pl"};
|
||||||
|
if (defined(%funcdesc)) {
|
||||||
|
$lang = $tlang;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (-f $keymap) {
|
||||||
|
open(KEYMAP, $keymap) or die "cannot open keymap: $keymap, $!";
|
||||||
|
&load_keymap(*KEYMAP, $func);
|
||||||
|
close(KEYMAP);
|
||||||
|
}
|
||||||
|
|
||||||
|
local (%funckeydesc, $key, $fname, $desc);
|
||||||
|
|
||||||
|
while (($fname, $desc) = each %funcdesc) {
|
||||||
|
$funckeydesc{$funcname{$fname}} = "$desc\n";
|
||||||
|
}
|
||||||
|
while (($key, $fname) = each %keyfunc) {
|
||||||
|
$funckeydesc{$funcname{$fname}} .= "$key,";
|
||||||
|
}
|
||||||
|
|
||||||
|
print <<HEADING;
|
||||||
|
Content-Type: text/html
|
||||||
|
|
||||||
|
<HTML>
|
||||||
|
<HEAD>
|
||||||
|
<TITLE>w3m help page</TITLE>
|
||||||
|
</HEAD>
|
||||||
|
<BODY>
|
||||||
|
<CENTER>
|
||||||
|
*******
|
||||||
|
<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 *****
|
||||||
|
</CENTER>
|
||||||
|
|
||||||
|
HEADING
|
||||||
|
|
||||||
|
$q_version = $version;
|
||||||
|
$q_version =~ s/[^A-Za-z0-9_\$\.\-]/sprintf('%%%02X', ord($&))/ge;
|
||||||
|
$script = "<A HREF=\"$ENV{'SCRIPT_NAME'}?version=$q_version&lang=";
|
||||||
|
|
||||||
|
# doc:en_English doc-jp:ja_Japanese
|
||||||
|
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><BR>\n";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
&show_keymap("Page/Cursor motion",
|
||||||
|
qw(pgFore pgBack movR movL movD movU lup1 ldown1
|
||||||
|
goLineF goLineL movRW movLW shiftl shiftr
|
||||||
|
col1R col1L goLine ctrCsrH ctrCsrV
|
||||||
|
topA lastA nextA prevA
|
||||||
|
nextL nextLU nextR nextRD nextD nextU));
|
||||||
|
|
||||||
|
&show_keymap("Hyperlink operation",
|
||||||
|
qw(followA svA peekURL peekIMG followI svI
|
||||||
|
chkURL chkNMID curURL pginfo curlno ldHist
|
||||||
|
rFrame extbrz linkbrz));
|
||||||
|
|
||||||
|
&show_keymap("File/Stream operation",
|
||||||
|
qw(goURL ldfile readsh pipesh));
|
||||||
|
|
||||||
|
&show_keymap("Buffer operation",
|
||||||
|
qw(backBf vwSrc selMn editBf rdrwSc reload
|
||||||
|
svBuf svSrc editScr));
|
||||||
|
|
||||||
|
print <<PAGE;
|
||||||
|
<H2>Buffer selection mode</H2>
|
||||||
|
<table cellpadding=0>
|
||||||
|
<TR><TD WIDTH=140>k, C-p<TD>Select previous buffer
|
||||||
|
<TR><TD>j, C-n<TD>Select next buffer
|
||||||
|
<TR><TD>D<TD>Delete current buffer
|
||||||
|
<TR><TD>RET<TD>Go to the selected buffer
|
||||||
|
</table>
|
||||||
|
PAGE
|
||||||
|
|
||||||
|
&show_keymap("Bookmark operation",
|
||||||
|
qw(ldBmark adBmark));
|
||||||
|
|
||||||
|
&show_keymap("Search",
|
||||||
|
qw(srchfor srchbak srchnxt srchprv));
|
||||||
|
|
||||||
|
&show_keymap("Dictionary look-up",
|
||||||
|
qw(dictword dictwordat));
|
||||||
|
|
||||||
|
&show_keymap("Mark operation",
|
||||||
|
qw(_mark prevMk nextMk reMark));
|
||||||
|
|
||||||
|
&show_keymap("Miscellany",
|
||||||
|
qw(setAlarm execsh ldhelp ldOpt cooLst susp qquitfm quitfm));
|
||||||
|
|
||||||
|
print <<PAGE;
|
||||||
|
<H2>Line-edit mode</H2>
|
||||||
|
<table cellpadding=0>
|
||||||
|
<TR><TD WIDTH=140>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>
|
||||||
|
</BODY>
|
||||||
|
</HTML>
|
||||||
|
PAGE
|
||||||
|
|
||||||
|
exit 0;
|
||||||
|
|
||||||
|
sub load_keymap {
|
||||||
|
local(*FH) = shift;
|
||||||
|
my ($func) = @_;
|
||||||
|
|
||||||
|
while (<FH>) {
|
||||||
|
next if /^#/;
|
||||||
|
next if /^\s*$/;
|
||||||
|
($keymap, $key, $fname) = split;
|
||||||
|
next unless $keymap =~ /keymap/;
|
||||||
|
$fname =~ tr/a-z/A-Z/;
|
||||||
|
next unless (defined($funcdesc{$fname}));
|
||||||
|
$key =~ s/^\\//;
|
||||||
|
$keyfunc{$key} = $fname;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
sub show_keymap {
|
||||||
|
my ($head, @list) = @_;
|
||||||
|
my ($fid);
|
||||||
|
my ($attr) = " WIDTH=140";
|
||||||
|
|
||||||
|
print <<PAGE;
|
||||||
|
<H2>$head</H2>
|
||||||
|
<table cellpadding=0>
|
||||||
|
PAGE
|
||||||
|
foreach $fid (@list) {
|
||||||
|
local ($desc, $keys) = split("\n", $funckeydesc{$fid}, 2);
|
||||||
|
$keys =~ s/,$//;
|
||||||
|
$keys = '<NOT ASSIGNED>' if ($keys eq '');
|
||||||
|
$keys =~ s/[<>&]/$htmlesc{$&}/ge;
|
||||||
|
$desc =~ s/[<>&]/$htmlesc{$&}/ge;
|
||||||
|
print <<PAGE;
|
||||||
|
<TR><TD$attr>$keys</TD><TD>$desc</TD></TR>
|
||||||
|
PAGE
|
||||||
|
$attr = "";
|
||||||
|
}
|
||||||
|
print "</table>\n";
|
||||||
|
}
|
Reference in New Issue
Block a user