sublime text 的 vintage 模式默认被禁用,因 "vintage" 在 ignored_packages 列表中;启用后默认为插入模式,需按 esc 或 ctrl+[ 进入命令模式;原生 vintage 仅支持 :w、:q! 等极少数命令,复杂 vim 功能需安装 vintageous 插件。

Sublime Text 的 Vintage 模式默认是禁用的
不是插件没装,是 Sublime 把自带的 Vintage 插件默认加进了 ignored_packages 列表。只要它在里面,Esc、h/j/k/l 就完全没反应——光标不动、方向键输字符、: 打不出来,全是这个原因。
打开 Preferences → Settings,看右侧 User Settings 里有没有类似:"ignored_packages": ["Vintage"] 或 "ignored_packages": ["Vintage", "SomeOtherPackage"]
把它改成 "ignored_packages": [],或者确保 "Vintage" 不在数组中。
保存后必须**完全退出 Sublime Text(关掉所有窗口),再重新打开**;只点“保存”不重启,等于白干。
启用后默认是插入模式,不是 Vim 用户熟悉的普通模式
这是最常让人卡住的点:一打开文件就能打字,h/j/k/l 不动,: 按了没反应——不是快捷键错了,是 Sublime 故意设计成这样,和 Vim 的初始行为相反。
按 Esc 或更可靠的 Ctrl+[ 强制进入命令模式(Normal Mode):
-
Ctrl+[更稳定,很多输入法或远程桌面会劫持Esc - 如果
Esc没反应,大概率是自动补全弹窗挡住了;在用户设置里加"pressing_esc_disables_auto_complete_window": true可修复 - 中文输入法(尤其是微软拼音、搜狗)常拦截
Esc,切到英文状态再试
验证是否成功:按 Esc 后再按 h,光标左移说明已进命令模式;若仍输字符,说明没启用成功。
:w 和 :q! 能用,但别信 :wq 或 :set number
原生 Vintage 根本没有 Ex 命令解析器,只硬编码支持极少数命令:
-
:w有效,真实保存文件 -
:q!有效,丢弃更改并关闭当前标签页(但不会退出整个 Sublime) -
:wq静默失败或报错,:q通常不生效,:e filename、:set number全都不认 - 行号得靠菜单
View → Line Numbers手动开,:set number无效 -
/keyword搜索可用,n/N跳转也正常,这是少数可靠功能
想用 :s/old/new/g、宏、ciw、可视块选择(Ctrl+v)、系统剪贴板同步?原生 Vintage 完全不支持。
想真正像 Vim 那样工作,Vintageous 不是可选,是刚需
截至 2026 年,Vintageous 已是事实标准:它兼容原生 Vintage 的基础操作,又补全了 Vim 的核心能力,安装后几乎零配置就能用。
用 Ctrl+Shift+P → Package Control: Install Package → 搜 Vintageous 安装,重启后自动接管,原生 Vintage 会被自动禁用。
关键配置项(加到用户设置里):
-
"vintageous_use_sys_clipboard": true:y/d 直接写入系统剪贴板 -
"vintageous_start_in_command_mode": true:开文件就进命令模式(注意拼写,不是vintage_start_in_command_mode) - 自定义
jj退出插入模式,要加完整 context 判断,否则可能误触发
原生 Vintage 的坑在于:它看起来像 Vim,但实际只是按键映射层;而 Vintageous 是重写的命令引擎——复杂操作、寄存器、文本对象、.重复、标签跳转这些,只有后者能稳住。











