peacock 需手动执行“peacock: change color”才为当前窗口着色,不自动染色;颜色绑定窗口而非项目,新开窗口默认无色;配置项仅缓存上次值,不触发渲染。

Peacock 不是“装完就自动染色”的主题工具,它只在你手动触发 Peacock: Change Color 后才给当前窗口打上颜色标签;新开窗口、重开项目、甚至同一文件夹双击打开,都默认无色——这是设计使然,不是 bug。
为什么 Peacock 没反应?检查是否真执行了着色命令
装完插件不等于生效。Peacock 依赖显式命令驱动,不监听配置变更,也不轮询 settings.json。常见失效场景:
- 只改了
"peacock.color": "#ff0000"却没运行Peacock: Change Color—— 这个配置项只是缓存上次选的值,不会触发渲染 - 误以为“启用插件=启用窗口着色”,实际需手动激活:按
Ctrl+Shift+P(Windows/Linux)或Cmd+Shift+P(macOS),输入并执行Peacock: Change Color - macOS 用户没开
Window: Title Bar Style为custom,导致标题栏不可见变色(仅边框和活动标签页边缘有效)
颜色只绑定窗口,不绑定项目或路径
Peacock 的着色单位是「VSCode 实例窗口」,不是文件夹或工作区。这意味着:
- 用命令行
code /path/to/project-a和code /path/to/project-b分别打开两个窗口 → 可分别染色 - 同一个窗口里用
File → Add Folder to Workspace加入多个根目录(multi-root workspace)→ 整个窗口统一染色,无法按子文件夹区分 - 关闭窗口后重开同一项目,默认恢复无色;若想保留,需提前设
"peacock.preserveColorOnClose": true,且该窗口曾被手动染过色 - Git 提交时会把
.vscode/settings.json中的peacock.color写入,建议全局.gitignore加.vscode/避免污染仓库
预设色、HEX 值、命名色怎么选才不翻车
视觉效果受主题和系统 UI 渲染限制,不是所有颜色都“看得清”:
- 深色主题(如 One Dark Pro)下慎用浅灰系 HEX(如
#f5f5f5),标题栏文字易发虚;优先选高饱和亮色,比如#61DAFB(React 蓝)或#ffd740 -
Peacock: Change Color from List提供的dev/test/prod是语义化命名,对应固定色值,适合团队约定,避免各人自由发挥 - 渐变色、透明度(alpha)不支持;输入带 alpha 的
#rrggbbaa会被截断为#rrggbb - Linux 桌面环境(如 GNOME)可能强制统一标题栏样式,此时仅活动标签页边缘和侧边栏顶部能体现颜色
批量管理多个窗口的实用技巧
靠记忆“蓝色=后端、绿色=前端”三天就乱。更可靠的做法是组合使用:
- 右键标题栏 →
Set Window Title(需先开启Window: Enable Window Title Menu),填入[api]或[web]等缩写 - 再执行
Peacock: Change Color,形成“名称-颜色”双重锚点,Alt+Tab 切换时一眼定位 - 用
peacock.surpriseMeOnStartup自动分配随机色,适合临时调试多个分支,但不适合长期维护的稳定项目 - 远程开发(SSH/WSL)窗口同样支持 Peacock,但 WSLg 渲染下部分颜色可能偏暗,建议实测确认可见性
最容易被忽略的一点:Peacock 不修改任何编辑器内部样式(字体、括号匹配、语法高亮),它只动容器层(标题栏、活动标签边框、状态栏)。如果你发现代码区颜色异常,问题一定出在 theme 或 workbench.colorCustomizations,和 Peacock 无关。











