Unity自动加头部注释
布小禅 人气:0Unity脚本自动添加头部注释
就是创建.cs文件时自动添加作者名,创建时间,文件名等
看示例,我们在Unity的project面板下先创建一个Scripts文件夹,然后在Scripts文件夹下创建一个脚本,命名为:Test.cs
然后就是这样:
因为这个是我已经成功的设置过了才会有这样的头部注释
1. 修改Unity模板
首先找到你的Unity的安装路径,找到这样的文件夹,文件名字是和版本相关的
然后打开文件夹,一路找到Editor\Data\Resources\ScriptTemplates
文件夹
然后嘛,打开一个叫做81-C# Script-NewBehaviourScript.cs.txt
的文件,打开
是这样:
using System.Collections; using System.Collections.Generic; using UnityEngine; #ROOTNAMESPACEBEGIN# public class #SCRIPTNAME# : MonoBehaviour { // Start is called before the first frame update void Start() { #NOTRIM# } // Update is called once per frame void Update() { #NOTRIM# } } #ROOTNAMESPACEEND#
这个就是我们的脚本创建的模板文件,我们创建的每个脚本文件长什么样,都是跟这个东西有关系的
我们只需要在上面加上注释,当然还是不够的
加上
/** * ========================================== * FileName:#FileName# * Author:#Name# * CreatTime:#CreateTime# * NowPath:#path# * ========================================== */
然后保存退出
再创建一个脚本试试看,就会多出这些东西,当然这些都是写死的,固定的
我们可以看看仅此的效果:
是吧,只是写死的
2. 通过代码修改为动态的
注意到我创建的Editor文件夹了吗?
虽然那个是我自己创建的,但是Unity中某些文件夹就是具有着某些特殊的作用
比如这个Editor它的作用就是:
以Editor命名的文件夹允许其中的脚本访问Unity Editor的API。如果脚本中使用了在UnityEditor命名空间中的类或方法,它必须被放在名为Editor的文件夹中。Editor文件夹中的脚本不会在build时被包含。
在项目中可以有多个Editor文件夹。
然后我们先创建一个Editor文件夹,然后再在这个文件夹下面创建一个脚本,名字随意都行,然后写代码
using UnityEngine; using UnityEditor; // 被继承的类所在的命名空间 using System.IO; // IO文件操作命名空间 using System; // C#基础功能命名空间 using System.Text.RegularExpressions; // 正则表达式的命名空间 public class TitleSet : UnityEditor.AssetModificationProcessor { private static void OnWillCreateAsset(string path) { path = path.Replace(".meta", ""); // 这里跌path是你的项目主路径Asset/Scripts/文件名 if (path.EndsWith(".cs")) // 判断是否是c#文件 { string fileName = Regex.Match(path, @"[^/]*$").Value; // 通过正则拿到仅含文件名的字符串 string str = File.ReadAllText(path); // 获取创建的文件名的全部内容 str = str.Replace("#Name#", "布小禅").Replace("#CreateTime#", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")).Replace("#FileName#", fileName).Replace("#path#", path); // 将头部注释替换 File.WriteAllText(path, str); // 将替换后的内容写入文件,将原内容覆盖 AssetDatabase.Refresh(); } } }
代码里面的注释已经让代码很清晰了,所以我就不多说了
你想自己添加别的信息,也可以添加
结语
加载全部内容