Skip to content

wsdjeg/tabman.nvim

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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.

About

A lightweight tab and window manager for Neovim.

Topics

Resources

License

Stars

Watchers

Forks

Sponsor this project

Contributors

Languages