Tmux (Terminal Multiplexer) adalah tool CLI yang memungkinkan Anda menjalankan dan mengelola beberapa sesi terminal dalam satu jendela terminal. Tool ini sangat berguna untuk meningkatkan produktivitas, terutama saat bekerja dengan server remote atau menangani banyak task sekaligus.
Dalam panduan ini, kita akan menginstal dan mengonfigurasi Tmux agar dapat menyalin teks yang dipilih ke system clipboard.
Install #
Berikut cara instalasi tmux sesuai OS yang digunakan.
Linux DEB
apt -y install tmux xclipLinux RPM
dnf -y install tmux xclipMacOS
brew install tmuxConfigure #
Buat file .tmux.conf pada HOME direktori.
nano ~/.tmux.confSelanjutnya tambahkan konfigurasi sesuai OS yang digunakan.
Linux
set -g mouse on
set -g history-limit 40000
bind -n WheelUpPane if-shell -F -t = "#{mouse_any_flag}" "send-keys -M" "if -Ft= '#{pane_in_mode}' 'send-keys -M' 'select-pane -t=; copy-mode -e; send-keys -M'"
bind -n WheelDownPane select-pane -t= \; send-keys -M
bind -n C-WheelUpPane select-pane -t= \; copy-mode -e \; send-keys -M
bind -T copy-mode-vi C-WheelUpPane send-keys -X halfpage-up
bind -T copy-mode-vi C-WheelDownPane send-keys -X halfpage-down
bind -T copy-mode-emacs C-WheelUpPane send-keys -X halfpage-up
bind -T copy-mode-emacs C-WheelDownPane send-keys -X halfpage-down
# To copy, left click and drag to highlight text in yellow,
# once you release left click yellow text will disappear and will automatically be available in clibboard
# # Use vim keybindings in copy mode
setw -g mode-keys vi
# Update default binding of `Enter` to also use copy-pipe
unbind -T copy-mode-vi Enter
bind-key -T copy-mode-vi Enter send-keys -X copy-pipe-and-cancel "xclip -sel clip"
bind-key -T copy-mode-vi MouseDragEnd1Pane send-keys -X copy-pipe-and-cancel "xclip -sel clip"
# color
set -g pane-border-style fg=red
set -g pane-active-border-style fg=red
# term
set -g default-terminal "xterm-256color"
bind-key -n Home send Escape "OH"
bind-key -n End send Escape "OF"
# status bar
set -g status-left ''
set -g status-right-length 0
# Ensure window index numbers get reordered on delete.
set-option -g renumber-windows on
# Start windows and panes index at 1, not 0.
set -g base-index 1
setw -g pane-base-index 1MacOS
set -g mouse on
set -g history-limit 40000
bind -n WheelUpPane if-shell -F -t = "#{mouse_any_flag}" "send-keys -M" "if -Ft= '#{pane_in_mode}' 'send-keys -M' 'select-pane -t=; copy-mode -e; send-keys -M'"
bind -n WheelDownPane select-pane -t= \; send-keys -M
bind -n C-WheelUpPane select-pane -t= \; copy-mode -e \; send-keys -M
bind -T copy-mode-vi C-WheelUpPane send-keys -X halfpage-up
bind -T copy-mode-vi C-WheelDownPane send-keys -X halfpage-down
bind -T copy-mode-emacs C-WheelUpPane send-keys -X halfpage-up
bind -T copy-mode-emacs C-WheelDownPane send-keys -X halfpage-down
# To copy, left click and drag to highlight text in yellow,
# once you release left click yellow text will disappear and will automatically be available in clibboard
# # Use vim keybindings in copy mode
setw -g mode-keys vi
# Update default binding of `Enter` to also use copy-pipe
unbind -T copy-mode-vi Enter
bind-key -T copy-mode-vi Enter send-keys -X copy-pipe-and-cancel "pbcopy"
bind-key -T copy-mode-vi MouseDragEnd1Pane send-keys -X copy-pipe-and-cancel "pbcopy"
# color
set -g pane-border-style fg=red
set -g pane-active-border-style fg=red
# term
set -g default-terminal "xterm-256color"
bind-key -n Home send Escape "OH"
bind-key -n End send Escape "OF"
# status bar
set -g status-left ''
set -g status-right-length 0
# Ensure window index numbers get reordered on delete.
set-option -g renumber-windows on
# Start windows and panes index at 1, not 0.
set -g base-index 1
setw -g pane-base-index 1Simpan konfigurasi, dan Tmux siap digunakan.
Referensi: