Unity脚本自动添加头部注释的全过程

 更新时间:2022年01月06日 16:00:28   作者:布小禅  
在一些公司需要代码严格的管理,有时候会需要用到每个脚本的头部做一些介绍,所以下面这篇文章主要给大家介绍了关于Unity脚本自动添加头部注释的相关资料,需要的朋友可以参考下

Unity脚本自动添加头部注释

就是创建.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();   
       }
   }
}

代码里面的注释已经让代码很清晰了,所以我就不多说了

你想自己添加别的信息,也可以添加

结语

到此这篇关于Unity脚本自动添加头部注释的文章就介绍到这了,更多相关Unity自动加头部注释内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • C#利用Spire.Doc for .NET实现将HTML内容替换到Word模板的实践指南

    C#利用Spire.Doc for .NET实现将HTML内容替换到Word模板的实践指南

    本文将深入探讨C#如何利用Spire.Doc for .NET库将HTML内容无缝替换到Word模板中,文中的示例代码讲解详细,需要的小伙伴可以了解一下
    2026-02-02
  • C#文件后缀名的详细介绍

    C#文件后缀名的详细介绍

    这篇文章详细介绍了C#文件后缀名,有需要的朋友可以参考一下
    2013-09-09
  • C#实现利用Windows API读写INI文件的方法

    C#实现利用Windows API读写INI文件的方法

    这篇文章主要介绍了C#实现利用Windows API读写INI文件的方法,涉及C#针对ini文件的创建、读取及写入等操作技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-07-07
  • C#中WPF依赖属性的正确学习方法

    C#中WPF依赖属性的正确学习方法

    这篇文章主要介绍了C#中WPF依赖属性的正确学习方法 ,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-08-08
  • C#写入XML文档

    C#写入XML文档

    这篇文章介绍了C#写入XML文档的方法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-04-04
  • C#中的闭包使用详解

    C#中的闭包使用详解

    C#中的闭包是一个强大的概念,它允许函数捕获外部变量并在函数外部访问这些变量,闭包在很多场景下都非常有用,比如在匿名函数、Lambda表达式和委托中,在使用闭包时,我们需要注意变量捕获的副作用、性能影响和内存管理等问题,以确保代码的正确性和性能
    2024-12-12
  • C#中时间类的使用方法详解

    C#中时间类的使用方法详解

    这篇文章主要介绍C#中的时间类,文中主要介绍了DateTime类,TimeSpan类,DateTimeOffset类及静态类的封装,通过代码示例介绍的非常详细,需要的朋友可以参考下
    2023-05-05
  • C#中矩阵运算方法实例分析

    C#中矩阵运算方法实例分析

    这篇文章主要介绍了C#中矩阵运算方法,实例分析了通过C#实现矩阵的初始化、转置矩阵、求逆矩阵等各种常用的操作技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-04-04
  • Unity实现图形相交检测

    Unity实现图形相交检测

    这篇文章主要为大家详细介绍了Unity实现图形相交检测,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-04-04
  • C#多线程开发之任务并行库详解

    C#多线程开发之任务并行库详解

    最近在学习C#的并行编程,在每本书上的看到的知识点都不全面,所以先参考多本书书籍的讲解,将并行编程,多线程编程的知识点整理一下,这篇文章主要给大家介绍了关于C#多线程开发之任务并行库的相关资料,需要的朋友可以参考下
    2021-09-09

最新评论