Запуск VIM из Python virtulenv с использованием плагинов Python - PullRequest
0 голосов
/ 27 января 2019

Когда я запускаю VIM после активации Python virtulenv, плагины Python не могут найти свои модули, потому что они установлены в системе, а не в virtualenv проекта.

Я использую aw-watcher-vim плагин, который использует библиотеку Python.

Когда я создаю virtualenv и активирую его:

virtualenv -p python3 my_env
. my_env/bin/activate

VIM не может найти модуль на /usr/local/lib/python3.6/dist-packages/aw_core/, а такжевыводит следующие ошибки:

['Traceback (most recent call last):',
'  File "~/.dot-file-repo/neovim/plugged/aw-watcher-vim/plugin/vimwatcher.py", line 6 , in <module>',
'    from aw_core.log import setup_logging',
'ModuleNotFoundError: No module named ''aw_core''',
''] 

(слегка переформатирован для удобства чтения).

Было бы неплохо использовать автозаполнение с использованием кода из virtualenv (через джедая или около того), но пустьдругие плагины находят свои модули Python.Есть ли хорошее решение для этого варианта использования?

1 Ответ

0 голосов
/ 27 января 2019

В то время как некоторые комментарии предлагают импортировать глобально установленные пакеты в virtualenv, я бы предложил установить параметры в / vimrc для использования системного питона:

set pythondll=/usr/bin/python
set pythonthreedll=/usr/bin/python3

или любого другого системного питона.

Преимущество заключается в том, что ваши виртуальные envs не затрагиваются и используются в соответствии с вашими потребностями.

...