Need help with deoplete.nvim?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

5.7K Stars 307 Forks Other 2.0K Commits 1 Opened issues


:stars: Dark powered asynchronous completion framework for neovim/Vim8

Services available


Need anything else?

Contributors list


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.

Join the chat at Doc

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

by default.

Here are some completion sources specifically made for deoplete.nvim.


Note: deoplete requires Neovim (0.3.0+ and of course, latest is recommended) or Vim8.1 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.

Note: If you really need to use older msgpack, please use deoplete ver.5.2 instead.

For vim-plug

if has('nvim')
  Plug 'Shougo/deoplete.nvim', { 'do': ':UpdateRemotePlugins' }
  Plug 'Shougo/deoplete.nvim'
  Plug 'roxma/nvim-yarp'
  Plug 'roxma/vim-hug-neovim-rpc'
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')
let g:deoplete#enable_at_startup = 1

For manual installation(not recommended)

  1. Extract the files and put them in your Neovim or .vim directory (usually

  2. Write

    call deoplete#enable()
    let g:deoplete#enable_at_startup = 1
    in your


deoplete requires Neovim or Vim8 with



:echo has("python3")
, 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,

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.


" Use deoplete.
let g:deoplete#enable_at_startup = 1


:help deoplete-options
for a complete list of options.


Deoplete for JavaScript

File Name Completion

Omni Completion

Neosnippets and neco-ghc integration

deoplete + echodoc integration

deoplete + deoplete-go integration

deoplete + deoplete-typescript integration

Python completion using deoplete-jedi

C++ completion using clang_complete

Java completion using vim-javacomplete2

Vim Script completion using neco-vim

C# completion using deoplete-omnisharp

Register/Extract list completions

FSharp completion using deopletefs



Css, scss, sass


My custom snippets

C++ with cquery lang server

Rust using rls

Ruby dictionary completion

LanguageClient-neovim integration

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.