tmux is a terminal multiplexer.
- Tested with tmux 1.5+.
- Support for tmux-mem-cpu-load.
- Prefix mapped to Ctrl-A for
screen
users.
New to tmux? The Tao of tmux is now available on Leanpub and Amazon Kindle. Read and browse the book for on the web.
Want more tmux? Check out the libtmux python library for controlling tmux, and load your code projects via YAML/JSON with tmuxp.
Have a tmux configuration you'd like to share? Whether a fork of this project, another's, or your own, submit it to awesome-tmux-configs.
Download:
git clone --recursive https://github.com/tony/tmux-config.git ~/.tmux
Copy tmux config to home:
ln -s ~/.tmux/.tmux.conf ~/.tmux.conf
Go to config dir:
cd ~/.tmux
Works on Linux and OS X.
Prep ourself to download submodule (if you forgot --recursive
when cloning):
git submodule init
Download submodule:
git submodule update
Change dir to tmux-mem-cpu-load:
cd ~/.tmux/vendor/tmux-mem-cpu-load
Make _build
directory and cd
into it:
mkdir _build; cd _build
General make file:
cmake ..
Compile binary:
make
Install our binary to /usr/local/bin/tmux-mem-cpu-load
:
sudo make install
(No need to do sudo
if on OS X / macOS)
Go home:
cd ~
Launch tmux:
tmux
And press Control + a
then d
to go back to the terminal.
Update config:
tmux source-file ~/.tmux.conf
(Cross platform, tested with python 2.7+)
Update March 19, 2014. Works with psutil 2.0 now.
Install psutil
:
sudo pip install psutil
Copy ~/.tmux/vendor/basic-cpu-and-memory.tmux
to bin:
sudo cp ~/.tmux/vendor/basic-cpu-and-memory.tmux /usr/local/bin/tmux-mem-cpu-load
make executable:
sudo chmod +x /usr/local/bin/tmux-mem-cpu-load
You can add suport for powerline by adding these to your
~/.tmux.conf
. Be sure to grab and install powerline-fonts
for your system.
See Powerline on ReadTheDocs.org for more info.
# pip install --user git+git:https://github.com/powerline/powerline
if-shell 'test -f ~/.local/lib/python2.7/site-packages/powerline/bindings/tmux/powerline.conf' 'source-file ~/.local/lib/python2.7/site-packages/powerline/bindings/tmux/powerline.conf'
# [sudo] pip install git+git:https://github.com/powerline/powerline
if-shell 'test -f /usr/local/lib/python2.7/site-packages/powerline/bindings/tmux/powerline.conf' 'source-file /usr/local/lib/python2.7/site-packages/powerline/bindings/tmux/powerline.conf'
# [sudo] pip install git+git:https://github.com/powerline/powerline
if-shell 'test -f /usr/local/lib/python2.7/dist-packages/powerline/bindings/tmux/powerline.conf' 'source-file /usr/local/lib/python2.7/dist-packages/powerline/bindings/tmux/powerline.conf'
# python 3.3 ?
if-shell 'test -f /usr/local/lib/python3.3/dist-packages/powerline/bindings/tmux/powerline.conf' 'source-file /usr/local/lib/python3.3/dist-packages/powerline/bindings/tmux/powerline.conf'
# python 3.4 ?
# if-shell 'test -f /usr/local/lib/python3.4/dist-packages/powerline/bindings/tmux/powerline.conf' 'source-file /usr/local/lib/python3.4/dist-packages/powerline/bindings/tmux/powerline.conf'
# python 3.5 ?
# if-shell 'test -f /usr/local/lib/python3.5/dist-packages/powerline/bindings/tmux/powerline.conf' 'source-file /usr/local/lib/python3.5/dist-packages/powerline/bindings/tmux/powerline.conf'
# python 3.6 ?
# if-shell 'test -f /usr/local/lib/python3.6/dist-packages/powerline/bindings/tmux/powerline.conf' 'source-file /usr/local/lib/python3.6/dist-packages/powerline/bindings/tmux/powerline.conf'
To start a session:
tmux
To reattach a previous session:
tmux attach
To reload config file
<Control + b>:
(which could Ctrl-B or Ctrl-A if you overidden it) then source-file ~/.tmux.conf
Our prefix/leader key is Control + a
now (just like the screen
multiplexer). This sequence must
be typed before any tmux shortcut.
Control + a
before any commandControl + a
then?
to bring up list of keyboard shortcutsControl + a
then"
to split windowControl + a
then<Space>
to change pane arrangementControl + a
theno
to rotate panesControl + a
thenh
,j
,k
,l
to move left, down, up, right. Respectively. (vim hjkl)Control + a
then;
to go to last panel
Beyond your first window:
Control + a
thenc
to create a new windowControl + a
thenn
to next windowControl + a
thenp
to previous windowControl + a
then[0-9]
move to window numberControl + a
then&
to kill window
Custom:
Control + a
thenm
to switch tomain-horizontal
layout with the main window at 2/3 height..Control + a
thenM
to switch tomain-vertical
layout with the main window at half width.
- Save / Load your tmux workspaces through JSON or YAML with tmuxp.
- Clone + Synchronize your git / hg / svn projects through JSON / YAML with vcspull.
- Modular, Lazy-loading vim configuration with support for C, C++, Python, Go and Javascript with tony/vim-config
- Modular dot-config example tony/.dot-config
- Github: https://www.github.com/tony
- Website: https://www.git-pull.com
- LICENSE: MIT
- Author: Tony Narlock ([email protected])