deoplete / jedi не выбирает виртуальную среду Python для автозаполнения - PullRequest
0 голосов
/ 16 декабря 2018

Я использую neovim v0.3.2-953 для разработки на Python со следующими плагинами.

Plug 'Shougo/deoplete.nvim',
Plug 'zchee/deoplete-jedi',
Plug 'davidhalter/jedi-vim'

Автоматическое завершение deoplete не работает ни для одной библиотеки в моем виртуальном окружении и показывает завершение для модулейустановлен только в системном Python.

Внутри nvim я распечатал двоичный файл python, который использовал nvim, и он действительно был только из моего виртуального env.Ниже показано, как мои настройки конфигурации deoplete выглядят как

let g:python_host_prog  = '/usr/bin/python2.7'
let g:python3_host_prog = '/usr/bin/python3'

Я установил neovim пакет python для python2 и python3, поэтому привязки python работают нормально, когда я использую системный python, нов виртуальной среде автоматическое завершение не работает.

Первоначально я думал, что это может быть связано с тем, что пакет neovim python не установлен в виртуальной среде, поэтому я также установил пакет neovim, но все-таки он сделалне работает.

Ниже приведены полные шаги, через которые я прохожу

1. Created the virtual env and installed neovim python package in it (though i have separate virtual envs for neovim dedicated for python2 and python3 )
2. Activate the virtual env and launch neovim
3. Open a python file and test if the autocompletion works for modules in virtual env

Так может кто-нибудь, пожалуйста, подскажите мне, если я что-то здесь упускаю

1 Ответ

0 голосов
/ 29 декабря 2018

Ниже приведены параметры моей конфигурации deoplete:
let g: python_host_prog = '/usr/bin/python2.7'
let g: python3_host_prog =' / usr / bin / python3 '

Ваш конфиг установлен на системный интерпретатор.Для использования виртуального env, установите его, как я упоминал ниже.

Если вы используете virtualenv, рекомендуется создавать среды специально для Neovim.Таким образом, вам не нужно будет устанавливать пакет neovim в каждом virtualenv.Создав их, добавьте в файл init.vim следующее: let g:python_host_prog = '/full/path/to/neovim2/bin/python' let g:python3_host_prog = '/full/path/to/neovim3/bin/python'

Для Deoplete требуется только Python 3. Для получения дополнительной информации см. :h nvim-python-quickstart.

Также попробуйте добавить их вВаш init.vim для правильного автозаполнения: let g:deoplete#enable_at_startup=1 let g:deoplete#auto_complete=1

...