关闭光标闪烁只需设 caret_style 为 “solid”,并同时将 caret_extra_top、caret_extra_bottom 和 caret_extra_width 全部设为 0,其他样式如 “wide” 或 “phase” 仍会闪烁。

关闭光标闪烁只需设 caret_style 为 "solid"
sublime Text 默认光标会规律闪烁,但它的“闪烁”本质是样式切换逻辑,不是独立的动画开关。真正起效的方式是把光标强制设为静态形态——caret_style 设为 "solid" 即可彻底停掉闪烁行为,无需关 caret_blinking 或调 blink_interval。
-
"solid"表示实心块状光标,始终显示、无任何明暗/位置变化 - 仅设
"caret_blinking": false在新版 Sublime 中可能无效,尤其搭配某些主题时会被覆盖 - 设
"blink_interval": 0也不可靠,部分系统(如 macos)会忽略该值,仍按系统光标设置走
必须同时清空额外尺寸参数,否则 "solid" 可能失效
这是最容易踩的坑:如果你只加了 "caret_style": "solid",但没显式重置 caret_extra_top、caret_extra_bottom 和 caret_extra_width,光标在某些字体或缩放比例下仍可能“抖动”或边缘发虚,看起来像还在动。
- 这些参数默认值不为 0,尤其
caret_extra_bottom常为 1 或 2,会让"solid"光标底部拉长、产生视觉浮动感 - 正确写法是全部设为 0:
"caret_extra_top": 0、"caret_extra_bottom": 0、"caret_extra_width": 0 - 不需要重启,保存用户设置后立即生效
其他静态光标选项对比:"wide" 和 "phase" 不等于“不闪烁”
很多人误以为 "wide" 或 "phase" 能禁用闪烁,其实它们只是改变形态,底层仍走闪烁逻辑。
-
"wide":加粗竖线,但依然会明暗交替(即“闪”) -
"phase":光标会轻微左右晃动+明暗变化,动态感更强,不适合追求静态体验的人 -
"smooth"和"thin"同样保留闪烁,只是过渡更柔和或线条更细 - 只有
"solid"和"underline"(下划线)、"wide_underline"(粗下划线)是真正无闪烁的静态样式
深色主题下 "solid" 光标可能看不清?试试加一点 caret_extra_width
在深色背景 + 浅色字体(如白色文字)下,"solid" 光标若颜色太浅(比如默认灰白),容易和背景融成一片。此时不能靠改颜色(原生不支持),但可以微调尺寸增强辨识度:
- 把
"caret_extra_width": 0改成"caret_extra_width": 1或2,让光标横向略宽,边界更硬朗 - 避免设 >2,否则在小字号(如 10pt)下会挤压字符间距,影响阅读节奏
- 如果仍不够明显,优先换高对比度配色方案(如
Monokai或Dracula),比强行调光标更稳定
关键点就一个:静态光标 ≠ 任意设个样式就行,"solid" 是唯一可靠的起点,且必须配合三零参数才真正稳。