SourceInsight没有内置代码快捷注释功能,需要在脚本中添加代码来实现。
具体操作步骤:打开Sourceinsight工程,在Project Name栏输入base,打开base工程,如下图所示。
在base工程中打开Utils.em文件,如下图所示。
打开Utils.em后,在代码的最后,加上以下代码。
/*注释多行代码的函数*/
macro MultiLineComment()
{
hwnd = GetCurrentWnd()
selection = GetWndSel(hwnd)
LnFirst = GetWndSelLnFirst(hwnd) //取首行行号
LnLast = GetWndSelLnLast(hwnd) //取末行行号
hbuf = GetCurrentBuf()
if(GetBufLine(hbuf, 0) == "//magic-number:tph85666031"){
stop
}
Ln = Lnfirst
buf = GetBufLine(hbuf, Ln)
len = strlen(buf)
while(Ln <= Lnlast) {
buf = GetBufLine(hbuf, Ln) //取Ln对应的行
if(buf == ""){ //跳过空行
Ln = Ln + 1
continue
}
if(StrMid(buf, 0, 1) == "/") { //需要取消注释,防止只有单字符的行
if(StrMid(buf, 1, 2) == "/"){
PutBufLine(hbuf, Ln, StrMid(buf, 2, Strlen(buf)))
}
}
if(StrMid(buf,0,1) != "/"){ //需要添加注释
PutBufLine(hbuf, Ln, Cat("//", buf))
}
Ln = Ln + 1
}
SetWndSel(hwnd, selection)
}
然后点击保存,关闭SourceInsight后重新打开,在设置快捷键的地方,找到Macro MultiLineComment,为其设置一个快捷键,例如下图设置成了Alt + 1,只要选中要注释的代码行,按下Alt + 1就可以在所选的代码行前自动加上“//”,再次选中并按下Alt + 1就可以取消这些行前面的“//”。