必须启用autocomplete-plus并重启Atom,再装对语言provider、确保右下角语法识别正确;否则补全链路中断,导致无反应。

装完没反应,八成是插件没启用、语法没识别,或者 provider 没配对——不是 Atom 坏了,是补全链路断在某个环节。
autocomplete-plus 必须启用且重启生效
它不是“装了就用”的插件,而是所有补全的调度中枢。默认安装后是禁用状态,不手动点启用,后续所有 provider 都不会加载。
- 打开
Settings → Packages,搜autocomplete-plus,右侧按钮必须是蓝色Enabled(不是灰色Install或Disabled) - Windows 用户务必重启 Atom:后台进程常驻,不重启新状态根本没加载
- 如果控制台报
Uncaught TypeError: Cannot read property 'getSuggestions' of undefined,基本就是autocomplete-plus被其他插件劫持或未激活
按语言装对 provider,别混搭
autocomplete-plus 只管弹框和导航,真正提供 console.log、os.path.join 这类建议的,是语言专属 provider。装错、装多、装旧,都会导致补全静默或冲突。
- 写 JavaScript:装
autocomplete-javascript;别用atom-ternjs(功能重叠易报错),也别用language-babel替代原生language-javascript(补全支持弱) - 写 Python:装
autocomplete-python;它只补模块和内置函数,要参数级提示(如fetch_data(后提示url),还得加ide-python+python-language-server - 写 Rust:
tokamak开箱即用;若用racer,需确保racerCLI 在PATH中,且按F3手动触发
右下角 grammar 显示 Plain Text?补全直接失效
Atom 补全绑定的是语法 scope(如 source.python),不是文件后缀。新建未保存文件、粘贴代码临时编辑、从非标准路径打开,都容易被识别为 Plain Text,此时 provider 根本不启动。
- 看右下角状态栏文字,必须显示
JavaScript(不是JS、js或JavaScript (JSX));Python 同理,必须是Python,不是Python (Jedi) - 点击右下角文字 → 手动选对应语言;快捷键是
Ctrl+Shift+L(Win/Linux)或Cmd+Shift+L(macOS) - 文件必须已保存为
.py或.js等标准后缀,否则 Atom 默认 fallback 到Plain Text
Tab 键不插入补全项?得改 keymap.cson
Atom 默认用 Enter 确认补全,Tab 永远只缩进。想用 Tab 插入并跳转占位符(比如 print(${1:text})),必须手动绑定。
- 按
Ctrl+Shift+P(Win/Linux)或Cmd+Shift+P(macOS)→ 输入Open Your Keymap - 在打开的
keymap.cson里加这段:
'atom-text-editor[data-grammar~="source.python"]:not([mini])': 'tab': 'autocomplete-plus:confirm'
scope 写错(比如漏掉 :not([mini]))或插件没启用,这行配置就无效。补全链路上任何一个环节松动,结果都是“敲了没反应”。











