vim-devicons
Adds file type icons to Vim plugins such as: NERDTree, vim-airline, CtrlP, unite, Denite, lightline, vim-startify and many more
A Vim and Neovim plugin that displays file-type icons next to filenames in file explorers, status bars, and other panels by mapping hundreds of file extensions to special characters in a patched Nerd Font.
vim-devicons is a plugin for the Vim and Neovim text editors that adds small icons next to file and folder names. When you open a file tree panel, a fuzzy file finder, a status bar, or a startup screen inside Vim, this plugin makes each entry show a tiny icon representing its file type, such as a Python file, a JSON file, a folder, or a hidden configuration file like .gitignore.
The icons are actually special characters from a patched font. To use the plugin, you first install a font from the Nerd Fonts project (or patch your own font) and configure your terminal or Vim to use it. Once the font is in place, the plugin maps hundreds of file extensions and known filenames to specific characters in that font, and those characters render as icons.
The plugin integrates with a long list of other Vim plugins: NERDTree (a file explorer), vim-airline and lightline (status bar plugins), CtrlP and Denite (file finders), vim-startify (a startup dashboard), and several others. You install it last after your other plugins so that it can attach its icon-rendering logic to the ones already loaded.
Configuration is done through Vim settings. You can change how icons look, add custom mappings for file types not already covered, and toggle specific features on or off. The plugin ships with a help file accessible via :help devicons.
The project is MIT licensed, maintained on GitHub, and accepts community contributions. The same author also maintains the Nerd Fonts repository, which is the font set this plugin depends on.
Where it fits
- Add file-type icons to your Vim or Neovim file explorer so you can instantly identify file types at a glance.
- Make your Vim status bar show icons alongside filenames by integrating with vim-airline or lightline.
- Add custom icon mappings for file extensions not already covered by the default set.
- Create a visually enhanced Vim startup screen with file icons using vim-startify.