Difference between revisions of "Package:Tmux"

m (Removed use flags section, fixed formatting, removed HOWTO category)
 
Line 55: Line 55:
 
== Configuration ==
 
== Configuration ==
 
=== ~/.tmux.conf ===
 
=== ~/.tmux.conf ===
 +
Example tmux configuration shown below
 
<code>~/.tmux.conf</code> gets loaded on tmux startup.
 
<code>~/.tmux.conf</code> gets loaded on tmux startup.
 
{{file|name=~/.tmux.conf|lang=|desc=tmux configuration|body=
 
{{file|name=~/.tmux.conf|lang=|desc=tmux configuration|body=

Latest revision as of 10:48, January 25, 2015

app-misc/tmux


Source Repository:Gentoo Portage Tree
Homepage

Summary: Terminal multiplexer


News

Mgorny

CPU FLAGS X86

CPU_FLAGS_X86 are being introduced to group together USE flags managing CPU instruction sets.
31 January 2015 by Mgorny
Drobbins

Newsletter, Volume 1

Discussed: ati-drivers, GitHub integration, Funtoo on ARM, GNOME updates, Organizations, and two new devs.
27 January 2015 by Drobbins
Drobbins

New Media Mix-ins

Funtoo Linux now has new media mix-ins. Learn about them and how to use them.
11 January 2015 by Drobbins
View More News...

Tmux

Tip

This is a wiki page. To edit it, Create a Funtoo account. Then log in and then click here to edit this page. See our editing guidelines to becoming a wiki-editing pro.

Tmux is a terminal multiplexer (just as screen, which is generally installed by default on servers). It enables you to run multiple terminals in one. You can arrange them in multiple tabs that you can split into multiple panes as well.

Installation

# emerge -a tmux

Getting Started

To launch Tmux, run tmux in a terminal. This should clear your current terminal and display a status bar on the bottom. In this status bar, you should see something like "[0] 0:bash*". This means you are on session 0 ([0]), window 0 (0:) and you run "bash".

Tmux uses Ctrl+b as default prefix. This means that before issuing any command you will have to hit Ctrl+b to tell tmux you are asking it. For instance, type Ctrl+b and then %. This should split vertically the window to add a new pane. Now issue Ctrl+b ", this will split the new pane horizontally to create a new pane. You can switch against panes with Ctrl+b Left/Up/Right/Down (Left/Up/Right/Down being the arrow keys).

Another cool stuff is windows. Splitting your window into panes is good, but for readability purpose, you can't indefinitely split your window. So you can open a new window (which would behave more like a tab) by issuing Ctrl+b c. Your current window will be replaced by a brand new one. However you will notice that your status bar now looks like this "[0] 0:bash- 1:bash*". The minus symbol (-) means this is the last visited window. The asterisk symbol (*) means this is the current window. You can add panes to this window as well. To go back to the first window, issue Ctrl+b 0. Generally speaking, issue Ctrl+b <window-id> to go to the window <window-id>.

You can do much more with tmux, but this is the minimum to know if you want to quickly get started.

Keyboard Shortcuts

! Shortcut Description
C-b ? List all keybindings
C-b : Enter tmux command prompt
C-b d Detach session
C-b c Create window
C-b n Switch to next window
C-b p Switch to previous window
C-b l Switch to last window
C-b " Split current pane into top and bottom
C-b % Split current pane into left and right
C-b o Move to next pane
C-b ; Move to previous pane
C-b [ Enter copy/scroll mode (type q to leave this mode)

Configuration

~/.tmux.conf

Example tmux configuration shown below ~/.tmux.conf gets loaded on tmux startup.

~/.tmux.conf - tmux configuration
set -g base-index 1
set -g default-terminal "st-256color"
set -g history-limit 4096
set -g status-left ''
set -g status-right "#[bg=brightblack]#[fg=green] #T "
set -g status-style "bg=black"

setw -g pane-base-index 1
setw -g window-status-format "#[bg=magenta]#[fg=black] #I #[bg=brightblack]#[fg=green] #W "
setw -g window-status-current-format "#[bg=brightmagenta]#[fg=black] #I #[bg=green]#[fg=black] #W "

bind r source-file ~/.tmux.conf