Python的Vim自动完成

Python的Vim自动完成,python,vim,Python,Vim,我正在尝试将自动完成功能合并到中。我使用了Vim的全向完成功能以及。但在这两种情况下,都会弹出这样的信息: 未找到全方位完成(^O^N^p)模式 我试过了。但这没有帮助。有解决办法吗 试试看!这里有一个Vim插件 对于Vim中的Python来说,它比其他任何东西都好。它甚至还支持重命名、转到等。最好的部分可能是它真的试图理解您的代码(装饰程序、生成器等。只需查看功能列表即可)。我尝试了pydiction(对我不起作用)和普通的omnicompletion(太有限)。我按照建议调查了绝地武士,但发

我正在尝试将自动完成功能合并到中。我使用了Vim的全向完成功能以及。但在这两种情况下,都会弹出这样的信息:

未找到全方位完成(^O^N^p)模式

我试过了。但这没有帮助。有解决办法吗

试试看!这里有一个Vim插件


对于Vim中的Python来说,它比其他任何东西都好。它甚至还支持重命名、转到等。最好的部分可能是它真的试图理解您的代码(装饰程序、生成器等。只需查看功能列表即可)。

我尝试了pydiction(对我不起作用)和普通的omnicompletion(太有限)。我按照建议调查了绝地武士,但发现太复杂了,无法设置。我发现,这最终满足了我的需求。谢谢。

我在Mac上使用MacPorts vim和+python时遇到了这个问题。问题是MacPorts vim将只使用+python绑定到Python2.5,而我的扩展是在Python2.7下安装的。使用pip-2.5安装扩展解决了这个问题。

如果您想要python完成以及其他语言,这是一个很好的选择


python补全是基于绝地的,与绝地维姆一样。

正如评论中所指出的,这个答案已经过时了
youcompleteme
现在支持python3,绝地vim不再破坏撤销历史

原始答案如下


AFAIK有三种选择,每种都有其缺点:

  • :安装起来不友好,但如果你能让它正常工作,效果会很好。但是,不支持
  • :最酷的名字,但打破了你的记忆
  • 做更多的自动完成:折叠,语法检查,突出显示。就我个人而言,我更喜欢做一件事很好的脚本,因为它们更容易管理(和替换)。与其他两个选项不同,它使用而不是自动完成

  • Python3和undo history()对我来说是必须的,所以选项1和2已经过时了。

    我发现了一个很好的选择

    设置起来需要一些努力。我对绝地维姆感到失望,因为它在完成任务时总是会冻结维姆一段时间。nvim不这样做,因为它是异步的,这意味着。它还为您的代码提供了linting。它支持许多其他语言,并且高度可配置


    python语言服务器使用绝地,因此您可以获得与绝地相同的完成情况。

    使用安装
    coc.nvim
    包和
    coc安装coc pyright

    如果您使用的是
    vim插头

  • Plug'neoclide/coc.nvim'
  • :PlugInstall
  • coc安装coc-pyright

  • 你看到这个链接了吗?是否将该文件检测为python文件?打开它并运行
    :echo&ft
    。如果没有返回“python”,请尝试将“filetype plugin on”添加到vimrc中,然后重试所有这些操作。我需要知道错误和
    :ver
    。如果未安装带+python的vim(例如某些windows vim版本),则可能会发生这种情况。错误:vim:Capture致命信号SEGV vim:Finished。是的,我很抱歉。但这是VIM的问题(旧版本):使用安装。工作起来很有魅力!这就是为我工作的那个。其他工具太复杂了,无法安装。感谢您指出了缺点,这使得选择更加容易,因为我同意关于Python3和undo的观点。似乎rope不支持Python3()?如何在python模式和rope中使用autocomplete函数?谢谢,这已经不准确了。YouCompleteMe现在支持Python 3。此外,绝地维姆不再破坏撤销功能(至少在维姆8+中不会)