Source Insight
实质上是一个支持多种开发语言(
java,c ,c++
等等)的编辑器,只不过由于其查找、定位、彩色显示等功能的强大,常被我们当成源代码阅读工具使用。
所以,为了有效的阅读源程序,首先必须选择功能菜单上的
“
Project
”选项的子菜单“
New Project
”新建一个项目,项目名称可以自由选定,当然也可以选择删除(
Remove
)一个项目。当删除一个项目的时候,并不删除原有的源代码文件
,
只是将该软件生成的那些工程辅助文件删除。设定之后,将会弹出一个对话框如图
1
,接受默认选择,如果,硬盘空间足够,可以将第一个复选框选上,该选项将会需要与源代码大致同等的空间来建立一个本地数据库以加快查找的速度。
点击“
OK
”按钮,接受选择后,将会有一个新的对话框弹出,在这个对话框里,可以选择将要阅读的文件加入工程,通过直接在顶部文本框输入盘符、回车、来切换各个盘。一种文件加入工程的方式是通过在
File Name
中输入要阅读源代码文件的名称,点击“
Add
”按钮将其加入;另一种方式是鼠标点选。可通过其中“
Add All
”和“
Add Tree
”两个按钮可以将选中目录的所有文件加入到工程中,其中“
Add All
”选项会提示只加入目录下本层文件和递归加入所有子目录文件两种方式,而“
Add Tree
”相当于“
Add All
”选项的递归加入所有文件,可以根据需要使用。由于该程序采用了部分打开文件的方式,没有用到的文件不会打开,所以,加入数千个文件也不用担心加入的文件超出程序的所能容忍的最大值。
建立项目后,可以在右边项目窗口中、右键选择
New Files
新建文件(文件名会全部转为小写)、
Add and Remove Files
添加项目文件、
Synchronize Files
同步文件(即相当于增强版的刷新
/refresh
)。
加入文件后,点击
Close
,可以出现使用界面,如图
3
所示,其中,右边的那个窗口(
Linux Project
,即工程窗口)缺省按照字母顺序列出当前工程中所有的文件。
右边的窗口(
Linux Project
) 下边有一排按钮、从左至右分别为:按字母顺序文件列表、显示文件夹、按照文件类型归类文件、全部文件的所有标记列表、按照标记类型归类标记、跳转到定义 处、显示标记信息、浏览工程标记、查找函数调用、工程属性,其中全部文件的所有标记列表选项可能要一段时间抽取标记,同步到数据库去,如果开始选择了建立 标记数据库,将会在今后节省同步时间,最有用的莫过于浏览标记信息和查找函数调用,前者可以通过“
Jump
”按钮在不同的地方查找同样的标志,还可以通过“
Reference
”按钮结合后者进行全局的标记查找。下面我们打开一个文件,简单介绍一下
Reference
功能。
双击一个文件就可以打开该文件,显示如图
4
所示
左边的窗口(
21142.c
)下面也有一排按钮、从左至右分别为:按字母顺序排列所有标记、按照文件中行数顺序排列标记、按照类型排列标记、浏览本地文件标记、标记窗口属性。
Reference
功能是
Source Insight
的特色之一,它可以在速度极快的在整个工程中找到所有的标记,并且在该行程序的前边加上红色箭头的小按钮链接上。图
5
是一个
Reference
搜索后的结果,它可以有两种模式,一种集中显示结果,图
5
显 示的就是这种模式,在这种模式下,可以通过前边的红色箭头小按钮进入另外一种模式,该标记的具体的所在处,也可以通过标记的具体所在处点击红色箭头小按钮 进入警种模式,还可以通过工具条上的两个红色小箭头直接在第二种模式下前后移动,察看相应信息。它的这个强大的功能使得阅读
Linux
源程序有如神助。但是要注意的是,当进行了第二次“
Reference
”时,它会提示你将结果集附加在第一个结果集的后边还是取代第一个结果集。如果选择前者,不能对结果集根据前后两次搜索结果进行分类,然后在其子类里进行移动,只能在整个结果集里移动;如果,选择后者,结果集将会被替换为第二次搜索的结果,略微有些不方便。
当然,
Source Insight
还提供了一些其他常见的便利。比如
:
右键菜单几乎包含了程序的所有功能,可以在编辑窗口为程序加上行号,还可以统计整个工程的程序行数
,
当然还有功能强大却用不上的自动完成功能。
配置成简单好用的c/java代码编辑器1、缩进与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
时的效果)。
2、向项目中添加文件时,只添加特定类型的文件(文件类型过滤器)
有个同事比较生猛,得整汇编代码,但在
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
里面。
3、去掉功能强大但是无用的自动完成功能
Options
菜单
à
Preferences
à
Typing
卡
à
Auto Completion
框,勾掉
Use automatic symbol completion window
(这里是
SIS
的全局设置)
Options
菜单
à
Document Options
à
Editing Options
框中,勾掉
Allow auto-complete
(局部设置)
上面两项必须全部勾选,才能启用
Auto Completion
功能
4、恢复小键盘的“+,-,*,/”功能
Options
菜单
à
Key assignments
,通过关键词
Scroll
找到
Scroll Half Page Up
,取消小键盘
/
;通过关键词
Scroll
找到
Scroll Half Page Down
取消小键盘
*
;通过关键词
Function
找到
Function Up
,取消小键盘
-
,通过关键词
Function
找到
Function down
,取消小键盘
+
。
5、恢复ctrl+a的全选功能
通过关键词
save
找到
save all
,更改为
ctrl+shift+a
,通过关键词
select
找到
select all
,
更改为
ctrl +a
6、解决字符等宽对齐问题。
SIS
默认字体是
VERDANA
,很漂亮。这网页上应该也是用的
VERDANA
字体。但由于美观的缘故,
VERDANA
字体是不等宽的。比如下面两行
llllllllll
MMMMMMMMMM
同样
10
个字符,长度差多了
.
用
VERDANA
来看程序,有些本应该对齐的就歪了。解放方法是使用等宽的字体,但肯定比较丑。可以用
DOS
字体,也就是记事本里的默认字体
sysfixed
很丑,要有心理准备。比较推荐的是用
Courier New
。
|