wsdjeg/tabman.nvim

github github
split-and-window
stars 14
issues 1
subscribers 1
forks 1
CREATED

UPDATED


tabman.nvim

A lightweight tab and window manager for Neovim.

tabman.nvim provides an interactive view to navigate, inspect, and manage tabpages and the windows they contain.

GitHub License GitHub Issues or Pull Requests GitHub commit activity GitHub Release luarocks

tabman.nvim

Installation

Using nvim-plug:

require("plug").add({ {
    "wsdjeg/tabman.nvim",
} })

Usage

tabman.nvim provides the :Tabman command.

It opens an interactive tab manager window that shows all tabpages and the windows inside each tab.

Key bindings in the tab manager window:

Key binding Description
q Close the tab manager
o Toggle expand a tabpage
x Delete the tabpage
<Enter> Jump to the selected window

You can also open tabman from Lua, for example with a custom filter:

require('tabman').open({
  filter = function(win)
    local buf = vim.api.nvim_win_get_buf(win)
    return vim.api.nvim_get_option_value('buflisted', { buf = buf })
  end,
})

Picker tabman

tabman.nvim also provides a tabman source for picker.nvim.

You can open it with:

:Picker tabman

key bindings for picker mru extension:

Key Binding Description
<Enter> switch to select window

Example mapping:

vim.api.nvim_set_keymap(
  'n',
  '<leader>t',
  ':Picker tabman<CR>',
  { noremap = true, silent = true }
)

Credits

Self-Promotion

If you find this plugin useful, please consider starring it on GitHub.

You can also follow me at:

License

This project is licensed under the GPL-3.0 License.