(:3[kanのメモ帳]

個人ゲーム開発者kan.kikuchiのメモ的技術ブログ。月木更新でUnity関連がメイン。

(:3[kanのメモ帳]


本ブログの運営者kan.kikuchiが個人で開発したゲームです!


独自のショートカットキー(ホットキー)を作成する【Unity】【エディタ拡張】


このエントリーをはてなブックマークに追加



この記事でのバージョン
Unity 5.5.1f1


はじめに


エディタ拡張で便利な機能を作ったから、瞬時に呼び出せるようにしたい!

機能にショートカットキーを設定したい!

今回はそんな感じの記事です。


MenuItem

ショートカットキーを設定する時にはMenuItemを使います。



使い方は以下のように、メニューに追加する項目の後に

スペースを空けてショートカットを追加する形です。

//Shift + Alt + gキーを押すと実行される
[MenuItem ("Test/Log1 #&g+")]
private static void Log2 () {
  Debug.Log ("Log2");
}


なお、%でCmd(WindowsはCtrl)、#でShift、&でAltを指定できます。

一つのキー単独で指定する場合はアンダーバー(_)をキーの前に置きます。


さらに#LEFT (Shift + 左矢印キー)のような特殊記号もあります。

特殊記号の種類は以下の通りです。


上下左右の矢印キー、F1 ~ F12 キー、Home キー、End キー、Page Up キー、Page Down キー

がそれぞれ、

#LEFT, #RIGHT, #UP, #DOWN, #F1 ~ #F12, #HOME, #END, #PGUP, #PGDN


まとめると以下のような感じに。

//Shift + Alt + gキー
[MenuItem ("Test/Log1 #&g+")]
private static void Log1 () {
  Debug.Log ("Log1");
}

//gキーのみ
[MenuItem ("Test/Log2 _g")]
private static void Log2 () {
  Debug.Log ("Log2");
}

//shift + 左矢印キー
[MenuItem ("Test/Log3 #LEFT")]
private static void Log3 () {
  Debug.Log ("Log3");
}

f:id:kan_kikuchi:20170219152017p:plain


なお、Unityに最初から設定されているショートカットキーは以下のページで確認できます。



重複するとデフォルトの方が優先されるため注意が必要です。


------------追記------------

Unity 2019.1から新システム「Shortcut Manager」が使えるようになりました!

------------追記おわり------------