必须编辑当前启用的.sublime-color-scheme文件中rules数组内的selection规则,路径需为packages/user/下可写文件,且需在preferences→color scheme中手动选中;无效常因路径错误、规则位置错(不在rules内)或json语法错误。

改选中文本背景色,必须编辑当前启用的 .sublime-color-scheme 文件中 rules 数组里的 selection 规则,其他任何地方改都无效。
怎么找到并编辑正确的 .sublime-color-scheme 文件
你看到的“改了没反应”,九成是文件路径或加载方式错了。别碰 Preferences.sublime-settings,它对选中色完全无影响。
- 按
Ctrl+Shift+P(Windows/Linux)或Cmd+Shift+P(macOS),输入Show Scope Name回车,状态栏会显示当前 scheme 路径,例如Packages/User/MyMonokai.sublime-color-scheme - 如果路径不含
Packages/User/,说明你正在用只读主题——必须复制原文件到Packages/User/下再改(比如从Packages/Color Scheme - Default/Monokai.sublime-color-scheme复制过去,重命名为MyMonokai.sublime-color-scheme) - 在
Preferences → Color Scheme中手动选中你新建的文件,确保它被真正启用
selection 规则必须写在 rules 数组里,不能扁平或错层
常见无效写法:"selection": { "background": "#ff0000" } —— 这种键值对形式 Sublime 完全不识别。
- 打开你的
.sublime-color-scheme文件,在"rules"数组内搜索"scope": "selection"或"name": "Selection" - 找到后直接修改它的
background字段,推荐用 6 位 hex(如"#2a5c8a")或带 alpha 的hsla()(如"hsla(210, 30%, 40%, 0.4)") - 如果整个文件里压根没有
selection条目,就在"rules"数组末尾手动加一条(注意 JSON 语法:逗号分隔、引号闭合、括号匹配):
{
"name": "Selection",
"scope": "selection",
"background": "#2a5c8a"
}
保存后 Sublime 会自动重载,无需重启;但若无效,先检查 JSON 是否有漏掉的引号或逗号。
为什么改了 selection 还是看不见同词高亮
这不是 selection 的问题,而是 highlight_word 功能依赖另一套规则:"name": "Highlight" 或带 region. 前缀的作用域(如 region.yellowish)。
- 在同一份
.sublime-color-scheme文件里搜索"name": "Highlight"或"scope": "region.yellowish" - 优先改它的
background,别只调foreground(那是文字色,对高亮区域无效) - 很多暗色主题把
Highlight的background设成"#33333380"这类极淡灰,在深背景上根本看不见——看起来像功能坏了,其实是颜色太淡 - 确认用户设置里没关掉该功能:
Preferences → Settings右侧检查没有"highlight_word": false
最容易被忽略的是:改完 background 后如果文字看不清,得同步补上 foreground(比如设为 "#000000" 或 "#ffffff"),尤其在高对比度配色下;另外,某些主题(如 Dracula、Ayu)会把 selection 拆成 selection 和 selection.foreground 两条规则,只动一个会导致文字被盖住或发虚。











