A Neovim plugin for code analysis and navigation using LSP and Treesitter, providing IDE-like features with visual interfaces.
Navigator is a Neovim plugin that enhances code navigation and analysis by integrating Language Server Protocol (LSP) and Treesitter. It provides a visual, floating-window interface for exploring symbols, diagnostics, references, and call hierarchies, turning Neovim into a full-featured development environment. It solves the problem of fragmented code navigation tools by unifying LSP's deep language analysis with Treesitter's fast AST-based symbol access.
Neovim users (version 0.9 or above, 0.10+ preferred) who want an integrated, visual IDE-like experience for code navigation and analysis without extensive configuration. It's particularly suited for developers working in mixed-language workspaces (e.g., Go, JavaScript, C++, Python).
Developers choose Navigator over alternatives because it uniquely combines LSP and Treesitter for faster, more intuitive code exploration, offers out-of-the-box setup with minimal configuration, and provides advanced visual features like real-time previews, sidebars, and a custom folding algorithm comparable to VS Code.
Code analysis & navigation plugin for Neovim. Navigate codes like a breeze🎐 Exploring LSP and 🌲Treesitter symbols a piece of 🍰 Take control like a boss 🦍
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Combines LSP for deep language analysis with Treesitter for fast AST-based symbol access, handling large files where LSP has size limits and providing context-aware analysis.
Offers floating windows and sidebars for browsing symbols, diagnostics, and references with real-time previews, making code exploration intuitive and IDE-like.
Uses async LSP requests and Treesitter analysis, often completing in under 4ms for 1,000 LOC, with FZY search for efficient fuzzy finding.
Requires minimal configuration, dynamically activating LSP for mixed-language workspaces and supporting around 20 common servers with around 10 lines in init.lua.
Provides a custom folding algorithm with Treesitter, supporting function blocks, comments, and syntax-highlighted folds, comparable to VS Code's experience.
Depends on guihua.lua which requires compilation (cd lua/fzy && make), and optional Treesitter, adding installation steps and potential compatibility issues.
Tied to Neovim 0.9+ with 0.10+ preferred, and the README lists known issues and break changes, requiring users to stay updated and possibly face instability.
Adding LSP servers not in the built-in list requires manual work or PRs, as the plugin primarily supports a fixed set of common servers, limiting flexibility.
Automatic LSP setup and keybindings may override existing configurations, requiring careful adjustment or disabling features to avoid clashes with other plugins.