Tmux là một chương trình cho phép bạn mở nhiều termial trong cùng 1 terminal, điều này giúp bạn quản lý và chuyển đổi rất dễ dàng giữa các terminal, ngoài ra Tmux còn cho phép bạn thêm hoặc bớt các termnial không giới hạn, giữ cho các chương trình chạy nền, khi cần bạn có thể khôi phục lại trong bất kỳ terminal nào.
Hôm nay mình sẽ hướng dẫn cơ bản cách cài đặt tmux, tmuxinator trên Mac OSX.

Yêu cầu cần có các phần mềm trước khi cài đặt:

  • Iterm 2 đã đăng nhập với Zsh
  • Hombrew

Bắt đầu cài đặt:

Cài tmux:

brew install tmux

Hệ thống sẽ tự động cài đặt phần mềm thêm depends là libevent 2.x.
Quá trình này hoàn toàn tự động, nếu có bất kỳ lỗi nào thì comment để mình update nhé!

Cài đặt tmuxinator

gem install tmuxinator

Vì đã login sẵn zsh nên không cần cấu hình source cho zsh nữa, chỉ việc dùng luôn thôi :D

Xem document tại đây

Fix lỗi copy & paste trên tmux

Anh em cần cài đặt reattach-to-user-namespace để kết nối tmux với dịch vụ clipboard trên OSX.

brew install reattach-to-user-namespace

Sau đó thêm vào  file .tmux.conf một số cấu hình như sau:

# Use vim keybindings in copy mode
setw -g mode-keys vi

# Setup 'v' to begin selection as in Vim
bind-key -t vi-copy v begin-selection
bind-key -t vi-copy y copy-pipe "reattach-to-user-namespace pbcopy"

# Update default binding of `Enter` to also use copy-pipe
unbind -t vi-copy Enter
bind-key -t vi-copy Enter copy-pipe "reattach-to-user-namespace pbcopy"
  • Lưy ý: Các thiết lập này làm cho việc copy & paste sẽ sử dụng phím lệnh giống như trên VIM.

Cách sử dụng tham khảo tại đây

Một vài bổ sung tiện ích khi sử dụng tmux

Tạo alias command cho các lênh cơ bản của tmux

# For creating a new session
tnew_session(){
    # To avoid 'unset $TMUX to force' error
    TMUX= tmux new-session -d -s $1
        tmux switch-client -t $1
}

# Aliases
alias tnews='tnew_session'
alias tls='tmux list-session'
alias tlw='tmux list-window'
alias tsw='tmux switch -t '
alias tlc='tmux list-command'
alias tat='tmux attach -t'
alias trs='tmux rename-session -t'


# Killing
alias tks='tmux kill-session -t'

Fix lỗi font chữ

Nếu ai cài đặt bị lỗi font chữ hiển thị không chuẩn như các hình ở trên thì bổ sung font chữ này nhé