• Stars
    star
    301
  • Rank 138,451 (Top 3 %)
  • Language
    Lua
  • License
    MIT License
  • Created over 3 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

✨ Smoothly navigate between neovim and terminal multiplexer(s) ✨

Navigator.nvim

Smoothly navigate between neovim and multiplexer(s)

Navigator

Navigator.nvim provides set of functions and commands that allows you to seamlessly navigate between neovim and different terminal multiplexers.

🚀 Installation

Neovim

use {
    'numToStr/Navigator.nvim',
    config = function()
        require('Navigator').setup()
    end
}
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'
}

Read: How to create and integrate custom multiplexer?

🔥 Usage

Commands

  • NavigatorLeft - Go to left split/pane
  • NavigatorRight - Go to right split/pane
  • NavigatorUp - Go to upper split/pane
  • NavigatorDown - Go to down split/pane
  • NavigatorPrevious - 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

More Repositories

1

Comment.nvim

🧠 💪 // Smart and powerful comment plugin for neovim. Supports treesitter, dot repeat, left-right/up-down motions, hooks, and more
Lua
2,434
star
2

FTerm.nvim

🔥 No-nonsense floating terminal plugin for neovim 🔥
Lua
605
star
3

dotfiles

🏡 /.dotfiles | Includes configs for neovim, tmux, zsh, alacrity, kitty, and more | Managed by GNU stow
Lua
274
star
4

lemmy-help

Every one needs help, so lemmy-help you! A CLI to generate vim/nvim help doc from emmylua
Rust
127
star
5

snm

🤏 Smol and simple node version manager written in rust 🦀
Rust
98
star
6

BufOnly.nvim

Lua/Neovim port of BufOnly.vim with some changes
Lua
31
star
7

zenv

Dotenv (.env) loader written in rust 🦀
Rust
28
star
8

Surround.nvim

[Alpha] Incoming successor to vim-surround
Lua
23
star
9

Sakura.nvim

Nice color scheme for neovim
Lua
21
star
10

prettierrc.nvim

Apply editor settings from prettier config
Lua
19
star
11

site

Personal portfolio and blog
JavaScript
18
star
12

random.ly

Real Time Chat App built with React, Redux, React Router, Node.js, Express, MongoDB and Socket.io
JavaScript
6
star
13

ky

🔑 ky - Simple and secure password manager
Rust
2
star
14

traefik-ecs-fargate

HCL
2
star
15

Buffers.nvim

Some useful functions to deal with buffers
Lua
1
star
16

react-image-uploader

Demo:
JavaScript
1
star
17

ender3v3ke_klipper

Klipper backup config for Ender 3 v3 KE
Python
1
star
18

dark-black-portfolio

Dark & Flat Design Portfolio
CSS
1
star
19

crafting-interpreters

Rust
1
star
20

dockerfiles

A collection of dockerfiles for different projects 😖
Dockerfile
1
star
21

listrrr

Issue and Project tracker build w/ GraphQl, Apollo & React 🔥. Wrapped with 🐋 Docker.
TypeScript
1
star
22

nodegen

A CLI tool for creating nodejs app 🚀
JavaScript
1
star
23

gruvbox-material

Fork of gruvbox-material
Vim Script
1
star
24

gotodo

A small todo backend built with golang, sqlite
Go
1
star