Initial revision

This commit is contained in:
Akinori Ito
2001-11-08 05:14:08 +00:00
commit 68a07bf03b
305 changed files with 104639 additions and 0 deletions

278
doc/FAQ.html Normal file
View File

@@ -0,0 +1,278 @@
<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@ei5sun.yz.yamagata-u.ac.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>Solaris 2.5
<li>SunOs 4.1.x
<li>HP-UX 9.x and 10.x
<li>Linux 2.0.30 and 2.2.9 with glibc 2.1
<li>FreeBSD 2.2.8 and 3.1
<li>EWS4800 Release 12.2 Rev.A
</ul>
<dt><h3>Where can I get more information about w3m?</h3>
<dd>At the <a href="http://ei5nazha.yz.yamagata-u.ac.jp/~aito/w3m/eng/">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://ei5nazha.yz.yamagata-u.ac.jp/~aito/w3m/eng/">w3m page</a>
for details. You may also mail your comments to <a href="mailto:aito@ei5sun.yz.yamagata-u.ac.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="ftp://ei5nazha.yz.yamagata-u.ac.jp/w3m/binaries">here</a>.
Contact <a href="mailto:aito@ei5sun.yz.yamagata-u.ac.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>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>
<pre>
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?
</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 ~/.mailcap or /etc/mailcap.
<p>
<pre>
image/*; display %s
</pre>
<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
</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">Miscellanous</a></h2></u>
<br>
<dl>
<dt><h3>What is w3m's configuration file?</h3>
<dd>It is ~/.w3m/config.
<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>

1989
doc/HISTORY Normal file

File diff suppressed because it is too large Load Diff

504
doc/MANUAL.html Normal file
View File

@@ -0,0 +1,504 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<html>
<head><title>w3m manual</title>
</head>
<body>
<h1>w3m MANUAL</h1>
<div align=right>
Akinori Ito<br>
aito@ei5sun.yz.yamagata-u.ac.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>
<pre>
w3m [options] [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>
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>-S
<dd>When displaying text/plain document, squeeze blank lines.
<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
<pre>
cat hoge.html | w3m -T text/html
</pre>
<p>
Display HTML source
<pre>
w3m -T text/plain hoge.html
</pre>
<dt>-m
<dd>Display document with Internet message mode.
With this option, w3m determines document type from header infomation.
It is useful when reading E-mail or NetNews messages.
<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>Sqeeze 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>-pauth username:password
<dd>Set username and password for (basic) proxy authentication.
<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>-no-proxy
<dd>Don't use proxy server.
<dt>-no-graph
<dd>Don't use graphic character to draw frames.
<dt>-no-mouse
<dd>Don't activate mouse.
</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>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<TD>Go to the first line
<TR><TD>G<TD>Go to the last line
<TR><TD>ESC g<TD>Go to specified line
<TR><TD>TAB<TD>Move to next hyperlink
<TR><TD>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>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 infomation about current document
<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>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
</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-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>&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<TD>Go to the specified line
<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
</table>
<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>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 infomation about current document
<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>
<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>
<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>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>/<TD>Search forward
<TR><TD>?<TD>Search backward
<TR><TD>n<TD>Search next
</table>
<H2>Mark operation</H2>
<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>
<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-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>
<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>
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.
<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. 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
<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
<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:
<pre>
Content-Type: text/plain
W3m-control: GOTO http://www.yahoo.com/
</pre>
This example works exactly the same way to the Location header:
<pre>
Content-Type: text/plain
Location: http://www.yahoo.com/
</pre>
Note that this header has no effect when the CGI script is invoked
through HTTP server.
</body>
</html>

106
doc/README Normal file
View File

@@ -0,0 +1,106 @@
w3m: WWW wo Miru Tool version beta-990323
(C) Copyright by Akinori ITO March 23, 1999
1. Introduction
w3m is a pager with WWW capability. It IS a pager, but it can be
used as a text-mode WWW browser.
The features of w3m are as follows:
* When reading HTML document, you can follow links and view images
(using external image viewer).
* It has 'internet message mode', which determines the type of document
from header. If the Content-Type: field of the document is text/html,
that document is displayed as HTML document.
* You can change URL description like 'http://hogege.net' in plain text
into link to that URL.
Current problems are:
* Resize behaviour is imcomplete.
* It can't show images inline. (It seems to be impossible as far as using
xterm)
* It doesn't decode MIME-body of the document.
* Online manuals are poor.
w3m is known to work on these platforms.
SunOS4.1.x
HP-UX 9.x, 10.x
Solaris2.5.x
Linux 2.0.30
FreeBSD 2.2.8, 3.1, 3.2
NetBSD/macppc, m68k
EWS4800 Rel.12.2 Rev.A
Digital UNIX: v3.2D, v4.0D
IRIX 5.3, IRIX 6.5
OS/2 with emx
Windows 9x/NT with Cygwin32 b20.1
MS-DOS with DJGPP and WATT32 packet driver
MacOS X Server
2. Installation
Follow these instructions to install w3m.
2.1 Run configure. The script will ask you a few questions. Answer them.
2.2 do make
2.3 do make install
MACHINE/OS specific notices:
HP-UX
If you want to use HP C compiler, answer
Input your favorite C-compiler.
(Default: cc) cc -Aa -D_HPUX_SOURCE
If you use just 'cc' without options, you can't compile w3m.
If you are using gcc, no option is needed.
OS/2
You can compile w3m using emx. First you have to do
is to compile GC library with
cd gc
make -f EMX_MAKEFILE
then compile w3m. I heard that OS/2 console can't
display color, you had better compile w3m without
color capability.
Windows
See README.cygwin.
MS-DOS
See README.dj.
3. Copyright
(C) Copyright 1994-1999 by Akinori Ito.
Hans J. Boehm, Alan J. Demers, Xerox Corp. and Silicon Graphics
have the copyright of the GC library comes with w3m package.
4. License
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.
5. Author
Feel free to send your opinion to the author.
Akinori Ito
Faculty of Engineering, Yamagata University
aito@ei5sun.yz.yamagata-u.ac.jp
http://ei5nazha.yz.yamagata-u.ac.jp/

18
doc/README.cygwin Normal file
View File

@@ -0,0 +1,18 @@
***How to compile w3m on Windows***
To compile w3m on MS-Windows, you have to use Cygwin32 with development
tools. You can get it from http://sourceware.cygnus.com/cygwin/ .
After installing Cygwin32, what you have to do first is
TERM=ansi; export TERM
sh configure
and
make
Known Bugs:
Local file with drive letter (//C/zonk.html) can't be handled correctly.

39
doc/README.dict Normal file
View File

@@ -0,0 +1,39 @@
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
was contributed by `Rubikitch' (rubikitch@ruby-lang.org).
2. INSTALL
To make use of dictionary look-up, you have to change compile
option by hand. After running configure, edit config.h and
change
#undef DICT
into
#define DICT
and recompile w3m. (You have to recompile dict.c and keybind.c.)
Then prepare a command named 'w3mdict.' For example, if you want
to use 'webster' command, do the following:
% cd /usr/local/bin
% ln -s `which webster` w3mdict
In general, w3mdict can be any command that takes a word as an
argument and outputs something onto stdout.
3. USAGE
You can use the following two commands.
ESC w Input a word and look it up using w3mdict command.
ESC W look up the current word in the buffer.

85
doc/README.func Normal file
View File

@@ -0,0 +1,85 @@
ABORT Quit w3m without confirmation
ADD_BOOKMARK Add current page to bookmark
BACK Back to previous buffer
BEGIN Go to the first line
BOOKMARK Read bookmark
CENTER_H Move to the center line
CENTER_V Move to the center column
COOKIE View cookie list
DELETE_PREVBUF Delete previous buffer
DICT_WORD Execute dictionary command (see README.dict)
DOWN Scroll down one line
DOWN_LOAD Save HTML source
EDIT Edit current document
EDIT_SCREEN Edit currently rendered 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
HELP View help
HISTORY View history of URL
INFO View info of current document
INTERRUPT Stop loading document
INIT_MAILCAP Reread mailcap
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
LOAD Load local file
MAIN_MENU Popup menu
MARK Set/unset mark
MARK_MID Mark Message-ID-like strings as anchors
MARK_URL Mark URL-like strings as anchors
MENU Popup menu
MOVE_DOWN Move cursor down
MOVE_LEFT Move cursor left
MOVE_RIGHT Move cursor right
MOVE_UP Move cursor up
NEXT_LINK Move to next link
NEXT_MARK Move to next word
NEXT_PAGE Move to next page
NEXT_WORD Move to next word
NOTHING Do nothing
NULL Do nothing
OPTIONS Option setting panel
PEEK Peek current URL
PEEK_LINK Peek link URL
PEEK_IMG Peek image URL
PIPE_SHELL Execute shell command and browse
PREV_LINK Move to previous link
PREV_MARK Move to previous mark
PREV_PAGE Move to previous page
PREV_WORD Move to previous word
PRINT Save buffer to file
QUIT Quit w3m
READ_SHELL Execute shell command and load
REDRAW Redraw screen
REG_MARK Set mark using regexp
RELOAD Reload buffer
RIGHT Shift screen one column right
SAVE Save HTML source to file
SAVE_IMAGE Save image to file
SAVE_LINK Save link to file
SAVE_SCREEN Save rendered document to file
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
SHELL Execute shell command
SHIFT_LEFT Shift screen left
SHIFT_RIGHT Shift screen right
SOURCE View HTML source
SUSPEND Stop loading document
UP Scroll up one line
VIEW View HTML source
VIEW_BOOKMARK View bookmark
VIEW_IMAGE View image
WHEREIS Search forward
WRAP_TOGGLE Toggle wrap search mode

209
doc/STORY.html Normal file
View File

@@ -0,0 +1,209 @@
<html>
<head>
<title>History of w3m</title>
</head>
<body>
<h1>History of w3m</h1>
<div align=right>
1999/2/18<br>
1999/3/8 revised<br>
1999/6/11 translated into English<br>
Akinori Ito<br>
aito@ei5sun.yz.yamagata-u.ac.jp
</div>
<h2>Introduction</h2>
W3m is a text-based pager and WWW browser.
It is similar application to the famous text-based
browser <a href="http://www.lynx.browser.org/">Lynx</a>.
However, w3m has several advantages against Lynx. For example,
<UL>
<LI>W3m can render tables.
<LI>W3m can render frame (by converting frame into table).
<LI>As w3m is a pager, it can read document from standard input.
(I heard Lynx also can display standard-input-given document, like this:
<pre>
lynx /dev/fd/0 &gt; file
</pre>
Hmm, it works on Linux. )
<LI>W3m is small. Its stripped binary for Sparc (compiled with
gcc -O2, version beta-990217) is only 260kbyte, while binary size
of Lynx is beyond 1.8Mbyte. (Actually, lynx it 800K on my i386 system, w3m is 200K + libgc.)
</UL>
It is true that Lynx is an excellent browser, who have many
features w3m doesn't have. For example,
<UL>
<LI>Lynx can handle cookies.
<LI>Lynx has many options.
<LI>Lynx is multilingual. (W3m is Japanese-English bilingual)
</UL>
etc. It is also a great advantage that Lynx has a lot of
documentation.
<P>
<b>I don't intend w3m to be a substitute of any other browsers,
including Netscape and Lynx.</b> Why did I wrote w3m?
Because I felt inconvenient with conventional browsers
to `take a look' at web pages.
I am browsing web pages in LAN environment. When I want to take
a glance at a web page, I don't want to wait to start up Netscape.
Lynx also takes a few seconds to start up (you can get lynx startup time to almost zero when you rm /etc/mailcap). On the other hand,
w3m starts immediately with little load to the host machine.
After looking at the information using w3m, I use other browser
if I want to read the the page in detail. As for me, however,
w3m is enough to read most of web pages.
<h2>The birth of w3m</h2>
<P>
w3m was derived from a pager named `fm'. Fm was written before
1991 (I don't remember the exact date) when WWW was not popular.
At that time, the word `browser' meant a file browser like
`more' or `less'.
<P>
I wrote fm to debug a program for my research. To trace the status
of the program, it dumped megabytes of values of variables into a file,
and I debugged it by checking the dumped file. The program dumped
information at a certain time in one line, which made the dumped line
several hundred characters long. When I looked the file using `more' or
`less', one line was folded into several lines and it was very hard
to read it. Therefore, I wrote fm, which didn't fold a line. Fm displayed
one logical line as one physical line. When seeing the hidden
part of a line, fm shifted entire screen. As I used 80x24 terminal at that
time, fm was very useful for the debugging.
<P>
Several years later, I got to know WWW and began to use it.
I used XMosaic and Chimera. I liked Chimera because it was light.
As I was interested in the mechanism of WWW, I learned HTML and
HTTP, and I felt it simpler than I expected. The earlier version
of HTTP was very similar to Gopher protocol. HTML 2.0 was
simple enough to render. All I have to do seemed to be line folding
and itemized display. Then I made a little modification to fm
and made a web browser. It was the first version of w3m.
The name `w3m' was an abbreviation of Japanese phrase `WWW wo miru',
which means `see WWW'. It was an inheritance from `fm', which
was an abbreviation of `File wo miru'. The first version of w3m
was released at the beginning of 1995.
<h2>Death and rebirth of w3m</h2>
<p>
I had used w3m as a pager to read files, E-mails and online manuals.
It was a substitute of less. Sometimes I used w3m as a web browser,
but there were many pages w3m couldn't display correctly, most of
which used table for page layout. Once I tried to implement table
renderer, but I gave up because it seemed to be too difficult for me.
<P>
It was 1998 when I tried to modify w3m again. There were two reasons.
The first is that I had some time to do it. I stayed Boston University
as a visiting researcher at that time. The second reason is that
I wanted to use table in my personal web page. I had written research
log using HTML, and I wanted to write a table in it. At first I used
&lt;pre&gt;..&lt;/pre&gt; to describe table, but it was not cool at all.
One day I used &lt;table&gt; tag, which made me to use Netscape to
read the research log. Then I decided to implement a table renderer
into w3m.
<P>
I didn't intend to write a perfect table renderer because tables
I used was not very complicated. However, imcomplete table rendering
made the display of table-layout pages horrible. I realized that
it required almost-perfect table renderer
to do well both in `rendering (real) table' and `fine display of
table-layout page.' It was a thorn path.
<P>
After taking several months, I finished `fair' table renderer.
Then I implemented form into w3m. Finally, w3m was reborn as a
practical web browser.
<h2>Table rendering algorithm in w3m</h2>
HTML table rendering is difficult. Tabular environment
of LaTeX is not very difficult, which makes the width of a column
either a specified value or the maximum width to put items into it.
On the other hand, HTML table renderer has to decide
the width of a column so that the entire table can fit into the
display appropriately, and fold the contents of the table according
to the column width. Inappropriate column width decision makes
the table ugly. Moreover, table can be nested, which makes the algorithm
more complicated.
<OL>
<LI>First, calculate the maximum and minimum width of each column.
The maximum width is the width required to display the column
without folding the contents. Generally, it is the length of
paragraph delimited by &lt;BR&gt; or &lt;P&gt;.
The minimum width is the lower limit to display the contents.
If the column contains the word `internationalization', the minimum
width will be 20. If the column contains
&lt;pre&gt;..&lt;/pre&gt;, the maximum width of the preformatted
text will be the minimum width of the column.
<LI>If the width of the column is specified by WIDTH attribute,
fix the column width using that value. If the specified width is
smaller than the minimum width of the column, fix the column width
to the minimum width.
<LI>Calculate the sum of the maximum width (or fixed width) of
each column and check if the sum exceeds the screen width.
If it is smaller than screen width, these values are used for
width of each column.
<LI>If the sum is larger than the screen width, determine the widths
of each column according to the following steps.
<OL>
<LI>Let W be the screen width subtracted by the sum of widths of
fixed-width columns.
<LI>Distribute W into the columns whose width are not decided,
in proportion to the logarithm of the maximum width of each column.
<li>If the distributed width of a column is smaller than the minimum width,
then fix the width of the column to the minimum width, and
do the distribution again.
</OL>
</OL>
In this process, distributed width is proportion to logarithm of
maximum width, but I am not sure that this heuristic is the best.
It can be, for example, square root of the maximum width.
<P>
The algorithm above assumes that the screen width is known.
But it is not true for nested table. According the algorithm above,
the column width of the outer table have to be known to render
the inner table, while the total width of the inner table have to
be known to determine the column width of the outer table.
If WIDTH attribute exists there are no problems. Otherwise, w3m
assumes that the inner table is 0.8 times as wide as the outer
table. It works fine, but if there are two tables side by side in an outer
table, the width of the outer table always exceeds the screen width.
To render this kind of table correctly, one have to render the table once,
check the width of outmost table, and then render the entire table again.
Netscape might employ this kind of algorithm.
<h2>Libraries</h2>
w3m uses
<a href="http://reality.sgi.com/boehm/gc.html">Boehm GC</a>
library. This library was written by H. Boehm and A. Demers.
I could distribute w3m without this library because one can
get the library separately, but I decided to contain it in the
w3m distribution for the convenience of an installer.
W3m doesn't use libwww.
<P>
Boehm GC is a garbage collector for C and C++. I began to use this
library when I implemented table, and it was great. I couldn't
implement table and form without this library.
<P>
Older version than beta-990304 used
<a href="http://home.cern.ch/~orel/libftp/libftp/libftp.html">LIBFTP</a>
because I felt tired of writing codes to handle FTP protocol.
But I rewrote the FTP code by myself to make w3m completely free.
It made w3m slightly smaller.
<P>
By the way, w3m doesn't use UNIX standard regexp library and curses library.
It is because I want to use Japanese. When I wrote fm, there were
no free regexp/curses libraries that can treat Japanese. Now both libraries
are available and they looks faster than w3m code.
<h2>Future work</h2>
...Nothing. As w3m's virtues are its small size and rendering speed,
adding more features might lose these advantages. On the other hand,
w3m is still known to have many bugs, and I will continue fixing them.
</body>
</html>

1750
doc/history Normal file

File diff suppressed because it is too large Load Diff

115
doc/keymap.default Normal file
View File

@@ -0,0 +1,115 @@
# A sample of ~/.w3m/keymap (default)
#
# Ctrl : C-, ^
# Escape: ESC-, M-, ^[
# Space : SPC, ' '
# Tab : TAB, ^i, ^I
# Delete: DEL, ^?
# Up : UP, ^[[A
# Down : DOWN, ^[[B
# Right : RIGHT, ^[[C
# Left : LEFT, ^[[D
keymap C-@ MARK
keymap C-a LINE_BEGIN
keymap C-b MOVE_LEFT
keymap C-e LINE_END
keymap C-f MOVE_RIGHT
keymap C-g LINE_INFO
keymap C-h HISTORY
keymap TAB NEXT_LINK
keymap C-j GOTO_LINK
keymap C-k COOKIE
keymap C-l REDRAW
keymap C-m GOTO_LINK
keymap C-n MOVE_DOWN
keymap C-p MOVE_UP
keymap C-r SEARCH_BACK
keymap C-s SEARCH
keymap C-v NEXT_PAGE
keymap C-z SUSPEND
keymap SPC NEXT_PAGE
keymap ! SHELL
keymap \" REG_MARK
keymap # PIPE_SHELL
keymap $ LINE_END
keymap , LEFT
keymap . RIGHT
keymap / SEARCH
keymap : MARK_URL
keymap < SHIFT_LEFT
keymap = INFO
keymap > SHIFT_RIGHT
keymap ? SEARCH_BACK
keymap @ READ_SHELL
keymap B BACK
keymap E EDIT
keymap F FRAME
keymap G END
keymap H HELP
keymap I VIEW_IMAGE
keymap J UP
keymap K DOWN
keymap M EXTERN
keymap Q EXIT
keymap R RELOAD
keymap S SAVE_SCREEN
keymap U GOTO
keymap V LOAD
keymap W PREV_WORD
keymap Z CENTER_H
keymap \^ LINE_BEGIN
keymap a SAVE_LINK
keymap b PREV_PAGE
keymap c PEEK
keymap g BEGIN
keymap h MOVE_LEFT
keymap i PEEK_IMG
keymap j MOVE_DOWN
keymap k MOVE_UP
keymap l MOVE_RIGHT
keymap n SEARCH_NEXT
keymap o OPTIONS
keymap q QUIT
keymap s SELECT
keymap u PEEK_LINK
keymap v VIEW
keymap w NEXT_WORD
keymap z CENTER_V
keymap M-TAB PREV_LINK
keymap M-C-j SAVE_LINK
keymap M-C-m SAVE_LINK
keymap M-: MARK_MID
keymap M-< BEGIN
keymap M-> END
keymap M-I SAVE_IMAGE
keymap M-M EXTERN_LINK
keymap M-W DICT_WORD_AT
keymap M-a ADD_BOOKMARK
keymap M-b BOOKMARK
keymap M-e EDIT_SCREEN
keymap M-g GOTO_LINE
keymap M-n NEXT_MARK
keymap M-p PREV_MARK
keymap M-s SAVE
keymap M-v PREV_PAGE
keymap M-w DICT_WORD
keymap UP MOVE_UP
keymap DOWN MOVE_DOWN
keymap RIGHT MOVE_RIGHT
keymap LEFT MOVE_LEFT
keymap M-[E MENU
keymap M-[L MENU
keymap M-[1~ BEGIN
keymap M-[2~ MENU
keymap M-[4~ END
keymap M-[5~ PREV_PAGE
keymap M-[6~ NEXT_PAGE
keymap M-[28~ MENU

109
doc/keymap.lynx Normal file
View File

@@ -0,0 +1,109 @@
# A sample of ~/.w3m/keymap (lynx-like)
#
# Ctrl : C-, ^
# Escape: ESC-, M-, ^[
# Space : SPC, ' '
# Tab : TAB, ^i, ^I
# Delete: DEL, ^?
# Up : UP, ^[[A
# Down : DOWN, ^[[B
# Right : RIGHT, ^[[C
# Left : LEFT, ^[[D
keymap C-@ MARK
keymap C-a BEGIN
keymap C-b PREV_PAGE
keymap C-e END
keymap C-f NEXT_PAGE
keymap C-h HISTORY
keymap TAB NEXT_LINK
keymap C-j GOTO_LINK
keymap C-k COOKIE
keymap C-l REDRAW
keymap C-m GOTO_LINK
keymap C-n NEXT_LINK
keymap C-p PREV_LINK
keymap C-r RELOAD
keymap C-s SEARCH
keymap C-v NEXT_PAGE
keymap C-w REDRAW
keymap C-z SUSPEND
keymap SPC NEXT_PAGE
keymap ! SHELL
keymap \" REG_MARK
keymap # PIPE_SHELL
keymap $ LINE_END
keymap + NEXT_PAGE
keymap - PREV_PAGE
keymap / SEARCH
keymap : MARK_URL
keymap < SHIFT_LEFT
keymap = INFO
keymap > SHIFT_RIGHT
keymap ? HELP
keymap @ READ_SHELL
keymap B BACK
keymap E EDIT
keymap F FRAME
keymap G GOTO_LINE
keymap H HELP
keymap I VIEW_IMAGE
keymap J UP
keymap K DOWN
keymap N NEXT_MARK
keymap P PREV_MARK
keymap Q EXIT
keymap R RELOAD
keymap S SAVE_SCREEN
keymap U GOTO
keymap V LOAD
keymap Z CENTER_H
keymap \\ SOURCE
keymap \^ LINE_BEGIN
keymap a ADD_BOOKMARK
keymap b PREV_PAGE
keymap c PEEK
keymap d SAVE
keymap g GOTO
keymap h MOVE_LEFT
keymap i PEEK_IMG
keymap j MOVE_DOWN
keymap k MOVE_UP
keymap l MOVE_RIGHT
keymap n SEARCH_NEXT
keymap o OPTIONS
keymap p SAVE_SCREEN
keymap q QUIT
keymap s SELECT
keymap u PEEK_LINK
keymap v BOOKMARK
keymap z CENTER_V
keymap M-TAB PREV_LINK
keymap M-C-j SAVE_LINK
keymap M-C-m SAVE_LINK
keymap M-: MARK_MID
keymap M-I SAVE_IMAGE
keymap M-a ADD_BOOKMARK
keymap M-b BOOKMARK
keymap M-e EDIT_SCREEN
keymap M-s SAVE
keymap M-v PREV_PAGE
keymap UP PREV_LINK
keymap DOWN NEXT_LINK
keymap RIGHT GOTO_LINK
keymap LEFT BACK
keymap M-[E MENU
keymap M-[L MENU
keymap M-[1~ BEGIN
keymap M-[2~ MENU
keymap M-[4~ END
keymap M-[5~ PREV_PAGE
keymap M-[6~ NEXT_PAGE
keymap M-[28~ MENU

33
doc/menu.default Normal file
View File

@@ -0,0 +1,33 @@
# A sample of ~/.w3m/menu (default)
#
# menu MENU_ID
# func LABEL FUNCTION KEYS
# popup LABEL MENU_ID KEYS
# nop LABEL
# end
#
# MENU_ID
# Main: Main menu
# Select: Buffer selection menu
menu Main
func " Back (b) " BACK "b"
func " Select Buffer(s) " SELECT "s"
func " View Source (v) " VIEW "vV"
func " Edit Source (e) " EDIT "eE"
func " Save Source (S) " SAVE "S"
func " Reload (r) " RELOAD "rR"
nop " -----------------"
func " Go Link (a) " GOTO_LINK "a"
func " Save Link (A) " SAVE_LINK "A"
func " View Image (i) " VIEW_IMAGE "i"
func " Save Image (I) " SAVE_IMAGE "I"
func " View Frame (f) " FRAME "fF"
nop " ---------------- "
func " Bookmark (B) " BOOKMARK "B"
func " Help (h) " HELP "hH"
func " Option (o) " OPTIONS "oO"
nop " ---------------- "
func " Quit (q) " QUIT "qQ"
end

44
doc/menu.submenu Normal file
View File

@@ -0,0 +1,44 @@
# A sample of ~/.w3m/menu (submenu type)
#
# menu MENU_ID
# func LABEL FUNCTION KEYS
# popup LABEL MENU_ID KEYS
# nop LABEL
# end
#
# MENU_ID
# Main: Main Menu
# Select: Buffer selection menu
menu Main
func "Back (b)" BACK "b"
popup "Buffer ops >(f)" Buffer "fF"
popup "Link ops >(l)" Link "lL"
nop "----------------"
popup "Bookmarks >(B)" Bookmark "B"
func "Help (h)" HELP "hH"
func "Options (o)" OPTIONS "oO"
nop "----------------"
func "Quit (q)" QUIT "qQ"
end
menu Buffer
popup "Buffer select(s)" Select "s"
func "View source (v)" VIEW "vV"
func "Edit source (e)" EDIT "eE"
func "Save source (S)" SAVE "S"
func "Reload (r)" RELOAD "rR"
end
menu Link
func "Go link (a)" GOTO_LINK "a"
func "Save link (A)" SAVE_LINK "A"
func "View image (i)" VIEW_IMAGE "i"
func "Save image (I)" SAVE_IMAGE "I"
func "View frame (f)" FRAME "fF"
end
menu Bookmark
func "Read bookmark (b)" BOOKMARK "bB"
func "Add page to bookmark(a)" ADD_BOOKMARK "aA"
end

134
doc/w3m.1 Normal file
View File

@@ -0,0 +1,134 @@
.nr N -1
.nr D 5
.TH W3M 1 Local
.UC 4
.SH NAME
w3m \- a text based Web browser and pager
.SH SYNOPSIS
.B w3m
[options] [URL or filename]
.PP
Use "w3m -h" to display a complete list of current options.
.SH DESCRIPTION
.\" This defines appropriate quote strings for nroff and troff
.ds lq \&"
.ds rq \&"
.if t .ds lq ``
.if t .ds rq ''
.\" 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
.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
.TP
.B -l line
# of preserved line (default 10000)
.TP
.B -s
Shift_JIS
.TP
.B -j
JIS
.TP
.B -e
EUC-JP
.TP
.B -B
load bookmark
.TP
.B -T type
specify content-type
.TP
.B -m
internet message mode
.TP
.B -M
monochrome display
.TP
.B -F
automatically render frame
.TP
.B -dump
dump formatted page into stdout
.TP
.B -cols width
specify column width (used with -dump)
.TP
.B -ppc count
specify the number of pixels per character (default 8.0)
Larger values will make tables narrower.
.TP
.B -dump_source
dump page source into stdout
.TP
.B +<num>
goto <num> line
.TP
.B -debug
DO NOT USE
.SH EXAMPLES
.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
.TP
or
.br
$ cat foo.html | w3m -dump -T text/html >foo.txt
.SH NOTES
This is the
.I
w3m
990604 Release.
.PP
Additional information about
.I
w3m
may be found on its Japanese language Web site located at:
http://ei5nazha.yz.yamagata-u.ac.jp/~aito/w3m/
.br
or on its English version of the site at:
http://ei5nazha.yz.yamagata-u.ac.jp/~aito/w3m/eng/
.SH ACKNOWLEDGMENTS
.I
w3m
has incorporated code from several sources.
Hans J. Boehm, Alan J. Demers, Xerox Corp. and Silicon Graphics
have the copyright of the GC library comes with w3m package.
Users have contributed patches and suggestions over time.
.SH AUTHOR
Akinori ITO <aito@ei5sun.yz.yamagata-u.ac.jp>