You don't need 'vim-rooter' (usually) or How to set up smart autochange of current directory

This page summarizes the projects mentioned and recommended in the original post on reddit.com/r/neovim

Our great sponsors
  • SonarQube - Static code analysis for 29 languages.
  • InfluxDB - Access the most powerful time series database as a service
  • SaaSHub - Software Alternatives and Reviews
  • vim-rooter

    Changes Vim working directory to project root.

    The airblade/vim-rooter plugin is an essential part of my Neovim workflow. It automatically changes current directory (:h current-directory) for every buffer to a more natural one (like to path of its Git repository). For me this has the following benefits:

  • mini.nvim

    Library of 20+ independent Lua modules improving overall Neovim (version 0.7 and higher) experience with minimal effort

    Initially I planned to make a separate 'mini.root' module, but realized that it would mostly be a reimplementation of vim.fs. So instead I decided to add setup_auto_root() function to mini.misc. If you want a more tested and documented solution, check it out and tell me what you think. Thanks!

  • SonarQube

    Static code analysis for 29 languages.. Your projects are multi-language. So is SonarQube analysis. Find Bugs, Vulnerabilities, Security Hotspots, and Code Smells so you can release quality code every time. Get started analyzing your projects today for free.

  • NeoRoot.lua

    Yet another light-weight rooter written in Lua

    Firstly, I respect your sharing here, but I still discourage people(especially newcomers) from using this kind of plugin/script to auto-changing "current directory". (So yes, I myself discourage people from using my own root plugin NeoRoot.lua anymore, and I've decided to execute my plan to abandon it recently.)

  • suave.lua

    Multi-tabs project session automation

    There are indeed three levels of Vim's "current directory", I made a summary during my development of the not well-known multi-tab project session automation plugin: https://github.com/nyngwang/suave.lua/issues/1. In short: it is not that simple.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts