Our great sponsors
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
vifm
Vifm is a file manager with curses interface, which provides Vim-like environment for managing objects within file systems, extended with some useful ideas from mutt.
-
buffer-tree-explorer
A simple vim-plugin for rendering your open buffers into an interactive ascii-tree to allow for easy navigation / management.
-
fm-nvim
🗂 Neovim plugin that lets you use your favorite terminal file managers (and fuzzy finders) from within Neovim.
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
For navigating back to recent opened files I am using harpoon which is particually good at the current task you are working on, and mru for history files across a few days. There are lots of other plugins provides mru functions. I like this one because it is just based on a file so I can edit the file to remove items I don't want and do whatevery vim trick I know in the MRU buffer.
Whenever I need a file browser I use https://github.com/nvim-telescope/telescope-file-browser.nvim (mapped to fb), but I most often use ff which is mapped to telescope find_file.
IMO a tree navigator is still helpful especially to gain a high level overview of the repo structure so that you know where to put new files. However in a complex repo you'll have a large tree and most of the nodes are irrelevant to the current task. Very often I need to work on a different aspect than the original organisation of the folder structure, I found the files relevant to the task spread in different folders and the irrelevant nodes made it very hard to obtain the full picture visually. I am using Neotree at the moment because it supports using the current opened buffers or git status as source. I also use buffer-tree-explorer if the opened buffers are not limited to a single repo.
netrw was part of my workflow for a while, but it had some weird bugginess just frequently enough to make me go looking for an alternative. I found lir.nvim and I've been liking it so far, especially because of how minimal and customizable it is.
Netrw, vim’s built in file explorer is pretty solid if you’re looking to understand the topology of a project. I really like the pattern of browsing the file tree in the window pane where the file will open. vim vinegar is a great plugin for refining the netrw experience and making it a little more seamless. Takes a minute to learn the keybindings, but I find it much lighter and less intrusive than nerd tree or it’s offshoots.
Limitations: - Cursor shape doesn't change in a nested nvim. issue - Tab name is always "bash", but I'm sure there's a way to let processes change it
Full NixOS config: https://github.com/willmcpherson2/willos
So these days I just use https://github.com/mcchrish/nnn.vim
I'm using vifm as my daily file manager, so I added it to neovim and I'm very happy with it! :)
IMO a tree navigator is still helpful especially to gain a high level overview of the repo structure so that you know where to put new files. However in a complex repo you'll have a large tree and most of the nodes are irrelevant to the current task. Very often I need to work on a different aspect than the original organisation of the folder structure, I found the files relevant to the task spread in different folders and the irrelevant nodes made it very hard to obtain the full picture visually. I am using Neotree at the moment because it supports using the current opened buffers or git status as source. I also use buffer-tree-explorer if the opened buffers are not limited to a single repo.
For "neighbour" files of the current buffer I normally use :NeoTreeReveal if the file is in the main repo. (the current pwd). If not I'll use fm-nvim with ranger. I can use the Ranger %:p:h command to open the folder of the current folder in ranger without changing the pwd in vim.
For "neighbour" files of the current buffer I normally use :NeoTreeReveal if the file is in the main repo. (the current pwd). If not I'll use fm-nvim with ranger. I can use the Ranger %:p:h command to open the folder of the current folder in ranger without changing the pwd in vim.
For navigating back to recent opened files I am using harpoon which is particually good at the current task you are working on, and mru for history files across a few days. There are lots of other plugins provides mru functions. I like this one because it is just based on a file so I can edit the file to remove items I don't want and do whatevery vim trick I know in the MRU buffer.