我在原版spacemacs里加入了python,安装了jedi和anaconda-mode, 没有在配置文件里设置auto-complete,(其实做过尝试,设置了(global-auto-complete-mode 1) 也没有什么区别。)
然后重点来了:
我的python自动补全,一直是好使的,可以补全package里的方法,但是问题是,我看到别人的补全还有func的用法,需要的参数,以及__doc__说明,我的却只有方法名补全。因为同时提示了当时的语法格式化错误, 因为当时我没写完这个方法,动态提示,所以显示语法错误 ,不知道和我安装flake8/pep等插件有没有冲突。
如上图中黄色的提示。 (这是别人的自动补全)
而我的自动补全是这样的:
1 个赞
黄色的那个提示应该是要安装 company-quickhelp 插件吧,不过如果使用 spacemacs 的话,这个插件默认是安装好的。可以检查 2 点:
-
检查补全的符号是否真的有写 doc string
-
检查 company-frontend 是否包含 company-quickhelp
2 个赞
补充:quickhelp的弹出有一定延迟,取决于company-quickhelp-delay
找到了,company-quickhelp在原版spacemacs里默认是关闭的,启用就可以了。
ps. flake8与company-quickhelp兼容性不好,同时使用会导致company-quickhelp一闪而过,因为flake8的编码格式提示会抵消company-quickhelp的提示,我是把flake8卸掉了,毕竟习惯养成了,也就不用时时提醒了。
4 个赞