【问题标题】:YouCompleteMe does not work for pythonYouCompleteMe 不适用于 python
【发布时间】:2015-10-21 17:37:40
【问题描述】:

我不确定这是否是某种错误(可能不是,否则每个人都会抱怨)并且没有 google 帐户,我无法使用 google 组,所以我在这里试试运气,希望有人有一个建议。

我已经安装了带有 clang-completer 的 YouCompleteMe,并且对于 C、C++ 来说都可以正常工作。现在我编辑一个.py 文件,提供的唯一补全是缓冲区中已经存在的单词。没有语义完成。 :YcmCompleter 打印 No semantic completer exists for filetypes: [u'py']。我已经从我的.vimrc 中删除了除以下内容之外的所有内容:

call pathogen#infect()
Helptags

filetype on

无济于事。有人知道如何更好地诊断问题吗?

编辑:我意识到我没有安装jedi。所以我跑了pip install jedi,但奇怪的是没有任何改变。

【问题讨论】:

    标签: python vim vim-plugin youcompleteme python-jedi


    【解决方案1】:

    Python 是一种解释型语言。

    自动补全仅适用于 python 库中的对象(例如:os、time、...)和 vim 缓冲区中的对象。

    如果您使用的是 buildout,您可以在您的 vim 包中添加 vim-buildout => https://github.com/FBruynbroeck/vim-buildout

    这个插件在系统路径中添加你的鸡蛋(/parts/omelette)。 (YouCompleteMe 使用 syspath vim 进行 python 自动补全)

    就我个人而言,我使用 jedi(自动完成库)。 YouCompleteMe 对我来说太大了。 (我暂时只用python开发)

    【讨论】:

    • 好吧,标准库的自动完成功能将是一个开始,但我什至不明白。
    • 你的本地机器上有没有 python-dev ? (sudo apt-get install python-dev)
    • 我在 OSX 上,但是 python 安装了 ofc。
    【解决方案2】:

    原来我有一个ftplugin 用于.py 文件,它将文件类型设置为py,而不是按预期设置python。禁用它解决了这个问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-01-03
      • 2023-03-24
      • 1970-01-01
      • 2016-04-26
      • 2022-11-26
      • 1970-01-01
      • 1970-01-01
      • 2015-05-28
      相关资源
      最近更新 更多