Conkeror 浏览器征服小屏幕
Conkeror 是一款具有 Emacs 风格的外观、感觉和配置的 Web 浏览器。它使用 Firefox 的 HTML 渲染引擎,并且可以与大多数 Firefox 扩展程序一起使用,但它提供了键盘驱动的界面,并出色地利用了屏幕空间。对于配备不精确触摸板和小屏幕的上网本来说,它是一款合适的 Web 浏览器。Conkeror 使用与 Firefox 相同的自由软件许可证。
Debian Lenny、Debian Sid 和 Ubuntu Jaunty 的用户应安装 conkeror 和 conkeror-spawn-process-helper 软件包。其他发行版的用户应安装 XULRunner 软件包(xulruner-1.9 或 xulrunner)。如果您安装了 Firefox 软件包,则该软件包会为您安装 XULRunner。安装 XULRunner 后,下载 Conkeror 快照并将其解压缩到您常用的软件目录中——您无需编译任何内容。请参阅“资源”部分,获取 Conkeror 快照下载链接。
要将 Conkeror 启动器放入您的常用可执行目录之一,以便您可以从命令提示符或应用程序启动器启动 Conkeror,请从 conkeror/contrib/run-conkeror 文件创建一个符号链接到您的常用可执行目录之一。例如
$ ln -s /usr/local/share/lib/conkeror/contrib/run-conkeror \ /usr/local/bin/conkeror.
如果您的发行版不包含 Firefox,请从 Mozilla 下载 XULRunner 并将其解压缩到您常用的软件目录中。然后,下载 Conkeror 快照并将其也解压缩到您常用的软件目录中。请参阅“资源”部分,获取下载链接。
您必须执行一个额外的步骤才能使 Conkeror 启动器工作。首先,将 xulrunner-stub 文件从 XULRunner 目录复制到 Conkeror 目录。然后,从该文件创建一个符号链接到您的常用可执行目录之一。例如
$ cp /usr/local/share/lib/xulrunner-1.9/xulrunner-stub \ /usr/local/share/lib/conkeror/xulrunner-stub $ ln -s /usr/local/share/lib/conkeror/xulrunner-stub \ /usr/local/bin/conkeror.
您无需配置 Conkeror 即可开始使用;只需启动您安装的 conkeror 可执行文件即可。Conkeror 的起始页列出了哪些键执行哪些操作(快捷键绑定)。列出的第一个快捷键绑定 g 会转到您指定的 URL。例如,按 g 并键入以下内容,加载 Linux Journal 主页linuxjournal.com。像在 Firefox 中一样,单击链接来关注链接,然后按 B 返回到上一页或按 F 前进到下一页。
按 C-h i 返回起始页上的基本快捷键绑定列表。在 Conkeror 和 Emacs 中,C- 代表“按住 Ctrl 键并按下一个键”。例如,C-h i 代表“按住 Ctrl 键,按 h 键,释放 Ctrl 和 h 键,然后按 i 键”。Conkeror 也使用其他 Emacs 快捷键绑定缩写:M- 代表按住 Meta 键(PC 键盘上的 Alt 键和 Macintosh 键盘上的 Option 键);S- 代表按住 Shift 键。有关 Conkeror 快捷键绑定的完整列表,请按 C-h b。
虽然您可以通过单击链接来关注链接,但您应该学习使用键盘来关注链接,以充分利用 Conkeror。要使用键盘关注链接,请按 f 键。Conkeror 会在每个链接旁边放置一个小数字(图 2),包括链接图像。输入一个数字以关注其链接,或键入您想要的链接名称中的字母。当您键入字母时,Conkeror 会删除与这些字母不匹配的链接上的数字,并重新编号剩余的链接。即使在速度较慢的计算机上,这种情况也会立即发生。如果只有一个链接与您输入的字母匹配,Conkeror 会自动关注它。
例如,假设有三个链接名称:foo、bar 和 baz。键入 f 和 3 会关注第三个链接 baz。键入 f 和 baz 也会关注 baz 链接。键入 f 和 b 会删除 foo 旁边的数字,以便您可以按 1 选择 bar 或按 2 选择 baz。
与 Firefox 中一样,您可以在 Conkeror 中启动搜索。按 g 键,键入“google”,键入您的搜索词,然后按 Enter 键转到 Google 搜索结果。将“google”替换为“lucky”可以直接转到第一个 Google 结果,或者将其替换为以下任何单词以使用其他搜索引擎:“wikipedia”、“sourceforge”或“dictionary”。当您搜索 Google 时,Conkeror 会要求 Google 猜测您要搜索的内容,并在列表中显示最佳匹配结果。按 Tab 键选择首位结果,使用键盘箭头键选择备选结果,或者只需完成键入您的搜索词并按 Enter 键即可。这也适用于 Wikipedia 搜索。
Firefox 使用选项卡在同一浏览器中保留单独的网页;Conkeror 使用缓冲区来执行相同的操作。要在新缓冲区中打开链接,请按 C-u f,然后使用上面的链接关注说明选择链接。例如,假设您回到包含 foo、bar 和 baz 链接的页面。要在新窗口中打开 baz,请按 C-u f 并键入baz。在任何打开网页的命令之前按 C-u,以在新缓冲区中加载该页面。例如,C-u g 会转到 URL 或在新缓冲区中加载搜索结果页面,而 C-u C-h i 会在新缓冲区中加载起始页。此外,尝试打开新窗口的链接将在新缓冲区中打开。
按 M-p(在 PC 上为 Alt-p,在 Mac 上为 Option-p)返回到上一个缓冲区;按 M-n 前进到下一个缓冲区。按 C-x b 显示打开的缓冲区列表(图 3)。列表中的每个缓冲区都有一个名称——其 URL 加上其标题。使用键盘箭头键从列表中选择缓冲区名称,或通过键入缓冲区名称的一部分来缩小列表范围。随时按 Enter 键显示选定的缓冲区。
通过按 C-x k 显示缓冲区列表来关闭缓冲区——在 Conkeror 的术语中,杀死缓冲区。以与上述相同的方式选择缓冲区,然后按 Enter 键杀死它。Conkeror 默认选择当前缓冲区,因此您可以通过按 C-x k <Enter> 快速杀死它。当您关闭最后一个缓冲区时,Conkeror 会退出。按 C-x C-c 自动关闭 Conkeror 及其所有缓冲区。
任何 Web 浏览器的高级用户通常会编辑 URL 以转到他们访问的网站的不同部分。按 C-x C-v 编辑 Conkeror 中的当前 URL。将此与 C-u 结合使用以在新缓冲区中打开修改后的 URL:C-u C-x C-v。
在 Conkeror 中为 URL 添加书签可让您在更改 URL 时使用 Tab 键补全返回到该 URL。按 b 键为当前 URL 添加书签,为书签选择一个名称(Conkeror 默认填充页面标题),然后按 Enter 键。按 g 键转到新 URL,键入书签标题或书签 URL 中的几个字母,然后按 Tab 键。Conkeror 会显示与您键入的字母匹配的书签列表;使用键盘箭头键选择书签,然后按 Enter 键转到该书签。
有时,当您尝试为页面添加书签时,Conkeror 会要求您选择一个框架。它会在页面上的每个框架旁边放置一个数字,并允许您通过输入其数字来选择一个框架。如果您想为包含所有框架的 URL 添加书签,请输入数字 0。
通过按 M-x 键、键入命令名称并按 Enter 键来访问 Conkeror 的所有命令——即使是那些未绑定到快捷键绑定的命令。按 Tab 键补全任何命令名称;例如,按 M-x 键,键入print,然后按 Tab 键使 Conkeror 选择 print-buffer 命令。如果您按 M-x 和 Tab 键而不键入任何内容,Conkeror 会列出其所有命令。我建议您查看此列表,以了解 Conkeror 可以执行的所有操作。
Conkeror 包括称为模式的特殊脚本,这些脚本会更改其在特定站点上的行为——例如,xkcd.com 漫画网站的简单 XKCD 模式。当您在 Firefox 中访问 xkcd.com 时,当您将鼠标移动到图像上时,它会显示漫画的标题。当您在 Conkeror 中访问 xkcd.com 时,它会激活 XKCD 模式(图 4),并在图像下方的特殊字体中显示标题——您无需将鼠标移动到图像上。
Gmail 模式重新定义了 Conkeror 的许多默认快捷键绑定,以便您可以使用默认的 Gmail 快捷键绑定。其他模式包括 Google 地图模式、Reddit 模式和 YouTube 模式。
当您访问具有模式的站点(例如 Google 地图)时,Conkeror 会加载该站点的模式。当您离开该站点时,Conkeror 会自动卸载该模式。您可以通过 M-x 菜单加载模式的命令,尝试在其他站点上使用模式。例如:M-xxkcd-mode。但是,大多数模式在其他站点上没有意义。
Firefox 有一个漂亮的“首选项”配置屏幕。Conkeror 没有。但是,您可以在 about:config 页面上更改 Conkeror 中的任何浏览器设置。按 g 键,键入about:config,然后按 Enter 键转到该页面并双击您要更改的设置。Conkeror 以粗体显示更改的设置。使用页面顶部出现的搜索栏快速查找特定设置。例如,输入proxy查找所有代理设置。
虽然您可以在 about:config 中轻松查找和更改设置,但有些用户更喜欢动态的 Emacs 风格的配置文件。此文件可以更改 about:config 设置、定义快捷键绑定、添加新命令、加载外部模块以及使用 JavaScript 定义事件。您可以将任何文件转换为 Conkeror 配置文件,但该文件必须在您尝试使用它之前存在。例如,将以下行添加到 .conkeror.rc 文件中,以防止 Conkeror 在显示 about:config 页面之前显示警告消息
user_pref("general.warnOnAboutConfig", false);
创建配置文件后,您必须告诉 Conkeror 在哪里可以找到它。按 C-h i 转到 Conkeror 起始页,滚动到“Conkeror RC 文件”部分,并在文本框中输入配置文件的完整路径名。例如,我输入了以下文本:/home/harding/.conkeror.rc。按“设置 RC 文件”按钮。您只需要执行此操作一次。
在“设置 RC 文件”按钮的正下方,Conkeror 列出了几个示例指令,供您放入配置文件中。例如,一行告诉 Conkeror 如何在您按 g 键时使用自定义搜索引擎。您还可以向 Conkeror 添加新命令和新快捷键绑定。有关更多示例,请关注本文“资源”部分中的 Conkeror Wiki 链接。
下一节将告诉您如何在 Conkeror 中使用 Firefox 扩展程序,但某些 Firefox 扩展程序不想与名称不是 Firefox 的浏览器一起使用。如果您告诉扩展程序您实际上使用的是 Firefox,则大多数 Firefox 扩展程序都可以在 Conkeror 中工作。我建议您将以下行放入您的配置文件中,以使 Conkeror 忽略兼容性问题
user_pref("extensions.checkCompatibility", false);
大多数 Firefox 扩展程序都可以在 Conkeror 中工作,但如果您习惯了 Firefox 扩展程序,则在 Conkeror 中安装扩展程序可能会感觉像退了一步。首先,在 Mozilla 网站(或其他网站)上找到扩展程序,并将其下载到您的计算机。(Firefox 扩展程序的文件名以 .xpi 结尾。)然后,按 M-x 键,键入extensions,然后按 Enter 键启动扩展程序管理器。选择“扩展程序”选项卡,单击“安装”按钮,使用文件导航器选择您下载的文件,然后单击“打开”。与 Firefox 中一样,您必须重新启动 Conkeror 才能加载扩展程序。
Conkeror 允许您在外部文本编辑器(例如 Emacs(图 5))中编辑 HTML 文本框。Conkeror 将文本框的内容复制到临时文件,在文件上打开您的文本编辑器,并在您关闭编辑器时将更改后的文件读回文本框。要使用此功能,您必须编译 Conkeror 的小型辅助程序 conkeror-spawn-helper。(如果您使用上面的说明在 Debian 或 Ubuntu 中安装了两个 Conkeror 软件包,则可以跳过此段。)转到您安装的 Conkeror 源代码目录并运行以下命令make。您无需运行make install,因为 make 会在 Conkeror 使用的目录中编译该程序。
接下来,您需要告诉 Conkeror 要使用哪个文本编辑器。Conkeror 在 $EDITOR 环境变量中查找编辑器命令,但如果未设置 $EDITOR,Conkeror 会启动 Emacs。大多数发行版都允许您通过将以下行添加到您的 ~/.xsession 和 ~/.xinitrc 文件中来设置 $EDITOR 变量
export EDITOR=my_editor
替换my_editor上面的内容为您要使用的编辑器的名称——例如,对于图形 VIM 编辑器,gvim;GNOME 编辑器,gedit;或 KDE 编辑器,kate。如果您想使用控制台编辑器,请在环境变量的值前加上终端模拟器的名称——例如
export EDITOR="xterm -e vim"
但是,如果您在其他程序中使用外部编辑器,您可能不想在图形编辑器中完成所有操作。要使 Conkeror 单独启动特定编辑器,请将以下行添加到您的 Conkeror RC 文件中,并且不要设置 $EDITOR 变量
editor_shell_command = "my_editor";
在所有这些配置之后,使用外部编辑器应该看起来很简单。使用 Tab 键或鼠标将输入光标放置在文本框中,然后按 C-i。您可以编辑小框(例如,您的姓名框)或大框(例如,Wikipedia 文章中的编辑框)。Conkeror 在您编辑时将文本框灰显。当您通过关闭文本编辑器完成编辑时,Conkeror 会恢复原始背景颜色。
Conkeror 起始页链接到其内置教程,您可以通过按 C-h t 激活该教程。该教程教您如何使用 Conkeror 浏览 Web。
与 Emacs 的帮助类似,Conkeror 的帮助可以描述其自身的命令。C-h f 快捷键绑定描述命令,而 C-h k 快捷键绑定描述快捷键绑定。例如,要了解 print-buffer 命令的作用,请键入 C-h f 和print-buffer。Conkeror 会告诉您,“print-buffer 是 commands.js 中的交互式命令 [用于] 打印当前加载的页面。” 同样,按 C-h k 和 f,Conkeror 会告诉您“f 绑定到 bindings/default/content-buffer/element.js 中的 follow 命令。”
对于复杂的问题,Conkeror 可以帮助您搜索其 wiki。按 g 键,然后键入conkerorwiki,并输入您的搜索词。Conkeror 会搜索其 wiki,其中包括故障排除信息和许多充分利用 Conkeror 的方法。当然,您始终可以使用“资源”中的链接直接访问 Conkeror wiki。
第一次尝试 Conkeror 之前,我犹豫了一下。作为一名长期的 vi 用户,我对任何基于 Emacs 的东西都不感兴趣。但是,我确实需要一款 Web 浏览器,它可以充分利用我的上网本 5 英寸高的屏幕和糟糕的触摸板。Conkeror 符合要求,我尝试了一下。它给我留下了深刻的印象。虽然 Conkeror 在其复杂性方面可能看起来很复杂,但我大部分时间都花在访问页面、关注链接和编辑文本框上——Conkeror 使这三件事变得轻松快捷。在我慢慢学会使用它的其他功能后,我发现我没有理由不应该在我的桌面上也享受高级键盘驱动的 Web 浏览器的优势。
资源
Conkeror 主页和 Wiki: conkeror.org
下载 Conkeror 快照: repo.or.cz/w/conkeror.git?a=snapshot;h=master;sf=tgz
下载 Mozilla XULRunner: releases.mozilla.org/pub/mozilla.org/xulrunner/releases/1.9.0.1/runtimes
David A. Harding 住在新泽西州,是一名自由技术作家。他拥有 Linux Professional Institute 系统管理认证,并且经常组织当地的 GNU/Linux 活动。