Source Insight 宏的使用与自定义快捷键

    xiaoxiao2021-03-25  137

     相信阅读过大型源代码的,都知道Source Insight。

        今天花了点时间,整理了两个宏,使用快捷键生成代码注释。很方便。

        废话少说,进入主题!

     

        ①打开Source Insight > Project > Open Project > Base > OK

        ②打开Utils.em 宏文件

        ③添加以下宏(跟C语言的函数差不多)

     

    添加函数注释:

     

    macro MyInsertHeader() { // Get the owner's name from the environment variable: MYNAME. // If the variable doesn't exist, then the owner field is skipped. szMyName = getenv(MYNAME) // Get a handle to the current file buffer and the name // and location of the current symbol where the cursor is. hbuf = GetCurrentBuf() szFunc = GetCurSymbol() ln = GetSymbolLine(szFunc) InsBufLine(hbuf, ln, "/************************************************************"); ln = ln +1 // begin assembling the title string sz = "** 函数名称: " /* convert symbol name to T E X T L I K E T H I S */ cch = strlen(szFunc) ich = 0 while (ich < cch) { ch = szFunc[ich] if (ich > 0) if (isupper(ch)) sz = cat(sz, " ") else sz = cat(sz, " ") sz = Cat(sz, toupper(ch)) ich = ich + 1 } InsBufLine(hbuf, ln, sz) ln = ln + 1 InsBufLine(hbuf, ln, "** 功能描述: ") ln = ln + 1 InsBufLine(hbuf, ln, "** 输入参数:") ln = ln + 1 InsBufLine(hbuf, ln, "** 输出参数: ") ln = ln + 1 InsBufLine(hbuf, ln, "** 返 回 值 :") ln = ln + 1 /* if owner variable exists, insert Owner: name */ if (strlen(szMyName) > 0) { InsBufLine(hbuf, ln, "** 作 者 : @szMyName@") } else { InsBufLine(hbuf, ln, "** 作 者 : ") } ln = ln + 1 // Get current time szTime = GetSysTime(1) Day = szTime.Day Month = szTime.Month Year = szTime.Year if (Day < 10) szDay = "0@Day@" else szDay = Day InsBufLine(hbuf, ln, "** 日 期 : @Year@年@Month@月@szDay@日") ln = ln + 1 InsBufLine(hbuf, ln, "** 版 本 : 1.0") ln = ln + 1 InsBufLine(hbuf, ln, "** 修改日期 版本号 修改人 修改内容") ln = ln + 1 InsBufLine(hbuf, ln, "**************************************************************/") }

    [cpp]  view plain  c

    添加头文件注释宏:

    macro MyInsertFileHeader() { szMyName = getenv(MYNAME) hbuf = GetCurrentBuf() InsBufLine(hbuf, 0, "/***************************************************************************") InsBufLine(hbuf, 1, "** 版权所有: Desay Copyright (c) 2016-2026 ******************** ") filename = GetBufName(hbuf) InsBufLine(hbuf, 2, "** 文件名称: @filename@") InsBufLine(hbuf, 3, "** 文件标识: ") InsBufLine(hbuf, 4, "** 内容摘要: ") InsBufLine(hbuf, 5, "** 当前版本: v1.0") /* if owner variable exists, insert Owner: name */ if (strlen(szMyName) > 0) { sz = "** 作 者 : @szMyName@" } else { sz = "** 作 者 :" } InsBufLine(hbuf, 6, sz) // Get current time szTime = GetSysTime(1) Day = szTime.Day Month = szTime.Month Year = szTime.Year if (Day < 10) szDay = "0@Day@" else szDay = Day InsBufLine(hbuf, 7, "** 完成日期: @Year@年@Month@月@szDay@日") InsBufLine(hbuf, 8, "** 修改记录: ") InsBufLine(hbuf, 9, "** 修改记录: ") InsBufLine(hbuf, 10, "** 修改日期: ") InsBufLine(hbuf, 11, "** 版本号 : ") InsBufLine(hbuf, 12, "** 修改人 : ") InsBufLine(hbuf, 13, "** 修改内容: ") InsBu

        ④添加完后 > Ctrl + s 保存

        ⑤打开自己的工程 > Option > Key Assignments 可以找到:

            Macro : MultiLineComment

            Macro : SingleLineComment

        ⑥点击Assign New Key ...,设置完成以后,重启即可

            好了,设置自己习惯的快捷键吧!^^

            可以是Alt Ctrl 等等组合。

    转载请注明原文地址: https://ju.6miu.com/read-9914.html

    最新回复(0)