Source Insight通过快捷按键添加多种代码注释

来源:互联网 发布:电子阅览室软件 编辑:程序博客网 时间:2024/04/29 03:55

Base project -> Utils.em:

macro getTime(){    Time = GetSysTime(1)    Year = Time.Year    Mon = Time.Month    Day = Time.Day      Hour = Time.Hour    Min = Time.Minute    Sec = Time.Second    if(Mon < 10)        szMon = "0@Mon@"    else        szMon = Mon    if(Day < 10)        szDay = "0@Day@"    else        szDay = Day    if(Hour < 10)        szHour = "0@Hour@"    else        szHour = Hour    if(Min < 10)        szMin = "0@Min@"    else        szMin = Min         szTime = "@Year@@szMon@@szDay@.@szHour@@szMin@"    return szTime}macro aaaResetTypeId(){    setreg(MYTYPEID, "")    setreg(MYOPETYPE, "")       setreg(MYOPEINFO, "")   }macro aaaResetOpeType(){    setreg(MYOPETYPE, "")   }macro aaaResetOpeInfo(){       setreg(MYOPEINFO, "")   }macro aaaResetName(){    setreg(MYNAME, "")  }macro aaaCM(cmType){    hwnd = GetCurrentWnd()    lnFirst = GetWndSelLnFirst(hwnd)    lnLast = GetWndSelLnLast(hwnd)       hbuf = GetCurrentBuf()    szTime = getTime()    szMYTYPEID = getreg(MYTYPEID)    if(strlen( szMYTYPEID ) == 0)    {        szMYTYPEID = Ask("Enter TypeId, such as: Bug23948239")        if (szMYTYPEID != "")            setreg(MYTYPEID, szMYTYPEID)                }    szMYNAME = getreg(MYNAME)    if(strlen( szMYNAME ) == 0)    {        szMYNAME = Ask("Enter your name:")        if (szMYNAME != "")            setreg(MYNAME, szMYNAME)    }    szMYOPETYPE= getreg(MYOPETYPE)    if(strlen( szMYOPETYPE ) == 0)    {        szMYOPETYPE = Ask("Enter your operation type:")        if (szMYOPETYPE != "")            setreg(MYOPETYPE, szMYOPETYPE)    }               szMYOPEINFO= getreg(MYOPEINFO)    if(strlen( szMYOPEINFO ) == 0)    {        szMYOPEINFO = Ask("Enter your operation info:")        if (szMYOPEINFO != "")            setreg(MYOPEINFO, szMYOPEINFO)    }       if (cmType == "JavaSingleLineA")    {        InsBufLine(hbuf, lnFirst, "// + @szMYTYPEID@, @szMYNAME@, @szMYOPETYPE@, @szTime@, @szMYOPEINFO@")        InsBufLine(hbuf, lnLast+2, "// - @szMYTYPEID@, @szMYNAME@, @szMYOPETYPE@, @szTime@, @szMYOPEINFO@")         }else if (cmType == "JavaSingleLineB")    {        InsBufLine(hbuf, lnFirst, "/* + @szMYTYPEID@, @szMYNAME@, @szMYOPETYPE@, @szTime@, @szMYOPEINFO@ */")        InsBufLine(hbuf, lnLast+2, "/* - @szMYTYPEID@, @szMYNAME@, @szMYOPETYPE@, @szTime@, @szMYOPEINFO@ */")              }else if (cmType == "JavaMultiLineA")    {        InsBufLine(hbuf, lnFirst, "/* + @szMYTYPEID@, @szMYNAME@, @szMYOPETYPE@, @szTime@, @szMYOPEINFO@")        InsBufLine(hbuf, lnLast+2, " - @szMYTYPEID@, @szMYNAME@, @szMYOPETYPE@, @szTime@, @szMYOPEINFO@ */")            }else if (cmType == "JavaMultiLineB")    {        InsBufLine(hbuf, lnFirst, "// + @szMYTYPEID@, @szMYNAME@, @szMYOPETYPE@, @szTime@, @szMYOPEINFO@")        InsBufLine(hbuf, lnLast+2, "// - @szMYTYPEID@, @szMYNAME@, @szMYOPETYPE@, @szTime@, @szMYOPEINFO@")         }else if (cmType == "XMLSingleLine")    {        InsBufLine(hbuf, lnFirst, "<!-- + @szMYTYPEID@, @szMYNAME@, @szMYOPETYPE@, @szTime@, @szMYOPEINFO@ -->")        InsBufLine(hbuf, lnLast+2, "<!-- - @szMYTYPEID@, @szMYNAME@, @szMYOPETYPE@, @szTime@, @szMYOPEINFO@ -->")           }else if (cmType == "XMLMultiLine")    {        InsBufLine(hbuf, lnFirst, "<!-- + @szMYTYPEID@, @szMYNAME@, @szMYOPETYPE@, @szTime@, @szMYOPEINFO@")        InsBufLine(hbuf, lnLast+2, " - @szMYTYPEID@, @szMYNAME@, @szMYOPETYPE@, @szTime@, @szMYOPEINFO@ -->")           }}// // + xxxx// // - xxxxmacro aaaCMJavaSingleLineA(){    cmType = "JavaSingleLineA"    aaaCM(cmType);}// /* + xxxx */// /* - xxxx */macro aaaCMJavaSingleLineB(){    cmType = "JavaSingleLineB"    aaaCM(cmType);}// /* + xxx//   xxx//   xxx// - xxx */macro aaaCMJavaMultiLineA(){    cmType = "JavaMultiLineA"    aaaCM(cmType);}// // + xxx // // xxx// // xxx// // - xxxmacro aaaCMJavaMultiLineB(){    cmType = "JavaMultiLineB"    aaaCM(cmType);}// <!-- + xxx -->// <!-- - xxx -->macro aaaCMXMLSingleLine(){    cmType = "XMLSingleLine"    aaaCM(cmType);}// <!-- + xxx//   xxx//   xxx// - xxx -->macro aaaCMXMLMultiLine(){    cmType = "XMLMultiLine"    aaaCM(cmType);}

打开Base工程:
这里写图片描述
讲上面内容添加到文件Utils.em,然后保存并关闭Base工程,重新打开一个新的项目:
这里写图片描述
依次打开菜单Options->Key Assignments… , 并键入”macro”,左侧列表里面可以查看到我们上面添加的macro:
这里写图片描述
点击左侧列表中的macro项,再点击Assign New Key…按钮分配快捷键:
这里写图片描述
依次键入快捷键,结果如下:
这里写图片描述

0 0
原创粉丝点击