開発中にiTerm2のArrangementsを設定してみたら、思った以上に便利だったので久々にブログ書いてみます。
特に複数の言語やフレームワークを使う機会がある人には便利なので是非試してみて下さい!
ワンクリックで諸々起動した状態でターミナルを立ち上げられるので開発へスムーズに入れます!
前提の環境
Macなどでターミナル環境をリッチにしてくれるiTerm2をインストールしておきます。
iTermを使うことでテーマを入れて画面を綺麗にしたり、コピーの過去ログを取れたり、ターミナル上を検索出来たりします。
今回はこのiTerm2でProfile作成とArrangements設定を行っていきます。
Ruby on Railsでの使用例と出来ること
ArrangementsはiTermのWindowの状態などをセットで保管できる機能です。
例えば、今回プロジェクト名をつけたArrangementsをワンクリックで選ぶだけで下記のようにiTermのタブが立ち上がるように設定しました。
1タブ目:仮想サーバやデバッグツールを常駐させるタブ
タブ名がBackgroundになった分割されたウィンドウが立ち上がります。
左側では背景が「Rails Server」になっておりbundle exec rails s
が起動した状態になります。
また右側では背景が「Guard」になっておりbundle exec guard
が実行された状態になります。
2~4タブ目:メインで編集するタブ
Model・View・Controllerとメインに編集するためのタブをそれぞれ各々のタイトルを付けて起動します。
(先輩エンジニアがやっていたのを見てから真似してます)
MVCのタブに関してはVimが起動した状態にしており、いつでもVimのUniteというプラグインでファイルをショートカットで検索して開いて編集出来るようになってます。
5タブ目:主にコマンドを実行するタブ
その他色々Railsのコマンドを実行したいときなど汎用的に使えるタブとして残しています。 Macの場合「⌘+数字」でその番号に対応するタブを表示できるので、場所を固定しておくと快適に使えます。
また、すべてカレントディレクトリが該当のプロジェクトになっているため、実質Arrangementsを選択するだけで一瞬で編集するまでに立ち上げておいて欲しいアプリを用意できます。
ちなみに上記はあくまでRailsの一例です。
これだけでもプロジェクト別に作るだけでも便利ですが、他の言語やフレームワーク、例えばWordPress用とかLaravel用とか、それぞれにArrangementsを作り込んでおくことで、それぞれで使いたいログのテールオプション実行とかデバッグツールの起動、DB等の起動なんかを始めにセットで実行できるわけですね。
tmuxでsession貼ったり、初めからSSH等を実行させることも出来るので、本番環境/テスト環境とかも同時に繋いでおくというのも便利そうです。
いやー地味に便利!いや、かなり便利ですねこれ!!!!
では設定方法を見ていきましょう。
iTermのProfileを設定する
iTermで開いているカレントディレクトリやらタブ名やら各種状態をテンプレートとして保存しておけるProfileを作っておきます。
画面上のメニューから iTerm2 > Preferences... > Profileタブ
を選んでから「+ボタン」で新規Profileを作成して編集します。
今回は以下のように設定してみました。
Name
分かりやすい用途を名前にしておく
設定例:Live-n-Tokyo rails server
Tags
直接Profileを指定して状態を復元出来るのでタグを付けて探しやすいようにしておく
設定例:rails livie-n-tokyo rails-server
Command / Send text at start
ログイン時に実行したいコマンドを入れておく
設定例:bundle exec rails s
Working Directory
実行させるディレクトリを指定しておく
設定例:/Users/inodev/rails/live-n-tokyo
コピーして作成もできるので似たパターンを作るのは結構簡単です。
iTermのArrangementsを設定する
Profileが出来たらテンプレートとなるようにiTerm2を開いてタブなどを開いていきます。
Profileは利用したいシェルを選んだあと「⌘+I」でPreferencesを開いて、該当のProfileを選択して「Use selected profile」を押すと設定できます。
Profile作成や設定が一通り終わったら「⌘+Shift+S」でArrangementsとして名前を付けて保存します。
これで次回からメニューなどからArrangementsを復元させれば一瞬でスムーズに開発を進められる状態を呼び出せるようになります。
はじめに設定を揃えるのは少し面倒です…。
ただ、開発環境の切替やアプリの再起動なんかはしょっちゅうあるので結構効率化出来るかと思います!
是非ストレスの少ない開発環境にご利用下さい!