有的时候写文档还是用 Emacs23 + w3m 浏览网页来得方便,不用在凌乱的桌面到处切换,可以直接从 Emacs 的一个 Buffer 快速地切换到另一个 Buffer。

首先区分几个概念:

  1. w3 是用 elisp 写的基于文本的浏览器,只能在 Emacs 中运行。可以看看在 EmacsWiki 中有关 w3 的详细介绍
  2. w3m 是一个文本浏览器,可以在终端或是 xterm 上跑。官方的 w3m 好像是只有 Linux 的包;如果是在 Windows 下,则可以用 Cygwin 来移植。方法很简单,就是从 Cygwin 里安装 w3m包即可,会在 Cygwin/bin 的目录下生成 w3m.exe 以及相关的 dll 文件。你可以在 Cygwin 中运行 w3m 来看看这个软件的效果,例如:
    $ w3m http://www.google.com
**注意:w3m 和 Emacs 中的 w3 没有任何的关系!**</li> 

  * [Emacs-w3m](http://emacs-w3m.namazu.org/) 则是 Emacs 调用 w3m 的一个接口。[Emacs-w3m](http://emacs-w3m.namazu.org/) 可以在 Emacs 中直接调用 w3m,因此,相比于 w3 来说,速度优势十分明显。</ol> 

推荐使用 w3m 作为文本浏览器,当然,同样也推荐用 emacs-w3m 作为 w3m 的前端,这比在 Cygwin 或是其他终端裸奔 w3m 方便多了。

现在说一说如何在 Windows 下安装 Emacs-w3m。我使用的是 [EmacsW32](http://ourcomments.org/Emacs/EmacsW32.html) 版本,即对应最新的 Emacs32 版本。

  1. 首先,我们需要在 cygwin 里把 w3m 安装好。如果你懒得安装,直接下载别人编译好的 w3m.exe 和相关的 dll,放到 cygwin/bin 目录下就可以了。
  2. 把下载下来的 [Emacs-w3m](http://emacs-w3m.namazu.org/),解压到 site-lisp,然后在 Cygwin 或是 cmd 中进入这个目录,运行如下命令: 
    <pre><span style="color: #99968b"># </span><span style="color: #99968b">emacs -batch -q -no-site-file -l w3mhack.el NONE -f w3mhack-nonunix-install</span></pre>

  3. 不要在 cygwin 里直接运行 configure, make 之类的东西,否则,只是按照你在 cygwin 里 emacs 的版本来编译 emacs-w3m 罢了。
  4. 找到你用命令 2) 生成的文件。在我的电脑上生成的文件是被放在 EmacsWin32 的安装目录 D:\Program Files\Emacs\site-lisp下。这个目标地址有可能会因为你的 Emacs 版本以及你系统的环境变量而有所改变。
  5. 把生成的文件拷到你的 emacs load-path 目录下。我的 load-path 是 ~/emacs/site-lisp。
  6. 配置好你的 .emacs,加入如下这一段: 
    <pre><span style="color: #99968b">;;</span><span style="color: #99968b">w3m</span>

(add-to-list ’load-path "~/emacs/site-lisp/w3m") (requirew3m-load) (requirew3m-e21) (providew3m-e23) (setq w3m-use-favicon nil) (setq w3m-command-arguments ‘("-cookie" "-F")) (setq w3m-use-cookies t) (setq w3m-home-page http://www.google.com)

    在这里,如果不用
    
    <pre>(<span style="color: #8ac6f2;font-weight: bold">require</span> '<span style="color: #e5786d">w3m-e21</span>)

(providew3m-e23)

    则会提示[当前的 Emacs-w3m 版本不支持 Emacs23](http://www.emacswiki.org/cgi-bin/wiki/emacs-w3m#toc11),需要从 CVS 里下载最新的 emacs-w3m 版本。</li> </ol> 
    
    现在,你在 Emacs 中用 M-x w3m 就可以用文本模式浏览网页了。