Script Inspector 3のコードスニペットをカスタマイズ【Unity】

Script Inspector 3 (SI3)のコードスニペットとその自作方法をまとめました。

SI3 とは

Unity Asset Storeで購入できるアセットの一つ。導入する事でエディタ内でスクリプト編集が可能となります。

コードスニペット

void~、クラス名~を飛ばして欲しいコードの一部を入力すると予測してくれます。

UnityMagicMethod

コメント文がおまけで付いて来ます。

定型文

for

コードスニペット(for)

foreach

コードスニペット(foreach)

nn → !=null

さっき知りました。ヌルチェックnn

コードスニペット(nn)
コードスニペット(!=null)

カスタマイズする

Si3ではコードスニペットをカスタマイズすることが出来ます。

Si3でコードスニペットを作る手順
  • Project内のフォルダを開く

    CodeSnippetsフォルダを開く

    Assets>Plugins>Editor>ScriptInspector3>CodeSnippets

    ここにテキストファイルを作る。

  • Textファイルを作成する

    ファイルタイトル:予測変換の文

    テキストの中身:入力される状況とテンプレート

    Create>Text

    最初の行にスニペット有効範囲を書く

    以降にテンプレートを書く

    必要に応じて$$

  • リロードする

    テキストを保存した後Ctrl+Rでリロードすると読み込まれました。(テキストのみ保存しても予測変換に表示されませんでした。)

スニペットの有効範囲

最初の行でコードスニペットの予測変換がどこで表示されるかを決める事が出来ます。

ステートメントとして有効

実行処理ステートメントとしてのスニペット。メソッド内で予測変換に表示される。

$ValidAsStatement$
例)usingステートメントのコードスニペットを追加してみる。

[ using ]という名前のTextファイルを作る

usingステートメントのコードスニペット

Textファイルの中身は以下

$ValidAsStatement$
using($end$)
{
    
}

リロード後試してみました。

usingステートメントのコードスニペットチェック

usingステートメントのコードスニペットチェック結果

こんな感じになりました。

Statements (C# Programming Guide)

ステートメントとして無効

$NotValidAsStatement$

タイプ宣言で有効

$ValidAsTypeDeclaration$
CreateAssetMenuを殆ど入力済みにしてみました。
$ValidAsTypeDeclaration$
[CreateAssetMenu( $menuName$ = $"BlueBreath/$$end$$NewTable"$, $fileName$ = $"NewTable"$ )]
ValidAsTypeDeclaration

プロパティ内で有効

$ValidInPropertyBody$

挿入可能な状況でのみ有効?

$ValidIfKeywordExpected$

名前空間用?

$ValidAsNamespaceMember$

クラスメンバーとして有効

$ValidAsClassMember$

Class Member Overview

構造体メンバーとして有効

$ValidAsStructMember$

インターフェースメンバーとして有効

$ValidAsInterfaceMember$

メソッド本体内で有効

クラス内のメンバーメソッドに対しては無効

$ValidInMethodBody$

$コード$

$$で挟んで何かを伝える系の専門用語を私は知らない。

挿入後のカーソルの位置

入力後一番後ろ以外(カッコ内等)にカーソルを持っていきたいときに使用する。スニペット挿入後の時短が出来る。

$end$

メソッド名

$MethodName$

引数(ArgumentList)

$ArgumentList$

テンプレコード登録まとめ中

ショートカット一覧

忘れた頃に見るチートシートさん↓。

Script Inspector 3 – Windows Keyboard Shortcuts by Sarper

アセット(マテリアル、ゲームオブジェクト等)をドロップして編集

注意点

日本語(全角)を入力するとカーソルがずれます。→入力不可?

UnityEditor内で日本語入力が出来ない問題はSI3とは関係ありませんでした。

Si3に日本語(全角)を入力した場合

Si3日本語入力した場合

カーソル位置がずれていくのでこの点が辛い所です。

補:無料で使えるVSCodeが優秀でした・・・。

コメント

タイトルとURLをコピーしました