macos原生支持为任意菜单项绑定快捷键:在系统设置→键盘→键盘快捷键→应用程序快捷键中添加,需准确输入菜单路径;若菜单不显示,则用automator或快捷指令运行applescript模拟点击;极端情况可用karabiner-elements重映射物理按键。

你想在 macOS 中为某个软件菜单栏里藏得深、根本没配快捷键的功能(比如“格式→字体→连字→使用默认”)快速触发,又不想每次都要点四下鼠标——这完全可行,系统原生就支持,且无需安装任何第三方工具。
用系统设置直接绑定菜单命令
这是最轻量、最稳定的方法,适用于所有显示在菜单栏中的功能,无论它嵌套多深。
第一步:点击屏幕左上角苹果图标 → 选择“系统设置”。
第二步:在左侧边栏滚动到底部,点“键盘” → 右侧点“键盘快捷键” → 左侧列表中选“应用程序快捷键”。
第三步:点右下角的“+”按钮,在弹出窗口中做三件事:【必须从“应用程序”下拉菜单中准确选中目标 App;若未列出,务必点“其他…”并手动定位其 .app 文件】;在“菜单标题”栏中,【逐字输入菜单中显示的完整路径,包括英文大于号+空格、省略号、大小写和标点,例如“格式->字体->连字->使用默认”或“文件->导出为 PDF…”】;最后将光标放在“键盘快捷键”框内,按下你想要的组合键(如 Control + Option + L),注意必须含至少一个修饰键(Command / Option / Control / Shift)。
第四步:点“添加”,切换到该 App,打开对应菜单,确认右侧已出现新快捷键标识——此时即可直接触发。
当菜单命令根本不在菜单栏上时
有些功能压根不显示在菜单栏(比如某些插件命令、隐藏调试项、或需按住 Option 才出现的进阶选项),系统设置法会失效。这时要用 Automator 封装成“快速操作”再绑定。
方法一:用 Automator 模拟菜单点击
打开“Automator” → 新建文档 → 选择“快速操作” → 在左侧搜索栏输入“运行 AppleScript”,拖入右侧脚本区 → 粘贴以下代码(以 Safari 的“开发→显示 Web 检查器”为例):
tell application "Safari" to activate
delay 0.2
tell application "System Events"
tell process "Safari"
click menu item "显示 Web 检查器" of menu "开发" of menu bar 1
end tell
end tell
保存为“Show Web Inspector”,关闭 Automator。
方法二:用快捷指令替代(macOS 13.3+ 原生支持)
打开“快捷指令”App → 点工具栏“+” → 命名 → 点“添加操作” → 搜索“运行 AppleScript” → 粘贴同上脚本 → 完成后点右上角“⋯” → “添加到菜单栏” → 再回到“系统设置→键盘→键盘快捷键→快捷指令”,找到刚建的指令,为其分配快捷键。
注意:AppleScript 中的进程名必须与 Activity Monitor 里显示的完全一致,比如“Microsoft Word”不能写成“Word”。
绕过菜单、直击底层按键行为
如果上述两种方式都失败(例如菜单项被禁用、或目标 App 屏蔽了 AppleScript),可借助 Karabiner-Elements 进行物理按键重映射——它不依赖菜单结构,而是监听键盘原始信号。
下载安装 Karabiner-Elements(官网 karabiner-elements.pqrs.org)→ 启动后点右上角图标 → “Preferences” → “Complex Modifications” → “Add rule” → 搜索并启用类似“Send key code when pressing shortcut”的规则 → 点“Import more rules from the Internet” → 在社区规则库中查找适配你目标 App 的预设(如 “Firefox: Ctrl+Shift+K → Open Developer Tools”)。
若无现成规则,需手动编辑 ~/.config/karabiner/karabiner.json,在“rules”数组中新增对象,指定“from”按键组合与“to”发送的 key_code 或 AppleScript 调用路径。











