Is it possible to disable the ⌘-[0-9] keyboard shortcuts in Chrome's developer tools? It's frustrating to accidentally hit them when I intend to switch tabs (ex, when I hit ⌘-1 because I want to switch to the first tab, but instead being taken to the developer tools "Elements" panel).
更新:该功能有登陆 Chrome 28 https://code.google.com/p/chromium/issues/detail?id=174606#c15.
- 打开开发工具。
- 单击右下角的齿轮图标
- 选择常规选项卡
- 使用“启用 Ctrl + 1-9 快捷方式切换面板”之前的复选框来切换首选项。该选项位于“设置”->“常规”选项卡的右下角。
之前的答案,展示了如何轻松更改开发工具的源代码。
没有偏好或标志来更改快捷方式,因此您要么必须编辑源代码并自己构建 Chrome,or改变一个字节resources.pak
.
-
First, locate resources.pak
。该存档(格式描述here https://groups.google.com/a/chromium.org/d/msg/chromium-dev/agGjTt4Dmcw/uekdoo_cAxkJ)包含几个静态文件。resources.pak
位于以下目录中:
-
操作系统 X 10.7.3:
/Applications/Google Chrome.app/Contents/Versions/26.0.1410.65/Google Chrome Framework.framework/Resources/resources.pak
-
Linux(ArchLinux):
/usr/lib/chromium/resources.pak
-
视窗XP:
%AppData%\..\Local Settings\Application Data\Google\Chrome\26.0.1410.65\resources.pak
-
Windows Vista/7/8:
%LocalAppData%\Google\Chrome\26.0.1410.65\resources.pak
如果您在指定路径中找不到该文件,请使用您的常识。调整版本,例如 Chrome/Chromium。找到 Chrome 可执行文件,然后找到resources.pak
接近它。
创建 resources.pak 的备份,以防万一搞砸了。
- Open
resources.pak
(use vim
或任何其他十六进制编辑器)。
- Find
_keyDown:
,然后向前移动几行(见下文)。改变!
to ~
。这是做什么的?对于所有给定的输入,~value
将返回一个负数,这是真的,所以_keyDown:
函数总是提前结束。
I've confirmed that the Ctrldigit shortcut is disabled in Chrome/Chromium on Linux/Mac/Windows by following these steps.
可能会出什么问题?
- 您浪费了一些字节,例如使用记事本保存
resources.pak
.
- 您没有编辑一个字节,而是添加/删除了一个字节。请记住,资源的大小是固定的!
在任何这些情况下,开发人员工具都会显示为“未找到”。 Chrome 本身仍然可以使用:可以浏览网站。如果您忘记在第 3 步中进行备份,重新安装 Chrome 将解决所有问题。
为了将来参考,部分源代码(带有注释的源代码位于InspectorView.js https://github.com/WebKit/webkit/blob/eb4af44b6/Source/WebCore/inspector/front-end/InspectorView.js#L148-L151):
(在粗体行中,替换!
with ~
)
_keyDown: function(event)
{
if (!WebInspector.KeyboardShortcut.eventHasCtrlOrMeta(event))
return;
if (!event.shiftKey && !event.altKey && event.keyCode > 0x30 && event.keyCode < 0x3A) {
var panelName = this._panelOrder[event.keyCode - 0x31];
if (panelName) {
this.showPanel(panelName);
event.consume(true);
}
return;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)