VisualStudioCodeスニペット

ユーザー作成スニペットを記載していきます

ユーザースニペット登録方法

画面左下の設定アイコンをクリックして、ユーザースニペットを選択

コード種別を選択

登録するコード種別を選択します

コードを更新

エディターが開くますので、コードを更新して保存

Unityシングルトン

使い方

  1. stと入力
  2. tabキーを押下
  3. そのままクラス名を上書き入力(テンプレートのClassNameを置き換えます)
  4. Enterキーを押下
  5. 保存すると自動的にインデントされます

実行サンプル動画

スニペットによるコード補完のサンプルコード

クラス名がTestなので、スニペットのClassNameの置き換えはTestとしています

補完前

using UnityEngine;

public class Test : MonoBehaviour
{

}

補完後

using UnityEngine;

public class Test : MonoBehaviour
{
    private static Test instance;

    // 他のスクリプトからTestへのアクセスを提供するプロパティ
    public static Test Instance => instance;

    // このクラスからのインスタンスができないようにしている
    private Test() { }

    private void Awake()
    {
        if (instance == null)
        {
            instance = this;
            DontDestroyOnLoad(gameObject);
        }
        else
        {
            Destroy(gameObject);
        }
    }

    // ----------------------------------------------------------------
    // ここ以降に属性や振る舞いなどアクセスするメンバーを追加

    // ex. 他のクラスからのアクセス手順
    // Test.Instance.アクセスするメンバー

}

スニペットコード

{
	"Singleton": {
		"prefix": "st",
		"body": [
			"private static ${1:ClassName} instance;",
			"",
			"// 他のスクリプトから${1:ClassName}へのアクセスを提供するプロパティ",
			"public static ${1:ClassName} Instance => instance;",
			"",
			"// このクラスからのインスタンスができないようにしている",
			"private ${1:ClassName}() {}",
			"",
			"private void Awake()",
			"{",
			"    if (instance == null)",
			"    {",
			"        instance = this;",
			"        DontDestroyOnLoad(gameObject);",
			"    }",
			"    else",
			"    {",
			"        Destroy(gameObject);",
			"    }",
			"}",
			"",
			"// ----------------------------------------------------------------",
			"// ここ以降に属性や振る舞いなどアクセスするメンバーを追加",
			"",
			"// ex. 他のクラスからのアクセス手順",
			"// ${1:ClassName}.Instance.アクセスするメンバー",
			"",
		],
		"description": "シングルトンパターンのテンプレート作成"
	}
}

参考

ツール,便利機能

Posted by hidepon