缘起
最近,一直在加强自己VIM的相关的知识,以前的仅仅停留在简单配置能用的阶段,现在开始探索一些高级的功能,安装一些插件。在搜索vim相关资料的时候,firefox和chrome都有vim化的插件,就都安装了一下。
正文
1. Vimium
Vimium是一个Chrome的插件,可以在google的web app store中搜索并安装。Vimium可使chrome脱离鼠标,让网页浏览更高效,在简单的熟悉后的确感觉高效了很多,手再也不用离开键盘了。
例如yy直接可以将网址复制,yf可以指定复制页面中的连接,T可以在已经打开的标签中迅速定位到所需要找的那个,/在本页面中快速定位到所需找的单词,x直接关闭当前页面,H和L可以后退和前进。
?:显示命令帮助,记不得就按这个符号,弹出的窗口如下:
- j, <c-e> : 向下移动 Scroll down
- k, <c-y> : 向上移动Scroll upi
- h : 左移 Scroll left
- l : 右移 Scroll right
- H:回到上一个历史页面
- L:回到下一个历史页面
- J:跳到左边标签页
- K:跳到右边标签页
- t:创建新的标签页(ctrl+t)
- x:关闭当前标签页
- X:恢复关闭的标签页
- gg : 移到页面顶部 Scroll to the top of the page
- G : 移到页面底部 Scroll to the bottom of the page
- zH : Scroll all the way to the left
- zL : Scroll all the way to the right
- d : 向下移动一个页面 Scroll a page down
- u : 向上移动一个页面 Scroll a page up
- r : 刷新 Reload the page
- gs : 查看网页源码 View page source
- yy : copy当前页面url Copy the current URL to the clipboard
- yf : 拷贝当前页面的连接到剪切板 Copy a link URL to the clipboard
- p : 在当前标签页中打开剪切板中的链接 Open the clipboard's URL in the current tab
- P : 在新的标签页中打开剪切板中的链接Open the clipboard's URL in a new tab
- gu : Go up the URL hierarchy(例如,URL为http://blog.net/article/8021689 ,按下gu后,转到http://blog.net/article/,具体的翻译想不到好对应的名词)
- gU : Go to root of current URL hierarchy (类似gu,回到根URL http://blog.net)
- i : 进入输入模式 Enter insert mode (不知有何用处,难道是直接调试html代码)
- gi : 聚焦页面上的第一个(或第n个)文本框Focus the first (or n-th) text box on the page
- f : 在当前标签页中打开链接 Open a link in the current tab
- F : 在新标签页中打开链接 Open a link in a new tab
- <a-f> : 在新标签页中打开链接Open multiple links in a new tab
- o : 在当前页面中打开URL,书签和历史记录 Open URL, bookmark, or history entry
- O : 在新标签页中打开URL,书签和历史记录Open URL, bookmark, history entry, in a new tab
- T : 搜索打开的标签页 Search through your open tabs
- b : 打开书签 Open a bookmark
- B : 在新标签中打开书签 Open a bookmark in a new tab
- /:查找(ctrl+f)
- m : Create a new mark (试了一下,没管用)
- esc:退出
上面的这几个命令(OoTBb)可以通过Esc键来退出这些模式。下面的这命令就比较偏僻了,大概属于高级命令,我
- [[ : Follow the link labeled previous or <
- ]] : Follow the link labeled next or >
- gf : Cycle forward to the next frame on the page
- ` : Go to a mark
一些别人常用的Chrome插件,标记一下,用空试用试用。
- l AdBlock 禁止广告插件
- l Browser Button for AdBlock
- l ChromeMUSE - Multi-URL Shortener/Expander
- l Dict.cn 词典
- l FlashBlock
- l Google Dictionary
- l IE Tab
- l One Number
- l Proxy Switchy! 代理插件,*必备
- l Thunder,QQDownload,FlashGet Files Downloader 下载插件
- l User-Agent Switcher for Chrome
- l TinEye Reverse Image Search
- l Video Downloader - All videos from all sites
- l Webpage screenshot
- l Symtica
- l TabJump - Intelligent Tab Navigator
- l Web2PDFConverter
- l My Shortcuts
- l Vimium
2. Vimperator
Firefox下也有viminum的插件,不过Vimperator更假强大。Vimperator是让Firefox拥有vim的模式进而可以纯键盘操作插件。其官方站点为:http://vimperator.mozdev.net/,可在Firefox的扩展中搜索并安装。Vimperator为喜欢使用键盘的用户提供了类似于Vim的用户界面,这里可以对比着之前的viminum。
2.1. 安装
前置条件:firefox 28 ,Ubuntu 12.04LTS
步骤,在Tools->Add-ons->Get Add-ons中输入Vimperator,可以看到Vimperator以及相应的中文帮助插件,当前Vimperator版本是3.8.2,中文帮助貌似安装没起作用。而2010-02-18时,Vimperator的版本为v2.2,firefox当时才是版本4,4年后,firefox突飞猛进到版本28了,新的30版本也快发布了。
2.2. Hint模式 (Vimperator hint mode)
Vimperator的hints允许用户实现通常需要鼠标来完成的动作。在此模式中,所有能被点击的网页元素会被编号(采用数字编号),用户可以通过输入编号或者链接中的文字来选择。一旦元素被选择,就会执行一个操作(如点击、选择、复制链接地址等)。
- l f(F) 进入hints模式,这时页面上的链接旁边会出现快捷键提示(例如 HK),输入hk将打开这个链接;输入HK将强制在新tab打开链接。
- l h,j,k,l 这个熟悉vi的都不用介绍了,导航键
- l H,L 前进后退键
- l Ctrl+n 下一个tab
- l Ctrl+p 上一个tab
- l Ctrl+6 前后两个tab切换
- l o url 在当前tab打开url
- l o 关键字 用浏览器的缺省搜索引擎搜索关键字(用当前tab)
- l t url 在新tab打开url
- l t 关键字 用浏览器的缺省搜索引擎搜索关键字(用新tab)
- l / 在当前页面搜索,类似ctrl+f
- l d 关闭当前tab
- l u 恢复上一次关闭的页面
- l zi 页面放大
- l zo 页面缩小
- l zz 恢复页面大小
- l gf:查看页面源代码
2.3. 命令行
Vimperator的大多数功能通过窗口底部类似Vim的命令行来完成。像在Vim中一样,所有的命令以“:”开始。当用户输入 “:”,Vimperator就进入“命令行模式”。常用的命令如下
n :help [主题] – 提供与[主题]相关的帮助
n :open [地址] – 在当前标签打开[地址],地址可以是文件、书签的关键字、或者用搜索引擎搜索。
n :back 和 :forward – 根据历史记录后退和前进。
n :bmark [地址] – 创建书签。
n :echo [表达式] – 以JavaScript的形式运算[表达式]并显示结果。
n :set[!] … – 显示或修改Vimperator和Firefox的设置。
n :map – 创建、修改键盘快捷键
2.4. 可视模式
vimperator的可视模式,就是按i进入,然后可以用h k l j 等进行位置的确定.然后可以进行特定段落的复制等操作.
具体的键盘操作可以参看帮助就是按F1或者在命令行下输入:help
小技巧:
n Vimperator默认是没有工具栏和菜单的,作者觉得这是为了与Vim保持一致,但是这个默认设置其实对很多人来说是很不方便的(例如没有google搜索框),开启方法是输入:set guioptions=mT。m表示menu(菜单),T表示Toolbar(工具栏)。如果需要显示状态栏的话,加入s就可以了(:set guioptions=msT)。另外,书签栏是b。
n 关掉讨厌的”哔哔“声,:set nobeep。
n 暂停使用Vimperator功能。有的时候Vimperator的快捷键会与网页冲突,你不得不暂时停止Vimperator快捷键的使用,那就输入 I 键。按ESC键回到Vimperator模式。
n 在vimperator的hint模式中可以通过拼音首字母过滤中文链接.例如希望打开链接“论坛”,可以在vimperator按f/F进入hint模式,然后输入lt(拼音 l un tan),便会过滤出“论坛”以及其他类似内容。
2.5. Vimperator提高
方法1.订阅新闻组
vimperator@mozdev.org 这个是英语的.里面好东西不少,作者经常和用户进行交流,有什么疑问可以到这里提问.
方法2.观注几个博客
http://luoxiqofy.blogbus.com/ 这里主要是vimperator的脚本使用和配色问题.
里面有几个文章,非常详细地介绍到了怎么把hints从数字替换成汉语拼音的方式.
vimperator的最新版本在google code上
http://code.google.com/p/vimperator-labs/downloads/list
vimperator也是支持插件的
http://code.google.com/p/vimperator-labs/issues/list
当然也是有主题的
Pentadactyl/Vimperator:VIM化的Firefox
后记
原本在看到VIM化Firefox(挺有意思的,吐槽chrome的firefox迷)的时候,想尝试一下firefox和chrome的VIM扩展,就装了一下,尝试了一下全键盘操作的浏览器,确实很不错。自己在用很多软件的时候,滚动页面时,习惯性按j;保存的时候,总是习惯性的按Esc,大概是vim用多了。
看到别人转载的时候,不注明引用源,简单的现象下揭示一个潜在的事实:对版权的漠视和对知识的不尊重。
本来想来个转载之转载的,想了想,还是用VIM化浏览器将Vimperator和Vimiumn合并在一起来说,验证并更新一些文件的链接是一件挺无聊的事情。
在Firefox中使用Vimperator的若干天后,发现有点不太稳定,也是不知道是Firefox的问题还是Vimperator的问题,换到Pentadactyl过几天吧。
参考文献
[1]chrome插件Vimium尝鲜:http://my.oschina.net/jsxqf/blog/145284
[2]一些我常用的Chrome插件:http://my.oschina.net/ctyytc/blog/4216
[4] Pentadactyl/Vimperator:VIM化的Firefox
[5] 用vim的方式操作你的软件