Table of contents
1. Add code to the Utils.em file in the installation directory source Insight
2. Open Source Insight to update the file and import it into the basic project
3. Add operation of function keys
1. Add code to the Utils.em file in the installation directory source Insight
macro MultiLineComment()
{
hwnd = GetCurrentWnd()
selection = GetWndSel(hwnd)
LnFirst =GetWndSelLnFirst(hwnd) //取首行行号
LnLast =GetWndSelLnLast(hwnd) //取末行行号
hbuf = GetCurrentBuf()
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)
}
macro UnMultiLineComment()
{ //取消杠杠注释,不选中多行的话,默认只处理当前行
hwnd = GetCurrentWnd()
selection = GetWndSel( hwnd )
lnFirst = GetWndSelLnFirst( hwnd )
lnLast = GetWndSelLnLast( hwnd )
hbuf = GetCurrentBuf()
ln = lnFirst
while( ln <= lnLast )
{
buf = GetBufLine( hbuf, ln )
len = strlen( buf )
if( len >= 2 )
{
start = 0
while( strmid( buf, start, start + 1 ) == CharFromAscii(32) || strmid( buf, start, start + 1 ) == CharFromAscii(9) )
{
start = start + 1
if( start >= len )
break
}
if( start < len - 2 )
{
if( strmid( buf, start, start + 2 ) == "//" )
{
buf2 = cat( strmid( buf, 0, start ), strmid( buf, start + 2, len ) )
PutBufLine( hbuf, ln, buf2 )
}
}
}
ln = ln + 1
}
SetWndSel( hwnd, selection )
}
2. Open Source Insight to update the file and import it into the basic project
3. Add operation of function keys