Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
YouCompleteMe (YCM) 和 jedi-vim 是两个提供自动补全功能的 vim 插件,它们都在 Python 下使用了 jedi。然而,两者都很好,因为除了文档之外,jedi-vim 还提供了一些有用的功能,比如“转到定义”和“查看文档字符串”,而 YouCompleteMe 可以与其他语言一起使用。
由于两者都提供 Python 自动完成功能,是否需要任何特殊配置来防止两个插件发生冲突?或者 jedi-vim 的自动完成器会简单地覆盖 Python 中的 YCM?
最明显的冲突是不知道您是使用 YCM 还是 Jedi 进行自动补全。在这种情况下,最简单的做法是使用 in 中的一行禁用 Jedi 的自动完成功能.vimrc,并在任何地方使用 YCM 很棒的(Jedi-powered for Python)自动完成功能。
.vimrc
let g:jedi#completions_enabled = 0
键映射还不错。两个插件都映射<leader>d(<leader>默认为\),但没关系,Jedi 将\d仅在 Python 文件中覆盖,并且 Python 不支持特定的 YCM 功能。
<leader>d
<leader>
\
\d