← 全部文章

API 与辅助工具

全局键盘快捷键 Ctrl+Shift+L/S/K/H —— Output Console 的键盘优先工作流

高级用户不想点鼠标。高级用户想要 Ctrl+Shift+某键 然后看到效果。自 v2.13.75 起 JustZix 为 Output Console 加了 4 个全局快捷键 —— 它们全都活在 document 上一个捕获阶段的监听器里,所以即便焦点在应用的文本框里、页面有 vim 模式、或者你被困在一个模态弹窗上时它们也能工作。唯一的条件:页面上至少有一个 Output Console pane。

四个快捷键 —— 它们做什么

快捷键动作影响起始版本
Ctrl+Shift+L清空日志页面上所有 Output Consolev2.13.75
Ctrl+Shift+S切换搜索字段所有 OCv2.13.78
Ctrl+Shift+K循环 viewMode [C+J] → [C] → [J] → [C+J]所有 OCv2.13.78
Ctrl+Shift+H显示 / 隐藏 API 帮助弹窗单例叠层v2.13.78

所有快捷键都会广播给每个已渲染的 Output Console —— 如果你在一个标签页里有 3 个 OC pane(例如一个过滤「fetch」、第二个过滤「GTM」、第三个是原始的),Ctrl+Shift+L 会把三个都清空。

为什么是 Ctrl+Shift,而不是只用 Ctrl?

之前(v2.13.69-74)Output Console 用 Ctrl+L 做清空。问题:在某些浏览器里,如果焦点不在文本框上,Ctrl+L 会聚焦到地址栏。没有干净的冲突解决办法 —— content script 的监听器并不总能拦住浏览器的原生快捷键。

Ctrl+Shift+L 不与原生快捷键冲突。额外好处:和其他几个同一套路(Ctrl+Shift+S/K/H)—— 更容易记(「它们都以 Ctrl+Shift 开头」)。

捕获阶段监听器 —— 为什么它处处有效

设想页面上一个典型的 keydown 流程:

document (capture) ↓
  body (capture) ↓
    div.container (capture) ↓
      textarea#commentBox (target) ← 用户在这里打字
    div.container (bubble) ↑
  body (bubble) ↑
document (bubble) ↑

JustZix 在 document 上以捕获阶段挂一个监听器 —— 链条里第一个,先于页面的任何处理器。匹配时(Ctrl+Shift+L/S/K/H),JustZix 调用 e.preventDefault() + e.stopPropagation(),页面永远看不到这个事件。它即便焦点在文本框里也有效 —— 而那里 Ctrl+L 通常会做「全选文本」。

使用场景 1 —— 键盘优先的 QA 工作流

你在一个应用里循环测试 5 个流程。每个流程:

  1. 执行一个动作(在应用里点击)
  2. 检查 Output Console —— 日志看起来 OK
  3. 在下一个流程前清空日志

没有快捷键:第 3 步 = 右键点 Output Console 的头部 → 「清空日志」。有快捷键:Ctrl+Shift+L。快 5 倍,手留在键盘上,焦点留在被测应用上。

额外好处:如果某个流程记录了几百行,用完之后你可能只想要你自己的 JZ.logCtrl+Shift+K 两次 → [J] 模式 → 只有你的日志可见。再一次 Ctrl+Shift+K → [C](只有页面)。第三次 → [C+J](全部)。

使用场景 2 —— 通过 Ctrl+Shift+H 发现 API

一个 JustZix 新用户。他知道有 JUSTZIX.log(),但记不得还有什么。与其打开文档:

Ctrl+Shift+H → 一个带弹窗的叠层:

Esc / 点击外面 / 再次 Ctrl+Shift+H 关闭它。自 v2.13.80 起弹窗可按头部拖动 —— 你可以把它挪到一边看下面的东西,受限于视口所以它不会飞出屏幕。

使用场景 3 —— 不碰鼠标的搜索

Output Console 显示 800 行。你搜「purchase」。方式一:滚动加 Ctrl+F(浏览器搜索)—— 有效,但 Ctrl+F 也会找到页面其他元素里的文本。

方式二:Ctrl+Shift+S → 搜索字段在日志上方打开,焦点在那里,你打「purchase」→ 实时过滤只显示匹配的行。Esc 清空搜索。再一次 Ctrl+Shift+S 关闭搜索字段。

额外好处:搜索在 sessionStorage 里按标签页持久化。F5 → 搜索带着旧过滤回来。

使用场景 4 —— 多显示器的高级用户

显示器 1:被测应用。显示器 2:同一个标签页在另一个窗口里(Chrome「移到另一个窗口」+ 拖动)。第一个标签页触发一个流程,第二个标签页全屏显示 Output Console。焦点在显示器 2 上时按 Ctrl+Shift+L → 清空两个标签页?不会 —— 快捷键按标签页作用,所以只清空你留下焦点的那个标签页。

要跨标签页同步 → 在两个标签页里都用一条 JS 规则 + JUSTZIX.log,带一个时间戳来过滤。

接下来做什么

全局快捷键是 Output Console 之上的一个「高级用户层」—— 大多数用户点 pane 头部的按钮就够了。但如果 QA 工具栏是你每天用的工具,这 4 个快捷键每周能给你省下几十分钟。

另见相关文章:

安装 JustZix —— 完全免费,无需账号,没有服务器。

为这篇文章评分

暂无评分 — 成为第一个。

自己动手试试

安装 JustZix,粘贴本文中的任意代码片段。两分钟,从零到一条在你所有设备上生效的规则。

获取 JustZix

功能 · 工作原理 · 示例 · 应用场景