tmux
新人プログラマ応援

tmuxの初期設定とよく使うコマンド。インストールから設定まで。

自分用tmuxメモ

よく忘れるんでメモっときます。

tmuxとは

いわずもがなのtmux。説明は割愛。
http://kanjuku-tomato.blogspot.jp/2014/02/tmux.html

tmux インストール

% brew install tmux

tpm インストール

$ git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm

設定ファイル

.tmux.conf
# prefixキーをC-tに変更する(好み)
set -g prefix C-t

# C-bのキーバインドを解除する
unbind C-b

# キーストロークのディレイを減らす
set -sg escape-time 0

# ウィンドウのインデックスを1から始める
set -g base-index 1

# ペインのインデックスを1から始める
setw -g pane-base-index 1

# 設定ファイルをリロードする
#bind r source-file ~/.tmux.conf \; display "Reloaded!"

# C-a*2でtmux内のプログラムにC-aを送る
bind C-t send-prefix

# | でペインを縦に分割する
bind | split-window -h

# - でペインを横に分割する
bind - split-window -v

# Vimのキーバインドでペインを移動する
bind h select-pane -L
bind j select-pane -D
bind k select-pane -U
bind l select-pane -R
bind -r C-h select-window -t :-
bind -r C-l select-window -t :+

# Vimのキーバインドでペインをリサイズする
bind -r H resize-pane -L 5
bind -r J resize-pane -D 5
bind -r K resize-pane -U 5
bind -r L resize-pane -R 5

# 256色端末を使用する
set -g default-terminal "screen-256color"

# ステータスバーの色を設定する
set -g status-fg white
set -g status-bg black

# ウィンドウリストの色を設定する
setw -g window-status-fg cyan
setw -g window-status-bg default
setw -g window-status-attr dim
# アクティブなウィンドウを目立たせる
setw -g window-status-current-fg white
setw -g window-status-current-bg red
setw -g window-status-current-attr bright

# ペインボーダーの色を設定する
set -g pane-border-fg green
set -g pane-border-bg black
# アクティブなペインを目立たせる
set -g pane-active-border-fg white
set -g pane-active-border-bg yellow

# コマンドラインの色を設定する
set -g message-fg white
set -g message-bg black
set -g message-attr bright

# ステータスバーを設定する
## 左パネルを設定する
set -g status-left-length 40
set -g status-left "#[fg=green]Session: #S #[fg=yellow]#I #[fg=cyan]#P"
## 右パネルを設定する
set -g status-right "#[fg=cyan][%Y-%m-%d(%a) %H:%M]"
## ステータスバーのUTF-8サポートを有効にする
set -g status-utf8 on
## リフレッシュの間隔を設定する(デフォルト 15秒)
set -g status-interval 60
## ウィンドウリストの位置を中心寄せにする
set -g status-justify centre
## ヴィジュアルノーティフィケーションを有効にする
setw -g monitor-activity on
set -g visual-activity on

# tpm
set -g @tpm_plugins '              \
  tmux-plugins/tpm                 \
  tmux-plugins/tmux-yank           \
  tmux-plugins/tmux-open           \
  tmux-plugins/tmux-resurrect      \
  tmux-plugins/tmux-battery        \
  tmux-plugins/tmux-pain-control   \
'

run-shell '~/.tmux/plugins/tpm/tpm'

基本操作

Prefix

% ctrl + t

tmux起動

% tmux

セッション確認

% tmux ls

アタッチ

% tmux a 
% tmux a -t (session名)

デタッチ

% prefix + d

Window系

新規Window

% prefix + c

Window切り替え

% prefix + Window番号
  • 次へ
% prefix + n
  • 前へ
% prefix + p

Window削除

% prefix + &

Window名前変更

% prefix + ,

ペイン操作系

水平分割

prefix + "

垂直分割

prefix + %

ペイン移動(基本vimと同じ)

  • 上へ
prefix + k
  • 右へ
prefix + l
  • 下へ
prefix + j
  • 左へ
prefix + h
  • 次へ
prefix + o

分割解除

prefix + x

コピーモード

[       コピーモードの開始(カーソルキーで自由に移動)
スペース コピー開始位置決定(viモード)
エンター コピー終了位置決定(viモード)
]       コピーした内容を貼り付け

※ コピーモードにすることで画面スクロールも可能

Paneをまたいでコピーしてしまうとき

Command + optionを押しながら範囲選択をする。
https://qiita.com/mogulla3/items/ca5bfa585ef19ed1eb9b

その他

https://qiita.com/Frog_woman/items/f6797f2a70c44e42863d