Emacs23 和 w3m 组成文本网页浏览器
文章目录
有的时候写文档还是用 Emacs23 + w3m 浏览网页来得方便,不用在凌乱的桌面到处切换,可以直接从 Emacs 的一个 Buffer 快速地切换到另一个 Buffer。
首先区分几个概念:
- w3 是用 elisp 写的基于文本的浏览器,只能在 Emacs 中运行。可以看看在 EmacsWiki 中有关 w3 的详细介绍。
- 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") (require ‘w3m-load) (require ‘w3m-e21) (provide ‘w3m-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>)
(provide ‘w3m-e23)
则会提示[当前的 Emacs-w3m 版本不支持 Emacs23](http://www.emacswiki.org/cgi-bin/wiki/emacs-w3m#toc11),需要从 CVS 里下载最新的 emacs-w3m 版本。</li> </ol>
现在,你在 Emacs 中用 M-x w3m 就可以用文本模式浏览网页了。
文章作者 cookwhy
上次更新 2008-09-22