2011年6月24日金曜日

[Mac]: 捗るコマンドライン・ターミナル環境iTerm2

僕の周囲のエンジニアもほとんどがMacを使うようになり,今まで頑なにWindowsで開発してきた人たちも「そんなにいいなら試してみようかな・・・」といった感じでMacを試している人が最近増えている気がする.
初めてMacを使う人が困るのが,どんな環境を揃えれば良いのかがわからんという事だと思う.Windows時代に使って慣れていたGUI系のソフトウェアが使えないので,開発効率が落ちてしまわないかが心配になるというのもありそう.
そんなわけで,主にコマンドライン実行環境に絞って最近の自分の開発に使っているソフトや設定を晒してみる.主にWindowsではputty(jp)Poderosaを使っていた人が対象になるかと思う.

なにはともあれiTerm2

OS X標準のTerminal.app(アプリケーション->ユーティリティに入ってる奴)も,昔に比べて非常に良くなった.具体的にはタブ表示に対応したことや,あちこちバギーだったのが安定してきたことがある.ただ,それでも標準のTerminal.appはマルチバイト文字の表示をしていると表示がバグったり,4つ以上のタブの切り替えがショートカットキー一発で出来ないなど,地味に不便なところがある.
そんなわけで使っているのがiTerm2.元々Terminal.appがショボかったころからiTermがあったこともあり,まだBetaではあるが安定している(特にクラッシュしたことはない).
紹介記事なんかはマイコミジャーナルの記事あたりを見れば良いと思うが,使えば使うほどTerminal.appよりもいい感じ.

軽い

標準のTerminal.appを使っていて切り替えるとじわじわ感じるのだが,iTerm2はかなり軽い.例えば,タブを切り替えたときなんかにもたつくことが無い.Railsのログをtail -fでずっと垂れ流しているターミナルを眺める時なんかも追随性が良い印象.

4つ以上のタブ間でのショートカットキーによる一発切り替え

僕がiTerm時代から使っている最大の利点はここ.Terminal.appにも複数タブ間の切り替えショートカットキーはあるのだが,前のタブを選択(Command + {)と次のタブを選択(Command + })しか出来ないので,タブを4つ以上開いたときに一発で目的のタブに移動することが出来ないことがある.それに,「前の/次の」というのは相対的な位置関係になるので,タブを移動したときに思っていたタブじゃなかったなんていうこともある.
一方,iTerm2でタブ切り替えのショートカットキーは「Command + [1-9の数字キー]」に割り当てられている.これは地味に重要で,Command + 1を押したときは常に左はじのタブに移動できるという安心感がある.特にショートカットキーを連打しがちな人には重要.ちなみに僕は以下のようにタブを使い分けている.

  1. メインの作業用Shell.localhostでscreenを立ち上げて使う
  2. screen無しのlocalhost用Shell.主にtail -f専用で,Railsのログ出力など流れが早いものはホイールスクロールで履歴を見たいので使っている
  3. これ以降はリモートにログインするとき用のShell.1番目のタブは基本的にリモートログインをしない.これはローカルだと思って危険なコマンドをリモートで実行しないための対策.
こうしておくと,基本的には1番目のタブで作業し,Logを見るときはCommand + 2,リモートで作業するときはCommand + 3以上,迷子になったらとりあえずCommand + 1でメイン環境に戻る,といった使い方ができる.

ちなみに,Terminal.appにもCommand + [1-9]によるショートカットキーは
あるのだが,なぜかウィンドウ間切り替えに割り当てられているので,ウィンドウは一つに統一してタブで作業する人には向かない.

他にも色々

それ以外にも,検索機能や入力補完機能,ショートカットキーのカスタマイズやショートカットキーによる一発呼び出しなど,Terminal.appに無い機能が揃っている.ただ,僕はあまりこの手の機能を使ってないので,使いたい人は使えばいいと思う.

まとめ

というわけで,以下のような人にはぜひiTerm2がオススメ

  • まだTerminal.appのショートカットキーに指が慣れていない人
  • 複数ウィンドウを開かず,主にタブで作業する人
  • Terminal.appより高機能なターミナルが欲しい人
最近Beta 3になったので,そろそろリリース版が出るかな.wktk

0 件のコメント:

コメントを投稿