Xcode からプロジェクトの場所をターミナルで開く Behavior を作る。
Xcode ツール
Xcode で開いているプロジェクトに関する操作をターミナルで行いたい場合がたびたびあったので、Xcode からターミナルを開ける Behavior を作ってみました。
Xcode でプログラミングをしている最中に、開いているプロジェクトに関する操作をターミナルアプリを使って行いたくなる場合がたびたびあります。
たとえば CocoaPods のライブラリを更新したいときとか、Git のタグを付けたいとかどうとか、そんなときにターミナルを開いて目的のパスまで移動するのが何かと手間がかかるので、Xcode の Behavior から実行できるスクリプトを作ってみました。
プロジェクトのカレントを開く Behavior を作る
スクリプトファイルを作成する
Behavior を作るために、どんな動作をさせるかをスクリプトで作成します。スクリプトを書く言語はなんでもよくて、実行権限が与えられている必要があります。
Behavior からスクリプトが呼び出されると、環境変数 PWD
にプロジェクトのルートディレクトリが設定されるため、ターミナルを開いてディレクトリをそれに変更します。
#!/usr/bin/osascript
on run argv
set cmd to "cd" & " \"" & (do shell script "pwd") & "\""
tell application "Terminal"
activate
tell application "System Events"
delay 0.5
tell process "Terminal" to keystroke "n" using command down
end tell
do script with command cmd in the front window
return
end tell
end run
動作としては、まず Terminal アプリを開いてアクティブにして、そこへ
を送信して新規ウィンドウを作っています。そしてそこに、環境変数 PWD
で受け取ったパスへ移動する cd
命令を発行します。
このような内容でスクリプトファイルを作成します。
今回は open-in-terminal.applescript
という名前で保存しておくことにします。場所はとりあえず ~/tools/xcode にしておくことにしますが、どこでも構いません。
そうしたら、次のコマンドを実行して、スクリプトに実行権限を添えれば完成です。
chmod +x open-in-terminal.applescript
スクリプトを Behavior に登録する
Behavior への登録は
Xcode
Preferences...
から行います。
設定画面が表示されたら、ツールバーから Behaviors
を選択して、左下にある
を押すと、カスタム動作を作成できます。
とりあえず、名前を Open in Terminal
など適当につけたら、右側のエリアでどのような動作をさせたいかを設定します。
今回は、先ほど作成したスクリプトを実行したいので、いちばん下の Run
にチェックを入れて、実行したいスクリプトとして先ほど作成したものを選択します。
ショートカットキーを設定する
このとき左側の
が書かれたところをクリックすると、この Behavior にショートカットキーを設定することができます。使う頻度が多い場合は、ここにキーの組み合わせを設定しておくと、メニューを辿って実行する手間が省けて便利です。今回自分は
を設定してみることにしました。Behavior を使ってターミナルを開く
これで設定完了です。
使い方は簡単で、プロジェクトを開いている状態で、メニューから
Xcode
Behaviors
と辿り、実行したい Behavior を選択することで実行できます。
こうすることで、自動的にターミナルが開かれて、カレントディレクトリがプロジェクトのルートディレクトリに移動します。