かわろぐ

技術、ボルダリング、セキュリティ、その他もろもろ

MENU

tmux上のVimでクリップボードを使えるようにする

環境

  • Mac OSX 10.7.4
  • MacVim 7.3.515 (KaoriYa 20120509)
  • tmux 1.6
  • iTerm2 Build 1.0.0.20120203

tmuxの中で使うVimはクリップボードが上手く使えない!

tmuxの中で使うVimは他のアプリへのコピペはもちろんのこと,Vimでウインドウ分割したそれぞれの間でもコピペができなくなりました.これは致命的!ということで調べた.ちなみに,下記の設定をしていれば,tmuxを介さないVimからクリップボードが使えているという前提で話を進めます.

" ヤンクでクリップボードと共有する
set clipboard=unnamed

解決方法

https://github.com/ChrisJohnsen/tmux-MacOSX-pasteboard/
のツールを落としてきて使えるようにします.適当な場所に下記コマンドで必要なものを落としてきます.もちろんダウンロードボタンからでもOKです.

$ git clone https://github.com/ChrisJohnsen/tmux-MacOSX-pasteboard.git


んでもってmakeしてパスの通った場所に移します.

$ make reattach-to-user-namespace
$ cp reattach-to-user-namespace /usr/local/bin/reattach-to-user-namespace


参考にしたブログや,Githubには2つ目のコマンドが

$ cp reattach-to-user-namespace ~/bin


となっていましたが,自分の環境ではうまくコピーが出来なかったので,パスの通っている他の場所に変更しました.ちゃんと移動を確認したところで,tmuxの設定ファイルの.tmux.confに

set-option -g default-command "reattach-to-user-namespace -l zsh"


を足して,tmuxを立ち上げ直して下記のコマンドで日付がクリップボードへコピーされればtmux側の設定は完了です.最後にVimにfakeclipをインストールします.が,自分の使っているMacVim(KaoriYa)のCUI版では上記プラグインを入れなくてもクリップボードを使えるようになりました.
https://github.com/kana/vim-fakeclip

Mountain Lion の対応状況

tmux起動時に下記の警告は出ますが,自分の使用している範囲では特にこれといって困った問題は発生していません.

warning: unsupported new OS, trying as if it were 10.6-7