需编辑当前启用的.sublime-color-scheme文件,在rules数组中找到"name": "Selection"项,修改其background值为合法十六进制(如"#3399ff")或HSLA/RGBA字符串(如"hsla(210,30%,70%,0.3)"),保存后立即生效。
怎么改 selection 的 background 颜色?
Sublime 的选中文本颜色不是靠
控制的,必须修改当前启用的
文件。你看到的“选中后看不见”“像没选中”“反光刺眼”,基本都是因为主题里
这条规则的
值和编辑器背景太接近,或者用了纯黑/纯白导致对比过强。
先按
(Windows/Linux)或
(macOS),输入
回车,确认当前 scheme 路径,比如
用命令面板运行
,找到对应文件,复制全文到
下新建副本(如
)
在副本里搜索
或
,修改其中的
值,例如:
(注意:Sublime 不支持 8 位 hex 如
,得用 HSLA/RGBA 格式,但 JSON scheme 中只认合法十六进制;实际应写成
,透明度需靠主题自身支持或换用 HSLA 字符串)
保存后立即生效,不用重启;若无效,检查 JSON 是否有语法错误(尤其逗号、引号、括号闭合)
为什么改了 selection 还是看不见同词高亮?
这不是
的问题,而是原生
功能依赖另一个 scope:
(或带
前缀的规则)。很多暗色主题把它的
设成极淡的灰(如
),在深背景上几乎不可见——看起来像功能失效,其实是颜色太淡。
在同一份
文件里搜索
或
等关键词
优先改
,别只调
(那是文字色,对高亮无效)
避免用纯色值如
,推荐带 alpha 的 HSLA/RGBA,比如
,既清晰又不刺眼
确认用户设置里没关掉功能:
右侧检查没有
改颜色时最容易踩的坑有哪些?
绝大多数失败都出在路径、语法或作用域误判上,不是 Sublime 不支持,而是改错了地方。
仿Sublime和notepad++编辑器效果
仿Sublime和notepad++编辑器效果
下载
改完保存,颜色完全没变 → 检查是否编辑的是
下的副本,而不是只读的原版(
下的文件改了也无效)
高亮变成一块实心色块,盖住文字 →
值不带透明度(如用了
而非
),遮挡了
文字色
只有部分单词高亮,比如选中
却不亮
→ 这是正常行为,Sublime 按 token 边界(下划线、大小写变化等)切分,不是字符串模糊匹配
Sublime Text 4 的 color_scheme 格式要注意什么?
Sublime Text 4(v4143+)强制使用 JSON 格式的
,旧版的
已不被支持。
找到你当前用的主题文件夹(比如
或
),里面会有类似
的文件
必须把新规则加在
数组末尾,不能放在
下
值必须是合法十六进制(如
),不支持
或命名色;HSLA/RGBA 需写成字符串形式,且主题引擎必须支持(并非所有版本都兼容)
若想让光标所在行的选中色更醒目,可额外加一条
规则
真正容易被忽略的是:Sublime 的高亮逻辑分层很细,
、
、
各自独立控制,改错一个 scope 就会以为整个功能坏了。
Preferences.sublime-settings.sublime-color-scheme"name": "Selection"backgroundCtrl+Shift+PCmd+Shift+PShow Scope NameMonokai.sublime-color-schemePackageResourceViewer: Open ResourcePackages/User/Monokai-custom.sublime-color-scheme"name": "Selection""scope": "selection"background"background": "#3399ff80"#3399ff80"#3399ff"selectionhighlight_word"name": "Highlight"region.background"#33333380".sublime-color-scheme"Highlight""region.yellowish"backgroundforeground"#FFFFFF""hsla(60, 40%, 90%, 0.4)"Preferences → Settings"highlight_word": falsePackages/User/Packages/xxx/background"#FFD700""hsla(40, 100%, 70%, 0.3)"foregrounduser_iduser_id_list.sublime-color-scheme.tmThemeMaterial Theme/Default/Material-Theme-Darker.sublime-color-scheme"rules""globals""background""#3399ff"rgb()"name": "Line Selection"selectionHighlightlineHighlight