Note: you may need some patched font for icons. In a Debian-based distribution you can install the following packages:
- ttf-ancient-fonts-symbola
- fonts-powerline
In Windows, one of the pre-patched nerd-fonts is recommended.
This plugin tries to give you full control on the tabline:
- three tabline modes: tabs, buffers, arglist
- buffer filtering on the base of the CWD (also local)
- you can rename tabs and/or buffers, and assign them icons
Also:
- tab CWD/name is shown in the right corner of the tabline
- commands to quickly set/change (tab/window) working directory
- reopen closed tabs
- clean up buffers across all tabs
- session management and tabs bookmarks
The tabline can be rendered in three different modes:
tabs | tab name, CWD, or buffer name |
buffers | up to a max of N (default 10) recent buffers |
arglist | buffers contained in the arglist |
In tabs-mode, the tabline will show the numbered tabs. This looks a lot like vim default tabline, but the CWD is shown in the top-right corner.
In buffer-mode, the tabline will show a filtered list of buffers that belong to the tab's CWD, or any open buffer inside the window. By default, only the 10 most recently accessed buffers are displayed.
In arglist-mode, the tabline will show the files defined in the arglist. You
can switch file with the usual commands (:next
, etc).
These modes can be cycled with a mapping (F5 by default). You can also define which modes to cycle with a setting.
Buffers and tabs can be renamed, and also given a custom icon.
Use vim-plug or any other Vim plugin manager.
With vim-plug:
Plug 'mg979/vim-xtabline'
If you want to use the session management feature, you must install the GNU
core utilities, because its implementation requires the GNU version of the
stat
and date
commands. The corresponding GNU commands are gstat
and
gdate
. Install them with:
brew install coreutils
:help xtabline.txt
Some quick tips, assuming you are using default mappings:
F5 | change tabline mode |
N BS | go to N tab (in tabs mode) or N buffer (in buffers mode) |
[b/]b | go to count next/previous buffer |
cdw/cdl/cdt | set working directory (tab/local) |
cd? | show tab informations (cwd, git dir, tag files) |
\x? | a list of all mappings |
Some details may vary, depending on color schemes and plugin version. Here used with default bufferline formatter, and with empty formatter:
Bram Moolenaar for Vim
Aristotle Pagaltzis for Buftabline
Giacomo Comitti for Taboo
MIT