Skip to content
📁 The dark powered file explorer implementation
Branch: master
Clone or download
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github Add ISSUE_TEMPLATE Jan 30, 2018
autoload Add -winrelative Jun 15, 2019
doc Add -winrelative Jun 15, 2019
plugin Add -bar Jun 12, 2019
rplugin/python3 Check exists in check_redraw Jul 16, 2019
test Use pynvim instead Jun 22, 2019
.gitignore Add mock tests Jun 10, 2018
.travis.yml Update for travis May 30, 2019
LICENSE Add base files Jan 30, 2018
Makefile Add defx/session source Jun 13, 2019 Update Screenshots Jun 24, 2019


Join the chat at

Defx is a dark powered plugin for Neovim/Vim to browse files. It replaces the deprecated vimfiler plugin.


  • Doesn't depend on denite.nvim

  • Vim8/neovim compatible(nvim-yarp is needed for Vim8)

  • Implemented by Python3

  • No double filer feature

  • Column feature

  • Source feature like denite.nvim

  • Options

  • Highlight is defined by column

  • Few commands (:Defx command only?)

  • Extended rename

  • Mark

  • Windows supporters are needed

  • Maximum features dislike other file managers


Note: defx requires Neovim 0.3.0+ or Vim8.1+ with Python3.6.1+. See requirements if you aren't sure whether you have this.

For vim-plug

if has('nvim')
  Plug 'Shougo/defx.nvim', { 'do': ':UpdateRemotePlugins' }
  Plug 'Shougo/defx.nvim'
  Plug 'roxma/nvim-yarp'
  Plug 'roxma/vim-hug-neovim-rpc'

For dein.vim

call dein#add('Shougo/defx.nvim')
if !has('nvim')
  call dein#add('roxma/nvim-yarp')
  call dein#add('roxma/vim-hug-neovim-rpc')

For manual installation(not recommended)

  1. Extract the files and put them in your Neovim or .vim directory (usually $XDG_CONFIG_HOME/nvim/).


defx requires Python3.6.1+ and Neovim(0.3.0+) or Vim8.1+ 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 plugin for Vim8.

Please install vim-hug-neovim-rpc plugin for Vim8.

Note: Python3 must be enabled before updating remote plugins

If Defx was installed prior to Python support being added to Neovim, :UpdateRemotePlugins should be executed manually.

Configuration Examples

" Todo


multi root feature Defx -split=vertical Defx -new Defx + neovim-qt custom icon custom icon2 custom icon3 custom icon4 Defx on kitty Defx in SpaceVim Variable column Denite action call Defx floating window

You can’t perform that action at this time.