LINUX.ORG.RU

Python, автодополнение с помощью Jedi работает не со всеми библиотеками

 ,


0

2

Для автодополнения Python в Vim использую YouCompleteMe (использует Jedi). Для некоторых библиотек (numpy, sys, subprocess) оно работает, а для других (PyQt4/5, networkx) — нет. Гугление выдало, что нужно настроить PYTHONPATH. Добавил туда dist-packages и site-packages, а также пути, сгенерированные PyCharmом для этого проекта.

PYTHONPATH="${PYTHONPATH}:/usr/local/lib/python2.7/site-packages/:/usr/local/lib/python2.7/dist-packages/:/usr/lib/python2.7/dist-packages/:/usr/local/lib/python3.4/dist-packages/:/usr/lib/python3/dist-packages/:/usr/lib/python3/dist-packages/PyQt5/:/usr/lib/python3/dist-packages/PyQt4/:/usr/lib/python3.4/plat-x86_64-linux-gnu/:/usr/lib/python3.4/lib-dynload/"
После этого заработало дополнение для matplotlib, но для PyQt и networkx оно по-прежнему не работает. Если кто-то знает, что нужно сделать — подскажите пожалуйста.

inb4: используй PyCharm

использую PySide, за networkx вообще хз что это. проблема в биндингах для родных сишных либ.

val-amart ★★★★★ ()

Похоже, я немного наврал. В YouCompleteMe дополнение для matplotlib (как и для networkx) работает без настройки, это в jedi-vim были проблемы.

После установки версий PyQt4 и PySide для второго Питона, они вполне себе дополняются, но если в PYTHONPATH подсунуть пути к версиям для третьего Питона, то из дополнений для PyQt4 будут только варианты uic, pyqtconfig и pyqtconfig_nd4, даже если дописать let jedi#force_py_version = 3 в .vimrc.

Пока что оставлю тему нерешённой, вдруг кто-то знающий, что я делаю не так, будет мимо проходить.

Ceiling_QB ★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.