Navigator.nvim
Navigator.nvim
provides set of functions and commands that allows you to seamlessly navigate between neovim and different terminal multiplexers.
🚀 Installation
Neovim
- With packer.nvim
use {
'numToStr/Navigator.nvim',
config = function()
require('Navigator').setup()
end
}
- With vim-plug
Plug 'numToStr/Navigator.nvim'
" Somewhere after plug#end()
lua require('Navigator').setup()
⚒️ Setup
Neovim
require('Navigator').setup()
- Keybindings
Note - This plugin doesn't provide any keybindings by default, feel free to use (and modify) the following or create your own keybindings.
vim.keymap.set({'n', 't'}, '<A-h>', '<CMD>NavigatorLeft<CR>')
vim.keymap.set({'n', 't'}, '<A-l>', '<CMD>NavigatorRight<CR>')
vim.keymap.set({'n', 't'}, '<A-k>', '<CMD>NavigatorUp<CR>')
vim.keymap.set({'n', 't'}, '<A-j>', '<CMD>NavigatorDown<CR>')
vim.keymap.set({'n', 't'}, '<A-p>', '<CMD>NavigatorPrevious<CR>')
Multiplexer(s)
Note - This plugin doesn't provide any configuration for multiplexers, feel free to use (and modify) the snippet for multiplexer of your choice by following the links below.
Configuration (optional)
Following options can be given when calling setup({config})
. Below is the default configuration
{
-- Save modified buffer(s) when moving to mux
-- nil - Don't save (default)
-- 'current' - Only save the current modified buffer
-- 'all' - Save all the buffers
auto_save = nil,
-- Disable navigation when the current mux pane is zoomed in
disable_on_zoom = false,
-- Multiplexer to use
-- 'auto' - Chooses mux based on priority (default)
-- table - Custom mux to use
mux = 'auto'
}
🔥 Usage
Commands
NavigatorLeft
- Go to left split/paneNavigatorRight
- Go to right split/paneNavigatorUp
- Go to upper split/paneNavigatorDown
- Go to down split/paneNavigatorPrevious
- Go to previous split/pane
Read
:h navigator.commands
for more info
Lua API
require('Navigator').left()
require('Navigator').right()
require('Navigator').up()
require('Navigator').down()
require('Navigator').previous()
Read
:h navigator.api
for more info
💐 Credits
- vim-tmux-navigator - Motivator and Vimscript cousin