补全不出现八成是autocomplete-plus未启用或缺少对应语言provider;需先在settings→packages中启用autocomplete-plus,再安装如autocomplete-javascript等语言专属provider,并确认文件语法模式正确识别为javascript等对应类型。

补全不出现,八成是 autocomplete-plus 没启用,或者装了但没配对应语言的 provider。
确认 autocomplete-plus 已启用且运行正常
Atom 不自带可用的补全能力,autocomplete-plus 是调度中枢,但它默认安装后是禁用状态。很多人点了“Install”就以为完事了,结果敲 cons 一点反应没有。
- 打开 Settings → Packages,搜
autocomplete-plus,看右侧按钮是不是蓝色的 Enabled;如果是灰色 Install 或 Disabled,点它启用 - 启用后建议重启 Atom,尤其 Windows 上后台进程常驻,不重启新插件可能压根没加载
- 如果出现
Uncaught TypeError: Cannot read property 'getSuggestions' of undefined,基本就是 provider 插件没装或加载失败,不是autocomplete-plus本身坏了
装对 provider:JS、Python、Rust 各有各的“补全大脑”
autocomplete-plus 只管弹框和键盘导航,真正提供 console.log、os.path.join 或 String::new 这类建议的,是语言专属的 provider。只装核心插件,等于买了插座没接电器。
- 写 JavaScript:必须装
autocomplete-javascript(不是atom-ternjs,后者功能重叠易冲突;也别用language-babel替代原生language-javascript,补全支持弱) - 写 Python:装
autocomplete-python,注意不是atom-python那种大而全的 IDE 套件 - 写 Rust:
tokamak自带补全,装完开箱即用;若单独用racer,F3 可手动触发,但需确保racerCLI 已在 PATH 中
文件语法类型(grammar)错了,补全直接失能
Atom 补全逻辑绑定在 grammar 上,不是靠 .js 后缀判断。一个 main.js 文件如果右下角显示的是 Plain Text,那 autocomplete-javascript 就不会启动——哪怕你装了十遍。
- 看右下角状态栏文字,它显示的是当前 grammar 名,如
JavaScript(注意不是JS、js或JavaScript (JSX)) - 点击右下角文字 → 手动选
JavaScript;如果是 JSX 项目,再考虑JavaScript (JSX),但要清楚它和原生 provider 兼容性较差 - 常见于粘贴代码新建临时文件、或从非标准路径打开未保存文件时,此时 Atom 默认设为
Plain Text
补全卡顿、慢、CPU 占高?查 provider 是否在瞎忙
某些 provider(比如旧版 autocomplete-php、autocomplete-clang 或基于外部服务的)会频繁 fork 进程、扫描 node_modules 或发起网络请求,导致输入延迟明显,甚至编辑器假死。
- 先禁用所有非必要 provider,只留
autocomplete-plus+ 一个基础 provider(如autocomplete-html),观察是否恢复流畅 - 检查是否同时启用了多个 JS provider(比如
autocomplete-javascript和atom-ternjs),它们会争抢补全入口 - 项目级变量补全(比如你自己写的
apiHost)默认不支持,得配ctags+autocomplete-ctags,否则别指望它猜到你定义的东西
最常被忽略的一点:provider 插件是否真在当前 grammar 下激活——它不会自己跨语法类型工作,也不会读心。补全失效时,先低头看右下角,再查插件状态,比重装十次都快。











