修改Unity创建的C#脚本模板
打开Unity安装目录中的模板配置文件(以我安装的Unity2019.4.14f1c1版本为例)
位置:D:\Program Files\Unity2019.4.14f1c1\Editor\Data\Resources\ScriptTemplates
修改后的代码:
增加版权信息、脚本创建时间、作者信息、命名空间,为了代码的一致性,将生命周期函数的访问修饰符改为私有,去掉注释和Update方法**(因为正常在实际开发中的大部分脚本都不会实现Update方法,如果没有实现Update方法确保留了空的Update方法,由于Mono是通过反射的方式调用各个生命周期函数,会造成一定的性能消耗。)
#region Copyright
// **********************************************************************
// Copyright (C) #COPYRIGHTYEAR# #COMPANYNAME#
//
// Script Name : #SCRIPTNAME#.cs
// Author Name : #AuthorName#
// Create Time : #CreateTime#
// Description :
// **********************************************************************
#endregion
using UnityEngine;
namespace ns
{
public class #SCRIPTNAME# : MonoBehaviour
{
private void Start()
{
#NOTRIM#
}
}
}
在Editor目录下增加脚本用于创建C#脚本时填充Copyright信息:
#region
// **********************************************************************
// Copyright (C) 2021 CompanyName
//
// Script Name : Copyright.cs
// Author Name : MyName
// Create Time : 2021/05/21 13:34:47
// Description : 为创建的C#脚本添加CopyRight信息
// **********************************************************************
#endregion
using System.IO;
using UnityEditor;
namespace Framework.Editor
{
public class Copyright : UnityEditor.AssetModificationProcessor
{
private const string CompanyName = "CompanyName";
private const string AuthorName = "MyName";
private const string DateFormat = "yyy/MM/dd HH:mm:ss";
public static void OnWillCreateAsset(string path)
{
path = path.Replace(".meta", "");
if(path.EndsWith(".cs"))
{
string _fileText = File.ReadAllText(path);
_fileText = _fileText.Replace("#COMPANYNAME#", CompanyName).Replace("#COPYRIGHTYEAR#", System.DateTime.Now.Year.ToString())
.Replace("#AuthorName#", AuthorName).Replace("#CreateTime#", System.DateTime.Now.ToString(DateFormat));
File.WriteAllText(path, _fileText);
AssetDatabase.Refresh();
}
}
}
}
Jetbrains Rider自定义类模板
编辑器我使用的是Jetbrains Rider,这里也展示下怎么创建。
打开 文件–》设置–》编辑器–》File Templates。如下图:
在下面的模板代码前面中添加下面的内容:
#region << 文 件 说 明 >>
/*----------------------------------------------------------------
// 文件名称:$CLASS$
// 创 建 者:作者名称
// 创建时间:$TIME$
// 文件版本:V1.0.0
//===============================================================
// 功能描述:
//
//
//----------------------------------------------------------------*/
#endregion
这里我们使用了 TIME,需要在编辑器里面指定其获取的内容。
点击按钮 Edit variables:
打开 Edit variables 窗口 ,按步骤编辑里面的内容:
点击Change macro,在弹出的窗口中选择下面箭头指示的选项,然后OK。
至此大功告成,有的朋友可能认为写这些东西没有用处,但是为了我们代码的规范性,做一个更厉害的程序员,必须对自己要求更高,因此还是很有必要的。