source insight 添加宏-文件头加注释

        source insight 3.5 自带的一些宏,在安装目录下的 utils.em 文件中,用户也可以自己写文件,命令为xxx.em ,然后把这个文件添加到项目中即可,添加后在菜单栏 Options -> Key Assignments 里输入macro 就能显示新添加的宏名称,然后给它分配一个快捷键,如:

source insight 添加宏-文件头加注释_第1张图片

这个新加的宏名如果不显示,可以先把这个 .em 文件从项目中移除,然后再添加一遍。

新加的宏是这样的,可以添加到新的一个 xx.em 文件中,加入项目即可。

macro InsertComment2FileHeader()
{
	hbuf = GetCurrentBuf()
	
	//这个是带绝对路径的文件名
	bufFileName = GetBufName(hbuf)
	nameLen = strlen(bufFileName)
    
    //没找字符串查找的函数,只能用原始方法了
	ich = 0
	chPos = nameLen
	while(chPos > 0)
	{
		ch = bufFileName[chPos - 1]
		//取文件名,不要路径,从末尾开始找第一个 "\", 这样就知道文件名的起点了
		if(AsciiFromChar(ch) == 92)
		{
			break
		}

		chPos = chPos - 1
	}
	
	realFileName = ""
	while(chPos < nameLen)
	{
		//从最后一个"\"开始取就是文件名了
		ch = bufFileName[chPos]
		realFileName = cat(realFileName, ch);
		chPos = chPos + 1
	}

	//新加环境变量后,source insight 要关闭再打开才获取到
	authorName = getenv(author_email)
	
	//参数为0为格林尼治时区,非0为本地时区
	dateTime = GetSysTime(8)
	year = dateTime.Year
	month = dateTime.Month
	day = dateTime.Day
	hour = dateTime.Hour
	minute = dateTime.Minute
	second = dateTime.Second
	
	InsBufLine(hbuf, 0, "/*****************************************************************")
	InsBufLine(hbuf, 1, "* FileName: @realFileName@")
	InsBufLine(hbuf, 2, "* Description: ")
	InsBufLine(hbuf, 3, "* DateTime: @year@-@month@-@day@ @hour@:@minute@:@second@")
	InsBufLine(hbuf, 4, "* Author: @authorName@")
	InsBufLine(hbuf, 5, "* Version: ")
	InsBufLine(hbuf, 6, "*****************************************************************/")
	InsBufLine(hbuf, 7, " ")
}

另外这个环境变量是新加的,添加的是系统级的环境变量,加完之后需要重启一下 source insight,否则取不到新加的环境变量。效果如下:

source insight 添加宏-文件头加注释_第2张图片 

 

你可能感兴趣的:(其他,编辑器)