deoplete.nvim
Dark powered asynchronous completion framework for neovim/Vim8
Note: The development of this plugin is finished. Accepts minor patches and issues but no new features. ddc.vim is the next generation auto completion plugin. Consider migrating to it.
Please read help for details.
Note: If you need to understand what's different between deoplete and other similar plugins, please read "deoplete-faq" section in the documentation.
Deoplete is the abbreviation of "dark powered neo-completion". It provides an extensible and asynchronous completion framework for neovim/Vim8.
deoplete will display completions via complete()
by default.
Here are some completion sources specifically made for deoplete.nvim.
Install
Note: deoplete requires Neovim (0.3.0+ and of course, latest is recommended) or Vim8.2.1978+ with Python 3.6.1+ and timers enabled. See requirements if you aren't sure whether you have this.
Note: deoplete requires msgpack package 1.0.0+. Please install/upgrade msgpack package by pip. https://github.com/msgpack/msgpack-python
Note: If you really need to use older msgpack, please use deoplete ver.5.2 instead.
https://github.com/Shougo/deoplete.nvim/releases/tag/5.2
For vim-plug
if has('nvim')
Plug 'Shougo/deoplete.nvim', { 'do': ':UpdateRemotePlugins' }
else
Plug 'Shougo/deoplete.nvim'
Plug 'roxma/nvim-yarp'
Plug 'roxma/vim-hug-neovim-rpc'
endif
let g:deoplete#enable_at_startup = 1
For dein.vim
call dein#add('Shougo/deoplete.nvim')
if !has('nvim')
call dein#add('roxma/nvim-yarp')
call dein#add('roxma/vim-hug-neovim-rpc')
endif
let g:deoplete#enable_at_startup = 1
Vim >= 8 built-in package manager (not recommended)
-
Clone the repo in a package (e.g.
$XDG_CONFIG_HOME/nvim/pack/dist/start
, wheredist
is the name of the package) -
Write
call deoplete#enable()
orlet g:deoplete#enable_at_startup = 1
in yourinit.vim
-
Inside NeoVim, call
:UpdateRemotePlugins
Requirements
deoplete requires Neovim or Vim8 with if_python3
.
If :echo has("python3")
returns 1
, then you have python 3 support;
otherwise, see below.
You can enable Python3 interface with pip:
pip3 install --user pynvim
Please install nvim-yarp and vim-hug-neovim-rpc for Vim8.
Note: Python3 must be enabled before updating remote plugins
If Deoplete was installed prior to Python support being added to Neovim,
:UpdateRemotePlugins
should be executed manually in order to enable
auto-completion.
Note: deoplete needs pynvim ver.0.3.0+.
You need update pynvim module.
pip3 install --user --upgrade pynvim
If you want to read the Neovim-python/python3 interface install documentation,
you should read :help provider-python
and the Wiki.
https://github.com/deoplete-plugins/deoplete-jedi/wiki/Setting-up-Python-for-Neovim
Configuration
" Use deoplete.
let g:deoplete#enable_at_startup = 1
See :help deoplete-options
for a complete list of options.
Screenshots
Deoplete for JavaScript https://www.youtube.com/watch?v=oanoPTpiSF4