jedi没有列出所有模块

时间:2018-06-17 19:07:36

标签: neovim python-jedi

我在neovim中设置python代码完成时遇到了麻烦。我的完成源由deoplete管理,我尝试使用2个来源:LanguageClient-neovimdeoplete-jedi

我对语言客户端感到高兴几秒钟,直到我厌倦完成numpy。 deoplete-jedi和语言客户端都使用jedi作为代码完成的后端,后者通过python-language-server

一次发布import nump<TAB>两个来源之一:

  • deoplete-jedi:正确完成numpy和子模块
  • 语言客户:没有任何反应

(注意:语言客户端工作&#34;好&#34;尽管它没有列出很多模块)

我有

❯ python --version
Python 3.6.5 :: Anaconda, Inc.

❯ conda list jedi
# packages in environment at /opt/anaconda3:
#
# Name                    Version                   Build  Channel
jedi                      0.12.0                   py36_1
~
❯ conda list python-language-server
# packages in environment at /opt/anaconda3:
#
# Name                    Version                   Build  Channel
python-language-server    0.19.0                    <pip>

我已使用命令行中的以下命令测试了jedi:

❯ python -c "import jedi; print(jedi.Script('import nump').completions())"
[]
❯ python -c "import jedi, sys; print(jedi.Script('import nump',sys_path=sys.path).completions())"
[<Completion: numpy>, <Completion: numpydoc>]

几乎可以解决问题所在。绝地显然忽略了sys.path,但我不知道下一步该做什么!

❯ python -c "import sys; print(sys.path)"
['',
'/opt/anaconda3/lib/python36.zip',
'/opt/anaconda3/lib/python3.6',
'/opt/anaconda3/lib/python3.6/lib-dynload',
'/opt/anaconda3/lib/python3.6/site-packages',
'/opt/anaconda3/lib/python3.6/site-packages/aeosa']

0 个答案:

没有答案