【问题标题】:Does jedi-vim conflict with YouCompleteMe?jedi-vim 是否与 YouCompleteMe 冲突?
【发布时间】:2015-04-29 17:38:57
【问题描述】:

YouCompleteMe (YCM) 和 jedi-vim 是两个提供自动完成功能的 vim 插件,它们都在 Python 下使用了 jedi。然而,两者都很好,因为除了文档之外,jedi-vim 还提供了一些有用的功能,例如“转到定义”和“查看文档字符串”,而 YouCompleteMe 可以与其他语言一起使用。

由于两者都提供 Python 自动完成功能,是否需要任何特殊配置来防止两个插件发生冲突?或者 jedi-vim 的自动完成器会简单地覆盖 Python 中的 YCM?

【问题讨论】:

  • 没有同时使用两个插件的实际经验,但是 jedi-vim 可以配置为不自动执行任何操作,而只能在按键时执行。如果两个插件的映射没有冲突,应该没有问题。
  • 绝地作者在这里,他们可能有点碰撞。但是如果你禁用某些东西(比如自动完成)它可以工作。所以@syntonym 是对的!
  • YCM 还提供GoToDefinition、GoToDoc 等功能,因此您可以考虑完全删除jedi-vim。

标签: python vim jedi-vim


【解决方案1】:

最明显的冲突是不知道您是使用 YCM 还是 Jedi 进行自动补全。在这种情况下,最简单的做法是使用 .vimrc 中的一行来禁用 Jedi 的自动完成功能,并在任何地方使用 YCM 很棒的(Jedi-powered for Python)自动完成功能。

let g:jedi#completions_enabled = 0

键映射还不错。两个插件都映射<leader>d(其中<leader> 默认为\)但没关系,Jedi 将仅在 Python 文件中覆盖 \d,并且 Python 不支持特定的 YCM 功能。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多