繁体   English   中英

Vim 编辑器中的 Python omnicompletion 不起作用

[英]Python omnicompletion in Vim editor not working

我正在尝试根据本指南在我的 Python 之旅中使用 vim。

我想我和付费书呆子有同样的问题,但由于他们没有找到解决方案,我再次在这里发帖。

出于某种原因,我无法在 vim 中使用 python 完成全能工作。 我已经安装了出色的R 插件并构建了标签列表。 所以我得到了 R 的全能。

但不适用于 Python。 一些观察:

  1. :echo &omnifunc打印pythoncomplete#Complete
  2. .vim/doc/tags文件有 R 标签,但没有 python(但这是因为默认情况下支持 python 吗?)
  3. 如果我在我的.py文件中import math ,我可以自动完成例如。 mamath. 但是没有找到方法?

我该如何继续?

似乎 python ( pythoncomplete#Complete ) 的默认 omnicompletion 不知道 buildins/keywords。

当你在math.Ctrl-X Ctrl-Omath. (如果您导入了“数学”),您应该会看到可用的math. 功能,但要这样做printsorted我认为你需要一个插件,如:

有许多用于 Python 补全的插件。 在这一点上,vim python 文件类型插件似乎是最好的。 它需要使用 python 支持构建的 vim,否则应该开箱即用。 系统模块的完成将起作用,并且您将在omnicompletion中使用它们的方法。

我假设您要导入的所有模块都在 Python 路径中,对吗? 检查此文件中的所有导入是否正常工作,在我的情况下,一个失败的导入(导入模块中的语法错误)破坏了omnicompletion。

检查 ~/.vim 目录,在 doc 目录中你应该有 NERD_tree.txt,所以你应该安装了 nerd tree 插件。 . .

.vim/doc/tags包含 Vim 文档(包括 R 插件)的标签,这与用于完成的标签无关。 您可以使用重新生成它们

:helptags ~/.vim/doc

说到完成,您使用哪个键盘快捷键? 默认情况下,omni-complete 绑定到Ctrl-X Ctrl-O ,而不是通常的Ctrl-N

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM