A file explorer tree for neovim written in lua
Go to file
kiyan42 9eec60fcfc update readme
After testing nerdtree, it seems the window might be messed up
if the user is not careful
2020-02-21 00:05:33 +01:00
.github change screenshot 2020-02-20 21:56:22 +01:00
doc add better doc and add user ignore list 2020-02-20 23:19:16 +01:00
lua add better doc and add user ignore list 2020-02-20 23:19:16 +01:00
plugin add some options for the user and info in the readme 2020-02-20 21:16:13 +01:00
LICENSE init plugin 2020-02-04 19:59:14 +01:00
README.md update readme 2020-02-21 00:05:33 +01:00

A File Explorer For Neovim Written In Lua

Notice

  • I am working on this plugin to learn lua, neovim's api and create a file explorer with features i need.
  • This plugin does not work on windows.

Install

Install with vim-plug:

Plug 'kyazdani42/nvim-tree.lua'

Setup

let g:lua_tree_side = 'right' | 'left' "left by default
let g:lua_tree_size = 40 "30 by default
let g:lua_tree_ignore = [ '.git', 'node_modules', '.cache' ] "empty by default

nnoremap <C-n> :LuaTreeToggle<CR>
nnoremap <leader>n :LuaTreeRefresh<CR>

KeyBindings

  • move around like in any vim buffer
  • <CR> on .. will cd in the above directory
  • <C-[> will cd in the directory under the cursor
  • type a to add a file
  • type r to rename a file
  • type d to delete a file (will prompt for confirmation)
  • if the file is a directory, <CR> will open the directory
  • otherwise it will open the file in the buffer near the tree
  • if the file is a symlink, <CR> will follow the symlink
  • type <C-v> will open the file in a vertical split
  • type <C-x> will open the file in a horizontal split
  • Double left click acts like <CR>
  • Double right click acts like <C-[>

Features

  • Open file in current buffer or in split with FzF like bindings (CR, C-v, C-x)
  • File icons with vim-devicons
  • Syntax highlighting (exa like)
  • Change directory with C-[
  • Add / Rename / delete files
  • Git integration
  • Mouse support

Screenshot

alt text

TODO

  • use libuv functions instead of touch and mkdir in create_file() and allow file creation with path like foo/bar/baz
  • cd command to move faster accross the fs if needed
  • quickly find file in the directory structure
  • html docs