Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Neovim
  3. nvim-navbuddy

nvim-navbuddy

Apache-2.0Lua

A Neovim plugin that provides keyboard-centric breadcrumb navigation using LSP symbols in a popup display.

GitHubGitHub
883 stars37 forks0 contributors

What is nvim-navbuddy?

nvim-navbuddy is a Neovim plugin that displays a hierarchical popup of code symbols (like classes, functions, and variables) from the Language Server Protocol (LSP). It enables developers to navigate and understand code structure efficiently without leaving the keyboard, similar to a file manager's breadcrumb view.

Target Audience

Neovim users who work with LSP-enabled languages and want a keyboard-centric interface for exploring and navigating code structure.

Value Proposition

It provides a focused, minimalistic interface with vim-like keybindings inspired by the ranger file manager, offering interactive symbol actions and seamless integration with Neovim's LSP ecosystem for enhanced workflow efficiency.

Overview

A simple popup display that provides breadcrumbs feature using LSP server

Use Cases

Best For

  • Navigating complex codebases with hierarchical symbol trees using LSP data.
  • Keyboard-driven developers who prefer minimal mouse interaction for code exploration.
  • Performing quick symbol actions like renaming, yanking, commenting, or creating folds directly from a navigation popup.
  • Integrating fuzzy finding at the current navigation level via Telescope for rapid symbol searching.
  • Customizing the display of LSP symbols with configurable icons, borders, and window layouts to match user themes.
  • Automatically attaching to LSP servers or manually configuring them for specific buffers to maintain a streamlined setup.

Not Ideal For

  • Users on Neovim versions below 0.8.0 or those avoiding dependency-heavy setups with nvim-lspconfig, nvim-navic, and nui.nvim.
  • Developers working with languages that have poor or no LSP symbol support, as the plugin relies entirely on LSP data.
  • Teams preferring mouse-driven interfaces or graphical IDEs with built-in navigation panels, due to its keyboard-centric design.
  • Projects needing out-of-the-box functionality without Lua configuration, since setup requires manual LSP attachment or careful auto-attach settings.

Pros & Cons

Pros

LSP-Powered Accuracy

Uses Language Server Protocol to extract symbol hierarchies, ensuring accurate and language-agnostic code structure representation from supported LSP servers.

Keyboard-Centric Efficiency

Inspired by ranger file manager, it provides vim-like keybindings for all navigation and editing actions, minimizing mouse usage and enhancing workflow speed.

Interactive Symbol Actions

Supports actions like renaming, yanking, commenting, and creating folds directly from the popup, reducing context switches and improving productivity.

Customizable Display

Offers configurable window layout, borders, icons, and node markers, allowing users to seamlessly match their Neovim themes and personal preferences.

Telescope Integration

Includes a fuzzy finder at the current navigation level for quick symbol searching, leveraging the popular Telescope plugin for enhanced discoverability.

Cons

Dependency Heavy

Requires nvim-lspconfig, nvim-navic, and nui.nvim as core dependencies, adding setup overhead and potential for conflicts with other plugins.

Manual LSP Attachment

Auto-attach is disabled by default, necessitating manual configuration for each LSP server, which can be tedious in multi-language environments.

Project Migration Overhead

The project has moved to a new GitHub repository, indicating a change in maintenance that might lead to breaking changes or reduced support continuity.

Lua-Only Configuration

Setup and customization are done entirely in Lua, which may be less accessible for Vimscript purists or those new to Neovim's Lua API.

Frequently Asked Questions

Quick Stats

Stars883
Forks37
Contributors0
Open Issues21
Last commit1 year ago
CreatedSince 2023

Tags

#keyboard-centric#neovim-plugin#lsp-client#editor-enhancement#language-server-protocol#code-navigation#vim-like#neovim#lua#document-symbols#nvim#lsp

Built With

n
nui.nvim
N
Neovim
L
Lua

Included in

Neovim20.6k
Auto-fetched 7 hours ago

Related Projects

nvim-lspconfignvim-lspconfig

Quickstart configs for Nvim LSP

Stars13,587
Forks2,451
Last commit2 days ago
lspsaga.nvimlspsaga.nvim

improve neovim lsp experience

Stars3,779
Forks302
Last commit12 days ago
none-ls.nvimnone-ls.nvim

null-ls.nvim reloaded / Use Neovim as a language server to inject LSP diagnostics, code actions, and more via Lua.

Stars3,233
Forks118
Last commit4 days ago
rustaceanvimrustaceanvim

🦀 Supercharge your Rust experience in Neovim! A heavily modified fork of rust-tools.nvim

Stars2,955
Forks134
Last commit11 hours ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub