jedi-vim 和 YouCompleteMe 有冲突吗?
Does jedi-vim conflict with YouCompleteMe?
YouCompleteMe (YCM) 和 jedi-vim 是两个提供自动完成功能的 vim 插件,并且都在 Python 下面使用了 jedi。然而,两者兼有是件好事,因为 jedi-vim 除了文档之外还提供了一些有用的功能,例如 'go to definition' 和 'view docstring',而 YouCompleteMe 可以使用其他语言。
既然都提供了Python自动完成功能,是否需要特殊配置来防止这两个插件冲突?或者 jedi-vim 的自动完成器会简单地覆盖 Python 中的 YCM 吗?
最明显的冲突是不知道你是用 YCM 还是 Jedi 来自动补全。在这种情况下,最简单的做法是使用 .vimrc
中的一行禁用 Jedi 的自动完成功能,并在任何地方使用 YCM 的强大功能(Jedi 支持 Python)自动完成功能。
let g:jedi#completions_enabled = 0
按键映射还不错。两个插件都映射 <leader>d
(其中 <leader>
默认为 \
)但没关系,Jedi 将仅在 Python 文件和特定的 YCM 中覆盖 \d
Python.
不支持该功能
YouCompleteMe (YCM) 和 jedi-vim 是两个提供自动完成功能的 vim 插件,并且都在 Python 下面使用了 jedi。然而,两者兼有是件好事,因为 jedi-vim 除了文档之外还提供了一些有用的功能,例如 'go to definition' 和 'view docstring',而 YouCompleteMe 可以使用其他语言。
既然都提供了Python自动完成功能,是否需要特殊配置来防止这两个插件冲突?或者 jedi-vim 的自动完成器会简单地覆盖 Python 中的 YCM 吗?
最明显的冲突是不知道你是用 YCM 还是 Jedi 来自动补全。在这种情况下,最简单的做法是使用 .vimrc
中的一行禁用 Jedi 的自动完成功能,并在任何地方使用 YCM 的强大功能(Jedi 支持 Python)自动完成功能。
let g:jedi#completions_enabled = 0
按键映射还不错。两个插件都映射 <leader>d
(其中 <leader>
默认为 \
)但没关系,Jedi 将仅在 Python 文件和特定的 YCM 中覆盖 \d
Python.