1.在创建source insight工程之前,在代码位置下创建一个em格式的文件,em格式为source insight的宏定义文件,下面的这个是注释多行代码的宏定义,内容如下:
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)
}
2.创建source insight工程,将代码目录(包含这个em文件)添加到source insight工程中。
3.Project->Rebuild Project
4.Options->Key Assignment
command输入宏定义的名称,这里是MultiLineComment,和em中的是一致的,然后点击Assign New Key后为其分配按键
5.Options->Menu Assignment
和按键分配类似,这里直接将其插入到work菜单下即可。
6此时选择多行代码按快捷键就可以注释和非注释某些代码了。
注:将宏代码加入到Base\utils.em中也是可以的。