本篇基本覆盖我所使用的 Vimperator 的方方面面,大抵是自己从一个新手到熟练的历程的总结,帮助非 Vim 用户迅速上手,但不可能涉及到Vimperator 的所有细节,在有疑惑时还是需要:help命令查看帮助文件。
使用 Vimperator 有段时间了,期间不断更新它,从 2.x 更新到现在的 3.1 pre,Firefox 也从原来的 3.6x 更新到现在的4 RC。
Vimperator 3.1 pre下载地址
注:Vimperator 3.0x 版本较其先版本有很大的改进,另外作者也对某些命令进行了调整,如原来的guioptions 选项现在改成了 gui,保留了地址栏,取消了原来的状态栏等,具体详见其wiki.
我是很凑巧地学过一点 Vim,又因为鼠标手的缘故,急需软件解放左右手,然后就找到 Vimperator。之后我也觊觎过 Google Chrome 的速度,但速度再快,只要没有与 Vimperator 匹敌的插件,就感觉浑身不对劲。当然我也曾试过 Chrome 下的一些类似插件如 Vimium、Vrome、Vimlike Smoozie 几个,但功能相差 Vimperator 太远,根本让人提不起兴趣迁移到 Chrome 上。
Vimperator 的诞生很大程度上受启于 Vim,这在帮助文件里曾提及过,但这不代表使用 Vimperator 前一定得学习 Vim,大部分时候,Vimperator 只需简单的一些操作即可完成绝大部分工作的。
可以将常用的网址加为 quickmark(快速标定),有两个方法:
标定当前网址———如当前页网址为 http://www.google.com,在按shift+m键后,可以看到底端命令栏出现大写的M
,然后再按 a-z、A-Z、0-9 中的任一个,如g,则命令行显示 Added quick mark ‘g’:http://www.google.com,此后可以使用gog在当前页打开 google,或gng在新标签页打开 google。
标定多个网址———:qmark a www.google.com, www.zfanw.com, google Vimperator
(注意逗号后面是有个空格的),以后使用goa或gna命令则可以打开 google 首页、zfanw 首页并打开 google 搜索 vimperator。
:qmarks
———显示所有快速标定
:delqmark g
———删除 g 标定
:delqmark!
———删除所有快速标定
gh———在当前页打开主页
gH———在新标签页中打开主页
:o www.google.com
———当前页打开
:t www.google.com
———新标签页中打开
:w www.google.com
———新窗口里打开
:dialog searchengines
———查看可用的搜索引擎列表,并可以进行排序、删除、更改关键字等,Google 为其默认搜索引擎
:google vimperator
———打开 google 并搜索 vimperator
:wikipedia vimperator
———打开 wikipedia 中的 vimperator 条目
其他的搜索引擎相似。
h左
l右
j下
k上
gg———回到页首
G———跳到页面尾部
]]———检查页面内含 next 等的链接,作用等同”下一页”,譬如 Google,Wordpress 页面中的 next,中文无法使用
[[---------检查页面内含 previous 等的链接,作用等同"上一页",中文无法使用
gf---------查看页面源文件,再次使用则切换回原页面
gu---------打开上一级页面,如当前网址为 www.zfanw.com/blog,使用该命令后打开 www.zfanw.com
zi---------放大字体大小
zo---------缩小字体大小
zz---------恢复原字体大小
Vimperator 提供有 hints 模式,该模式下页面内的链接被编号,按下该编号即可打开链接,又或者输入链接内的文本,比如某链接为 shopping car,则可以直接键击 shopping car 打开链接,hints 有两个打开模式:
当你在当前页中不断打开链接后,你可能想后退到前一个浏览页,又或者前进到后一个浏览页,就像在工具栏上单击前进、后退那样。
在使用以下命令时,请注意 Vimperator 所处的模式,只有在正常模式(normal mode)下述命令才能起到预期作用。
ctrl-o---------后退到上一个浏览页(在 insert mode 下恢复原来功能即 Firefox 的“打开”命令)
ctrl-i---------前进到下一个浏览页(在 insert mode 下调用外置文本编辑器编辑文本,默认为 gvim -f,可使用:set editor?
命令查看)
H----------后退到上一个浏览页,与正常模式下ctrl-o作用相同
L---------前进到下一个浏览页,与正常模式下ctrl-i作用相同
:[count]back[!]
---------后退,:3back
表示后退3次,:back!
表示后退到最早一个历史页
:[count]forward
---------前进,:3forward
表示前进3次,:forward!
表示前进到最后一个历史页
如果页面内有搜索框等可供输入文字的地方,则gi命令可快速定位,使其处于 insert mode。
当页面内仅有一个,如google首页,则gi命令即可定位。
若页面内有多个可输入文字的地方,如一个注册用户的页面,有用户名、邮箱、密码、确认密码四个,则1gi定位到用户名框,2gi定位到邮箱框。
有时gi命令不行,则可以用 hints 模式来定位输入框。
在 Vimperator 处于 insert 模式时,如 wordpress 下的写 post,则可以使用ctrl-i命令调用默认编辑器。
ctrl-p---------前一个标签页(p 指 previous)
ctrl-n---------后一个标签页(n 指 next)
gt---------后一个标签页,与 ctrl-n 命令同
gT---------前一个标签页,与 ctrl-p 命令同
g0、g^---------第一个标签页(0为数字而非字母)
g$---------最后一个标签页
d---------关闭当前标签页
:tabonly
---------关闭除当前标签页外的所有标签页
u---------如果你想恢复刚关闭的标签页,则可以按 u 来恢复,按多次 u 的话则可以依次恢复
假如你对 Vimperator 选项或键映射进行了某些自定义,比如:set gui=nonavigation
隐藏地址栏等,而希望下回仍然生效,则可以使用:mkvimperatorrc
[!]命令保存设置到 vimperatorrc 配置文件里.命令后的!指覆盖原有文件.
:restart
---------Vimperator 的该命令可以重启 Firefox,在安装完插件后经常需要.
Vimperator 提供了多种退出方式。
:quit
---------关闭当前页,若这是 Firefox 窗口的最后一个标签页,则关闭整个窗口;如果是最后一个窗口,则关闭 Vimperator;退出时,会话不保存
:quitall
---------退出所有,会话不保存
:winclose
---------关闭窗口
:winonly
---------关闭除当前窗口外的所有窗口
:xall
/:wqll
---------关闭所有,并保存当前会话
ZQ---------退出所有,会话不保存,与:quitall命令同
ZZ---------退出所有,保存当前会话,与:xall命令同