Tagbar is a plugin for Vim and Neovim that provides a structural overview of the file you are editing by leveraging tags (via tools like ctags). It opens a sidebar window that shows the tags of the current file, organised by scope—so functions, methods, classes and other symbols are grouped logically (for example, methods under their containing class). This gives you at-a-glance insight into the layout of large source files, which is especially useful for navigating unfamiliar codebases or when working on complex modules. The Tagbar sidebar also allows direct navigation: you can click on or jump to specific tags from the list, which makes it much faster to move between definitions than manually searching. Because it uses an external tags generation tool, the plugin can support many languages (C++, Java, Python, etc) with varying degrees of induction based on the tags file. Many users report that Tagbar significantly reduces the time they spend hunting for definitions.
Features
- Displays a sidebar pane listing tags (classes, functions, variables) of the current file
- Organizes tags by their scope (e.g., methods under classes) rather than flat lists
- Allows clicking or selecting tags to jump to corresponding definitions
- Supports multiple programming languages via ctags-generated tag files
- Automatically updates the tag list when the file changes or when requested
- Customizable appearance and keybindings for opening/closing the Tagbar window