Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

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

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Neovim
  3. aerial.nvim

aerial.nvim

MITLuav3.1.0

A Neovim plugin that provides a code outline window for quick navigation and skimming using LSP and Tree-sitter.

GitHubGitHub
2.3k stars116 forks0 contributors

What is aerial.nvim?

aerial.nvim is a Neovim plugin that displays a sidebar or floating window showing the structure of your code, including functions, classes, methods, and other symbols. It enables developers to quickly understand and navigate large codebases by providing a bird's-eye view of the current file.

Target Audience

Neovim users working with large or complex codebases across multiple languages who need efficient navigation and structural overviews. It's particularly useful for developers using LSP or Tree-sitter setups.

Value Proposition

Developers choose aerial.nvim for its multi-backend support (LSP, Tree-sitter, Markdown, AsciiDoc, man pages), flexible layout options, and deep integration with the Neovim ecosystem including Telescope, fzf, and Lualine. Its lightweight, fast, and highly configurable design prioritizes user customization.

Overview

Neovim plugin for a code outline window

Use Cases

Best For

  • Navigating large code files with many functions, classes, or methods
  • Getting a quick structural overview of unfamiliar codebases
  • Jumping between symbols in Neovim with keyboard shortcuts or mouse clicks
  • Integrating code outlines with popular Neovim plugins like Telescope, fzf-lua, or Lualine
  • Working with multiple file types including programming languages (via LSP/Tree-sitter) and documentation formats (Markdown, AsciiDoc, man pages)
  • Customizing symbol display with filtering, icons, and highlight groups for personalized workflows

Not Ideal For

  • Users on Neovim versions prior to 0.11 who need a stable, mainline-supported plugin without managing branches
  • Developers without a configured LSP client or Tree-sitter parsers seeking immediate, out-of-the-box symbol extraction
  • Teams wanting a simple, no-configuration sidebar outline with minimal setup overhead
  • Projects involving code files consistently exceeding 10,000 lines or 2MB in size, as aerial disables automatically beyond these limits

Pros & Cons

Pros

Multi-source Symbol Extraction

Leverages LSP, Tree-sitter, and documentation backends to provide comprehensive symbol coverage across over 50 languages and file types, as detailed in the supported treesitter list.

Deep Neovim Integration

Seamlessly works with popular plugins like Telescope for fuzzy finding and Lualine for status line updates, enhancing the overall editing experience with minimal friction.

Highly Customizable Interface

Offers extensive configuration options for window layout, highlighting, keymaps, and symbol filtering, allowing users to tailor the outline precisely to their workflow needs.

Efficient Navigation Features

Includes quick jump commands, tree folding sync, and autojump options that streamline moving through large codebases, with configurable post-jump actions for better visibility.

Cons

Steep Configuration Curve

The setup requires navigating a complex array of options and callbacks, which can be overwhelming for users who prefer a more straightforward, plug-and-play solution.

Dependency on External Tools

Functionality is contingent on having LSP clients or Tree-sitter parsers properly configured, adding an extra layer of setup before aerial can be fully operational.

Performance Guards Limiting Use

Automatic disabling on files larger than 10,000 lines or 2MB, as per the disable_max_lines and disable_max_size settings, can render it useless for very large files without configuration changes.

Frequently Asked Questions

Quick Stats

Stars2,269
Forks116
Contributors0
Open Issues68
Last commit1 month ago
CreatedSince 2020

Tags

#vimscript#plugin-manager#editor-tool#treesitter#productivity#neovim-plugin#symbols#nvim-plugin#neovim#nvim#lsp#navigation

Built With

N
Neovim
T
Tree-sitter
L
Lua

Included in

Neovim20.6k
Auto-fetched 1 day ago

Related Projects

nvim-lspconfignvim-lspconfig

Quickstart configs for Nvim LSP

Stars13,566
Forks2,447
Last commit3 days ago
lspsaga.nvimlspsaga.nvim

improve neovim lsp experience

Stars3,779
Forks302
Last commit3 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,226
Forks115
Last commit5 days ago
rustaceanvimrustaceanvim

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

Stars2,940
Forks133
Last commit1 day 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