Hatena::ブログ(Diary)

寄り道ばかりの お勉強日記★ このページをアンテナに追加 RSSフィード Twitter

引っ越し後の日記はコチラです

tokoromのその他の日記

2011-04-17

ローカルでtmuxを使ってサーバにSSHログインした後に、そのサーバ上でもtmuxを使いたいときの対処療法

tmuxを常用するようになって逆に困ったこと

前回記事より、tmuxを常用するようになり、逆に困ったことがあります。

それは、普段ローカルのTerminalでもtmuxを使っているため、いざサーバにsshログインしたときにもサーバ上でtmuxを起動し、tmuxが二重になってしまったい場合のことです。

二重になること自体は問題ないのですが、サーバのtmuxの操作をしようとすると、そのtmux用のキー操作がローカルのtmuxに奪われてしまい、サーバのtmuxが操作できないのです。

f:id:tokorom:20110417105748p:image

どっちかのtmuxのキーバインドを変えてしまう?

となると、ローカルかサーバ側かのどちらかのキーバインドを変更するしかなさそうです。

ただ、普段からずっとどちらかのキーバインドを変えておくのも不便です。

ということで、

tmux set-option -ag prefix C-b

といったコマンドで一時的にどちらかのキーバインド(メインで使わないほうの端末)を変更する方向で考えます。

現在の形

私の場合は、.zshenv に以下aliasを定義することにしました。*1

alias tmux-changekey='tmux set-option -ag prefix C-b'
alias tmux-revertkey='tmux set-option -ag prefix C-t'

これで、一時的にキーバインドを変更したいときは

tmux-changekey

戻したくなったら

tmux-revertkey

で戻すという感じにしてます。

*1:普段は C-t をprefixにしている