LunarVim VS nerdtree

Compare LunarVim vs nerdtree and see what are their differences.


An IDE layer for Neovim with sane defaults. Completely free and community driven. (by LunarVim)


A tree explorer plugin for vim. (by preservim)
Our great sponsors
  • Scout APM - Less time debugging, more time building
  • SonarLint - Deliver Cleaner and Safer Code - Right in Your IDE of Choice!
  • SaaSHub - Software Alternatives and Reviews
LunarVim nerdtree
122 40
8,731 17,089
7.5% 1.4%
9.8 3.5
1 day ago about 1 month ago
Lua Vim Script
GNU General Public License v3.0 only Do What The F*ck You Want To Public License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.


Posts with mentions or reviews of LunarVim. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-05-17.
  • Is neovim good for webdevelopment?
    7 projects | | 17 May 2022
    I do web dev in nvim since 3 years. I rarely have any problems and never one I could not solve with some googling around/asking on discords for help. If you are like me and enjoy the keyboard-focused workflow of nvim but don't feel like nerding out with your own config, I very much recommend trying out one of the ready made distributions. Since half a year I use and I am quite happy, but there are others as well, ( comes to my mind.
  • Help: Remove Which-Key Binding
    1 project | | 12 May 2022
    I'm trying to map Lazygit to just g and the submenu of git commands to G. The list of default bindings ( doesn't include the Lazygit command. I'm guessing it somehow gets injected into the menu elsewhere. This means that I can't remap g because it will still enter the submenu with lazygit as its only entry. How can I prevent this behaviour?
  • I gave up
    5 projects | | 7 May 2022
    If you don't want to spend time configuring VIM, try some pre-configured vim/nvim distributions. I loved space-vim back in the day. There is a project called lunar-vim which is nvim configuration, there is astro-vim which is based on lunarvim but with some more simplifications.
  • How to best migrate my config to LunarVim's?
    3 projects | | 5 May 2022
    I'm having trouble setting up LSP-related stuff using null-ls and lsp-installer. For example, setting up new language servers for new languages, having multiple language servers attached to the same buffer, auto-formatting wouldn't work etc. Then I found out LunarVim. I really like LunarVim's feature that "LSP just works". However, how do I add my stuff onto LunarVim's config?
  • Recommendations for an IDE layer like LunarVim?
    8 projects | | 5 May 2022
  • Emacs for Professionals
    11 projects | | 3 May 2022
    Yeah, but when everything lives inside the same Lisp environment, there is no need for glue. You have variables and functions, all with built in documentation, that are easily composed.

    Vim, on the other hand, appears to conspire against the user's attempts to build reusable configurations. One plugin may require Neovim. Another may require the Python runtime to be configured and installed. Vanishingly few of them have built in keybinds, and those that do are not guaranteed to be harmonious with other plugins. And besides, should I write my config in vimscript or Lua?

    It might sound like I'm picking nits, but I don't find it coincidental that the best configurations that people have managed to build have been upon the strong bones that Emacs provides. Doom Emacs ( is best-in-class, providing harmony between all of the built in modules and their bindings. I uncomment a line in a config file and get full Python support, with refactoring and formatting and such, ootb. This ends up being true for a shockingly long list of languages and tools.

    On the Vim side you have which appears to no longer be accepting new plugins and which appears to provide a really good programming experience but is limited in scope to a handful of core plugins and whichever LSP servers they can get their hands on.

    I used to use Neovim and compose everything together by hand as well. I don't see why I should bother today when Doom Emacs provides the same experience I would have built for myself, out of the box.

  • How do we get RStudio to adopt Julia language support?
    2 projects | | 27 Apr 2022
    Have you tried LunarVim? It is quite easy to make it work wonderfully with Julia, there is even a page in their docs to help people with setting up Julia.
  • Best setup for Remote Development? (CLion? VSCode? Vim? SSHFS?)
    2 projects | | 24 Apr 2022
    I would suggest using NeoVim or LunarVim instead of primitive VIM.
  • What is your text editor / IDE of choice?
    4 projects | | 23 Apr 2022 or are pretty complete and organized enough to make modifying it much less daunting than starting from scratch.
  • Configuring eslint and prettier in LunarVim 🌙. Bonus: Tailwindcss 🌊
    1 project | | 17 Apr 2022
    Congratulations, you decided to move your web-dev activities to neovim. Specifically LunarVim. Great choice!


Posts with mentions or reviews of nerdtree. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-05-09.
  • Config file doesn't seem to apply changes, why?
    3 projects | | 9 May 2022
    set number set autoindent set shiftwidth=2 set softtabstop=2 set expandtab set termguicolors set buftype="" call plug#begin() Plug '' Plug '' Plug '', {'branch': 'release'} call plug#end() nnoremap :NERDTreeFocus nnoremap :NERDTree nnoremap :NERDTreeToggle
  • Officially one year on Rust
    2 projects | | 5 May 2022
    u/Thick-Pineapple666 was correct as well.. it doubles as an elden ring reference as well as a nod to Nerdtree which I use extensively which you could also see in the screenshot on the README :]
  • Permanent fixed File Explorer in Neovim
    7 projects | | 5 Apr 2022
    NERDTree the venerable,
  • Just installed coc for nvim, trying to get setup for c++ and having 'UnhandledRejection' error
    2 projects | | 29 Mar 2022
    call plug#begin() " Make sure you use single quotes " Shorthand notation; fetches Plug 'junegunn/vim-easy-align' " Nerdtree directory Plug '' " CoC text completion Plug 'neoclide/coc.nvim', {'branch': 'release'} " Initialize plugin system call plug#end() " Set internal encoding of vim, not needed on neovim, since coc.nvim using some " unicode characters in the file autoload/float.vim set encoding=utf-8 " TextEdit might fail if hidden is not set. set hidden " Some servers have issues with backup files, see #649. set nobackup set nowritebackup " Give more space for displaying messages. set cmdheight=2 " Having longer updatetime (default is 4000 ms = 4 s) leads to noticeable " delays and poor user experience. set updatetime=300 " Don't pass messages to |ins-completion-menu|. set shortmess+=c " Always show the signcolumn, otherwise it would shift the text each time " diagnostics appear/become resolved. if has("nvim-0.5.0") || has("patch-8.1.1564") " Recently vim can merge signcolumn and number column into one set signcolumn=number else set signcolumn=yes endif " Use tab for trigger completion with characters ahead and navigate. " NOTE: Use command ':verbose imap ' to make sure tab is not mapped by " other plugin before putting this into your config. inoremap \ pumvisible() ? "\" : \ check_back_space() ? "\" : \ coc#refresh() inoremap pumvisible() ? "\" : "\" function! s:check_back_space() abort let col = col('.') - 1 return !col || getline('.')[col - 1] =~# '\s' endfunction " Use to trigger completion. if has('nvim') inoremap coc#refresh() else inoremap coc#refresh() endif " Make auto-select the first completion item and notify coc.nvim to " format on enter, could be remapped by other vim plugin inoremap pumvisible() ? coc#_select_confirm() \: "\u\\=coc#on_enter()\" " Use `[g` and `]g` to navigate diagnostics " Use `:CocDiagnostics` to get all diagnostics of current buffer in location list. nmap [g (coc-diagnostic-prev) nmap ]g (coc-diagnostic-next) " GoTo code navigation. nmap gd (coc-definition) nmap gy (coc-type-definition) nmap gi (coc-implementation) nmap gr (coc-references) " Use K to show documentation in preview window. nnoremap K :call show_documentation() function! s:show_documentation() if (index(['vim','help'], &filetype) >= 0) execute 'h '.expand('') elseif (coc#rpc#ready()) call CocActionAsync('doHover') else execute '!' . &keywordprg . " " . expand('') endif endfunction " Highlight the symbol and its references when holding the cursor. " autocmd CursorHold * silent call CocActionAsync('highlight') " Symbol renaming. nmap rn (coc-rename) " Formatting selected code. xmap f (coc-format-selected) nmap f (coc-format-selected) augroup mygroup autocmd! " Setup formatexpr specified filetype(s). autocmd FileType typescript,json setl formatexpr=CocAction('formatSelected') " Update signature help on jump placeholder. autocmd User CocJumpPlaceholder call CocActionAsync('showSignatureHelp') augroup end " Applying codeAction to the selected region. " Example: `aap` for current paragraph xmap a (coc-codeaction-selected) nmap a (coc-codeaction-selected) " Remap keys for applying codeAction to the current buffer. nmap ac (coc-codeaction) " Apply AutoFix to problem on the current line. nmap qf (coc-fix-current) " Run the Code Lens action on the current line. nmap cl (coc-codelens-action) " Map function and class text objects " NOTE: Requires 'textDocument.documentSymbol' support from the language server. xmap if (coc-funcobj-i) omap if (coc-funcobj-i) xmap af (coc-funcobj-a) omap af (coc-funcobj-a) xmap ic (coc-classobj-i) omap ic (coc-classobj-i) xmap ac (coc-classobj-a) omap ac (coc-classobj-a) " Remap and for scroll float windows/popups. if has('nvim-0.4.0') || has('patch-8.2.0750') nnoremap coc#float#has_scroll() ? coc#float#scroll(1) : "\" nnoremap coc#float#has_scroll() ? coc#float#scroll(0) : "\" inoremap coc#float#has_scroll() ? "\=coc#float#scroll(1)\" : "\" inoremap coc#float#has_scroll() ? "\=coc#float#scroll(0)\" : "\" vnoremap coc#float#has_scroll() ? coc#float#scroll(1) : "\" vnoremap coc#float#has_scroll() ? coc#float#scroll(0) : "\" endif " Use CTRL-S for selections ranges. " Requires 'textDocument/selectionRange' support of language server. nmap (coc-range-select) xmap (coc-range-select) " Add `:Format` command to format current buffer. command! -nargs=0 Format :call CocActionAsync('format') " Add `:Fold` command to fold current buffer. command! -nargs=? Fold :call CocAction('fold', ) " Add `:OR` command for organize imports of the current buffer. command! -nargs=0 OR :call CocActionAsync('runCommand', 'editor.action.organizeImport') " Add (Neo)Vim's native statusline support. " NOTE: Please see `:h coc-status` for integrations with external plugins that " provide custom statusline: lightline.vim, vim-airline. set statusline^=%{coc#status()}%{get(b:,'coc_current_function','')} " Mappings for CoCList " Show all diagnostics. nnoremap a :CocList diagnostics " Manage extensions. nnoremap e :CocList extensions " Show commands. nnoremap c :CocList commands " Find symbol of current document. nnoremap o :CocList outline " Search workspace symbols. nnoremap s :CocList -I symbols " Do default action for next item. nnoremap j :CocNext " Do default action for previous item. nnoremap k :CocPrev " Resume latest coc list. nnoremap p :CocListResume
  • is it worth it for a junior developer to learn vim?
    6 projects | | 22 Mar 2022
    - Nerdtree (Old but classic side panel directory navigation) - FZF (Modern Fuzy Finder)
  • How to set up VIM for PHP development
    8 projects | | 14 Feb 2022
    Vim comes with a default file browser while it's good enough for some, I have been using NERDTree for a while now, keep in my this issue if you decide to use it though.
  • Starting Vim vanilla or configurated?
    2 projects | | 26 Jan 2022
    NERDtree is indispensable IMO.
  • How to Configure Vim as Your Main Python IDE
    4 projects | | 16 Jan 2022
    NERDTree is on the lookout for a new maintainer. See issue #1280 to submit your name for consideration.
  • vim-devicons won't display on Windows Terminal with WSL2.
    11 projects | | 4 Jan 2022
    :set number :set relativenumber :set autoindent :set tabstop=2 :set shiftwidth=2 :set smarttab :set softtabstop=2 :set mouse=a :set guifont=Fira\ Code\ 11 call plug#begin() Plug '' " Surrounding ysw) Plug '' " NerdTree Plug '' " For Commenting gcc & gc Plug '' " Status bar Plug '' " CSS Color Preview Plug '' " Retro Scheme Plug '' " Auto Completion Plug '' " Developer Icons Plug '' " Vim Terminal Plug '' " Tagbar for code navigation Plug '' " CTRL + N for multiple cursors Plug '' " Auto braces & bracket closing set encoding=UTF-8 call plug#end() nnoremap :NERDTreeFocus nnoremap :NERDTree nnoremap :NERDTreeToggle nmap :TagbarToggle :set completeopt-=preview " For No Previews set termguicolors :colorscheme onehalfdark " Setting Neovim color theme let g:NERDTreeDirArrowExpandable="+" let g:NERDTreeDirArrowCollapsible="~" " air-line let g:airline_powerline_fonts = 1 let g:airline_theme='onehalfdark'
  • How do I get into the vim world.
    9 projects | | 20 Dec 2021
    Set vim as your default text editor, that could give you additional motivation :) regarding plugins, it really depends of what you use now, but there are still some great general-use plugins: ctrl + p nerdtree git blame ack to beggin with

What are some alternatives?

When comparing LunarVim and nerdtree you can also consider the following projects:

nvim-tree.lua - A file explorer tree for neovim written in lua

SpaceVim - A community-driven modular vim/neovim distribution - The ultimate vimrc

NvChad - An attempt to make neovim cli functional like an IDE while being very beautiful, blazing fast startuptime ~ 20ms to 70ms

NvChad - An attempt to make neovim cli as functional as an IDE while being very beautiful , blazing fast. [Moved to:]

vscode-neovim - Vim-mode for Visual Studio Code using embedded Neovim

nvim-dap - Debug Adapter Protocol client implementation for Neovim

vim-vinegar - vinegar.vim: Combine with netrw to create a delicious salad dressing

awesome-neovim - Collections of awesome neovim plugins.

coc.nvim - Nodejs extension host for vim & neovim, load extensions like VSCode and host language servers.

flutter-tools.nvim - Tools to help create flutter apps in neovim using the native lsp

which-key.nvim - 💥 Create key bindings that stick. WhichKey is a lua plugin for Neovim 0.5 that displays a popup with possible keybindings of the command you started typing.

fzf.vim - fzf :heart: vim