tmux

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

pasteboard をインストールして解決

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

参考文献

COMMENT

メールアドレスが公開されることはありません。