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
```

## 設定ファイル

```c:.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