LoginSignup
4
5

More than 5 years have passed since last update.

AWS AmazonLinux2 での tmux設定

Last updated at Posted at 2018-10-07

古いバージョンのtmuxで①マウス操作と②コピぺを両立する

【この記事で解決すること】

  1. tmux外部との文字列コピー&ペースト(tmux↔️ターミナル端末側OS)
  2. tmuxのマウス操作(入力ペイン切替/ペイン境界調整)
  3. tmux1.8(AmazonLinux2標準)の設定ファイル(.tmux.conf)

【この記事がある理由】

  • tmuxのマウス機能有効->通常キー操作でコピぺができなくなる
  • ネットには「通常キー操作でコピぺできる様にする」方法がたくさん
  • コピぺには「キー操作を変更するだけでOK」
  • その他混乱する要因もあり整理
    • AWS AmazonLinux2を選ぶと、古いバージョンのtmux1.8が入ります。一方で最新バージョンは2.7。(2018.10.7時点)
    • インストールするにはAmazonLinux未検証リポジトリへの接続が必要
    • そもそもAmazonLinux選ぶ人は↑みたいなことはやるつもりないはず

【この記事の対象者】

  1. EC2インスタンスにssh接続が済んだ方
  2. セッション管理にtmuxを使う方
  3. tmux最新バージョン(2.7等)をインストールせず、すぐに運用したい方
  4. tmux コピーモード C-b [ とか使いたくない人

0.準備

  1. tmuxをyumでインストール
sudo yum install tmux

【注意】

  • マウス環境であれば、tmuxコピーモード C-b [ は使う必要がありません
  • この時点では普通にコピぺ出来ます。マウス選択し通常キー操作(C-c C-v)でコピぺ。
  • この後の「tmuxマウス操作機能」を有効にするとコピぺ出来なくなります

1. tmuxの設定(「tmuxマウス操作機能」を有効化)

.tumx.conf
~~抜粋~~
#マウス操作を有効にする
set-option -g mouse-select-pane on
set-option -g mouse-select-window on
set-option -g mouse-resize-pane on

# マウススクロール反映
set-window-option -g mode-mouse on

【注意】

  • 通常キー操作(C-c C-v)でコピぺ出来なくなっています。
  • 以下のキー操作でコピぺ出来ます。
  • 本質的には、tmuxのコピーモードを回避しているだけ です。

2. コピぺの新キー操作(「tmuxマウス操作機能」有効化時)

もちろん、tmuxコピーモード C-b [ とか使いません
使用するターミナルソフトによってキー操作が異なります。

MacOS : Terminal.app

コピー
Shift+Command+マウスでコピーしたい箇所を選択
ペースト
Shift+Command+マウス右ボタンをクリック

MacOS: iTerm2

[激しく推奨!] Optionキーを使うだけ!

コピー
Option+マウスでコピーしたい箇所を選択、通常キー操作(Command+c)
ペースト
通常キー操作(Command+v)

xterm

コピー
Ctrl+Shift+マウスでコピーしたい箇所を選択
ペースト
3ボタンマウス: Ctrl+マウス真ん中ボタンをクリック
上記以外   : Ctrl+Shiftマウス右ボタンをクリック

私の使っている tmux設定

.tumx.conf
#マウス操作を有効にする
set-option -g mouse-select-pane on
set-option -g mouse-select-window on
set-option -g mouse-resize-pane on

# マウススクロール反映
set-window-option -g mode-mouse on

# 異なるサイズの端末からアクセスした時にリサイズ
setw -g aggressive-resize on

# 256 色対応
set -g default-terminal "xterm-256color"
set -g terminal-overrides "term:colors=256"
set -g display-time 2000

# バインドキーを vi 風に
set-window-option -g mode-keys vi

# 日本語対応
setw -g utf8 on
set -g status-utf8 on

感想

tmuxのコピぺの話は、3つのトピックがネット上でごっちゃになっており、よくよく読まないと混乱します。

tmuxコピーモードの話題
「ターミナル端末側でコピぺ機能が使えない」大昔の環境下を仮定。現代では正直何が便利なのか?この機能がないと困る状況が思い浮かばない。
tmuxマウス操作機能有効化による不具合(本記事)
マウス操作機能有効化でおかしくなったので回避したいという話。マウスで領域選択した際にコピーモードが起動してしまい、OSのクリップボードに入らないため。ネットに数ある対策ではコピーモードの中でOSクリップボードに転送するスクリプトを挿入。一方、本寺記事の対策はtmuxのコピーモードを回避するキー操作を紹介してる。
macOS版tmuxの問題:
MacOS側とtmux側でクリップボード共有がうまくできない問題。記事内に「reattach-to-user-namespaceをインストールしましょう」という説明があるもの。tmux 2.6で問題解消されたり、設定ファイル内のコマンド名が変わったりしていて、説明記事は多い。

tmuxの問題は、「コピーモードを使いたい」「キー操作を絶対変えたくない」という要望にすぎないのではないか?

【参考サイト】

  1. https://scripter.co/tmux-shift-plus-mouse/
  2. https://qiita.com/upinetree/items/cd80bc7865c52091be10
4
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
5