Tmux
Bagi seorang programer atau sistem administrator jaringan di lingkungan Linux, maka terminal, script dan seabrek command sudah menjadi makanan sehari-hari. Bagi programmer, terminal biasa digunakan untuk mempermudah debug dan memonitor hasil compile, sedangkan bagi sistem administrator lebih banyak lagi, terutama remote pc untuk keperluan maintenance.Ada satu pertanyaan sederhana, untuk keperluan sehari-hari, cukupkan hanya dengan 1 terminal saja ? Hampir pasti jawabannya tidak. Anda pasti perlu membuka beberapa terminal atau 1 terminal saja dengan beberapa Tab.
Ada lagi, apa yang anda lakukan jika akan compile program dan harus membaca petunjuk compilenya (README, INSTALL, SETUP dll) yang sangat banyak ? Mungkin anda akan membuka 2 terminal atau 1 terminal dengan 2 tab, yang satu untuk menampilkan petunjuk compile yang satu lagi untuk proses compile. Jika anda menggunakan 2 tab, maka pasti akan cape pindah pindah tab, sedikit lebih baik menggunakan 2 terminal, paling paling hanya ribet memposisikan dan mengatur ukuran masing masing terminal.
Tmux adalah salah satu solusi dari hal di atas.
Tmux = Terminal Multiplexer. Dengan tmux, beberapa program dapat dijalankan secara berdampingan dalam 1 terminal. Tmux juga dapat di detach, artinya tmux tetap berjalan di background meskipun kita logout dari sistem. Sistem kerja ini sama dengan screen. Tmux sangat cocok untuk sistem administrator jaringan pada saat meremote PC dan perlu menjalankan beberapa program secara bersamaan.
Untuk install tmux :
sudo apt-get install tmuxSeteleh proses install selesai, ketik tmux di dalam terminal untuk menjalankannya. Berikut ini screenshot contoh tmux in action.
tmux in action |
Secara default, kombinasi tombol-tombol tmux beberapa di antaranya adalah sbb:
Ctrl b | Prefix tmux, artinya "awalan" kombinasi tombol untuk memberi perintah kepada tmux |
" | Split panel vertical, membagi panel/screen menjadi 2 bagian atas dan bawah |
% | Split panel horisontal, membagi panel/screen menjadi 2 bagian kiri dan kanan |
& | Menutup window |
x | Menutup panel |
d | Detach tmux, untuk attach kembali tmux, ketik : tmux attach-session |
Untuk mensplit panel/screen menjadi 2 atas bawah, maka yang harus anda lakukan adalah menekan tombol kombinasi Ctrl b lalu jeda/lepas kemudian tekan tombol " . Jangan menekan Ctrl b " tiga-tiganya secara bersamaan. Pasti akan ada kesulitan di awal awal penggunaan tmux, akan tetapi jangan menyerah. Coba latihlah terus.
Anda juga bisa memodifikasi tombol kombinasi agar sesuai dengan selera anda sendiri. Caranya adalah dengan menulis pada file .tmux.conf yang terletak pada home folder anda.
Berikut ini contoh file .tmux.conf
# Ubah prefix dari Ctrl b menjadi Ctrl a
unbind C-b
unbind l
set -g prefix C-a
unbind %
bind | split-window -h
bind - split-window -v
bind C-c list-command
bind C-x command-prompt "split-window -h 'exec %%'"
bind C-v command-prompt "split-window -v 'exec %%'"
set -g default-terminal "xterm"
set-option -g history-limit 100000
set-option -g mouse-select-pane off
setw -g mode-keys vi
bind-key -t vi-copy 'v' begin-selection
bind-key -t vi-copy 'y' copy-selection
# open a man page in new window
bind / command-prompt "split-window 'exec man %%'"
setw -g set-clipboard off
set-option -g pane-active-border-fg cyan
set-option -g pane-active-border-bg default
set-window-option -g mode-mouse off
set-window-option -g window-status-current-bg red
setw -g automatic-rename
setw -g monitor-activity on
# THEME
set -g status-bg black
set -g status-fg colour255
set -g status-interval 60
set -g status-left-length 30
set -g status-left '#[fg=colour170](#S) #(whoami)@#H#[default]'
set -g status-right '#[fg=cyan]%Y-%m-%d %H:%M#[default]'
unbind l
set -g prefix C-a
unbind %
bind | split-window -h
bind - split-window -v
bind C-c list-command
bind C-x command-prompt "split-window -h 'exec %%'"
bind C-v command-prompt "split-window -v 'exec %%'"
set -g default-terminal "xterm"
set-option -g history-limit 100000
set-option -g mouse-select-pane off
setw -g mode-keys vi
bind-key -t vi-copy 'v' begin-selection
bind-key -t vi-copy 'y' copy-selection
# open a man page in new window
bind / command-prompt "split-window 'exec man %%'"
setw -g set-clipboard off
set-option -g pane-active-border-fg cyan
set-option -g pane-active-border-bg default
set-window-option -g mode-mouse off
set-window-option -g window-status-current-bg red
setw -g automatic-rename
setw -g monitor-activity on
# THEME
set -g status-bg black
set -g status-fg colour255
set -g status-interval 60
set -g status-left-length 30
set -g status-left '#[fg=colour170](#S) #(whoami)@#H#[default]'
set -g status-right '#[fg=cyan]%Y-%m-%d %H:%M#[default]'
Guake
Guake adalah terminal emulator yang jika dijalankan/summon akan muncul dari atas ke bawah. Guake ini akan muncul di setiap worksheet.Berikut ini contoh screenshot nya (Guake + tmux).
Guake + tmux |
Akan tetapi dengan multi worksheet itu, akan sedikit ribet jika anda juga harus menggunakan terminal. Anda harus mengingat ingat ada di worksheet manakah terminal yang terbuka, atau bisa-bisa di setiap worksheet terdapat terminal yang terbuka. Ini tentu kurang elegan. Jadi Guake adalah salah satu solusi jitu untuk mengatasi keperluan terminal yang dapat diakses di semua worksheet.
Untuk install guake : sudo apt-get install guake
Kesimpulan.
Guake + tmux begitu anda terbiasa, maka pasti akan menambah produktivitas anda dalam bekerja.
Selamat mencoba.
Update :
Di bawah ini adalah video demo nya :
Update :
Di bawah ini adalah video demo nya :