最直接有效的方式是设置"auto_complete": false,它精准禁用自动弹窗但保留Ctrl+Space手动唤出、Emmet缩写、Snippet及LSP的Tab补全功能。

关掉 Sublime Text 的自动代码提示,最直接有效的方式就是设置 "auto_complete": false —— 它不是“禁用所有补全”,而是精准切断「自动弹窗」这个干扰源,保留 Ctrl+Space 手动唤出、Emmet 缩写、Snippet 和 LSP 的 Tab 补全能力。
怎么彻底关掉自动弹窗(不是延迟、不是隐藏)
很多人误设 auto_complete_delay 为 9999,结果输入仍卡顿、候选词计算照常进行。真正要的是停止触发逻辑本身。
- 打开 Preferences → Settings – User(注意是右侧用户设置,不是左侧 Default)
- 在大括号
{}内添加一行:"auto_complete": false,确保前后有英文逗号分隔(如果是第一条配置,前面不加逗号) - 保存即生效,无需重启;之后敲
requests.或os.不再自动弹框
为什么关了 auto_complete 还有提示?查这三处
自动弹窗只是补全链路的一环。如果你仍看到悬停定义、F12 跳转、或光标悬停时冒出类型信息,说明其他机制在工作:
-
"show_definitions": false可关掉原生悬停(但对 Python/JS 等语言效果有限) - LSP 插件(如
pyright、typescript-language-server)自带 hover 和 signatureHelp,需单独在插件设置里关,比如 LSP-pyright 的"hover_enabled": false - 某些语法包(如 HTML、Markdown)自带
triggerCharacters,会监听或 <code>*后自动展开,这类行为不受auto_complete控制,得去对应.sublime-syntax或插件文档查
想手动控制?别改 delay,用快捷键更稳
auto_complete_delay 是给「自动补全流程」设的防抖时间,不是开关。它在大项目里反而加重 CPU 压力——因为 Sublime 仍在后台扫描符号表,只是延迟显示。
- 保持
"auto_complete": false - 需要补全时按
Ctrl+Space(Windows/Linux)或Cmd+Space(macOS)手动唤出 - Emmet 缩写(如
div.container+Tab)完全不受影响,只要"disabled_keymap_actions"没把它列进去
顺手清掉右侧竖缝和更新弹窗(极简体验闭环)
代码提示关了,但右侧那条细缝和隔三差五的 Update available 弹窗,一样破坏节奏。
- 关 Minimap:
"minimap_enabled": false - 关滚动条占位:
"overlay_scrollbar": "disabled"(注意是字符串"disabled",不是布尔值) - 关主程序更新:
"update_check": false+"show_update_in_status_bar": false - 关插件自动升级:
"auto_upgrade": false(Package Control 自己检查,和主程序无关)
这些设置都写在同一个 Settings – User 里,彼此不冲突。真正容易被忽略的是:Minimap 关了但 overlay_scrollbar 还开着,右侧那 2–4 像素的空白就会一直存在——它不是 bug,是 Sublime 硬编码预留的宽度。


















