2015-07-05 4 views
0

Я могу TAB-заполнять текущие открытые переменные файла, пути & глобальные, но мои подклассы python не обнаруживаются при завершении TAB. Например,Подклассы Vim YouCompleteMe Python не обнаруживаются при завершении TAB в Arch Linux

import os   # os is built-in library. 
os.    # ycm does not complete members of this class. 

Было 48 часов, что я ищу решение. Мой/usr/bin/python -> /usr/bin/python2.7, все тесты проходят 100%, а сборка прошла успешно.

> uname -r 
4.0.5-1-ARCH 

Я попытался установить пакеты, специфичные для Arch Linux, из репозиториев, и они, похоже, не работают.

На данный момент я считаю, что мой лучший шанс - найти место, где путь python или переменная с этой целью задана в исходном пакете для Vundle, YouCompleteMe. Затем я должен проверить, что это правильно. Я открыт для всех возможных решений или соображений по этому вопросу.

> echo $PYTHONPATH 

/usr/lib/python2.7/ 

Благодарим вас за внимание!

+0

Вы пытались установить 'jedi', чтобы определить, является ли это проблемой' jedi' или 'YouCompleteMe'? YCM был написан с C/C++ в виду, его завершение python может быть недостаточно поддержано. Я помню, что у меня была такая же проблема более 2 лет назад, поэтому, если бы это было важно для разработчика или сообщества вокруг YCM, это было бы исправлено к настоящему времени. – cprn

+1

@CyprianGuerra http://stackoverflow.com/questions/31233669/jedi-vim-python-subclasses-are-not-detected-on-tab-completion-in-arch-linux – sevaivanov

ответ

0

YouCompleteMe полагается на Jedi-Vim для завершения python.

Я только что обнаружил, что это было связано с ошибкой непонимания, которую я описал для Jedi Vim here. Тем не менее, с YouCompleteMe штепсельных лишь несколько методов показывает на:

from os import getc 

Тогда я нажал Ctrl + Space и полный список доступных модулей отображалось.