【问题标题】:What is the best way to get Python auto-completions/intellisense in Vim dynamically?在 Vim 中动态获取 Python 自动完成/智能感知的最佳方法是什么?
【发布时间】:2012-03-13 20:32:05
【问题描述】:

我看过pydictionpysmellvim-ipythonpydictionpysmell 都需要在我们使用它之前生成索引,而vim-ipython 需要在自动完成之前来回加载。但是,它们都没有在不同的virtualenv 中提供即时自动完成功能,就像Aptana 可以做的那样。

有经验的 Python-vimmer 可以告诉我们吗?

【问题讨论】:

  • 嘿,我是 vim-ipython 的作者,我不确定你所说的“vim-ipython 需要在自动完成工作之前来回加载”是什么意思——你能澄清一下吗?您正在尝试有效解决的问题是在不同的不相交的虚拟环境内部进行自省,以便只能看到与特定环境相关的完成?
  • 您好@PaulIvanov 感谢您的评论和您在vim-ipython 上的工作,我发现它非常有用(而且我大部分时间都在使用它)。就是这样,每次在使用vim的自动补全之前,我都要打开一个ipython的会话,不是很友好。无论如何,每当我打开 *.py 文件时,是否可以自动初始化 ipython 会话并将其连接到 vim?

标签: python vim autocomplete


【解决方案1】:

试试这个:https://github.com/klen/python-mode

来自 Rope 的动态全补全功能和许多其他功能。

【讨论】:

  • 你是天才吗?这太棒了。 :-)
  • 嗨@klen,我已经使用这个python-mode 有一段时间了。一切都很顺利,但是当这个 python 模式打开时,我有时会遇到行尾问题。我似乎无法将光标(例如通过按 A)移动到行尾(总是关闭 1 个字符)......你以前有过这种经历吗?你知道我该如何解决吗?谢谢。
  • 哦,谢谢。我没有看到你的cmets。我还没有遇到行尾问题。
【解决方案2】:

我真的很喜欢neocomplcache,它是vim 的终极完成系统。 对于 python,它使用内部 vim 的 python omni-completion,这非常好。

你应该试一试。

【讨论】:

  • 我希望自动完成功能无需额外配置即可与任何其他库一起使用。 Vim 的 python 全能补全只限于 python 标准库。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-01-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-11-27
  • 2016-04-08
相关资源
最近更新 更多