Плагин YouCompleteMe vim с clangd Completer не работает

Следуя официальному руководству, я установил YouCompleteMe, включая семантическую поддержку с clangd Completer. Сделал все в точности так, как сказано в руководстве (начиная с клонирования проекта в .vim / bundle и выполнения подмодуля git init).

Для флагов clangd я нашел .ycm_extra_conf.py в каталоге ~ / .vim / bundle / YouCompleteMe / third_party / ycmd / .ycm_extra_conf.py

Мой полный файл .vimrc выглядит так:

set number
syntax on
filetype plugin indent on
set tabstop=4
set shiftwidth=4
expandtab

" YouCompleteMe settings
let g:ycm_clangd_binary_path="/usr/bin/clangd"
let g:ycm_global_ycm_extra_conf="/home/me/.vim/bundle/YouCompleteMe/third_party/ycmd/.ycm_extra_conf.py"
set runtimepath+=~/.vim/bundle/YouCompleteMe/plugin/youcompleteme.vim

Затем я создал файл test.cpp в своем домашнем каталоге и попытался ввести код, но автозаполнение YouCompleteMe не работает. Я не вижу никаких предложений.

РЕДАКТИРОВАТЬ: Моя версия clangd - 9.0.1

РЕДАКТИРОВАТЬ 2: Добавлен путь к файлу .vim плагина в .vimrc. Все еще не работает.


person kovac    schedule 22.03.2020    source источник
comment
YouCompleteMe вообще загружен?   -  person Mateen Ulhaq    schedule 22.03.2020
comment
@MateenUlhaq Удален файл :. Такое ощущение, что YouCompleteMe не загружается. Что мне нужно сделать, чтобы его загрузить?   -  person kovac    schedule 22.03.2020
comment
Так же, как и любой другой плагин. Зависит от того, как вы устанавливаете плагин. Вы используете диспетчер плагинов, например vim-plug?   -  person Mateen Ulhaq    schedule 22.03.2020
comment
@MateenUlhaq Нет, я установил это вручную с помощью cmake.   -  person kovac    schedule 22.03.2020
comment
Хммм ... Я лично не использую YCM, поэтому не уверен. Вы можете получить более точные ответы на vi.stackexchange.com (вы можете пометить этот вопрос для перехода модератору) или в системе отслеживания проблем YCM.   -  person Mateen Ulhaq    schedule 22.03.2020
comment
Спасибо за совет. Я пометил его для переноса.   -  person kovac    schedule 22.03.2020


Ответы (1)


Итак, проблема была в том, что мне нужен set runtimepath+=~/.vim/bundle/YouCompleteMe/ вместо set runtimepath+=~/.vim/bundle/YouCompleteMe/plugin/youcompleteme.vim, и эта строка должна быть перед строкой filetype plugin indent on.

person kovac    schedule 22.03.2020