阅读:7923回复:26
修改 Firefox 57 快捷键,使用 F1—F4 控制标签页
Firefox 56 及之前的版本可以用 keyconfig 扩展来修改快捷键。
对于 Firefox 57 ,则需要手动修改浏览器文件 omni.ja 。 找到 Firefox 安装目录,解压缩 browser\omni.ja 这个文件。 然后按如下方式修改解压缩的文件夹中的 chrome\browser\content\browser\browser.xul 文件: --- browser.xul.bak 2010-01-01 00:00:00 +0800 +++ browser.xul 2017-11-18 15:18:13 +0800 @@ -310,8 +310,10 @@ <key id="key_find" key="&findOnCmd.commandkey;" command="cmd_find" modifiers="accel"/> <key id="key_findAgain" key="&findAgainCmd.commandkey;" command="cmd_findAgain" modifiers="accel"/> <key id="key_findPrevious" key="&findAgainCmd.commandkey;" command="cmd_findPrevious" modifiers="accel,shift"/> - <key keycode="&findAgainCmd.commandkey2;" command="cmd_findAgain"/> - <key keycode="&findAgainCmd.commandkey2;" command="cmd_findPrevious" modifiers="shift"/> + <key keycode="VK_F1" command="cmd_newNavigatorTab"/> + <key keycode="VK_F2" command="Browser:PrevTab"/> + <key keycode="VK_F3" command="Browser:NextTab"/> + <key keycode="VK_F4" command="cmd_close"/> <key id="addBookmarkAsKb" key="&bookmarkThisPageCmd.commandkey;" command="Browser:AddBookmarkAs" modifiers="accel"/> <key id="bookmarkAllTabsKb" key="&bookmarkThisPageCmd.commandkey;" oncommand="PlacesCommandHook.bookmarkCurrentPages();" modifiers="accel,shift"/> 修改后的快捷键为: F1 —— 新建标签页 F2 —— 切换到上个标签页 F3 —— 切换到下个标签页 F4 —— 关闭标签页 改好后,用 zip 格式重新压缩成 omni.ja 并覆盖到 browser 目录下。 删除浏览器 profile 目录下的 startupCache 文件夹,启动 Firefox 即可体验修改后的快捷键。 |
|
1楼#
发布于:2017-11-18 16:10
是个好办法,可惜只能修改成全局快捷键。
我目前的常用功能快捷键都是单键的,改了之后就无法在页面输入文字了。 i —— 新建标签页 h —— 切换到上个标签页 l —— 切换到下个标签页 d —— 关闭标签页 |
|
2楼#
发布于:2017-11-18 16:13
|
|
3楼#
发布于:2017-11-18 16:22
|
|
4楼#
发布于:2017-11-18 16:30
|
|
5楼#
发布于:2017-11-19 08:33
使用脚本比这个方法好
// ==/UserScript== (function(){ var keymap = { '8':'backspace','9':'tab','12':'tenkey5','13':'enter','16':'shift','17':'ctrl','18':'alt', '19':'pausebreak','20':'shift+capslock','27':'esc','32':'space', '33':'pageup','34':'pagedown','35':'end','36':'home', '37':'left','38':'up','39':'right','40':'down','45':'insert','46':'delete', '48':'0','49':'1','50':'2','51':'3','52':'4','53':'5','54':'6','55':'7','56':'8','57':'9','59':':','61':';', '65':'a','66':'b','67':'c','68':'d','69':'e','70':'f','71':'g','72':'h','73':'i', '74':'j','75':'k','76':'l','77':'m','78':'n','79':'o','80':'p','81':'q','82':'r', '83':'s','84':'t','85':'u','86':'v','87':'w','88':'x','89':'y','90':'z', '91':'leftwindows','92':'rightwindows', '96':'0','97':'1','98':'2','99':'3','100':'4','101':'5','102':'6','103':'7','104':'8','105':'9', '106':'*','107':'+','109':'-','110':'.','111':'/', '112':'f1','113':'f2','114':'f3','115':'f4','116':'f5','117':'f6', '118':'f7','119':'f8','120':'f9','121':'f10','122':'f11','123':'f12', '144':'numlock','145':'scrolllock', '188':',','190':'.','191':'/','192':'@','219':'[','220':'\\','221':']','222':'^','226':'\\', '240':'capslock', }; function $(id){ return document.getElementById(id)} function keyconfig(e){ if (/^(input|textarea|select|textbox)$/i.test(e.target.localName)) return; var keycode = e.keyCode; if (keycode >= 16 && keycode <= 18) return; var command = keymap[keycode] + (e.ctrlKey?'+ctrl':'') + (e.shiftKey?'+shift':'') + (e.altKey?'+alt':''); /* キーを小文字、スペース無し、+で連結、ctrl・shift・altの順で 小写关键字+ctrl・shift・alt+命令的顺序添加 */ switch(command){//uc.js脚本默认的快捷键设置 case 'c' : $("Browser:Back").doCommand(); break;//后退 case 'v' : $("Browser:Forward").doCommand(); break;//前进 //keyconfig扩展的快捷键设置和用户自定义设置添加到下面: case "e": document.getElementById('History:UndoCloseTab').doCommand(); break;//撤销关闭标签页 case "space":gBrowser.removeCurrentTab(); break;//关闭当前标签页 case "i":gBrowser.tabContainer.advanceSelectedTab(+1, true); break;//激活右边的标签 case "o":gBrowser.tabContainer.advanceSelectedTab(-1, true); break;//激活左边的标签 //case"f6":Services.appinfo.invalidateCachesOnRestart() || BrowserUtils.restartApplication();//重启浏览器 case "b":gBrowser.mCurrentBrowser.reload();document.getElementById("Browser:Reload").doCommand(); break;//刷新当前页面 case "q":gBrowser.removeAllTabsBut(gBrowser.mCurrentTab); break;//关闭其他标签页 case "j":goDoCommand('cmd_scrollLineDown'); break;//向下移动 case "k":goDoCommand('cmd_scrollLineUp'); break;//向上移动 case "a":goDoCommand('cmd_scrollTop'); break;//回到页首 case "s":goDoCommand('cmd_scrollBottom'); break;//回到尾页 //case "r":document.getElementById('menu_bookmarkThisPage').doCommand(); break;//书签 //case "t":document.getElementById('reader-mode-button').click(); break;//阅读 // default: return; } e.preventDefault(); } gBrowser.mPanelContainer.addEventListener('keydown', keyconfig, false); })();//内容自己添加 |
|
6楼#
发布于:2017-11-20 12:57
|
|
7楼#
发布于:2017-11-20 12:57
楼主的方法不错。收藏了
|
|
8楼#
发布于:2017-11-20 13:56
|
|
9楼#
发布于:2017-11-22 10:22
zjgdlove:好怀念keyconfig,没这个简直没法上网了。。。回到原帖https://github.com/Endor8/userChrome.js/tree/master/userChrome 我使用的是每夜版本一切正常,以前的uc脚本百分99可以使用。 |
|
10楼#
发布于:2017-11-27 08:46
|
|
11楼#
发布于:2017-11-27 09:10
|
|
12楼#
发布于:2017-11-27 16:16
|
|
13楼#
发布于:2017-11-28 09:05
|
|
14楼#
发布于:2017-11-28 09:58
|
|
上一页
下一页