sublime text与notepad++核心差异在于设计哲学:sublime默认关闭全文件高亮、不自动重载外部修改、无原生列编辑、gbk需手动配置,多光标为语义驱动而非对齐依赖,用户需主动调整设置以适配习惯。

Notepad++ 用户切到 Sublime Text 后,最常卡住的地方不是功能不会用,而是某些“默认行为”变了,且没有提示——比如保存不自动重载文件、编码识别逻辑不同、Ctrl+F 搜索不跨行、多光标和列编辑根本不是一回事。这些不是 bug,是设计取舍,但会直接导致你反复怀疑自己按错了键。
Ctrl+F 不再默认“全文件高亮匹配项”
Notepad++ 默认开启“全部高亮”,Sublime Text 默认关闭。这会让老用户搜完词后下意识拖滚动条找下一个,结果发现只高亮了当前光标处那一个——其实其他匹配项根本没标出来。
- 手动开启:打开
Preferences → Settings,在右侧用户设置里加一行:"highlight_line": true不管用;真正要改的是"highlight_matches": true - 注意:这个设置只影响当前视图,新开标签页需重新生效(除非写进全局设置)
- 如果同时开了大文件(>50MB),开启后可能轻微拖慢滚动,尤其在机械硬盘上
GBK 编码文件打开后乱码,不是插件问题
Sublime Text 3 默认不带 GBK 支持,Notepad++ 却能自动识别并转码。直接双击打开 .ini 或旧日志,大概率显示方块或问号,很多人第一反应是去装 GBK Encoding Support 插件——但其实有更轻量的解法。
- 临时修复:菜单栏
File → Reopen with Encoding → GB2312(多数中文 Windows 系统用的是 GB2312 子集,不是严格 GBK) - 永久生效:在
Preferences → Settings – User中加入:"fallback_encoding": "GB2312" - 别乱装
GBK Encoding Support:该插件最后更新是 2018 年,Sublime Text 4 已原生支持部分 GBK 变体,装了反而可能冲突
多光标 ≠ 列编辑,Alt+鼠标拖拽根本不管用
Notepad++ 的列编辑(Alt+鼠标拖选)依赖文本严格对齐,而 Sublime Text 的多光标是语义驱动的——它不看缩进是否整齐,只看你按什么键、选中什么内容。
-
Ctrl+Click(Windows/Linux)或Cmd+Click(macOS):任意位置点出新光标,适合非对齐修改 -
Ctrl+D:连续选中当前词的下一个匹配项,比 Notepad++ 的“查找全部→替换”快得多 -
Ctrl+Shift+L:把当前选中的每行拆成一个光标(比如你选了 5 行,按下后出现 5 个光标),这是批量加前缀/后缀的刚需操作 - 别指望 Alt+拖拽能复现 Notepad++ 行为:Sublime Text 没这个模式,硬试只会选中一整块矩形区域,且无法跨空行
保存后文件不自动重载,外部修改会丢失
Notepad++ 默认监听文件系统变化,外部程序(如 git checkout、logrotate)改完文件后,它会弹窗问“是否重载”。Sublime Text 默认不监听,改完就静默——你继续编辑,等保存时才发现内容早已过期。
- 必须手动开启:在
Preferences → Settings – User加入:"atomic_save": false和"hot_exit": false不起作用;真正有效的是:"always_prompt_for_file_reload": true - 这个选项开启后,只要文件被外部修改,底部状态栏会闪黄字提示“File has been modified”,点击才重载
- 别开
"auto_reload_on_focus": true:这个选项在 Sublime Text 4 中已被废弃,设了也没效果
最麻烦的其实是习惯迁移:比如你习惯了 Notepad++ 的“右键→在浏览器中打开”,Sublime Text 默认没这功能,得装 SideBarEnhancements;又比如你依赖 Notepad++ 的“运行→cmd /c start cmd.exe”,Sublime Text 要自己配 build system。这些不是不能做,但得接受一个事实——Sublime Text 不预设工作流,它只提供原子能力,怎么组装,得你自己来。











