Le 1er octobre 2023, on m’a demandé pourquoi j’utilisais neo-tree.nvim plutôt que nvim-tree.lua.

En été 2022, je pense avoir choisi neo-tree.nvim après avoir lu ce commentaire :

After adding soo many “nvim-tree does it” enhancements, I think it has all the features that nvim-tree has at this point, plus some more that nvim-tree doesn’t have. (from)


Sur le GitHub officiel le neo-tree.nvim, je lis :

Why?

There are many tree plugins for (neo)vim, so why make another one? Well, I wanted something that was:

  1. Easy to maintain and enhance.
  2. Stable.
  3. Easy to customize.

Easy to maintain and enhance

This plugin is designed to grow and be flexible. This is accomplished by making the code as decoupled and functional as possible. Hopefully new contributors will find it easy to work with.

One big difference between this plugin and the ones that came before it, which is also what finally pushed me over the edge into making a new plugin, is that we now have libraries to build upon that did not exist when other tree plugins were created. Most notably, nui.nvim and plenary.nvm. Building upon shared libraries will go a long way in making neo-tree easy to maintain.

En lisant ces paragraphes, je pense comprendre que neo-tree.nvim a été créé après et en s’inspirant de nvim-tree.lua. Je suppose qu’il est plus moderne 🤔.


En 2022 une discussion a eu lieu pour merger les plugins neo-tree.nvim et nvim-tree.lua, les échanges entre les auteurs étaient chaleureux et constructif. Après beaucoup d’hésitation, la fusion ne s’est pas faite.


Le créateur de neo-tree.nvim explique dans une issue nvim-tree.lua pourquoi il a créé neo-tree.nvim.


L’auteur de nvim-tree.lua dit :

neo-tree as you said is more modular, leaning towards power users. (from)


Je lis ici :

NvimTree is faster (if performance matters to you…)

et ici

I’ve used nvim-tree for years and switched to neo-tree a while ago to try it out. At first I thought the buffers and git feature are cool, but then I barely used them, because I already have lazygit and telescope for that. Also neo-tree is considerably slower and was quite buggy for me. So I switched back to nvim-tree, honestly think it’s just better.


Après avoir comparé la documentation de neo-tree.nvim avec celle de nvim-tree.lua, je constate :

  • Les deux plugins supportent un mode “netrw or vinegar”.
  • Les deux plugins supportent un mode “floating window”.
  • neo-tree.nvim propose une fonctionnalité de fuzzy_finder que je n’ai pas trouvée dans nvim-tree.lua.
  • J’ai une petite préférence pour les choix de key mapping de neo-tree.nvim mais c’est un avis subjectif, sans doute basé sur mon habitude.

En conclusion, je pense qu’il n’y pas d’argument frappant en faveur de l’un de ces deux plugins.


Tous les tags présents dans la note :