Unity腳本自動(dòng)添加頭部注釋的全過(guò)程
Unity腳本自動(dòng)添加頭部注釋
就是創(chuàng)建.cs文件時(shí)自動(dòng)添加作者名,創(chuàng)建時(shí)間,文件名等
看示例,我們?cè)赨nity的project面板下先創(chuàng)建一個(gè)Scripts文件夾,然后在Scripts文件夾下創(chuàng)建一個(gè)腳本,命名為:Test.cs
然后就是這樣:

因?yàn)檫@個(gè)是我已經(jīng)成功的設(shè)置過(guò)了才會(huì)有這樣的頭部注釋
1. 修改Unity模板
首先找到你的Unity的安裝路徑,找到這樣的文件夾,文件名字是和版本相關(guān)的

然后打開(kāi)文件夾,一路找到Editor\Data\Resources\ScriptTemplates文件夾
然后嘛,打開(kāi)一個(gè)叫做81-C# Script-NewBehaviourScript.cs.txt的文件,打開(kāi)
是這樣:
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#
這個(gè)就是我們的腳本創(chuàng)建的模板文件,我們創(chuàng)建的每個(gè)腳本文件長(zhǎng)什么樣,都是跟這個(gè)東西有關(guān)系的
我們只需要在上面加上注釋?zhuān)?dāng)然還是不夠的
加上
/** * ========================================== * FileName:#FileName# * Author:#Name# * CreatTime:#CreateTime# * NowPath:#path# * ========================================== */
然后保存退出
再創(chuàng)建一個(gè)腳本試試看,就會(huì)多出這些東西,當(dāng)然這些都是寫(xiě)死的,固定的
我們可以看看僅此的效果:

是吧,只是寫(xiě)死的
2. 通過(guò)代碼修改為動(dòng)態(tài)的
注意到我創(chuàng)建的Editor文件夾了嗎?
雖然那個(gè)是我自己創(chuàng)建的,但是Unity中某些文件夾就是具有著某些特殊的作用
比如這個(gè)Editor它的作用就是:
以Editor命名的文件夾允許其中的腳本訪問(wèn)Unity Editor的API。如果腳本中使用了在UnityEditor命名空間中的類(lèi)或方法,它必須被放在名為Editor的文件夾中。Editor文件夾中的腳本不會(huì)在build時(shí)被包含。
在項(xiàng)目中可以有多個(gè)Editor文件夾。
然后我們先創(chuàng)建一個(gè)Editor文件夾,然后再在這個(gè)文件夾下面創(chuàng)建一個(gè)腳本,名字隨意都行,然后寫(xiě)代碼
using UnityEngine;
using UnityEditor; // 被繼承的類(lèi)所在的命名空間
using System.IO; // IO文件操作命名空間
using System; // C#基礎(chǔ)功能命名空間
using System.Text.RegularExpressions; // 正則表達(dá)式的命名空間
public class TitleSet : UnityEditor.AssetModificationProcessor
{
private static void OnWillCreateAsset(string path)
{
path = path.Replace(".meta", ""); // 這里跌path是你的項(xiàng)目主路徑Asset/Scripts/文件名
if (path.EndsWith(".cs")) // 判斷是否是c#文件
{
string fileName = Regex.Match(path, @"[^/]*$").Value; // 通過(guò)正則拿到僅含文件名的字符串
string str = File.ReadAllText(path); // 獲取創(chuàng)建的文件名的全部?jī)?nèi)容
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); // 將替換后的內(nèi)容寫(xiě)入文件,將原內(nèi)容覆蓋
AssetDatabase.Refresh();
}
}
}
代碼里面的注釋已經(jīng)讓代碼很清晰了,所以我就不多說(shuō)了
你想自己添加別的信息,也可以添加
結(jié)語(yǔ)
到此這篇關(guān)于Unity腳本自動(dòng)添加頭部注釋的文章就介紹到這了,更多相關(guān)Unity自動(dòng)加頭部注釋內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
C#利用Spire.Doc for .NET實(shí)現(xiàn)將HTML內(nèi)容替換到Word模板的實(shí)踐指南
本文將深入探討C#如何利用Spire.Doc for .NET庫(kù)將HTML內(nèi)容無(wú)縫替換到Word模板中,文中的示例代碼講解詳細(xì),需要的小伙伴可以了解一下2026-02-02
C#實(shí)現(xiàn)利用Windows API讀寫(xiě)INI文件的方法
這篇文章主要介紹了C#實(shí)現(xiàn)利用Windows API讀寫(xiě)INI文件的方法,涉及C#針對(duì)ini文件的創(chuàng)建、讀取及寫(xiě)入等操作技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-07-07
C#多線程開(kāi)發(fā)之任務(wù)并行庫(kù)詳解
最近在學(xué)習(xí)C#的并行編程,在每本書(shū)上的看到的知識(shí)點(diǎn)都不全面,所以先參考多本書(shū)書(shū)籍的講解,將并行編程,多線程編程的知識(shí)點(diǎn)整理一下,這篇文章主要給大家介紹了關(guān)于C#多線程開(kāi)發(fā)之任務(wù)并行庫(kù)的相關(guān)資料,需要的朋友可以參考下2021-09-09

