• Stars
    star
    755
  • Rank 60,125 (Top 2 %)
  • Language
    Shell
  • License
    MIT License
  • Created over 10 years ago
  • Updated over 3 years ago

Reviews

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

Repository Details

standard pane key-bindings for tmux

Tmux Pain Control

Tmux plugin for controlling panes. Adds standard pane navigation bindings.

So far, you had to google around and comb other people's dotfiles to find these. This plugin hopefully makes them more available and "more standard".

Thanks to the Tmux community for "inventing" these bindings. I've merely just copied them here.

Tested and working on Linux, OSX and Cygwin.

Bindings

Notice most of the bindings emulate vim cursor movements.

pane navigation

Navigation

  • prefix + h and prefix + C-h
    select pane on the left
  • prefix + j and prefix + C-j
    select pane below the current one
  • prefix + k and prefix + C-k
    select pane above
  • prefix + l and prefix + C-l
    select pane on the right

Note: This overrides tmux's default binding for toggling between last active windows, prefix + l. tmux-sensible gives you a better binding for that, prefix + a (if your prefix is C-a).



pane resizing

Resizing panes

  • prefix + shift + h
    resize current pane 5 cells to the left
  • prefix + shift + j
    resize 5 cells in the down direction
  • prefix + shift + k
    resize 5 cells in the up direction
  • prefix + shift + l
    resize 5 cells to the right

These mappings are repeatable.

The amount of cells to resize can be configured with @pane_resize option. See configuration section for the details.



pane splitting

Splitting panes

  • prefix + |
    split the current pane into two, left and right.
  • prefix + -
    split the current pane into two, top and bottom.
  • prefix + \
    split current pane full width into two, left and right.
  • prefix + _
    split current pane full height into two, top and bottom.

Newly created pane always has the same path as the original pane.






Swapping windows

  • prefix + < - moves current window one position to the left
  • prefix + > - moves current window one position to the right

Installation with Tmux Plugin Manager (recommended)

Add plugin to the list of TPM plugins in .tmux.conf:

set -g @plugin 'tmux-plugins/tmux-pain-control'

Hit prefix + I to fetch the plugin and source it.

You should now have all pain-control bindings defined.

Manual Installation

Clone the repo:

$ git clone https://github.com/tmux-plugins/tmux-pain-control ~/clone/path

Add this line to the bottom of .tmux.conf:

run-shell ~/clone/path/pain_control.tmux

Reload TMUX environment:

# type this in terminal
$ tmux source-file ~/.tmux.conf

You should now have all pain-control bindings defined.

Configuration

You can set @pane_resize Tmux option to choose number of resize cells for the resize bindings. "5" is the default.

Example:

set-option -g @pane_resize "10"

Other plugins

You might also find these useful:

  • sessionist - lightweight tmux utils for switching and creating sessions
  • logging - easy logging and screen capturing

License

MIT

More Repositories

1

tpm

Tmux Plugin Manager
Shell
12,082
star
2

tmux-resurrect

Persists tmux environment across system restarts.
Shell
11,249
star
3

tmux-continuum

Continuous saving of tmux environment. Automatic restore when tmux is started. Automatic tmux start when computer is turned on.
Shell
3,263
star
4

tmux-yank

Tmux plugin for copying to system clipboard. Works on OSX, Linux and Cygwin.
Shell
2,682
star
5

tmux-sensible

basic tmux settings everyone can agree on
Shell
1,756
star
6

list

A list of tmux plugins.
1,201
star
7

tmux-copycat

A plugin that enhances tmux search
Shell
1,103
star
8

tmux-logging

Easy logging and screen capturing for Tmux.
Shell
1,034
star
9

tmux-open

Tmux key bindings for quick opening of a highlighted file or url
Shell
631
star
10

tmux-prefix-highlight

Plugin that highlights when you press tmux prefix key
Shell
571
star
11

tmux-sidebar

A sidebar with the directory tree for the current path. Tries to make tmux more IDE like.
Shell
536
star
12

tmux-battery

Plug and play battery percentage and icon indicator for Tmux.
Shell
499
star
13

tmux-cpu

Plug and play cpu percentage and icon indicator for Tmux.
Shell
433
star
14

tmux-sessionist

Lightweight tmux utils for manipulating sessions
Shell
412
star
15

vim-tmux-focus-events

Make terminal vim and tmux work better together.
Vim Script
348
star
16

vim-tmux

vim plugin for tmux.conf
Vim Script
333
star
17

tmux-fpp

Quickly open any path on your terminal window in your $EDITOR of choice!
Shell
308
star
18

tmux-urlview

Quickly open any url on your terminal window!
Shell
266
star
19

tmux-online-status

Tmux plugin that displays online status of your computer.
Shell
169
star
20

tmux-example-plugin

Example Tmux plugin that actually demonstrates how to build plugins for Tmux. The accompanying tutorial is here: https://github.com/tmux-plugins/tpm/blob/master/HOW_TO_PLUGIN.md
Shell
45
star
21

tmux-cowboy

Kill hanging processes fast
Shell
37
star
22

tmux-maildir-counter

Plugin that counts files on a specific mail directory
Shell
32
star
23

tmux-test

A small framework for isolated testing of tmux plugins.
Shell
16
star
24

language-tmux

Atom language support for Tmux config file
CoffeeScript
10
star
25

tmux-newsboat

Display newsboat counters in tmux status line.
Shell
10
star