w3m-0.4 Release Note

2002/02/11
Hironori Sakamoto
Dai Sato

This document describes new features and fixed bugs after the w3m-0.3.2.

new features

fixed bugs


Tab functions

[Summary]

Managing and operating buffers with tabs on the top of the screen.

[Additional keymap functions]

Some of these functions are not bound to any keys. You should describe them in keymap file.
NEW_TAB  Copy present page in new tab.
This funcion is bound to `T' by default.
CLOSE_TAB  Close the current tab.
"N + CLOSE_TAB" closes Nth tab.
This funcion is bound to `C-q' by default.
TAB_LINK  Open the link with new tab.
"N + TAB_LINK" opens the link with Nth tab.
This funcion is bound to `C-t' by default.
TAB_GOTO  Open the URL with new tab.
"N + TAB_GOTO" opens the URL with Nth tab.
TAB_GOTO_RELATIVE
Open the relative URL with new tab.
"N + TAB_GOTO_RELATIVE" opens the relative URL with Nth tab.
NEXT_TAB  Move to the next tab.
"N + NEXT_TAB" makes it moved to Nth tab from the current tab.
This funcion is bound to `}' by default.
PREV_TAB  Move to the previous tab.
"N + PREV_TAB" makes it moved to Nth tab before the current tab.
This funcion is bound to `{' by default.
TAB_RIGHT  Move the current tab to the right.
"N + TAB_RIGHT" moves the current tab to the right N times.
TAB_LEFT  Move the current tab to the left.
"N + TAB_LEFT" moves the current tab to the left N times.
TAB_MENU  Open the tab selection menu.
You can handle the menu in the same way with the buffer selection menu.
This funcion is bound to `ESC-t' by default.

[Additional mouse operations]

Actions below are defined by default. The behaviors on clicking are able to be changed.
Left button  Move to the tab when you make a click on the tab. Draging a tab to another tab moves the former tab to where another one was. A dragged link is opened in the tab which it was dropped into.
Center button  Close the tab when clicked on it.
Right button  Not Defined (= open the menu).

[Additional config options]

open_tab_blank  When the target is set to _blank or _new, open the link with new tab. The default value is NO.
close_tab_back  When "back" is executed on the sole buffer, close the current tab. The default value is NO.

[Additional command-line options]

-N  Open the each URLs appear in the command line with respective tabs.

Customizing of mouse operations

[Summary]

You can change the Mouse operations by writing the configuration file (~/.w3m/mouse). Only available for actions with clicking.

[Format of the configuration file]

Valid formats are as follows:
  menu      <Top_of_the_menu_string>
  lastline  <Bottom_of_the_menu_string>
  button    <Number>  <Position>  <Function>  [<Argument>]
menu  Set the <Top_of_the_menu_string> to show on the 1st line of the menu.
The default value is NULL (don't show the menu).
lastline  Set the <Bottom_of_the_menu_string> to show on the last line of the menu.
The default value is "<<UpDn".
button  Define the mouse operations.

<Number> 
1 ... Left button
2 ... Center button
3 ... Right button
<Position> 
menu <x1> <x2>     ... for clicking on the menu
lastline <x1> <x2> ... for clicking on the last line
default ... for default
anchor  ... for clicking on an anchor
active  ... for clicking on the active anchor
tab     ... for clicking on the tab

<x1> ... left limit of the column
<x2> ... right limit of the column
<Function>  [<Argument>]
Same as keymap file.

[Default values]

Same as below:

button  1 default       MOVE_MOUSE
button  2 default       BACK
button  3 default       MENU_MOUSE

button  1 active        GOTO_LINK

button  1 tab           TAB_MOUSE
button  2 tab           CLOSE_TAB_MOUSE

lastline        "<<UpDn"
button  1 lastline 0 1  BACK
button  1 lastline 2 3  PREV_PAGE
button  1 lastline 4 5  NEXT_PAGE

2-stroke keybinds

[Summary]

Two-stroke keybinds are now available.

Some examples for the keymap file are below:

  # Submit the form by `x' + Return:
  keymap  "x \n"  SUBMIT
  # Open the specified URL with new tab by `x' + `u':
  keymap  "x u"   TAB_GOTO

Undo for cursor positions

[Summary]

Undo/Redo are now available. It is caused by buffering of the positions of the cursor.

[Additional keymap functions]

UNDO  Cancel the last movement of the cursor.
This funcion is bound to `(' by default.
REDO  Revoke the Undo.
This funcion is bound to `)' by default.

Increased management for wheel mice

[Summary]

The management for wheel mice is reinforced.

They are now available for menus.

[Additional config options]

relative_wheel_scroll
Select the velocity which is in proportion to:
  A: size of the screen
  B: number of lines.
The default value is `A'.
relative_wheel_scroll_ratio
(only for A) set the minimum scrolling unit (%). The default value is 5.
fixed_wheel_scroll_count
(only for B) set the minimum scrioling unit (number of lines) The default value is 30.
   

Background downloading

[Summary]

The files are downloaded to save in background.
Files being downloaded are listed on the "Download list panel". These actions are able to be quit.

[Additional keymap functions]

DOWNLOAD_LIST  Show the list of downloading files.
This funcion is bound to `D' by default.

[Additional config options]

open_tab_dl_list  Open "Download list panel" with new tab. The default value is NO.

data: URL scheme

[Summary]

data: URL scheme (RFC2397) as follows are available now:
  data:[<mediatype>][;base64],<data>

news:, nntp: URL scheme

[Summary]

Some features are added to news: or nntp: URL scheme (RFC1738).
Valid formats are as below:
  Getting articles:
    news:<message-id>
    nntp://<host>[:<port>]/<newsgroup-name>/<article-number>

  Listing the articles in the selected Newsgroup (New):
    news:<newsgroup-name>
Some of other formats which is not defined in RFC1738 are also available:
  Getting articles:
    news:<newsgroup-name>/<article-number>
    nntp://<host>[:<port>]/<message-id>

  Listing the articles in the selected Newsgroup:
    news:<newsgroup-name>/<start-number>-<end-number>
    nntp://<host>[:<port>]/<newsgroup-name>
    nntp://<host>[:<port>]/<newsgroup-name>/<start-number>-<end-number>
When listing the articles in a Newsgroup, Newsgroups which matchs with <newsgroup-name>.* are listed together.

Connections with News servers keep alive after the transfering of articles.

[Additional config options]

nntpserver  Specify a News server (NNTP server) for news: URL scheme. The default value is environment variable NNTPSERVER.
nntpmodel  Set the mode of the News server. The default value is environment variable NNTPMODE.
max_news  Set the number of the listed articles. The default value is 50.

[Environment variables]

NNTPSERVER  The News server (NNTP server) for news: URL scheme.
NNTPMODE  The mode of the News server.

Folding lines for plain text files

[Summary]

An option is added to folding lines in plain text files.

To toggle this function, write as below in keymap:

  keymap  "x f"  COMMAND  "SET_OPTION fold_line=toggle ; RESHAPE"

[Additional keymap functions]

RESHAPE  Rerender the buffer.

[Additional config options]

fold_line  Fold the lines in plain text files. The default falue is NO.

Listing of links

[Summary]

The links (anchors and images) in the current buffer are now able to be listed. link tag, accesskey attribute is available.

[Additional keymap functions]

LIST  List the links and images.
This funcion is bound to `L' by default.
LIST_MENU  Open the menu of the link list, and load the linked files.
This funcion is bound to `ESC-l' by default.
MOVE_LIST_MENU
Open the menu of the link list, and move the cursor to the menu.
This funcion is bound to `ESC-m' by default.
LINK_MENU  Open the menu of the link elements list.
ACCESSKEY  Open the menu of the Accesskey attributes.

Setting default values for forms

[Summary]

Set default values for form elements in HTML files from specified sites by writing the configuration file (~/.w3m/pre_form).

[Format of the configuration file]

Valid formats are as follows:
  url <url>|/<re-url>/
  form [<name>] <action>
  text <name> <value>
  file <name> <value>
  passwd <name> <value>
  checkbox <name> <value> [<checked>]
  radio <name> <value>
  select <name> <value>
  submit [<name> [<value>]]
  textarea <name>
  <value>
  /textarea

[Additional config option]

pre_form_file  The configuration file to set default values for forms. The default is ~/.w3m/pre_form.

Others

[Addtional keymap functions]

NEXT  Show the next buffer.
PREV  Show the previous buffer.
SEARCH  <search_str>
SEARCH_BACK  <search_str>
SEARCH and SEARCH_BACK are now able to have arguments.

[Additional config options]

use_proxy  Use a proxy. The default value is YES (when http_proxy,ftp_proxy etc. are set).
https_proxy  Use a HTTPS proxy. The proxy server specified for HTTP is used for HTTPS by default.
preserve_timestamp
Preserve the time stamp in saving files. The default value is YES.
decode_url  Display decoded URL. The default value is NO.
display_ins_del
Show the contents of DEL, S, and STRIKE elements. The default value is YES.
image_map_list
List the links in image maps. The default value is YES.
graphic_char  Use graphic characters for borders of tables or menus. The default value is YES.
(only available when #undef KANJI_SYMBOLS)
disable_secret_security_check
Disable check of the permissions of the password file. The default value is NO.

[Additional command-line options]

-show-option  Show config options.

Security fixes of the HTML parser

[Summary]

Some internal tags are unexpectedly utilized by some bugs in the HTML parser after w3m-0.3.2. They are fixed.

Security fixes of the local CGIs

[Summary]

The install path of local CGIs are changed to call them in safe.

The local cookies to keep the security of local CGIs were delivered through the environment variables LOCAL_COOKIE and QUERY_STRING. These values are visible for other users using commands like ps and so on. The problem is avoided by handing only the file name as the value of environment variable LOCAL_COOKIE_FILE, and the local cookies are described in the file.