activate-power-mode 默认关闭音效,需手动启用audio.enabled开关并确保audioclip路径正确指向存在的.wav文件,音量通过volume参数独立调节,且受Electron音频上下文和系统策略约束。

activate-power-mode 的 audio.enabled 必须手动开启
默认安装后音效是关闭的,audio.enabled 配置项初始值为 false,不改就不会响。这个开关藏在插件设置里,不是 Atom 全局“提示音”设置(那个只管操作失败反馈,和打字音效无关)。
- 打开 Atom 设置:
Cmd+,(macOS)或Ctrl+,(Windows/Linux) - 左侧选 Install → 搜索
activate-power-mode→ 点击右侧的 Settings - 向下滚动找到 Play Audio - Enabled,勾选它
audioclip 路径必须指向实际存在的 .wav 文件
插件内置了几个音效文件,但路径写错、文件缺失或权限不对都会静音。默认配置里的 ../audioclips/typewriter.wav 是相对路径,实际依赖插件安装目录下的 node_modules/activate-power-mode/audioclips/ 子目录。
- 确认插件安装完整:进入
~/.atom/packages/activate-power-mode/,检查是否存在audioclips/文件夹及其中的.wav文件 - 自定义音效时,路径必须以
../audioclips/开头,不能用绝对路径或file://协议 - 如果想换自己的音效,把
.wav文件放进audioclips/目录,然后在配置中填对应文件名,比如../audioclips/my-typing.wav
音量控制只影响插件音效,不联动系统音量
volume 参数范围是 0.0 到 1.0,设成 0.3 不代表 30% 系统音量,而是插件内部音频节点的增益系数。设太高可能爆音,太低又听不见。
- 推荐从
0.4开始调,逐步加到能清晰听见但不突兀为止 - 音效播放逻辑在
lib/service/audio-player.coffee,无混音能力,多个音效不会叠加,同一时刻只播一个 - 注意:音效仅在触发连击(combo)或普通按键时播放,取决于你是否启用了
comboMode和对应阈值
Mac 上 Safari WebKit 音频策略可能拦截自动播放
Atom 基于 Electron(底层是 Chromium),但某些 macOS 版本对 Web Audio API 的自动播放限制更严,尤其首次启动或未用户交互前。表现为:设置全对,但第一次敲键没声音,点一下编辑区再试才响。
- 临时解法:先随便按个键(比如
Enter或Space),让音频上下文激活 - 长期稳定方案:在
config.cson中加一行'*': 'core': 'audioMuted': false(虽然文档没提,但实测可绕过部分静音策略) - 别指望后台运行时持续发声——Electron 一旦窗口失焦,Web Audio 会暂停,这是设计使然
音效功能看似简单,但实际受插件配置、文件路径、Electron 音频上下文、系统策略四层约束。最容易卡住的是路径写错或 audio.enabled 漏勾,其次就是 macOS 下首次无响应——这不是 bug,是浏览器引擎的正常防护机制。

















