Я использую YouCompleteMe (YCM) с vim.Я установил такой плагин, как указано в Обмен стеками Vi Vim .Я не использую виртуальную среду.
Когда курсор находится после точки после объектов sympy Symbol YCM предлагает дополнения, как если бы они были строками.Когда после numy массивов, YCM ничего не делает.Но это YCM завершает очень хорошие модули и локально определенные классы.
Я установил let g:ycm_log_level = 'debug'
и ищу вывод в stderr демона YCM.Я получил такой файл, выполнив ps ax | grep ycm
, который имел следующий вывод:
ycmd --port=34669 --options_file=/tmp/tmp1iwpcvte --log=debug --idle_suicide_seconds=1800 --stdout=/tmp/ycmd_34669_stdout_hetlorin.log --stderr=/tmp/ycmd_34669_stderr_pqjo1who.log
В таких файлах появились следующие строки после запроса завершения после numpy массива var
2019-01-02 21:23:22,403 - INFO - Received event notification
2019-01-02 21:23:22,404 - DEBUG - Event name: CurrentIdentifierFinished
2019-01-02 21:23:22,407 - INFO - Received completion request
2019-01-02 21:23:22,408 - DEBUG - Using filetype completion: True
2019-01-02 21:23:22,409 - DEBUG - diff parser start
2019-01-02 21:23:22,409 - DEBUG - diff parser calculated
2019-01-02 21:23:22,409 - DEBUG - diff: line_lengths old: 28, new: 28
2019-01-02 21:23:22,409 - DEBUG - diff code[equal] old[1:26] new[1:26]
2019-01-02 21:23:22,410 - DEBUG - diff actually copy 1 to 25
2019-01-02 21:23:22,410 - DEBUG - parse_part from 26 to 27 (to 27 in part parser)
2019-01-02 21:23:22,410 - DEBUG - diff code[replace] old[27:27] new[27:27]
2019-01-02 21:23:22,410 - DEBUG - diff code[equal] old[28:28] new[28:28]
2019-01-02 21:23:22,410 - DEBUG - diff parser end
2019-01-02 21:23:23,197 - INFO - Received completion request
2019-01-02 21:23:23,197 - DEBUG - Using filetype completion: True
Иследующие строки после запроса завершения после массива var
2019-01-02 21:16:01,902 - INFO - Received completion request
2019-01-02 21:16:01,903 - DEBUG - Using filetype completion: True
Я понятия не имею, что это может быть.У кого-нибудь есть идея?