About tmux#
tmux adalah akronim dari Terminal Multiplexer, yang sebetulnya sudah sangat self-explanatory. tmux juga merupakan program berbasis CLI (command line interface) yang gratis, open source yang memungkinkan penggunanya untuk membuat, mengatur, dan menjaga sesi terminal dari satu layar terminal saja.1
Cara kerja tmux adalah dengan membuat arsitektur server-client. Artinya, ketika kita menjalankan tmux, tmux akan membuat background process sendiri sebagai server sehingga terminal kita akan terhubung ke tmux sebagai client. Karena server-nya berjalan secara independen, session tmux akan bertahan (akan tetap ada) meskipun kita menutup terminal kita (seperti kitty, alacritty, ghostty, dll) atau kehilangan koneksi SSH. Untuk terhubung kembali ke tmux, kita hanya perlu reconnect dan reattach.
Selain itu, di dalam tmux, ada 3 level hirarki: Session > Window > Pane. Sebuah sesi mengelompokkan satu atau lebih window, dan setiap window menempati seluruh layar terminal dan dapat di-split ke banyak pane. Setiap pane akan menjalankan proses shell-nya masing-masing.
Perhatikan ilustrasi berikut agar lebih mudah memahami ketiga level hirarti tmux tersebut:

tmux 3 level hierarchy. Created with: excalidraw.com
Dalam kenyataannya, nanti bentuk tmux adalah seperti ini [click image to enlage]:

tmux. Created with: excalidraw.com
Website dokumentasi resmi tmux: https://tmux.app/
Repository Github resmi tmux:
Installation#
Berikut adalah cara meng-install tmux di beberapa sistem operasi UNIX/Linux:
| Distro | Command |
|---|---|
| Debian/Ubuntu | sudo apt install -y tmux |
| Arch Linux | sudo pacman -Sy tmux |
| Fedora | sudo dnf install tmux |
| Opensuse | sudo zypper install tmux |
| FreeBSB | sudo pkg install tmux |
NixOS:
Masukkan baris berikut di file konfigurasi (/etc/nixos/configuration.nix):
environment.systemPackages = [
pkgs.tmux
];Atau jika menggunakan nix-shell:
nix-shell -p tmux Usage#
Berikut adalah cara menggunakan tmux.
Ctrl+b adalah tombol pemicu utama (prefix) di tmux.Quickstart#
Starting tmux#
Untuk menjalankan tmux, kita hanya perlu mengetikkan perintah:
tmuxMaka, tmux akan membuat sesi baru dengan default nama sesuai urutan angka. Jika kita pertama kali membuka tmux, maka tmux akan membuat sesi pertama dengan nama 0.
Kita dapat melihat sesi tmux yang aktif (berikut dengan jumlah window-nya) dengan perintah:
tmux ls

tmux new session
Atau jika kita ingin membuka tmux dengan nama sesi yang kita tentukan sendiri:
tmux new -s nama-sesi
tmux new session with custom session name
Atau misalnya kita ingin membuat sesi baru tmux, tanpa langsung memasukinya:
tmux new -d # untuk membuat sesi baru dengan nama default (menggunakan angka)
tmux new -s nama-sesi -d # untuk membuat sesi baru dengan nama custom
tmux new detached session
Splitting Window#
2 cara men-split window atau membuat panes di tmux: vertikal dan horizontal.
1. Split vertically
Berikut adalah keybinding untuk men-split window tmux secara vertikal.
Ctrl+b %
2. Split horizontally
Berikut adalah keybinding untuk men-split window tmux secara horizontal.
Ctrl+b "
Panes Navigation#
Cara berpindah antar panes:
Ctrl+b → # ke pane yang ada di kanan
Ctrl+b ← # ke pane yang ada di kiri
Ctrl+b ↑ # ke pane yang ada di atas
Ctrl+b ↓ # ke pane yang ada di bawahDetaching Session#
Ketika detach (keluar dari tmux), sesi tmux yang kita tinggalkan akan tetap ada.
Ctrl+b d
Listing Sessions#
Kita juga bisa melihat daftar tmux session yang aktif dengan perintah berikut:
tmux ls
tmux active sessions
Attaching Session#
Ketika sudah detach, dan kita ingin masuk lagi ke sesi tmux tertentu, gunakan perintah:
tmux attach -t nama-sesi
Renaming Session#
Kita juga bisa mengganti nama sesi tmux yang sudah kita buat sebelumnya:
tmux rename session -t nama-lama nama-baru
Deleting Session#
Untuk menghapus sesi tertentu:
tmux kill-session -t nama-sesi
Kill All#
Untuk menghapus semua sesi tmux:
tmux kill-server
tmux server / kill all tmux session
Extra#
Berikut adalah penggunaan tmux yang lebih lanjut (advanced).
Creating Window#
Di dalam tmux, kita dapat membuat window baru:
Ctrl+b cRenaming Window#
Kita juga bisa mengganti nama window di tmux:
Ctrl+b ,Window Chooser#
Jika kita punya banyak window dan ingin berpindah-pindah window, kita bisa memilihnya dengan perintah:
Ctrl+b w
Atau langsung dengan nomor identifikasi masing-masing window-nya:
Ctrl+b 0-9Panes Numbering#
Jika kita punya banyak panes, kita bisa melihat atau mengidentifikasi setiap pane dengan nomornya:
Ctrl+b q
Panes Resizing#
Kita juga bisa mengatur ukuran setiap pane secara manual:
Ctrl+b → # `Ctrl+b` sambil ditahan, untuk memperbesar pane ke kanan
Ctrl+b ← # `Ctrl+b` sambil ditahan, untuk memperbesar pane ke kiri
Ctrl+b ↑ # `Ctrl+b` sambil ditahan, untuk memperbesar pane ke atas
Ctrl+b ↓ # `Ctrl+b` sambil ditahan, untuk memperbesar pane ke bawahPane Zooming#
Terkadang, jika jumlah pane terlalu banyak, maka ukurannya akan semakin kecil. Kita dapat memperbesar (membuatnya jadi sebesar layar terminal) dengan perintah berikut:
Ctrl+b zUntuk mengembalikannya ke ukuran semula, kita dapat menggunakan perintah yang sama.
Panes Layouting#
Kita juga bisa mengganti-ganti layout pane:
Ctrl+b [Space]Copy Mode#
Kita bisa memasuki copy mode di tmux, dan ini adalah mode yang sangat bermanfaat bagi pengguna tmux, karena kita dapat melakukan banyak hal di mode ini, seperti scrolling, copy selection, paste, search, dan lain-lain.
Mengapa hal-hal tersebut (yang terdengar biasa aja) jadi spesial? Karena di tmux, pada dasarnya, kita tidak bisa melakukan semua itu kecuali jika kita masuk ke copy mode.
Untuk masuk ke copy mode:
Ctrl+b [Sekarang, kita dapat melakukan banyak hal berikut:
1. Navigasi / Scrolling
Kita bisa menggerakkan kursos di mode ini melalui tombol-tombol berikut di keyboard:
h # ke kiri
l # ke kanan
j # ke bawah
k # ke atasAtau bisa juga dengan tombol arrow di keyboard.
Jika kita ingin scrolling yang lebih cepat:
PgUp # scroll ke atas
PgDown # scroll ke bawah2. Selecting
Untuk mulai menyeleksi teks:
v3. Copying
Untuk meng-copy teks yang sudah terseleksi:
[Enter]4. Pasting
Untuk mem-paste teks yang sudah tercopy:
Ctrl+b ]5. Searching
Kita juga bisa mencari keyword tertentu yang ada di dalam pane pada mode ini:
/ # search forward
? # search backwardq di keyboard.Pop-up Window#
Kita juga bisa menampilkan pop-up window di tengah-tengah workflow tmux kita.2
Caranya, kita masuk ke mode perintah terlebih dahulu:
Ctrl+b :Kemudian masukkan baris berikut:
display-popup
tmux popup window
Config File#
File konfigurasi tmux biasanya ada di home folder (~/.tmux.conf).
Kita bisa isi dengan berbagai konfigurasi yang kita inginkan. Misalnya, berikut ini adalah isi file konfigurasi tmux saya:
# Mengubah warna latar belakang dan teks status bar
set -g status-bg green # Warna latar belakang status bar (gunakan kode warna atau nama warna)
set -g status-fg black # Warna teks di status bar
set -g status-style "bold"
#set -g status-right "%H:%M" # Hanya menampilkan waktu
set -g status-right "#(whoami)@#H | #(pwd) "
set-option -g pane-active-border-style "fg=blue" # Warna garis pembatas aktif
bind-key T display-popup -ENotes: Semua catatan tentang tmux dapat kalian explorasi lebih lanjut di:
Terima kasih sudah mampir.
Ada kritik dan saran untuk artikel ini atau web ini secara keseluruhan? Tinggalkan komentar di bawah ya!

