?
转自:http://hi.baidu.com/xzkcz/blog/item/7b0cb95145ab011c367abeab.html
?
?
Firefox 是有很多自己默认的快捷键的[3]。比如你会使用上下左右箭头来移动屏幕,PgUp
和 PgDn 来翻页,会用 Ctr+Tab 来进入下一个标签,用 Ctr+ Shift+Tab 来进入前一个标签,更方便的,可以用
Ctr+PgUp 和 Ctr+PgDn 来切换各个标签。
但是可能它们并不比鼠标更好用,因为它们离字母太远了。为什么不使用字母区的键盘来控制呢?其实看网页和打游戏是一
样的,当焦点在网页上的非输入区域时,字母区的键是不起什么作用的(当我们把 Firefox"search for text when I
start writing"
关掉时)。因此字母区的键盘xx可以用来作控制键,这样当你需要输入的时候就不需要大规模移动右手了。当然,在网页里进行文字编辑的时候我们根据个人习惯
也可以作出相应设置。
对计算机不熟悉的朋友不用害怕,设置的过程是非常简单的,让我们开始吧!
首先我们来做好准 备工作,打开 Firefox->Edit->Preference->Advance->General-
>[Accessibility] 里面有一项 “Search for text whenI start typing“,把它取消吧
(我不记得 firefox 2.0 以前有没有这个功能了)。虽然这个功能很好,但占用了所有的字母,我们可以抛弃它了。
在这里取 消了还不够,下次 Firefox 启动的时候这个东西还会顽固的启动。我们在地址栏输入 about:config
然后搜索到这一条accessibility.typeaheadfind.autostart 把它设置成 "false"
即可。顺便说一下,about:config 有一条是 accessibility.typeaheadfind,
它对应的就是我们刚才在 preference 里面做的设置,现在应该就是 "false"。说到 about:config,是一个 Firefox
的配置界面,不是经常使用,但下面的设置可以加快浏览网页的速度(如果你的网络够快)。
(**************友情提醒******************)
network.http.pipelining = false
network.http.pipelining.maxrequests = 4
network.http.proxy.pipelining = false
修改为:
* network.http.pipelining = true
* network.http.pipelining.maxrequests =
8(有人说是30...其实大了没有意义,Firefox手册上{zd0}是8)
* network.http.proxy.pipelining = true
(**************友情提醒******************)
接下来,我们可以通过修改 Firefox 的 XML
配置文件来綁定快捷键(它是自由软件,如果你愿意,可以把它的内核都给修改了。),但我觉得太麻烦了,没有必要这么做。Firefox那么多插
件,Keyconfig 是非常有名的一个,可以到这里下载:
单击 Keyconfig.xpi,然后顺着步骤让它自动安装完吧。然后把 Firefox 关了(*注意不是重启*)。
这个插件默认没有提供像上下左右键一样功能的属性选项,所以,我们要手动加入一些选项。打开 prefs.js 文件
对于 Windows2000,XP 的用户,用记事本打开
%AppData%\Mozilla\Firefox\Profiles\[profile]\ 目录下的 prefs.js
(%AppData% 一般是 C:\Documents and Settings\[User Name]\Application Data\
这个目录,好像是个环境变量?)
对于Linux用户,这个文件是 ~/.mozilla/firefox/[profile]/prefs.js
在文件的末尾添加:
user_pref("keyconfig.main.xxx_key_ScrollPageDown", "!][][][goDoCommand('cmd_scrollPageDown');");
user_pref("keyconfig.main.xxx_key_ScrollLineUp", "!][][][goDoCommand('cmd_scrollLineUp');");
user_pref("keyconfig.main.xxx_key_ScrollLineDown", "!][][][goDoCommand('cmd_scrollLineDown');");
user_pref("keyconfig.main.xxx_key_ScrollLeft", "!][][][goDoCommand('cmd_scrollLeft');");
user_pref("keyconfig.main.xxx_key_ScrollRight", "!][][][goDoCommand('cmd_scrollRight');");
user_pref("keyconfig.main.xxx_key_ScrollTop", "!][][][goDoCommand('cmd_scrollTop');");
user_pref("keyconfig.main.xxx_key_ScrollBottom", "!][][][goDoCommand('cmd_scrollBottom');");
user_pref("keyconfig.main.xxx_key_findTypeLinks", "!][][][goDoCommand('cmd_findTypeLinks');");
有经验的用户一看就知道是怎么回事了吧,不明白的没关系,我稍后会解释。
现 在你已经迫不及待想来看看成果吧。好的,我们打开 Firefox,在 Tools 菜单下应该已经有了一项
Keyconfig。打开它就可以进行配置了,上面我们加进的几条在里面的名字是
xxx_key_PageUp,xxx_key_ScrollPageDown 之类。给它们定义一些字母键吧,每个键配置完了别忘记按
"apply",如果你一时想不出怎么定义才比较合适,可以看看本文后面的内容。
现在我们来解释一下上面的操作。
首 先明确一点,每次关闭 Firefox 的时候 prefs.js 都会被自动重写,这也是为什么安装完 Keyconfig.xpi
之后我们不立即重启 Firefox 的原因:如果开着 Firefox 编辑 prefs.js,那么添加的这几句话就会在 Firefox
关掉的时候被覆盖。
另外,由于这个特点,在你关闭Firefox后第二次打开 prefs.js
进行编辑的时候,可能会发现内容的样子变了,你添加的上面这些配置不在{zh1}而是被插入到所有配置的中间去了,这个并不碍事。
把{dy}句话拎出来看看:
user_pref("keyconfig.main.xxx_key_PageUp",
"!][][][goDoCommand('cmd_scrollPageUp');"); {dy}对双引号之间是配置的名字,第二个引号之间是配置的内容
“!][][][” 代表的是快捷键,现在这么写是把键设置为“空”,这样,我们进入
Firefox->Tools->Keyconfig 里面配置时会发现这些键并没有被定义。当然你可以在 prefs.js
里面就把键的綁定定义好,这样就需要再进入浏览器窗口一个一个设置了。比如说:
user_pref("keyconfig.main.xxx_key_PageUp",
"][U][goDoCommand('cmd_scrollPageUp');");
就是设置“U”来执行scrollPageUp这个命令(注意!感叹号去掉,还有中括号变成了四个而不是前面的六个),也就是向上翻页。下面这句:
user_pref("keyconfig.main.xxx_key_PageUp",
"shift][U][goDoCommand('cmd_scrollPageUp');");
綁定 “Shift+U” 到上面 scrollPageUp
这个命令(这里要注意shift在中括号之间的位置,所有的控制键都是在这个位置)。如果想用到Ctr键就用 control 来表示。
goDoCommand 后面的参数是Firefox规定的标准命令,可以参考 [5]
*怎样合理分配键盘*
前面提到,如果你还没有想好怎样来綁定这些键是比较合适的,可以先考虑一下我的配置(并不是我原创的想法,多数是Vi[6]主要作者Bram
Moolenaar 的想法)。下面是我自己的部分配置,为了方便大家 Ctr+c/Ctr+v,没有加任何额外信息:
user_pref("keyconfig.main.goBackKb", "shift][<][");
user_pref("keyconfig.main.goForwardKb", "shift][>][");
user_pref("keyconfig.main.key_close", "][Q][");
user_pref("keyconfig.main.key_find", "][/][");
user_pref("keyconfig.main.key_findAgain", "][N][");
user_pref("keyconfig.main.key_findPrevious", "shift][N][");
user_pref("keyconfig.main.key_newNavigatorTab", "control][N][");
user_pref("keyconfig.main.key_openDownloads", "][D][");
user_pref("keyconfig.main.key_viewSource", "][S][");
user_pref("keyconfig.main.viewBookmarksSidebarKb", "][B][");
user_pref("keyconfig.main.xxx_key_PageUp", "][U][][goDoCommand('cmd_scrollPageUp');");
user_pref("keyconfig.main.xxx_key_ScrollBottom", "shift][G][][goDoCommand('cmd_scrollBottom');");
user_pref("keyconfig.main.xxx_key_ScrollTop", "][G][][goDoCommand('cmd_scrollTop');");
user_pref("keyconfig.main.xxx_key_ScrollLeft", "][H][][goDoCommand('cmd_scrollLeft');");
user_pref("keyconfig.main.xxx_key_ScrollLineDown", "][J][][goDoCommand('cmd_scrollLineDown');");
user_pref("keyconfig.main.xxx_key_ScrollLineUp", "][K][][goDoCommand('cmd_scrollLineUp');");
user_pref("keyconfig.main.xxx_key_ScrollRight", "][L][][goDoCommand('cmd_scrollRight');");
user_pref("keyconfig.main.xxx_key__Next Tab", "][.][][gBrowser.mTabContainer.advanceSelectedTab(1);");
user_pref("keyconfig.main.xxx_key__Previous Tab", "][,][][gBrowser.mTabContainer.advanceSelectedTab(-1);");
user_pref("keyconfig.main.xxx_key__Open Location", "control][G][][gBrowser.loadURI('http://www.google.com/');");
网页的“上下左右”移动是我们在浏览文章的时候经常用到的,我试用过一些“自动滚屏”的东西,感觉并不太好,看多了头昏,有点像晕车的感觉。还是我们自己
控制吧。
把键盘的”方向键“分别替换成 "kjhl" 是一种非常科学的分配方法,你可以用食指按j,中指按 k, 而不需要仅仅依靠一根指头来控制”方向键“。
"h","l"
用来左右滚动,很直观,一个在左,一个在右,我们可以抛弃”四维滚轮鼠标“了。翻页话,向下翻页默认的空格是很好的,很多人习惯了这么干,留着无妨,向上
翻页我改成了 "u",意思是 "up",没什么原因,习惯而已。
前 面说了在不同标签之间切换,这也是我们经常要干的事儿,Ctrl+Tab
太麻烦,就把它们分配在滚动键下面吧,左边的是逗号,移动到前一个标签,右边是句号,移动到下一个标签。输入网址?当然你可以用默认的
F6,但我觉得还是离太远,那么就用 "o" 吧,表示 "I want to Open a
web location"。你已经跟上我的节奏了吧,非常好,也许你是个网页设计的爱好者,看到好的网页设计或者脚本就想看源代码,那么就就用 "s"
来看源代码,表示 "I want to see the Source"。还有其它一些,我们xx可以根据自己的喜好来设置。
有一个东西很有用,那就是“搜索”(findTypeLinks)。
我这里定义了 “/” 在网页里文本,然后N是查找“下一个”匹配的文本,Shift+N
是查找“上一个”匹配的文本。这样其实是很方便的,来看一下怎么操作:
1. 进入
2. 我想查找含有 database 的字符,那么我这时按下"/"
3. 输入database,这样{dy}个匹配就会自动找到了,别按回车,因为如果搜索到的字符是超级链接的话,那么回车就是进入那个链接了.
4. 按 "esc" 把搜索框取消掉
5. 按"n"找下一个匹配的单元, "shift+n" 找前一个匹配的单元
然后我们再打开一个标签,输入网址
,同样,我们还是希望搜索 database 这个词,我们不需要重新输入,Firefox 会记得你上次的搜索标准,之需要按下 "n"
就够了,然后按下 "s" 来查看源码,同样,也只需要按 "n" 即可搜索到源码里"database"的位置。
别 急,这还没完,Firefox 里面有一个命令是 findTypeLinks ,默认是用单引号"'"来执行的,相对于前面的
findeTypeLinks,它只搜索含有“链接”的文字,我自己经常用这个功能,但很多人不用,感兴趣的朋友可以自己试一下,搜索到了以后之直接回车
就可以进入那个网页了,同样, "n" 对这种搜索也是起作用的。
{zh1}一段里面定义了 Ctr+G
是打开google,当然,我们可以定义更多的网址,这个也比较实用,现在一般的这种网站打开后焦点都自动在输入框上,Ctr+G
以后就可以直接输入搜索对象了。
恩... ...好像没什么要说的了,{zh1}如果有问题请留言,发挥大家的智慧解答.如果文章有错误请无情的批判!谢谢!