この記事でのバージョン
Unity 2019.1.0a7
はじめに
Unityには他のアプリケーションと同様にショートカットキー(ホットキー)がいくつもありますし、
自分で実装する事も簡単に出来ます。
しかし、簡単にショートカットが作れるゆえに、(特にエディタ拡張系のアセットを使っていると)
「どんなショートカットがあるか分からない、重複してるかも分からない」という問題があります。
これらの問題を解決すべく、Unityでは新しいショートカットシステムの開発が進んでいましたが、
ついにUnity 2019.1から新システム「Shortcut Manager」が使えるようになりました!
今回はこれを使ってみようという感じの記事です。
基本的な使い方
まずEdit -> Shotcuts、またはUnity -> Shotcuts(バージョンによって場所が違うっぽい)
からShortcut Managerのウィンドウを開きます。
ショートカットを設定したいコマンドの右側をダブルクリックすると入力出来るようになるので、
この状態で登録したいショートカットのキーを押せば、設定完了です。
なお、既に登録されているキーを登録しようとした場合は警告が表示されます。
Create conflictは重複を気にせずそのままショートカットを登録し、
Cancelは登録を中止、
Reassignは先に登録されているショートカットを消します。
ちなみに重複しているショートカットはBinding Conflictsでも確認できます。
さらに重複しているショートカットを実行するとShotcut Conflict(警告)が表示されるようになりました。
(前はどちらかのショートカットが実行されていた)
Resolve ConflictはShortcut Managerを開き、
Cancelはショートカットの実行をやめ、
Perform Selectedを押すと選択してるやつを実行します。
この時、Rebind to selected commandにチェックを入れてると
選択してない方のショートカットを消します。
プロファイル
Shortcut Managerは複数のプロファイル(設定)を作る事も可能で、
プロファイルの変更などは左上のプルダウンから行います。
Defaultが初期状態のもので、プロファイルの新規作成や名前変更、削除もここから行います。
なお、Defaultのプロファイルは変更出来ないので、
Defaultを選択した状態で何かを変更すると自動でDefault copyというプロファイルが作成されます。
検索機能
Shortcut Managerには、ショートカットの検索機能も付いています。
上記のようにデフォルトはコマンドを検索していますが、ショートカットの検索も可能です。
ただし、ショートカットは入力したやつと全く同じやつのみを検索するようです。
例えば「A」を入力しても「Shift + Option + A」のショートカットは出ないみたいな感じです。
自分で作ったショートカット
Shortcut Managerは、自分で作ったショートカットも扱えます。
//Shift + Alt + gキーを押すと実行される [MenuItem("Test/Log #&g")] private static void Log() { Debug.Log("Log"); }
ただし、プログラムで指定したショートカットをShortcut Managerで変えてしまうと、
プログラムに書いてるショートカットと、実際のショートカットが異なってしまうので注意が必要です。