atom右键菜单由menus/*.cson文件控制,需精准匹配css选择器与已注册command,汉化须用atom-simplified-chinese-menu并全开三项开关且重启生效。

右键菜单配置不走插件市场,得改 CSON 文件
Atom 的右键菜单(context menu)不是靠安装某个“右键插件”就能启用的,它由 menus/*.cson 文件控制,且必须匹配 CSS 选择器才能生效。你装再多第三方包,只要没在对应 CSON 里声明,右键点下去就什么都不会出现。
常见误区是搜“右键菜单插件”,结果装了 atom-chinese-menu 或 language-chinese-simplified —— 这些要么只改语法高亮,要么已停更崩溃,跟右键功能完全无关。
- Windows 用户改
menus/win32.cson,macOS 改menus/darwin.cson,Linux 改menus/linux.cson - 文件路径必须是 Atom 包目录下的
menus/context-menu.cson(插件开发)或主菜单文件(全局修改) - 写错一个引号、逗号或大小写,整个菜单项就静默失效,且 Atom 不报错
添加“复制文件路径”这类常用项,要配对选择器和命令
想在编辑器区域右键加「复制文件路径」,不能只写 label,还得确保 command 已注册、选择器能命中目标元素。最稳妥的组合是:
- 选择器用
'atom-text-editor, .overlayer':覆盖编辑区正文和浮层(如补全弹窗) - command 值必须是 Atom 内部已注册的标识符,比如
editor:copy-path(原生支持) - 如果要用自定义命令(如
my-package:log-file),得先在插件activate()里调atom.commands.add
示例片段(加到 menus/win32.cson 的 'context-menu' 下):
'atom-text-editor, .overlayer': [
{label: '复制文件路径', command: 'editor:copy-path'}
]
右键菜单不显示?八成是选择器没匹配上或 command 不存在
右键菜单不出现,90% 是因为选择器太宽泛或太狭窄,或者 command 根本没注册。Atom 不会提示“找不到命令”,只会跳过这一项。
-
'atom-workspace'看似通用,但常被更具体的选择器(如'atom-pane')覆盖,导致你的菜单压根不触发 -
'tree-view'只对左侧文件树生效,对编辑区右键无效;反过来,'atom-text-editor'对文件树右键也无效 - 检查 command 是否真实存在:按
Ctrl+Shift+P打开命令面板,输入你想用的 command 名(如editor:copy-path),看是否可执行 - 带语法过滤的选择器必须加引号,例如
'[data-grammar~="source.js"]',漏引号直接解析失败
汉化右键菜单 ≠ 安装任意中文插件
想让右键菜单显示中文,唯一可靠方式是装 atom-simplified-chinese-menu 并**全开三个开关**:汉化菜单、汉化右键菜单、汉化设置。其他名字含 “chinese” “menu” 的插件,基本都已失效或仅做语法支持。
- 装完必须重启 Atom —— 右键菜单语言不热更新
- 手动克隆安装时,路径必须是
~/.atom/packages/atom-simplified-chinese-menu(macOS/Linux)或C:\Users\{user}\.atom\packages\atom-simplified-chinese-menu(Windows),多一层目录就识别不了 - 如果右键部分中文、部分英文,大概率是多个汉化插件冲突,进
Settings → Packages搜索并禁用所有含chinese、menu的残留包
真正生效的右键菜单,依赖的是选择器精度、command 可达性、以及汉化插件对上下文菜单节点的翻译覆盖 —— 这三者缺一不可,且任何一步出错都无声无息。











