关闭

Source Insight marco:MultiLineComment

252人阅读 评论(0) 收藏 举报
分类:

一、使用场景

Suorce Insight 中内置了一些实用的快捷键命令,可以在 Options->Key Assignments 中看到。另外,SI 还提供了用户自己添加功能的方法,就是 marco 指令。SI 内置了 13 种快键指令,例如:

Marco: KillLine      //删除整行
Marco: PasteKillLine //粘贴刚刚删除的一行
...

只不过默认这些功能都是没有绑定快捷键的,需要自己添加,例如我习惯把删除单行设置为 ctrl+d。

还有一个比较实用的功能就是多行注释,这个功能是 SI 是没有内置的。不过网上已经有人写好了这个功能的代码,我们添加进 marco 代码文件中就好。代码如下:

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)

}

二、添加方法

  • 1、使用 SI 打开 base 工程。
    这里写图片描述
  • 2、可见这个工程中只包含一个文件,即 utils.em ,这个文件就是 marco 功能的代码。内置的 13 个功能的代码都在这里。
    这里写图片描述
  • 3、将上面的代码粘贴到这个文件末尾,保存。此时,多行注释的功能就有了。
    这里写图片描述
  • 4、选中多行后,使用 ctrl+/ 就可以一次注释多行了,再次按下则取消注释。
    这里写图片描述

三、参考链接

Source Insight 多行注释

Source Insight中的多行注释

0
0

猜你在找
深度学习基础与TensorFlow实践
【在线峰会】前端开发重点难点技术剖析与创新实践
【在线峰会】一天掌握物联网全栈开发之道
【在线峰会】如何高质高效的进行Android技术开发
机器学习40天精英计划
Python数据挖掘与分析速成班
微信小程序开发实战
JFinal极速开发企业实战
备战2017软考 系统集成项目管理工程师 学习套餐
Python大型网络爬虫项目开发实战(全套)
查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:174968次
    • 积分:2386
    • 等级:
    • 排名:第14817名
    • 原创:85篇
    • 转载:2篇
    • 译文:2篇
    • 评论:50条
    文章分类
    最新评论