在网上搜索了一些关于Source Insight的设置技巧,把这些结果给总结下来:
1、 背景色选择
要改变背景色Options->preference->windows background->color设置背景色,最好使用原始的配置,不要修改颜色。
2、解决字符等宽对齐问题。
SIS默认字体是VERDANA,很漂亮。这网页上应该也是用的VERDANA字体。但由于美观的缘故,VERDANA字体是不等宽的。比如下面两行
llllllllll
MMMMMMMMMM
同样10个字符,长度差多了.用VERDANA来看程序,有些本应该对齐的就歪了。解决方法是使用等宽的字体,但肯定比较丑。比较推荐的是用Courier New。
3、解决TAB键缩进问题
Options-> Document Options里面的右下角Editing Options栏里,把Expand tabs勾起来,然后确定。OK,现在TAB键的缩进和四个空格的缩进在SIS里面看起来就对齐咯
4、SI中的自动对齐设置:
在C程序里, 如果遇到行末没有分号的语句,如IF, WHILE, SWITCH等, 写到该行末按回车,则新行自动相对上一行缩进两列。
Option->Document option下的Auto Indient中Auto Indient Type有三种类型 None,Simple,Smart。个人推荐选用Simple类型。
5、向项目中添加文件时,只添加特定类型的文件(文件类型过滤器)
编辑汇编代码时,在SIS里建立PROJECT并ADD TREE的时候,根据默认设置并不会把该TREE里面所有汇编文件都包含进来
只加了.inc和.asm后缀的,.s后缀的没有。而且用SIS打开.s的文件,一片黑白没有色彩,感觉回到DOS的EDIT时代了……
解决方法是在Options->Document Options里面,点左上的Document Type下拉菜单,选择x86 Asm Source File,
然后在右边的File filter里*.asm;*.inc;的后面加上*.s;接着CLOSE就可以了。
上面问题解决了,但注意加入*.s后还需要重新ADD TREE一遍才能把这些汇编加到PROJECT里面。
6、添加文件类型
用户可以定义自己的类型,Options->Document Options->add type,定义文件类型名以及文件名后缀。
勾选include when adding to projects在添加目录下文件到工程是该类文件就会添加进SI的工程。
如果需要将所有文件添加进SI的工程,可以定义一种文件类型*.*。
7、恢复ctrl+a的全选功能
通过关键词save 找到save all,更改为ctrl+shift+a,通过关键词select找到select all,更改为ctrl +a
8、缩进与tab
(1)Options菜单 Preferences Typing卡,勾掉下面两项∶
Typing tab indents line,regardless of selection,空行按tab无法前进
Typing tab replaces current selection,选定部分内容、再按tab时会清除所选
(2)Options菜单 Document Options(针对不同文件类型,分别进行设置) 下拉左上文件类型框、选择合适类型(c源文件) Editing Options框中,tab width=2 Editing Options框中,勾选Expand tabs(这样,按tab键、等价于输入2个空格)
(3)Options菜单 Document Options 选择合适的文件类型 点击右边中间的Auto Indent钮 在弹出的框中,左边一定要点Smart,右边有两个复选框Indent Open Brace和Indent Close Brace,具体效果可以看SIS的HELP。按照部门里的编程风格要求,最方便的就是把两个复选框都取消掉,然后点OK。
勾选Auto Indent之SMART的效果∶在C程序里, 如果遇到行末没有分号的语句,如IF, WHILE, SWITCH等, 写到该行末按回车,则新行自动相对上一行缩进两列。
勾掉Indent Open Brace和Indent Close Brace的效果∶继上一段,在相对缩进行里, 如果输入"}", 则自动和上一行列对齐(好像勾不勾都会有这个功能);而输入"{"时,不会与下面的行对齐(这是勾上Indent Open Brace时的效果)。
9、去掉功能强大但是无用的自动完成功能
Options菜单 Preferences Typing卡 Auto Completion框,勾掉Use automatic symbol completion window(这里是SIS的全局设置)
Options菜单 Document Options Editing Options框中,勾掉Allow auto-complete(局部设置)
上面两项必须全部勾选,才能启用Auto Completion功能
10、恢复小键盘的“+,-,*,/”功能
Options菜单 Key assignments,通过关键词Scroll 找到Scroll Half Page Up,取消小键盘/;通过关键词Scroll 找到Scroll Half Page Down取消小键盘*;通过关键词Function找到Function Up,取消小键盘-,通过关键词Function找到Function down,取消小键盘+。
11、设置字体大小
Option->Document Option
点击上图中的Screen Fonts和Printer Fonts,设置字体类型和大小。
配置好后的配置文件在 /我的文档/Source Insight/Settings/GLOBAL.CF3
11、添加多行快速注释和反注释
打开SIS->Porject->Open Porject->Base,打开base下面的utils.em文件,看此文件的路径在那里,找到之后在此目录下面添加一个xxx.em文件,文件里面添加下面的代码。添加完代码后到SIS->Option->key assignments->command输入Macro CodeComments点击Assign New Key,并使用快捷键alt+c,那么以后要注释多行代码的时候,只要选中代码,按住键盘的alt+c键,就会自动注释多行代码,再按alt+c就会反注释。xxx.em的代码如下:
macro CodeComments(){//多行注释
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 )
}