Chinaunix首页 | 论坛 | 博客
  • 博客访问: 39176
  • 博文数量: 17
  • 博客积分: 1445
  • 博客等级: 上尉
  • 技术积分: 180
  • 用 户 组: 普通用户
  • 注册时间: 2008-03-30 18:15
文章分类

全部博文(17)

文章存档

2012年(1)

2010年(4)

2009年(8)

2008年(4)

我的朋友
最近访客

分类: WINDOWS

2010-09-24 17:14:18

玩酷的vimperator教程

玩酷的vimperator
Vimperator是什么?从虚来说,它是一种信仰,一种生活方式;从实来说,它是一个把Firefox(fx)的操作变成Vim式的fx扩展,它给 fx提供了与Vim相似的快捷键,使fx变成了有“模”的浏览器。从而无论是 fx 的外观,还是 fx 的行为,都像极了 Vim。详情可以查看它的官方网页:http://vimperator.mozdev.org。 可以说,有了Vimperator,就有了几乎完控fx的一切。当然,要耍酷,得付出点代价,得记住各种命令和快捷键,若你是vim的熟手,那就太容易不 过了;若不是,估计你安装完vimperator,重启fx后就会傻眼:面对既没有菜单栏,也没有工具栏的 Firefox,可能会感到无所适从。开启方法是输入:set guioptions=mT。m表示menu(菜单),T表示Toolbar(工具栏)。如果需要显示状态栏的话,就输入:set laststatus=2。即使这样,你也会发觉以前熟悉的fx快捷键几乎都没啦,咋办:按下Ctrl-q,你就会发现fx默认的快捷键又可以用了。要重 新回到vimperator下,只需要按下Esc键;也可以先按Ctrl-v,这样执行一个fx默认快捷键后,又自动回到vimperator下。这里以 vimperator1.1版来详细介绍下它的用法!先约定下表达方式:

¨        Ctrl-x的另一种表示;Alt-x 表示为 ;Shift-x 表示为

¨        很多操作既可以在normal mode下运行,又可以在command mode下运行,这里用“/”来表示,如:u对应的是:undo,就表示为 u/:undo

¨        有些操作有相反两个方向,这里用<-->表示,如:左右移动滚轴 h <--> l

¨        命令前后的数字,都可以换成任何数字

    1. 打开链接,文件,或使用搜索引擎
:o[pen]/o     /*在当前标签页打开*/   |\      /frome/to/file.txt /*打开本地文件*/

:t[abopen]/t /*在新标签页里打开*/   | |==> [engine] keyword    /*在引擎里搜索关键词*/

:winopen      /*新开窗口实例打开*/   |/      bbs.newsmth.net     /*打开一个网页*/

例子:

:o ../user/file.txt       /*打开$HOME目录下的file.txt文件*/

:t google 水木        /*在新的标签页打开谷歌并搜索“水木”*/

:o 水木社区      /*在fx默认搜索引擎里搜索“水木社区”,由’defsearch’来设定默认引擎 */

:t bbs.newsmth.net, bbs.lqqm.net, news.sina.com.cn    /*用3个新标签后台打开这三个网页*/

2. 关掉或重新打开标签页
:2bd/:2tabc/2d    /* 关掉当前标签及右边紧邻的标签;2D是关掉当前及左边的标签 */

:3u[ndo]/3u      /* 重新打开最近关掉的3个标签;恢复全部被关掉的标签用 :undoall,最多恢复10个*/

:qall/:winclose/ZQ    /* 退出fx,不保存各tab地址 */

:xall/ZZ                    /* 保存tab地址退出,重启fx后可以重新打开这些标签 */

注:文中的tab、标签、buffer、缓冲区指的都是同一个东西

3. 移动
卷屏: <-->     /* 上下卷动一屏 */

              <-->     /* 上下卷动半屏;可由’scroll’来定制 */

              gg <--> G    /* 到页面顶部/尾部;45gg/45G 指到页面45%处*/

              0 <--> $     /* 到页面最左端/最右端 */

              h,j,k,l   /* 上下左右移动页面 */

             gg

             3k

              |

0, 3h ----+----- 3l, $

              |

              3j

              G

Element:2gi       /* 光标定位到当前frame的第二个输入框 */

]f/[f      /* 前进后退一个frame */

]]/[[      /* 浏览一些论坛时的“下一页/上一页”,可由’nextpattern’定制 */

标签栏: g0/:tabfirst <--> g$/:tablast              /* 到第一个或最后一个标签 */

                  gT//:tabp <--> gt//:tabn        /* 到前一个或后一个标签 */

                  b5                  /* 到第五个标签,指回车,这个结合我的

“给tab编个号”一文,那简直是绝配   */

                 /:ba <--> /:fo /* 当前标签页的前后一个历史标签 */

                                 /* 可在标签栏上来回切换最近浏览过的两个标签 */                  

                 i      /* caret mode,fx默认快捷键是F7;此时按下v,就可以选择文本,然后按下y,就把选择的文本拷贝到系统粘贴板上了 */

4. 搜索当前页面
          /pattern <--> ?pattern       /* 往下/上搜索pattern,支持正则 */

          * <--> #      /* 往下/上搜索当前光标处的词,最好进入caret mode,好操作 */

            注:上面两种情形都可以用 n/N来下/上寻找下一个匹配

     5. 链接地址:URL
        gu          /* 到URL的上一层目录 */

        gU          /* 到URL的根目录    */

         /   /* 把URL最后一个数字增加/减少1,然后打开 */

例如:

2gu 是指从到

               是指从 到

        y/p          /* 把当前URL拷贝到粘贴板或把粘贴板上的URL在当然页打开 */

          P           /* 大写的P是在新标签页打开粘贴板里的URL   */

    6. 页面
        g/:pageinfo          /* 查看当前页面信息 */

        gf/:viewsource             /* 查看当前页源代码 */

        zi <--> zo                 /* 放大/缩小当前页,zoom in/out */

        r/:reload <--> /:stop    /* 重新载入当前页或停止载入当前页 */

    7. 调用fx的各种属性
         :pref                     /* 调出fx的option对话框 */

         :pref!                     /* 调出fx的about:config */

         :addon                    /* 调出fx的扩展对话框 */

                                addons          /* 调出fx的扩展对话框 */

:dialog    checkupdates      /* 调出升级对话框 */

                                console          /* 调出控制台 */

                                downloads        /* 调出历史下载列表 */

    8. 怎么打开链接?
    在一个页面按f键,进入QuickHint mode(作者给取了这个名字),就会发现所有的链接都被数字编号了,此时只要你输入那个数字或者链接中部分关键词,就可以在当前页进入那个链接了(F是 在新标签里打开)。Vimperator1.0之前的版本是用一个或者几个字母来编号的,如果你喜欢这样子的编号,可以下载个vimperator的插 件:char-hints.js。

除此之外,作者还给出了另外一种“模”: ExtendedHint mode,它在一些情况下,如保存图片,拷贝链接地址等方面很有用,形式是: ;{mode}{hint}

例如:

;y23             /* 拷贝编号为23的链接地址到粘贴板 */

       ;t35             /* 后台在新标签中打开编号为35的链接 */

    9. ex命令、选项、配置文件及插件
A) ex命令,也就是按下冒号后输入的命令,下面介绍几个最常用的

:cd           /* 切换当前目录 */

            :pwd          /* 显示当前目录 */

            :restart         /* 重启fx */

            :saveas        /* 保存页面 */

            :hardcopy      /* 打印当前页面 */

            :set           /* 设置选项 */

             :mkv          /* 建立配置文件 */

            :!cmd          /* 可以执行系统命令 */

             B) 选项设置

l        有5种数据类型:

布尔型        例如: set ic            /* 忽略大小写;反之则set noic */

数字型        例如: set ls=2,         /* 总是显示状态栏 */

字符串型      例如: set titlestring=fx    /* 把标题栏名字改为“fx” */

单字符串型    例如: set go=mT         /* 显示菜单栏和工具栏 */

串列表型      例如: set act=tabopen,paste /* 自动激活:tabopen和y,Y命令 */

l        set命令的几种用法

:set                     /* 显示所有和默认不同的设置 */

:set all                   /* 显示所有设置 */

:set {option}?             /* 显示option的值 */

:set {option}&             /* 重新设定option的值为默认的 */

:set all&                  /* 重新设定所有option的值为默认的 */

:set {option}+={value}           /* 把option的值在原来基础上加value */

:set {option}-= {value}      /* 把option的值在原来基础上减value */

注:在配置文件里set命令前的冒号可以省略

        C) 配置文件和插件

                     Vimperator可以有配置文件,文件名是.vimperatorrc或者_vimperatorrc,该文件所在的目录是系统变量$HOME所定义的位置

在unix/linux下一般为: ~/

在Windows下一般为: C:\Documents and Settings\user\

   

并且还可以设置一个用户变量或者系统变量$VIMPERATOR_HOME来改变vimperatorrc所在目录的位置,并且$VIMPERATOR_HOME优先度大于$HOME

(强烈建议作者把vimperator扩展所在的相对目录也可存放配置文件,这样把fx放在U盘里,就不用麻烦还要拷贝配置文件到另外一台机子上的$HOME目录)

Vimperatorrc里可以是ex命令,也可以是js脚本。你既可以新建这个文件,也可以在fx里用命令 :mkv来自动建立这个文件。并且vimperator还可以拥有插件,全放在vimperator目录下,插件都是些js脚本。而 “vimperator目录”与配置文件所在目录一样。例如如果你需要hint mode下的链接编号为字母的话,就需要在http://vimperator.mozdev.org/scripts.html 下载插件char-hints.js 放入vimperator目录中,然后重启fx,或者用:source命令使之生效。目前绝大多数网上的插件都是日本人写的。

Vimperator扩展还在快速发展中,作者开发也非常积极。这里只介绍了vimperator一些主要用法,如autocommand命令,宏 等都没有涉及,主要觉得离浏览器远了些;另外书签也“忘”了说,个人觉得其添加/编辑书签的方式实在太笨拙了,还是用fx默认的方法方便。另外,使用中若 遇到迷惑的地方,一定要勤看帮助,用F1或者:h调出,至于如何使用帮助以及如何在帮助里调出那些关键词,可以看本人在水木社区vim版置地文章:“细说 如何使用帮助”,虽然是vim的,但完全通用()

注意:本文适合对vim至少有一点点了解,并且对用键盘操纵fx感兴趣的人士阅读

附录我的简单vimperatorrc文件:

"------------------------------------------file begin-----------------------------------------------------

"About:.vimperatorrc for Vimperator 1.1

"Author:runsnake

"Date:June 12, 2008

set wildmode=list:longest

set visualbell

set laststatus=0

set history=1000

set titlestring=

set showmode

set nextpattern+=^下一页$

set previouspattern+=^上一页$

map gu

map :set go=mT

map :set go=

map :set ls=2

map :set ls=0

map ,s :so _vimperatorrc

" vim:set sw=2 ts=2 sts=0 syntax=vimperator:

阅读(1906) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~

chinaunix网友2010-09-26 15:17:42

很好的, 收藏了 推荐一个博客,提供很多免费软件编程电子书下载: http://free-ebooks.appspot.com