Skip to content
An Emacs interface to w3m
Emacs Lisp Groff Shell
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


       This package contains emacs-w3m, an Emacs interface to w3m

1. Introduction

   w3m is a pager with WWW capability, developed by Akinori ITO.
   Although it is a pager, it can be used as a text-mode WWW browser.
   Visit the official w3m page for details:

   Emacs-w3m is a simple Emacs interface to w3m.

2. Requirements

   Check whether your system meets the following requirements before
   installing emacs-w3m.

   Emacs-w3m requires the latest version of w3m (version 0.3.1 and
   later).  Since this program is much sensitive to the version of w3m,
   you should confirm it if you already have w3m installed.  And we
   recommend you visit the official w3m web page to check whether a
   newer version of w3m has been released:

   If you want to use the shimbun library which is included in the
   emacs-w3m distribution, you have to install FLIM package.  For more
   detail about the shimbun library, see the README.shimbun.ja file
   (written in Japanese, sorry).

   a) Emacs 21.x
      No additional package is required.

   b) Emacs 20.x
      No additional package is required.

      When BITMAP-MULE package is installed, you can see monochrome
      bitmap images inline on an Emacs frame.  It is available at:

   c) XEmacs
      APEL package is required.  It is available at:

      Note: You must not use the APEL XEmacs package (which is contained
       in SUMO).  If you have already installed the APEL XEmacs package,
       use the following directives to replace it with APEL which is
       linked above (you can also use the same directives in order to
       newly install APEL):

          % rm -fr /usr/local/lib/xemacs/xemacs-packages/lisp/apel
          % cd apel-10.5
          % make install-package XEMACS=xemacs-21.4.x\

      If you are using XEmacs 21.x, you should install the "gifsicle"
      program.  There is a known bug in all XEmacs 21.x series that
      it won't let it display optimized animated gifs correctly or may
      make it crash when some kind of an interlaced gif image is
      displayed.  Emacs-w3m uses the "gifsicle" program to convert gif
      data in order to make it possible to be handled by XEmacs 21.x.
      It is available at:

   d) Mule 2.3 (based on Emacs 19.34)
      APEL package, the "new custom" package, the regexp-opt.el(c)
      module are required.  For more detail, see carefully the next
      section about Emacs 19.34.

      If you wish to use BITMAP-MULE package to show monochrome images
      inline on the web pages, we strongly recommend you apply the patch
      and rebuild Mule.  The patch named mule-2.3@19.34.patch is
      included in the patches/ directory.  If you don't accept our
      recommendation, Mule might be stuck.  And you wouldn't get out of
      the difficulty except killing Mule.

   e) Emacs 19.34 (without Mule)
      APEL package, the "new custom" package, the regexp-opt.el(c)
      module are required.

      Emacs-w3m requires the "new custom" package.  If you use Emacs
      19.34 or Mule 2.3, you have to install it before installing
      emacs-w3m.  For more detail, visit the following page:

      Especially for Mule 2.3, see also the README.en file which is
      included in the APEL distribution.

      Emacs-w3m also requires the regexp-opt.el(c) module which might
      not be provided in the old Emacsen (e.g. Emacs 19.34 and Mule
      2.3).  If you are using such versions of Emacs, you have to
      install the regexp-opt.el(c) module before installing emacs-w3m as

          % cp attic/regexp-opt.el /usr/local/share/emacs/site-lisp
          % cd /usr/local/share/emacs/site-lisp
          % emacs -q -no-site-file -batch -f batch-byte-compile regexp-opt.el

      (You will likely need to say `mule' instead of `emacs' for the
      path name and the executable name if you are using Mule.)

3. Installation

3.1. Installing emacs-w3m on UNIX-like systems

     At the first, run the `configure' script.

         % ./configure

     Important notice to the Gnus users:
     If the various versions of Gnusae are installed in your system (it
     is likely that there are the released version and the development
     version of Gnusae), make sure that priority is given to the
     directory where the gnus.elc file which you use is installed in the
     load-path.  To do that, use the --with-addpath option as follows:

         % ./configure --with-addpath=/usr/local/share/emacs/site-lisp/gnus

     If you've installed APEL, FLIM or something in non-standard
     directories other than the default `load-path', you must specify
     them using the --with-addpath option as follows (you may also
     include the Gnus directory in it separated with `:'):

         % ./configure --with-addpath=/opt/share/apel:/opt/share/flim

     Next, execute the following commands to install emacs-w3m to an
     appropriate directory.

         % make
         % make install

     If you are using Emacs 21 or XEmacs, you had better install icon
     image files.  To do this:

         % make install-icons

     You can also install emacs-w3m as an XEmacs package using
     `make install-package' instead of `make install'.

         % make
         % make install-package

     In this case, you don't have to execute `make install-icons'.

     The info files will also be installed by `make install' or
     `make install-package'.

3.2. Installing on non-UNIX-like systems

     If you cannot execute the `configure' script on your system, or if
     no `make' command is available, execute the following command:

         % emacs -batch -q -no-site-file -l w3mhack.el NONE -f w3mhack-nonunix-install

     If APEL, FLIM (or any other library) aren't installed in the
     ordinary places, the installer will leave them out.  In such a
     case, it is necessary to tell those places to the installer as
     shown below:

         % emacs -batch -q -no-site-file -l w3mhack.el //c/share/apel://c/share/flim -f w3mhack-nonunix-install

4. Configuration

   We recommend using the ~/.emacs-w3m file (which is the default
   value of `w3m-init-file') when you twiddle some variables of
   emacs-w3m.  This file is similar to ~/.emacs, but is read when
   emacs-w3m starts.  However, note that there are commands which
   shouldn't be put there, for example, the autoload definitions.

4.1. Essential Configuration

     Put this line into your ~/.emacs file:

         (autoload 'w3m "w3m" "Interface for w3m on Emacs." t)

     If you want to use contributed programs, some additional settings
     are required.  See the header of those program files for more
     details.  If you are unsure of them, put the following lines in
     your ~/.emacs file:

         (autoload 'w3m-find-file "w3m" "Find a local file using emacs-w3m." t)
         (autoload 'w3m-search "w3m-search" "Search words using emacs-w3m." t)
         (autoload 'w3m-weather "w3m-weather" "Display a weather report." t)
         (autoload 'w3m-antenna "w3m-antenna" "Report changes of web sites." t)
         (autoload 'w3m-namazu "w3m-namazu" "Search files with Namazu." t)

4.2. mime-w3m.el

     In order to handle text/html part with emacs-w3m under SEMI MUAs
     such as T-gnus and Wanderlust, you have to put the following line
     in your ~/.emacs file:

         (require 'mime-w3m)

4.3. Proxy Gateway

     There are some ways to do this, one is to set the "http_proxy"
     environment variable globally in the shell something like:

         setenv http_proxy

     Another way is to customize the `w3m-command-arguments' variable to
     add the options "-o" and "http_proxy=http://PROXY_SERVER_NAME:PORT/".
     This can also be done in your ~/.emacs-w3m file as shown below:

        (setq w3m-command-arguments
              (nconc w3m-command-arguments
                     '("-o" "http_proxy=")))

     To specify `no-proxy' hosts, which shouldn't be connected to with
     proxy gateways, you can set the "no_proxy" environment variable
     with the comma separated host names, or set the
     `w3m-no-proxy-domains' variable with a list of domain names (not
     host names) as follows:

         (setq w3m-no-proxy-domains '("" ""))

     See also the documentation for the `w3m-command-arguments-alist'
     variable to use regexps to specify the `no-proxy' hosts.

5. Contact the emacs-w3m community

   To contact the emacs-w3m community for reporting bugs, contributing
   improvements, making a suggestion or asking us for help, send a mail
   to the open list <>.  You can also send a bug
   report using the `report-emacs-w3m-bug' command or the `C-c C-b' key
   if you have set the `mail-user-agent' variable that will work

6. Acknowledgments

   w3m, which is an essential part of this package, was written by
   Akinori ITO.  We'd like to address our thanks to him for his nice

7. Related Information

   [1] APEL
       It can be downloaded from

   [2] FLIM
       It can be downloaded from
       Before installing it, it is necessary to install APEL.

       It can be downloaded from

   [4] gifsicle
       It can be downloaded from

   [5] New custom
       For more detail, check

Local Variables:
mode: indented-text
coding: ascii
fill-column: 72
Something went wrong with that request. Please try again.