iTerm2 標準のホットキー設定との違い
自分はターミナルをホットキーで必要な時にさっと呼び出して使う Visor 的な使い方が好きなので、これまで iTerm2 に標準で用意されている、"Show/hide iTerm2 with a system-wide hotkey" のオプションを利用してきました。
しかし、OS X Mavericks になってからこの機能がうまく動かず、他のフルスクリーンアプリを表示させている状態で iTerm を呼び出すと、Dockが被って表示されてしまいます。
また、Mavericks ではマルチディスプレイ環境でのフルスクリーン機能が使いやすくなったので、iTerm もフルスクリーンモードで動かすようにしたほうが何かと都合が良いように思うようになりました(iTerm標準のホットキー設定でフルスクリーン前面表示させた状態で別スクリーンのウィンドウを操作しようとするとiTermの画面が消えてしまう)。
iTerm をフルスクリーンモードにして、ホットキーで iTerm にフォーカスを移動させることができれば基本的に同じ使い方ができそうだったので、Automator と AppleScript を使って設定してみました。大した事では無いですが作業メモとして書いておきます。
設定方法
Automater で iTerm2 にフォーカスを当てる AppleScript をサービスとして登録し、ショートカットキーから呼び出せるように設定します。
Automater でサービスを登録
- 新規作成時に聞かれる書類の種類を選択するダイアログで「サービス」を選択
- サイドバーから「AppleScriptを実行」をドラッグ
-
(* Your script goes here *)
の部分をtell application "iTerm" to activate
に置き換える - 適当な名前を付けて保存する(ここでは
Activate iTerm
)
ショートカットキー設定
- 「システム環境設定」→「キーボード」の「ショートカット」タブで、「サービス」を選択
- リストの一番下辺りに先ほど作成した
Activate iTerm
のサービスが追加されているので、そこにチェックをいれて好みのショートカットを設定する
iTerm2標準のホットキー設定では、 Alt + Space
を割り当てていたのですが、システム環境設定のショートカット設定では Alt + Space
を設定してもなぜかうまく機能してくれませんでした。なので私はとりあえず適当に競合しない Cmd + Ctrl + ;
を設定しました。
使用方法
iTerm 以外のウィンドウにフォーカスしている状態で設定したホットキーを押すと iTerm にフォーカスが移動します。フルスクリーンモードにしている場合でもちゃんと移動します。
iTerm で作業したあと、元のウィンドウにフォーカスを戻したい場合は、 Cmd + Tab を一回押すなりすれば良いです。