编程语言
首页 > 编程语言> > Source-Insight 4.0实现不同类型源码文件的注释(针对C语言工程)

Source-Insight 4.0实现不同类型源码文件的注释(针对C语言工程)

作者:互联网

一、C源文件和头文件

1. 配置映射按键

Source Insight 4.0内置多行注释和反注释功能。只需要配置一下键值映射即可。步骤如下:

Options->Key Assignments,找到Edit: Comment Lines,然后单击Assign New Key按钮,在弹出提示框的时候,按下快捷键组合,比如:Ctrl+/

提示框消失,表示按键映射配置结束。接下来配置反注释快捷键,往下找到Edit: Un-Comment Lines按同样的步骤,添加反注释快捷键,比如:Ctrl+Shift+/

最后,单击右上角的OK按键结束设置。

 

2. 测试

结束设置,在xxx.c或者xxx.h文件中,按下Ctrl+/实现注释,按下Ctrl+Shift+/可实现反注释。

 

二、非C文件

在工程源码中,有很多非C源文件和头文件,比如Linux源码中就有很多类型的文件:Makefile/Kconfig/CMakeLists.txt/.config/prj.conf,这些文件是以#作为注释的。使用上面的设置就没法进行注释。因此需要自己调用Windows的API进行个性化设置,步骤如下。

1. 修改WindowsAPI

新建一个文件,命名为linecomment.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)

             if (buf =="") {

                       Ln = Ln + 1

                       continue

             }

             if (StrMid(buf, 0, 1) == "#") {

                            if(StrMid(buf, 1, 2) != "#"){

                                     PutBufLine(hbuf, Ln, StrMid(buf, 1, Strlen(buf)))

                            }

             }

             if (StrMid(buf,0,1) != "#") {

                       PutBufLine(hbuf, Ln, Cat("#", buf))

             }

             Ln = Ln + 1

   }

   SetWndSel(hwnd, selection)

}

将文件拷贝到SI的Base目录,Base目录一般位于: 文档\Source Insight 4.0\Projects\Base,如下:

 

2. 将文件linecomment.em添加到工程源码中

Project->Add and Remove Project File

 

3. 配置按键映射

Options->KeyAssignment,在命令输入框中输入mu,出现Macro:MultiLineComment, 单击Assign New Key按钮,配置快捷键映射,如果映射已经被占用,会提示是否先删除映射。比如,配置的是:Ctrl+Q

最后单击OK结束配置

 

4. 测试

按下Ctrl+Q即可实现在非C文件(Makefile/Kconfig/CMakeLists.txt/.config/prj.conf)中进行注释和反注释。如下

参考上一篇:https://blog.csdn.net/qq_40088639/article/details/109843159

 

标签:4.0,映射,Ctrl,Ln,Insight,注释,源码,buf,hbuf
来源: https://blog.csdn.net/qq_40088639/article/details/113547147