All Autocomplete 必须通过 Package Control 安装并配置 {"all_autocomplete": true},且所有待补全文件需语法正确、已打开、大小适中,否则无法跨文件补全。

装完 All Autocomplete 默认不跨文件补全,必须手动配置 "all_autocomplete": true 并确保当前文件语法识别正确(右下角不能是 Plain Text),否则它连当前文件都不扫。
怎么装才真正生效?别手动解压
All Autocomplete 依赖 Package Control 的 Python 运行时,手动下载 ZIP 解压到 Packages/ 或 Installed Packages/ 目录完全无效——Sublime 不会加载,重启也没用。
- 先确认已装 Package Control:按
Ctrl+Shift+P(Win/Linux)或Cmd+Shift+P(macOS),输入Install Package Control回车(已有则跳过) - 再调命令面板,输入
Package Control: Install Package,等列表加载完,搜All Autocomplete(注意空格),回车安装 - 装完建议重启 Sublime,尤其之前试过手动安装的,避免缓存干扰
为什么 Ctrl+Space 只补当前文件?配置键名写错了
插件默认关闭跨文件索引,不是“装完就全局生效”。关键配置项是 "all_autocomplete": true——不是 all_autocomplete_enabled、enabled 或 enable_global_autocomplete,拼错一个字母都不会生效。
- 打开
Preferences → Package Settings → All Autocomplete → Settings – User - 填入最小必要配置(JSON 格式,无注释,末尾不能有多余逗号):
{"all_autocomplete": true} - 保存后无需重启,但当前文件右下角必须显示
Python、JavaScript等有效语法,不能是Plain Text
补全没反应?三个硬性条件缺一不可
All Autocomplete 的补全逻辑非常朴素:只从「已打开的、语法识别正确的、大小适中的纯文本文件」中提取连续字母数字串。缺一不可。
- 至少两个文件同时打开,且都设对了语法(例如
A.py里写了def user_login,B.py里输入user_l再按Ctrl+Space才可能命中) - 光标必须在单词中间或末尾(
user_l|可以,|user_login开头位置不触发) - 文件不能太大(默认 >1MB 被跳过),也不能是
node_modules/、二进制或 Sublime 无法读取的路径(除非你手动打开了它)
为什么开了配置还是补不出变量名?它根本不看 import
它不解析 import、不读 AST、不跟踪作用域,只做字符串匹配。补不出来,基本卡在这三点:
- 目标词没真实出现在**任何一个已打开且未关闭的标签页**中(哪怕只是只读打开的
utils.py,磁盘上存在的未打开文件它完全看不见) - 当前文件右下角显示
Plain Text→ 插件静默失效(按Ctrl+Shift+P→Set Syntax: Python切对) - 触发方式是手动的:
Ctrl+Space(Win/Linux)或Cmd+Space(macOS),不是输入os.后自动弹;它也不响应.或:符号
大项目下指望调参数没用,得靠人工让关键符号“被看见”:右键侧边栏 → Open Containing Folder,把核心模块(如 constants.js、api_client.py)手动打开几个标签页——这才是实际生效的边界。


















