A Neovim plugin that adds customizable indentation guides using virtual text without conceal.
Indent Blankline is a Neovim plugin that adds visual indentation guides to code editors, helping developers quickly understand code structure and nesting levels. It solves the problem of losing track of indentation in deeply nested code by providing clear, customizable visual cues without disrupting syntax highlighting.
Neovim users who work with codebases requiring clear visual indentation, such as those writing Python, Lua, JavaScript, or other indentation-sensitive languages, and developers who value customizable editor aesthetics.
Developers choose Indent Blankline for its lightweight implementation using Neovim's virtual text, avoiding conceal issues, and its deep integration with Tree-sitter for scope-based highlighting, offering more than basic indentation guides.
Indent guides for Neovim
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Leverages Neovim's built-in virtual text to display guides without interfering with syntax highlighting or conceal mechanics, ensuring compatibility and performance.
Integrates with Tree-sitter to visualize variable and function scope boundaries, offering deeper code structure insights beyond basic indentation levels.
Supports multiple indent colors, background guides, and integration with plugins like rainbow-delimiters.nvim, allowing for highly personalized visual themes.
Clearly displays files with mixed tabs and spaces, aiding in consistency checks and making indentation errors immediately visible.
Requires the latest stable version of Neovim, excluding users on older versions or long-term support releases, as stated in the README.
Scope highlighting only works if Tree-sitter is properly configured, adding an extra layer of setup complexity and potential points of failure.
Achieving effects like rainbow indentation necessitates manual creation of highlight groups and hooks, which can be daunting for users unfamiliar with Neovim's Lua API.