你也遇到无法补全 os 模块的 bug 了?还是本来就好使?
\
今天重装spacemacs,添加python layer后可以补全os模块了,我用的jedi版本是0.9.0,很神奇的是之前用这个版本的不行, 可能是配置不兼容一类的,后面在按照以前的配置重新开始一步一步地test,为了Python,为了spacemacs,这个坑我填了
降级虽然是个办法,但是0.9.0 版本也有它自身的问题,我忘记是什么了
于是我用0.10.2的加上你之前的那个try catch 的fix,发现也行了,
congrats!
不,是 try except
jedi 要发布 0.11 了,不知道这个问题到时候能否修复,如果修复的话就不用再 hack 了
jedi 0.11 已经发布了,这个问题得到了修复。
但是,anaconda 的作者貌似这几天没有跟进,所以会报错。不过还是可以用的,需要 hack 一下 anaconda_mode.py
(如果是 spacemacs,在 .emacs.d/.cache/
文件夹下找),参考:
下面的图是anaconda_mode 0.1.8(经过上面的修改), jedi 0.11 下截的
其实,这个问题我从来没遇到过,虽然我用的也是 jedi 0.10.2。
同样都是用做后端 jedi,跟 anaconda 比起来,elpy 表现好太多了。不知 elpy 用了什么方法去捕获 jedi 的异常的。
但是 elpy 的缺点也很明显,anaconda-mode 相对比较轻量级,所以和 org-mode 配合得比较好。另外代码比 elpy 简单,可能更容易 hack。