[原创]在Firefox中使用键盘

上网、浏览、聊天、下载等
回复
kardinal
帖子: 750
注册时间: 2006-03-19 11:39

[原创]在Firefox中使用键盘

#1

帖子 kardinal » 2006-07-15 4:42

相信大家都会使用Tab键来切换焦点,但是仅仅使用Tab键,还不能够使用键盘得心应手的控制Firefox。下面介绍两个小技巧:

代码: 全选

插入式浏览:
	F7	开启插入式浏览
    按下F7键,并进行必要的确认后,您就可以使用插入式浏览了。
    现在页面中会出现一个类似于Gedit等编辑区中出现的光标,您可以使用方向键进行定位;当然还可以使用Tab键切换焦点。
    现在是不是感觉方便一点了呢 :lol: 

下面的这一条是重点:
    Firefox开始在1.0版本中使用gtk-2键绑定规则。您可以在您的$HOME目录中创建 .gtkrc-2.0文件,内容如下:
	include "/usr/share/themes/Emacs/gtk-2.0-key/gtkrc"
	gtk-key-theme-name = "Emacs"
    现在您可以使用Emacs风格的键绑定来控制Firefox
    我们查看一下“/usr/share/themes/Emacs/gtk-2.0-key/gtkrc”文件,可以看到一些键绑定,定义了几种类型的部件:
        gtk-emacs-text-entry  可以编辑的文字区域
        gtk-emacs-text-view   只读的文字区域
        gtk-emacs-tree-view   目录树
    在这个文件的最后,有以下几行语句,应该是Gtk程序对应控件的键绑定
        class "GtkEntry" binding "gtk-emacs-text-entry"
        class "GtkTextView" binding "gtk-emacs-text-entry"
        class "GtkTextView" binding "gtk-emacs-text-view"
        class "GtkTreeView" binding "gtk-emacs-tree-view"

        GtkEntry  为文字编辑区,对应Firefox的地址栏
        GtkTextView 为只读文字区域,对应Firefox的页面显示区域。而页面显示区域中可能包含有可编辑的表单等控件,因此这个区域使用了两种键绑定
        GtkTreeView 为树状目录或者标签,对应Firefox的标签

    您可以自行阅读“/usr/share/themes/Emacs/gtk-2.0-key/gtkrc”文件,如果一个快捷键,已经被这个文件所绑定,那么它使用这个文件中的映射。如果没有被绑定,则使用原有的映射。

    对于Emacs风格的键绑定,您可以阅读Emacs的教程,在Emacs界面中依次按下 Ctrl+h 键和 t 键,或者您也可以“man readline”(大部分Emacs风格的键绑定,更接近于Readline而不是Emacs本身,例如"\C-w")。我在这里只列一些常用的键绑定
         <ctrl>l 定位到地址栏  Fcitx的中文输入状态下,会被拦截
         <ctrl>b  向后移动光标  在只读文字区域中为前一标签 <ctrl><shift>b  同时选中文字
         <ctrl>f  向前移动光标   在只读文字区域中为后一标签 <ctrl><shift>f   同上
         <ctrl>n 向下移动光标  在只读文字区域中为向下卷屏  <ctrl><shift>n 同上
         <ctrl>p 向上移动光标  在只读文字区域中为向上卷屏  <ctrl><shift>p 同上
         <ctrl>a 移动光标至行首 <ctrl><shift>a 同上
         <ctrl>e 移动光标到行末 <ctrl><shift>e 同上
         <ctrl>d 删除光标后一个字符
         <ctrl>h 删除光标前一个字符,相当于BackSpace
         <ctrl>k 删除至行末 Fcitx的中文输入状态下,会被拦截
         <ctrl>u 删除至行首
         <ctrl>w 删除前一个单词   
         <ctrl>c 复制
         <ctrl>x 剪切
         <ctrl>v 粘贴        <ctrl>y 没有被其它程序定义,也不能够作为粘贴使用;而配置文件中则进行了定义;我觉得可能是配置文件中相关语句的写法不正确……不过这不这并不影响您使用:)
         <ctrl>z 撤消

    当您定义了 .gtkrc-2.0 文件后,大部分Gtk2的程序,在理论上都具有了这一套键绑定。例如 gedit ,现在使用 gedit ,说不定您会产生某种错觉:P

    让我们重温一下黄先生的著名论断:
        伟大的Emacs的键绑定!它继承了Emacs的光荣传统。Readline、Emacs、nano在这一刻灵魂附体,Firefox一个程序他代表了Emacs悠久的历史和传统,在这一刻他不是一个程序在运行,他不是一个程序!
        Emacs,面对这个应用。他面对全世界Firefox迷的目光和期待。
        VI的键绑定在很多Unix的程序中实现过,Emacs应该深知这一点,他还能够微笑着面对他面前的VI么?10秒钟以后他会是怎样的表情?
        成功了!Firefox可以使用Emacs风格的键绑定了!Emacs取得了胜利,淘汰了VI。他没有再一次倒在VI们的面前,伟大的Emacs!RMS今天不过生日也快乐!Emacs万岁!
        伟大的Emacs风格,Emacs的期望,这个应用是一个绝对理论上的绝杀。绝对的超爽!
        这个胜利属于Firefox,属于Bash,属于Emascs,属于nano,属于所有热爱Emacs的人!
        VI风格也许会后悔的,它没有考虑到输入法给这种模式带来的不便,他失去了自己在拼音文字中的那种便利,面对Emacs悠久的历史,他失去了他在拼音文字中的使用快感,他终于自食其果。VI们该回家了,也许他们不用回到古老的Unix,他们不用回家,因为Unix程序渗透在Linux程序之中,再见!
PS: Windows下的Firefox,不知道如何实现这一点。如果哪位大侠知道,请告诉大家,让使用Windows的同志们震撼和感动一下吧
fteye
帖子: 201
注册时间: 2005-11-18 20:52

#2

帖子 fteye » 2006-07-15 11:08

鼠标手势挺好用的
似乎还有键盘手势?
kardinal
帖子: 750
注册时间: 2006-03-19 11:39

#3

帖子 kardinal » 2006-07-15 12:51

用键盘的目的就是为了不用鼠标。。。
鼠标手势……太可怕了。

中毒太深了兄弟。。。 :twisted:
zubu123
帖子: 1
注册时间: 2007-11-05 4:57

Re: [原创]在Firefox中使用键盘

#4

帖子 zubu123 » 2007-11-05 5:00

[quote="kardinal"]相信大家都会使用Tab键来切换焦点,但是仅仅使用Tab键,还不能够使用键盘得心应手的控制Firefox。下面介绍两个小技巧:
[code]
插入式浏览:
F7 开启插入式浏览
按下F7键,并进行必要的确认后,您就可以使用插入式浏览了。
现在页面中会出现一个类似于Gedit等编辑区中出现的光标,您可以使用方向键进行定位;当然还可以使用Tab键切换焦点。
现在是不是感觉方便一点了呢 :lol:

下面的这一条是重点:
Firefox开始在1.0版本中使用gtk-2键绑定规则。您可以在您的$HOME目录中创建 .gtkrc-2.0文件,内容如下:
include "/usr/share/themes/Emacs/gtk-2.0-key/gtkrc"
gtk-key-theme-name = "Emacs"
现在您可以使用Emacs风格的键绑定来控制Firefox
我们查看一下“/usr/share/themes/Emacs/gtk-2.0-key/gtkrc”文件,可以看到一些键绑定,定义了几种类型的部件:
gtk-emacs-text-entry 可以编辑的文字区域
gtk-emacs-text-view 只读的文字区域
gtk-emacs-tree-view 目录树
在这个文件的最后,有以下几行语句,应该是Gtk程序对应控件的键绑定
class "GtkEntry" binding "gtk-emacs-text-entry"
class "GtkTextView" binding "gtk-emacs-text-entry"
class "GtkTextView" binding "gtk-emacs-text-view"
class "GtkTreeView" binding "gtk-emacs-tree-view"

GtkEntry 为文字编辑区,对应Firefox的地址栏
GtkTextView 为只读文字区域,对应Firefox的页面显示区域。而页面显示区域中可能包含有可编辑的表单等控件,因此这个区域使用了两种键绑定
GtkTreeView 为树状目录或者标签,对应Firefox的标签

您可以自行阅读“/usr/share/themes/Emacs/gtk-2.0-key/gtkrc”文件,如果一个快捷键,已经被这个文件所绑定,那么它使用这个文件中的映射。如果没有被绑定,则使用原有的映射。

对于Emacs风格的键绑定,您可以阅读Emacs的教程,在Emacs界面中依次按下 Ctrl+h 键和 t 键,或者您也可以“man readline”(大部分Emacs风格的键绑定,更接近于Readline而不是Emacs本身,例如"\C-w")。我在这里只列一些常用的键绑定
<ctrl>l 定位到地址栏 Fcitx的中文输入状态下,会被拦截
<ctrl>b 向后移动光标 在只读文字区域中为前一标签 <ctrl><shift>b 同时选中文字
<ctrl>f 向前移动光标 在只读文字区域中为后一标签 <ctrl><shift>f 同上
<ctrl>n 向下移动光标 在只读文字区域中为向下卷屏 <ctrl><shift>n 同上
<ctrl>p 向上移动光标 在只读文字区域中为向上卷屏 <ctrl><shift>p 同上
<ctrl>a 移动光标至行首 <ctrl><shift>a 同上
<ctrl>e 移动光标到行末 <ctrl><shift>e 同上
<ctrl>d 删除光标后一个字符
<ctrl>h 删除光标前一个字符,相当于BackSpace
<ctrl>k 删除至行末 Fcitx的中文输入状态下,会被拦截
<ctrl>u 删除至行首
<ctrl>w 删除前一个单词
<ctrl>c 复制
<ctrl>x 剪切
<ctrl>v 粘贴 <ctrl>y 没有被其它程序定义,也不能够作为粘贴使用;而配置文件中则进行了定义;我觉得可能是配置文件中相关语句的写法不正确……不过这不这并不影响您使用:)
<ctrl>z 撤消

当您定义了 .gtkrc-2.0 文件后,大部分Gtk2的程序,在理论上都具有了这一套键绑定。例如 gedit ,现在使用 gedit ,说不定您会产生某种错觉:P

让我们重温一下黄先生的著名论断:
伟大的Emacs的键绑定!它继承了Emacs的光荣传统。Readline、Emacs、nano在这一刻灵魂附体,Firefox一个程序他代表了Emacs悠久的历史和传统,在这一刻他不是一个程序在运行,他不是一个程序!
Emacs,面对这个应用。他面对全世界Firefox迷的目光和期待。
VI的键绑定在很多Unix的程序中实现过,Emacs应该深知这一点,他还能够微笑着面对他面前的VI么?10秒钟以后他会是怎样的表情?
成功了!Firefox可以使用Emacs风格的键绑定了!Emacs取得了胜利,淘汰了VI。他没有再一次倒在VI们的面前,伟大的Emacs!RMS今天不过生日也快乐!Emacs万岁!
伟大的Emacs风格,Emacs的期望,这个应用是一个绝对理论上的绝杀。绝对的超爽!
这个胜利属于Firefox,属于Bash,属于Emascs,属于nano,属于所有热爱Emacs的人!
VI风格也许会后悔的,它没有考虑到输入法给这种模式带来的不便,他失去了自己在拼音文字中的那种便利,面对Emacs悠久的历史,他失去了他在拼音文字中的使用快感,他终于自食其果。VI们该回家了,也许他们不用回到古老的Unix,他们不用回家,因为Unix程序渗透在Linux程序之中,再见!
[/code]

PS: Windows下的Firefox,不知道如何实现这一点。如果哪位大侠知道,请告诉大家,让使用Windows的同志们震撼和感动一下吧[/quote]
回复