Завершение джедая предполагает, что переменные были строкой
Я использую YouCompleteMe (YCM) с vim. Я установил такой плагин, как указано в разделе обмена стеками Vi Vim. Я не использую виртуальную среду.
Когда курсор находится после точки после симпли объектов, 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
Я понятия не имею, что это может быть. У кого-нибудь есть идея?