gottyはターミナルで実行したコマンドの出力をWebブラウザで参照できるようにするツールで、オプションを付けるとブラウザからのキー入力も可能になります。つまりgottyでtmuxを起動することで、Webブラウザから複数セッションや画面分割可能なターミナルを利用でき、さらにvimやEmacsなども利用することが可能になります。
特にWebアプリケーションを開発している場合、ターミナルでvimやEmacsでコーディングしていると、動作を確認するたびにブラウザに切り替える必要があり、非常に面倒です。gotty + tmuxを使えばブラウザの1つのタブでターミナルを使うことができるので、ブラウザのタブを切り替えるだけでアプリケーションの動作を確認したり、調べ物をしたりすることができるのです。これを最強のWeb開発環境と呼ばずしてなんと呼ぶのでしょうか。Atomなんかいらなかったんや!!
gottyはMacであればHomebrewで簡単にインストールすることができます。
$ brew tap yudai/gotty $ brew install gotty
あとはtmuxがインストールされていれば以下のようにして起動し、
$ gotty -a 127.0.0.1 -p 9999 -w tmux
ブラウザでhttp://localhost:9999/にアクセスするとtmuxを使用することができます。
このように最強のWeb開発環境であるgotty + tmuxのコンビネーションですが、以下のような欠点もあります。
- 日本語入力が不可能
- 一部のキーバインドが使えない
- 色がときどきおかしくなる
僕の場合、仕事は基盤系ですし、趣味のOSS活動は基本英語なのでコードを書いていて日本語を入力する機会はほぼありません。また、キーバインドはどうしても困るものはアプリケーション側で変更すれば対処できます。ちょっと困るのは色がおかしくなる問題で、たとえばEmacsでace-jump(指定した文字が登場する位置に一発でジャンプできるEmacs拡張)を使うとこんな感じに…。
文字が…見えない…orz
Emacsのカラーテーマにもよるとは思うのですが、背景を黒以外にするとところどころに横線が入ってしまったりするのが残念なところです。